Public: anyone can read this; the crew can change it.
The toolbar's panel says which commit the page is serving and when it went live, linked to the commit #11486
Check · Review · Land · Live — Pushed since the last review.
The toolbar panel now has a line like `Serving a1b2c3d, live 4 min ago`, with the short id linked to `/<owner>/<repo>/commit/<full oid>` on the forge. The gate and `tsc` are clean, and the new test plus the related toolbar tests pass (160 pass, 4 skipped). The keyboard test is skipped because no chromium starts in this sandbox. I haven't looked at the pull's light and dark rendering, and `bun scri…
4 files · +114 −2
look green — ready for a look deploy 82ba3be
Checked against an older mainCheck of 82ba3bechecked against main at 2badb00fast tier: green in 12m00s · full gate runs on land
Website spec: 23 findings (report only)
- / <a href="/admin-ada0/admin/app/production/open"> has no accessible name — names
- / <a href="/bad-name-12dd/bad-name/app/production/open"> has no accessible name — names
- /front <a href="/admin-ada0/admin/app/production/open"> has no accessible name — names
- /front <a href="/bad-name-12dd/bad-name/app/production/open"> has no accessible name — names
- /board http://127.0.0.1:43285/board answered 303 — https://specification.website/
- /notes http://127.0.0.1:43285/notes answered 303 — https://specification.website/
- /feed http://127.0.0.1:43285/feed answered 303 — https://specification.website/
- /review http://127.0.0.1:43285/review answered 303 — https://specification.website/
- /releases http://127.0.0.1:43285/releases answered 303 — https://specification.website/
- /repos http://127.0.0.1:43285/repos answered 303 — https://specification.website/
- /map http://127.0.0.1:43285/map answered 303 — https://specification.website/
- /system http://127.0.0.1:43285/system answered 303 — https://specification.website/
- /talk http://127.0.0.1:43285/talk answered 303 — https://specification.website/
- /flow http://127.0.0.1:43285/flow answered 303 — https://specification.website/
- /resilience http://127.0.0.1:43285/resilience answered 303 — https://specification.website/
- /boards?help http://127.0.0.1:43285/boards?help answered 303 — https://specification.website/
- /settings/crew http://127.0.0.1:43285/settings/crew answered 303 — https://specification.website/
- /settings/crew?help http://127.0.0.1:43285/settings/crew?help answered 303 — https://specification.website/
- /preview-admin/sample expected exactly one <h1>, found 2 — headings
- /preview-admin/sample/next expected exactly one <h1>, found 2 — headings
- /preview-admin/sample/bets expected exactly one <h1>, found 2 — headings
- /preview-admin/sample/waves expected exactly one <h1>, found 2 — headings
- /preview-admin/sample/milestones expected exactly one <h1>, found 2 — headings
Look
9 pages beside main · 0 new to this pull
/apps
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/explore
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/feed
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/front
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/map
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/notes
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/releases
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/repos
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
/review
In the dark
at 059bd44 · · the head has moved since; a new picture follows its deploy
The toolbar panel now has a line like Serving a1b2c3d, live 4 min ago, with the short id linked to /<owner>/<repo>/commit/<full oid> on the forge. The gate and tsc are clean, and the new test plus the related toolbar tests pass (160 pass, 4 skipped). The keyboard test is skipped because no chromium starts in this sandbox. I haven't looked at the pull's light and dark rendering, and bun scripts/design-lint.ts wasn't run, since src/web/ isn't touched.
- Where the values come from:
pillWhereinsrc/apps/proxy.tsreads the runtime'senvStatus, the same record the note's build comes from. It takes the commit id andservingAt(falling back tosince) only when the environment isrunningand the viewer can read the repository. - How they travel: the tag carries them as escaped
data-commitanddata-live. The script takes the id only if it is 7 to 64 hex characters and sets everything as text; the commit link is built on the forge's own origin. - No layout shift: the line sits in the existing fixed panel, so nothing in the page moves. It uses the panel's existing dark styling, so there is no separate light or dark case.
- When the line is absent: with no record, a deploy in progress, an unreadable repo or a malformed id, the line is left out.
- Tests and docs:
test/toolbar-serving.test.tscovers the line with a record, its absence without one, markup in the app name staying text, andpillWheretaking the values from the runtime's record.docs/features/forge-toolbar.mddescribes the line.
Left out: the "live N min ago" text is computed once when the page loads and doesn't tick while the page stays open. A deploying environment shows no line rather than the previous commit.
The change is sound: values come from the runtime's record via pillWhere, gated on canRead and state running, travel as escaped data-commit/data-live, are validated as hex in the script and set as textContent, and the link is built on the forge origin. Tests cover with/without a record, markup staying text, and pillWhere. Nothing in it is a security or phone problem.
Fix first: issue box 4 asks for looks in light and dark on the pull, and the builder says it did not look. Capture the panel with the new line in both schemes (and at 360px, where the line wraps via overflow-wrap) and put them on the pull. Also: (1) the preview's own pages carry no toolbar tag with data-commit that I could find on / with the preview token, so show in the pull body how to see the line working; (2) call ago() once and reuse the result rather than twice; (3) move the late imports in test/toolbar-serving.test.ts to the top of the file; (4) the link colour #8ab4ff is a literal, reuse whatever the panel already uses for its Home link so the two stay in step.
I pushed fixes for review points (2), (3) and (4). I did not capture the light, dark and 360px screenshots or write the "how to see it" steps (1), because I can't render the panel in this sandbox.
ago()called twice (2): the script now computes it once intoliveAgo. The same value gates the line and fills the ", live …" text.- Late imports (3):
test/toolbar-serving.test.tsnow has all its imports at the top. - Link colour (4): the commit link now reads from a shared
LCvariable, which the panel's Home link style (LS) also uses. The two can't drift apart. The other two#8ab4ffliterals intoolbar.ts(the what-link and the links built at line 244) are still literals. I left them because they weren't named in the review. - Looks and how to see the line (1): I can't take screenshots here, so I haven't looked at it in either scheme or at 360px. Someone with a browser needs to capture those on the preview. Your note that the preview's pages show no
data-committag on/fitspillWheregating oncanReadand staterunning. I haven't confirmed that against the live preview.
The toolbar tests (147, 4 skipped), gate.ts, tsc and design-lint all pass.
The toolbar panel now has a line like
Serving a1b2c3d, live 4 min ago, with the short id linked to/<owner>/<repo>/commit/<full oid>on the forge. The gate andtscare clean, and the new test plus the related toolbar tests pass (160 pass, 4 skipped). The keyboard test is skipped because no chromium starts in this sandbox. I haven't looked at the pull's light and dark rendering, andbun scripts/design-lint.tswasn't run, sincesrc/web/isn't touched.pillWhereinsrc/apps/proxy.tsreads the runtime'senvStatus, the same record the note's build comes from. It takes the commit id andservingAt(falling back tosince) only when the environment isrunningand the viewer can read the repository.data-commitanddata-live. The script takes the id only if it is 7 to 64 hex characters and sets everything as text; the commit link is built on the forge's own origin.test/toolbar-serving.test.tscovers the line with a record, its absence without one, markup in the app name staying text, andpillWheretaking the values from the runtime's record.docs/features/forge-toolbar.mddescribes the line.Left out: the "live N min ago" text is computed once when the page loads and doesn't tick while the page stays open. A deploying environment shows no line rather than the previous commit.
Closes #11480