Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

FroeMic
Copy link
Contributor

@FroeMic FroeMic commented Sep 2, 2025

What does this PR do?

Replaces the plain in-app chat with a structured Support Form in a Drawer component to route users to the right resources, collect key metadata for faster responses, and set clearer response expectations for users.


Motivation

✨ Improve support quality and resolution speed by ensuring tickets are structured and enriched with the right context.


Key Changes

  • 🔄 Replace plain chat with a custom Support Form
  • 🖼️ New support drawer/sheet (resizable on desktop, drawer on mobile) with support options + resources
  • 🛠️ Reworked plainRouter (tRPC) to create support threads, ensure tenant/tier, and attach thread fields
  • 📝 Structured fields: message type, topic, integration type, severity, message, file upload
  • 🔑 New entitlement: in-app-support (enabled for all cloud plans)
  • 📦 New dependencies: react-dropzone

Demo - Desktop

Note: Ask AI and Docs link open in new tab (not properly shown)

CleanShot.2025-09-02.at.19.45.48.mp4

Demo - Mobile

CleanShot.2025-09-02.at.19.48.09.mp4

Discussion

  • ⚠️ Plain API performance: synchronous TRPC call ensures correct tenant data for automations, but blocks submit UI for a few seconds
  • 💳 Entitlements: Cloud:hobby plan doesn’t list in-app chat on pricing, but entitlement is enabled as discussed → Pricing

Type of change

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Important

Revamps in-app support by replacing chat with a structured support form, adding new UI components, and integrating backend support for handling requests and file uploads.

  • Behavior:
    • Replaces in-app chat with a structured support form in SupportDrawer.
    • Adds SupportDrawerProvider for global drawer state management.
    • New SupportFormSection for submitting support requests with metadata and file attachments.
    • IntroSection and SuccessSection guide users through support options.
  • Backend:
    • Adds plainRouter in plainRouter.ts for handling support thread creation and file uploads.
    • Integrates plainClient.ts for customer and thread management.
    • Adds supportRequestMetadataEvent.ts for logging support request metadata.
  • UI Components:
    • Adds RainbowButton for styled buttons.
    • Adds Dropzone component for file uploads in support form.
    • Updates layout.tsx to include SupportDrawer and ResizableContent for responsive design.
  • Misc:
    • Removes PlainChat and related chat functions.
    • Updates routes.tsx to include SupportButton in navigation.
    • Adds in-app-support entitlement in entitlements.ts.

This description was created by Ellipsis for 7c06718. You can customize this summary. It will automatically update as commits are pushed.

@FroeMic FroeMic changed the title Michael/lfe 6469 feat(cloud): revamp in-app support experience Sep 2, 2025
@FroeMic FroeMic changed the title feat(cloud): revamp in-app support experience feat(support): revamp in-app support experience Sep 2, 2025
@FroeMic FroeMic requested a review from marcklingen September 2, 2025 18:05
@FroeMic FroeMic marked this pull request as ready for review September 2, 2025 18:05
@dosubot dosubot bot added size:XXL This PR changes 1000+ lines, ignoring generated files. feat-api labels Sep 2, 2025
Copy link
Member

@marcklingen marcklingen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • can remove plain from csp headers

@FroeMic FroeMic requested a review from marcklingen September 3, 2025 15:14
@FroeMic FroeMic enabled auto-merge September 4, 2025 08:15
@dosubot dosubot bot added the auto-merge This PR is set to be merged label Sep 4, 2025
@FroeMic FroeMic added this pull request to the merge queue Sep 4, 2025
Merged via the queue into main with commit 43a9814 Sep 4, 2025
29 checks passed
@FroeMic FroeMic deleted the michael/lfe-6469 branch September 4, 2025 08:21
@dosubot dosubot bot removed the auto-merge This PR is set to be merged label Sep 4, 2025
gongxh13 pushed a commit to gongxh13/langfuse that referenced this pull request Sep 4, 2025
* Add support form and drawer scaffolding

* style changes

* fix flickering

* style support drawer into section

* update form

* refactor to use useForm hook

* add initial trpc router for creating chats

* add plainRouter and remove legacy chat

* refactor plain trpc route to fire and forget non-critical updates

* update success section

* add mobile support view

* make interaction type conditional

* add community section

* replace support-menu-dropdown with supportmenu-button

* add entitlement in-app-support to all cloud plans

* make plain call synchronous

* add file upload

* fix lint error

* remove unused code

* add first implementation of threadEvents

* remove auto-open on project create

* remove auto-open on tracing api generation

* remove comments

* remove old trpc route

* remove unused function

* simplify function return

* reduce input surface of createThread procedure

* simplified layout

* make drawer props more explicit

* remove duplicate threadFields

* remove misleading button

* refactor trpc router and plain client

* add support for uiCustomization

* remove plain chat from csp

* strict equality

* replace radio buttons
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat-api size:XXL This PR changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants