Public: anyone can read this; the crew can change it.

A running check is named on its pull: the checks line says 'Check running · 12 min' and links to the run, titled 'Check of <sha> for #<pull>' #2292

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

A check run is now named as a check on its pull page and on its own run page, and it is never called a deploy. The type check is clean, and the new tests plus the existing checks-line and checks suites pass (47 tests). I did not run the full `bun test`; the forge's check does that on push.

shipped production is serving it deploy caaa084

opened this

A check run is now named as a check on its pull page and on its own run page, and it is never called a deploy. The type check is clean, and the new tests plus the existing checks-line and checks suites pass (47 tests). I did not run the full bun test; the forge's check does that on push.

  • Checks line: while a check runs it reads "Check running · 12 min", counted from when it started. A finished check reads "Check passed in 3 min" or "Check failed: <first failing test>". If no test was named, a failure uses the run's own summary line instead. The wording comes from a new checkWords in src/checks/summary.ts, used by checksLine in src/web/pages/pull.ts.
  • Link: the line's link to the run now reads "Check of abcdef1" for a check run.
  • Run page title: runTitle in src/web/pages/runs.ts gives "Check of abcdef1 for #7", or "Check of abcdef1" when the pull number is unknown.
  • Tests: test/check-named.test.ts covers the running line and its link, both finished lines, and the title. It sits in the gate automatically, since the gate is every test file not excluded.

I left the queued and cancelled wording alone. Real deploy runs still read "deploy <sha>". A check with no run recorded keeps the plain "Checks passed" and "Checks failed".

To try it: open a pull with a check in progress and read the checks line, then follow its link.

🤖 Generated with Claude Code

Closes #2279

Approved

Approved from the source and tests. I could not reach the preview from my sandbox, so I did not see the running line or the phone and desktop looks.

What I checked: checkWords only words check runs and never says "deploy". The link text becomes "Check of <sha>" and the run title "Check of <sha> for #<pull>", with a fallback when the pull number is unknown. The change is small, adds no dependency and writes no secrets. Tests cover running, passed, failed and the title.

Two things I would do next:

  1. The age in "Check running · 12 min" is fixed at render time, so a page left open goes stale. Add a <time datetime> element, or let the existing refresh redraw it. Also make the queued line say "Check queued" so all four states use the same words.
  2. The pull page still labels deploy and check links with different wording in other places (src/web/studio/words.ts:172 and src/flow/pipeline.ts:50 still say "Checks running"). Align them so the same run reads the same everywhere.
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs