Stage: signup outage fix (#11524), self-serve account deletion (#11519) and develop since 10-26

Merged
EV
17d ago
+21305-3394

Promotion develop → stage, the first step of the production release the owner asked for ("cascade all for Gauzy to live"). It is claimed in the homelab MAINTENANCE board.

Why now: every production signup has failed since 2026-10-27 04:37Z. #11524 fixes it: the Jitsu analytics subscriber started one HTTPS request per inserted row, and onboarding's ~3,300 seed rows starved the API pod's event loop before the user was linked to their new tenant.

Carries (develop since stage 0eda8ea0ce): #11524 (signup fix), #11519 (self-serve account deletion, hardened after an independent security review), #11499, #11503, #11505, #11506, #11507, #11508, #11509, #11510, #11511, #11512, #11513, #11514, #11515, #11516, #11517, #11518, #11521, #11522, #11523 (= #11520), #11525.

Migrations (all additive): 1791000003410-AddTaskSyncScope, 1791000003430-RecountProjectMembersOfWorkingEmployees, 1791000003440-NormalizeProjectAndTeamArchiveFlags, 1791000003450-CreateAccountDeletionRequestTable.

After merge:

  1. Verify stage: images roll in ever-gauzy-stage, migrations ran on gauzy_stage, health, bundle markers in the running API (BoundedEventQueue, account-deletion), a stage signup completes.
  2. Check backups (prod migrations).
  3. Promote stage → master.

🤖 Generated with Claude Code


Summary by cubic

Promotes develop to stage, the first step of the production release, fixing the signup outage: every production signup has failed since 2026-10-27 because the Jitsu analytics subscriber started one HTTPS request per inserted row, and onboarding's ~3,300 seed rows starved the API pod's event loop before the user was linked to their new tenant.

Carried

  • Jitsu analytics events go through a bounded queue (4 concurrent, 1000 queued, rest dropped and reported), so signups complete again.
  • Self-serve account deletion by emailed link, hardened after an independent security review: admin-only workspace deletion, tenant-scoped file keys, plan binding via planHash, and token redaction in PostHog and Sentry.
  • Other develop work: the Plane proxy calls the Gauzy API over loopback and forwards the caller's address; the members read lists a non-admin's colleagues instead of refusing; project/team archiving; per-task sync scope for integrations; former employees excluded from member lists; the project management dashboard redesign; invoice settings and more-actions popovers, View fixes and a payment View button; the inbox email worker redirect fix; timesheet entry deletion; lint/dependency fixes (@eslint/js, qs, yarn.lock restore); and e2e suite updates for the redesigned UI.
  • Migrations (all additive): 1791000003410-AddTaskSyncScope, 1791000003430-RecountProjectMembersOfWorkingEmployees, 1791000003440-NormalizeProjectAndTeamArchiveFlags, 1791000003450-CreateAccountDeletionRequestTable.

After merge

  • Verify stage: images roll in ever-gauzy-stage, migrations ran on gauzy_stage, health checks pass, and a stage signup completes.
  • Check backups for the prod migrations, then promote stage → master.