Skip to content

ci: check once a day that production runs the deploy the repository records - #943

Merged
danielgorgonha merged 1 commit into
stagingfrom
ci/what-is-running
Nov 13, 2026
Merged

danielgorgonha merged 1 commit into
stagingfrom
ci/what-is-running

Conversation

@danielgorgonha

Copy link
Copy Markdown
Member

What & why

A daily check that production runs the deploy the repository records, instead of only probing whether a named route exists.

node scripts/check-deployed.mjs --against-lock --relay-digest=<16 hex> compares, on every public name:

  • the coordinator's commit (by prefix; a -dirty build never matches) and the creation protocol it expects, with the [deploy_build] commit engine/versions.lock records on staging (where the lock PRs land) and the MIN_CREATION that commit ships;
  • the relay's source_digest with relay-server --digest built at that commit (the relay's own rule, never re-implemented), naming the likely cause when they differ;
  • the web's version.json with the tip of main (what Vercel publishes) and the version in its ui/package.json;
  • the preflight of both coordinator names and both relay names with the custom headers the app sends each (fix(helper): the preflight announces the read token, and the list cannot drift again #466); a scan of the app that finds no custom header fails instead of checking nothing.

Any difference fails the run; the staging coordinator is reported and never fails it. The rules live in scripts/what-is-running.mjs and are tested (ui/src/what-is-running.test.ts); scripts/against-lock.mjs gathers git and the hosts' answers. The What is running workflow runs it daily (read-only, no secrets, 15-minute timeout, no persisted credentials). DEPLOY.md says the schedule starts once the workflow reaches main, and that the check is red by design between a deploy and the lock PR that records it.

Today it is green on all 13 rows.

Verify-before-finishing checklist

  • pnpm -C ui exec vitest run src/what-is-running.test.ts passes (18 tests); each comparison red-checked by mutation
  • pnpm -C ui exec tsc -b clean
  • Live run against production: exit 0; a wrong digest exits 1; no digest exits 2
  • Read-only on every host; no secret, key share, seed or passphrase anywhere
  • Docs/comments in English; commit is type(scope): description; no-changelog (CI and scripts only)
  • AI disclosure: written with Claude Code; the commit carries Co-Authored-By: Claude <noreply@anthropic.com>, no session link

…ecords

check-deployed.mjs --against-lock compares, on every public name: the
coordinator's commit (by prefix; a dirty build never matches) and
creation protocol with the deploy engine/versions.lock records on
staging; the relay's source digest with relay-server --digest built at
that commit, naming the likely cause when they differ; the web's
version.json with the tip of main and the latest release version; and
each coordinator and relay preflight with the custom headers the app
sends it. Any difference fails the run; staging is reported and never
fails it. A daily workflow runs it. Read-only on every host.

Co-Authored-By: Claude <noreply@anthropic.com>
@vercel

vercel Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
konclave-demo Ready Ready Preview Nov 13, 2026 2:09am UTC

Request Review

@danielgorgonha danielgorgonha self-assigned this Nov 13, 2026
@danielgorgonha danielgorgonha added no-changelog This PR changes nothing a member can notice ops Ops / deploy / infra labels Nov 13, 2026
@danielgorgonha
danielgorgonha merged commit 77fb1d3 into staging Nov 13, 2026
10 checks passed

This branch was successfully deployed

1 active deployment
Preview — a149ba8c Deployed Nov 13, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog This PR changes nothing a member can notice ops Ops / deploy / infra

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant