Skip to content

v0.6.29: login improvements, posthog telemetry#4026

Merged
TheodoreSpeaks merged 2 commits intomainfrom
staging
Apr 7, 2026
Merged

v0.6.29: login improvements, posthog telemetry#4026
TheodoreSpeaks merged 2 commits intomainfrom
staging

Conversation

@TheodoreSpeaks
Copy link
Copy Markdown
Collaborator

TheodoreSpeaks and others added 2 commits April 7, 2026 18:30
* fix(signup): fix turnstile key loading

* fix(login): fix captcha header passing

* Catch user already exists, remove login form captcha

---------

Co-authored-by: Theodore Li <[email protected]>
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
docs Skipped Skipped Apr 7, 2026 10:50pm

Request Review

@cursor
Copy link
Copy Markdown

cursor bot commented Apr 7, 2026

PR Summary

Medium Risk
Touches signup request configuration (captcha header propagation) and chat stop-generation handlers; mistakes could block account creation or misfire cancellation behavior, but changes are small and localized.

Overview
Fixes captcha header propagation during email signup by sending x-captcha-response via the correct request options shape in client.signUp.email, and simplifies the "user already exists" error handling message.

Adds PostHog telemetry for aborted generation by introducing a new task_generation_aborted event and emitting it when users stop generation in both the mothership home chat and the workflow copilot chat (with a view dimension).

Reviewed by Cursor Bugbot for commit 0f602f7. Bugbot is set up for automated code reviews on this repo. Configure here.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Apr 7, 2026

Greptile Summary

This PR bundles two focused changes: (1) PostHog telemetry for mothership/copilot generation abort (task_generation_aborted) and message send (task_message_sent), and (2) a fix for Turnstile captcha token not being forwarded as an x-captcha-response header on manual signup.

  • events.ts: Adds two well-typed event definitions to the PostHog catalog — schemas match all call sites exactly.
  • home.tsx: Uses the posthogRef pattern correctly to avoid stale closures in useCallback. Captures task_generation_aborted on stop and task_message_sent on submit.
  • panel.tsx: Mirrors the posthogRef pattern and adds task_generation_aborted for the copilot view, but handleCopilotSubmit does not capture task_message_sent, making copilot sends invisible in analytics while mothership sends are tracked.
  • signup-form.tsx: The captcha fix correctly makes the x-captcha-response header conditional on the token existing. Error handling and setIsLoading resets are all properly covered.

Confidence Score: 5/5

Safe to merge — all remaining findings are P2 style/analytics consistency suggestions with no correctness or data integrity impact.

Both commits are small and focused. The captcha fix is correct and straightforward. The telemetry additions follow the existing posthogRef pattern properly. The only gap is a missing task_message_sent event in the copilot submit handler, which is a non-blocking analytics omission.

panel.tsx — the missing task_message_sent capture in handleCopilotSubmit should be addressed for complete telemetry parity.

Vulnerabilities

No security concerns identified. The captcha token is forwarded as a request header only when present and is not logged or stored client-side.

Important Files Changed

Filename Overview
apps/sim/lib/posthog/events.ts Adds two new well-typed event entries (task_generation_aborted, task_message_sent) — schemas match all call sites exactly
apps/sim/app/workspace/[workspaceId]/home/home.tsx Adds posthogRef to avoid stale closures, tracks abort and message-send events correctly in mothership view
apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/panel.tsx Adds abort telemetry for copilot view; missing task_message_sent capture in handleCopilotSubmit creates inconsistent analytics coverage vs mothership
apps/sim/app/(auth)/signup/signup-form.tsx Fixes captcha token forwarding — correctly gates x-captcha-response header on token presence; all error branches and loading state resets are intact

Sequence Diagram

sequenceDiagram
    participant U as User
    participant Home as Home (Mothership)
    participant Panel as Panel (Copilot)
    participant PH as PostHog
    participant API as Chat API

    U->>Home: Submit message
    Home->>PH: task_message_sent {view: mothership}
    Home->>API: sendMessage()

    U->>Home: Click Stop
    Home->>PH: task_generation_aborted {view: mothership}
    Home->>API: stopGeneration()

    U->>Panel: Submit message
    Note over Panel,PH: ⚠ task_message_sent NOT captured
    Panel->>API: copilotSendMessage()

    U->>Panel: Click Stop
    Panel->>PH: task_generation_aborted {view: copilot}
    Panel->>API: copilotStopGeneration()

    U->>Home: Sign up (with captcha)
    Home->>Home: widget.execute() gets token
    Home->>API: signUp.email() + x-captcha-response header
Loading

Comments Outside Diff (1)

  1. apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/panel.tsx, line 414-421 (link)

    P2 Missing task_message_sent telemetry in copilot submit

    handleCopilotSubmit sends a message without capturing the task_message_sent event, while the equivalent handleSubmit in home.tsx (line 239) does capture it. This creates an incomplete analytics picture — copilot message sends won't appear in PostHog alongside mothership sends.

    Consider adding the capture here for parity:

Reviews (1): Last reviewed commit: "fix(login): fix captcha headers for manu..." | Re-trigger Greptile

@TheodoreSpeaks TheodoreSpeaks merged commit d6ec115 into main Apr 7, 2026
26 of 27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant