Promote staging monitoring fixes to production

Merged
PR
4d ago
+1736-287

Description

Promote the monitoring and deployment changes verified on staging. Report handled web and mobile tRPC server failures to Sentry while preserving responses and expected 4xx handling. Keep catalog downloads off the startup path, share concurrent loads and prevent stale refreshes from replacing current data.

Enable CI-gated image publication and deployment on master. Preserve production's Next.js 16.3.6, complete dependency lockfile and Prisma tree, including nullable report attribution and the existing deletion migration. Production's account-deletion and crawler fixes remain in place. No hosted migration or DNS change.

Type of change

  • Bug fix

How Has This Been Tested?

  • TypeScript with the preserved Next.js 16.3.6 dependencies.
  • Lint: 0 errors, 79 existing warnings.
  • 33 deployment/build-configuration tests and actionlint.
  • Dependency files and the entire Prisma tree match master byte-for-byte.
  • Full local unit suite: 2,211 passed, 4 skipped.
  • CI and Cubic review at the final PR head, including browser and account-deletion database tests.
  • Production image identity, readiness, navigation and received Sentry event.

Screenshots (if applicable)

Not applicable.

Checklist

  • Code follows project conventions.
  • Performed a self-review.
  • All required checks pass at the final PR head.

Notes for reviewers

The promotion branch starts from master and merges staging, preserving both histories. Staging verification used Next.js 16.2.6; production's preserved 16.3.6 passed its own CI and runtime verification. Production's account-deletion database check remains in CI.

A fresh encrypted backup was verified before merging. Master CI built a new image with production settings, deployed it and verified its exact commit and readiness. Production credentials, database schema and DNS remain unchanged.

Review follow-up covers omitted Clerk settings, both deployment-command guards and malformed health JSON. Failed deployment selection remains manual recovery: a failed API response may still have queued a deployment, so automatic restoration would race it.

Review validation: this app has no Edge routes and Next.js 16 Proxy uses Node. The installed dotenv CLI preserves CI variables when its optional file is absent; migration steps passed on the runner. Sentry 10.53.1 deduplicates repeated capture of the same Error object, confirmed with an in-memory transport.

Production verification: 4243fe6e is healthy, normal page navigation and report details load, and Sentry received the production test event. Rollout briefly hit Supabase's 15-session limit from 09:32:06–09:32:42 UTC, ending before deployment verification completed. No recurrence during the next ten minutes. Pool configuration is unchanged; connection budgeting remains an operational follow-up. CodeRabbit skipped this master-target PR under its existing branch policy.