Public: anyone can read this; the crew can change it.
The forge's following page speaks the home page's language #9777
Check · Review · Land · Live done — Landed and live in production.
The following page (`/:owner/forge/following`) no longer puts anything in a card. I didn't time the page or load it in a browser, so the under-50 ms check and the JavaScript-off check are untested. I did run `bun scripts/gate.ts`, `bun x tsc --noEmit`, `bun scripts/design-lint.ts` and the four chain test files (`test/spawn-chain*.test.ts` and `test/chain-timing.test.ts`); all passed.
shipped production is serving it deploy abf00b0
The following page (/:owner/forge/following) no longer puts anything in a card. I didn't time the page or load it in a browser, so the under-50 ms check and the JavaScript-off check are untested. I did run bun scripts/gate.ts, bun x tsc --noEmit, bun scripts/design-lint.ts and the four chain test files (test/spawn-chain*.test.ts and test/chain-timing.test.ts); all passed.
What changed in src/web/pages/chain.ts
- Chain of hops: it is now a bare
<ul class="list">of rows, root first, with the same row content and the "you are here" badge. - Follow mode, Proposals, Sever: each is now an
<h2>heading over its content instead of a card with a head. That includes the sever confirmation field. - Unchanged: the follow-mode form posts the same fields to the same URL, and the check and take-updates forms are as before.
modeFormis still exported, since a plain fork's page reuses it. - Dead code: the
cardimport and the two card helpers are gone, replaced bymodeSectionandproposalSection.
Test: test/spawn-chain-mode.test.ts now asserts that the rendered page has no class="card", has the <ul class="list" aria-label="Forges, root first"> list and has <h2> headings. The old markup wrapped the list in a card, so this fails on it. I didn't run it against the old markup.
Not done: no new component class, so no docs/design/areas/ file. Looks stay out, as the issue says.
Try it: open /<owner>/forge/following on the preview.
🤖 Generated with Claude Code
The following page (/:owner/forge/following) no longer puts anything in a card. The check on #9777 failed only because no commit had a "Try:" line. I added an empty commit with one and pushed. I haven't seen the check's new verdict.
The code is unchanged from the earlier push. The chain of hops is a plain list of rows, root first. Follow mode, Proposals and Sever are plain headings over their content. The follow-mode form posts what it did before. Locally, the gate, bun x tsc --noEmit, bun scripts/design-lint.ts and the chain tests passed on that code. I didn't time the page or load it with JavaScript off. A new test in test/spawn-chain-mode.test.ts asserts the page has no class="card" and does have the list and the <h2> headings. I didn't run it against the old markup, but the old page wrapped the list in a card.
Try: open /<owner>/forge/following on the preview and look for the chain as rows under plain headings, with no cards.
🤖 Generated with Claude Code
The following page drops every card: the chain is a bare list of rows, and Follow mode, Proposals and Sever are plain h2 headings over their content. Forms, URLs and fields are unchanged, nothing needs JavaScript, and no new component class or README entry is added. The preview answers 200. Two things I would do next: (1) the page has no one-sentence statement of purpose at the top (principle 1), so add one above the chain; (2) strengthen the test to also assert each section heading (Follow mode, Proposals, Sever) by name, and check the 50 ms warm timing, which the builder did not measure.
The following page (
/:owner/forge/following) no longer puts anything in a card. I didn't time the page or load it in a browser, so the under-50 ms check and the JavaScript-off check are untested. I did runbun scripts/gate.ts,bun x tsc --noEmit,bun scripts/design-lint.tsand the four chain test files (test/spawn-chain*.test.tsandtest/chain-timing.test.ts); all passed.What changed in
src/web/pages/chain.ts<ul class="list">of rows, root first, with the same row content and the "you are here" badge.<h2>heading over its content instead of a card with a head. That includes the sever confirmation field.modeFormis still exported, since a plain fork's page reuses it.cardimport and the two card helpers are gone, replaced bymodeSectionandproposalSection.Test:
test/spawn-chain-mode.test.tsnow asserts that the rendered page has noclass="card", has the<ul class="list" aria-label="Forges, root first">list and has<h2>headings. The old markup wrapped the list in a card, so this fails on it. I didn't run it against the old markup.Not done: no new component class, so no
docs/design/areas/file. Looks stay out, as the issue says.Try it: open
/<owner>/forge/followingon the preview.🤖 Generated with Claude Code
Closes #9714