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

A repository's home names its Server-Timing phases on both paths, the code home and the app home, and /alice/forge leaves the sweep's debt list #5458

Merged opened this

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

Merged

`/alice/forge` is off the sweep's debt list, and an empty repository's home now answers with a `render` phase.

shipped production is serving it deploy d909ee7

opened this

/alice/forge is off the sweep's debt list, and an empty repository's home now answers with a render phase.

Cause. The sweep's fixture creates forge but never pushes to it, so it takes codeHome's early return for a repository with no branches. That return named session, appof and refs but never render. The sweep only counts a page as named when it has both session and render, so it still listed the page.

The other paths were already named. codeHome with code names session, appof, refs, tree, readme, following and render. studioApp names session and its reads, ending in render.

Changes

  • src/web/pages/repo.ts: the empty-repository return in codeHome now notes render. The body is unchanged.
  • test/server-timing-sweep.test.ts: /alice/forge is removed from UNNAMED. The sweep fails if a page named in that list is actually named.
  • test/repo-home-paths-timing.test.ts is new. It covers an empty repository, a plain repository with code, and an app repository, and asserts the phase names on each. The empty-repository case would fail without the repo.ts change.

Checks. bun test on the new test and the sweep passes (5 tests). bun x tsc --noEmit could not run here because the bun type definitions were not found. I did not run bun install or the rest of the suite, so the forge's check is the first type check and full run.

Left out. The sweep still lists /alice/forge/changes, /map and /tells against their own issues.

Closes #5414

commented

/alice/forge is off the sweep's debt list, and an empty repository's home now answers with a render phase.

Cause. The sweep's fixture creates forge but never pushes to it, so it takes codeHome's early return for a repository with no branches. That return named session, appof and refs but never render. The sweep only counts a page as named when it has both session and render, so it still listed the page.

The other paths were already named. codeHome with code names session, appof, refs, tree, readme, following and render. studioApp names session and its reads, ending in render.

Changes

  • src/web/pages/repo.ts: the empty-repository return in codeHome now notes render. The body is unchanged.
  • test/server-timing-sweep.test.ts: /alice/forge is removed from UNNAMED. The sweep fails if a page named in that list is actually named.
  • test/repo-home-paths-timing.test.ts is new. It covers an empty repository, a plain repository with code, and an app repository, and asserts the phase names on each. The empty-repository case would fail without the repo.ts change.

Checks. bun test on the new test and the sweep passes (5 tests). bun x tsc --noEmit could not run here because the bun type definitions were not found. I did not run bun install or the rest of the suite, so the forge's check is the first type check and full run.

Left out. The sweep still lists /alice/forge/changes, /map and /tells against their own issues.

Approved

Approved. The empty-repository return in codeHome now notes render like the code and app paths, so /alice/forge leaves the sweep debt list. The new test covers all three paths and the empty case fails without the change. No UI or markup change, so DESIGN.md is untouched; the security floor and both doors are unaffected. The preview has no /alice/forge repo (404), so I could not see the phase live. Two next steps: (1) the empty path times render from before the body template, while the code path times a different span, so the two are not strictly comparable — unify them if the phase is ever alerted on; (2) the test signs in again on every call, so sign in once in beforeAll.

commented

The full gate on land was red; the pull is open again. Red tests:

  • the gate audit before any shard > a new file is in the gate with no list naming it, and explicit files are not audited
  • the gate audit before any shard > a new file is in the gate with no list naming it, and explicit files are not audited [80.90ms] [shard 103]

Red on top of #5467, which landed first from the same merge-queue candidate: red on its own on that base, or only together with them. Bring this pull up to date with the base and push.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs