[Production] Release 2026-07-01 - #114
Merged
Merged
Conversation
* Add script to clear run/file records while preserving instruments and watchers Adds web/scripts/clear-run-file-records.ts (npm run db:clear-runs) to wipe run and file records from a remote database ahead of production cutover, keeping instruments and watchers so lab PCs stay movable between environments. Dry-run by default, requires --confirm to delete, and does not touch S3. Co-authored-by: Cursor <cursoragent@cursor.com> * Document all web/scripts entries in scripts README Adds sections for seed-database, process-seeded-fixtures, and clear-run-file-records, plus a helper-modules list, so every runnable script and internal helper is covered. Co-authored-by: Cursor <cursoragent@cursor.com> * chore: Ignore .vscode/ * Add a full-width preview deployment banner so reviewers know they are not on production. Uses Vercel system env vars for the branch name and a link back to production, with layout offsets so the fixed sidebar and auth pages are not covered. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
…112) Runs `npm run db:migrate` against the environment's Render database when a PR merges into `staging` or `production` and touches `web/drizzle/`. Uses per-environment GitHub secrets; production is gated on a required- reviewer environment protection rule. Co-authored-by: Cursor <cursoragent@cursor.com>
* Move Slack channel webhook from env var to admin settings. Store the incoming webhook URL in a DB singleton editable under Settings > Notifications, replacing SLACK_WEBHOOK_URL for org-wide run notifications. Co-authored-by: Cursor <cursoragent@cursor.com> * Validate Slack webhook URL client-side with shared Zod schemas. Reuse the same shape checks on the form and API so invalid URLs are caught inline and Save stays disabled until the value passes. Co-authored-by: Cursor <cursoragent@cursor.com> * Address review feedback on Slack channel webhook settings Fix an SSR/client hydration mismatch on the masked webhook input by randomising the decoy length after hydration, drop the deprecated Zod `.url()` in favour of the existing regex refinement, dedupe webhook validation through `isValidSlackWebhookUrl`, and reuse `getSlackChannelConfigForAdmin` in the API route. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
Manual-mode upload-queue polling ran on the heartbeat tick, so a slow or large upload delayed heartbeats and the dashboard flagged busy watchers as offline (prompting operator restarts). On stop, a long upload could also outlive the heartbeat join and write to the state DB after close, raising "Cannot operate on a closed database". Introduce `UploadQueueWorker`, a long-lived thread that owns the poll loop and shares a stop event with `Uploader` so shutdown can interrupt the retry backoff and abort between queued files. `stop_runtime` now stops the worker before closing the state DB, skipping the close if it can't stop in time, restoring the writer-threads-joined-before-close invariant. Bumps the watcher version to 0.4.0. Co-authored-by: Cursor <cursoragent@cursor.com>
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.