[ ] src/web/pages/migrate.ts and src/web/pages/browse.ts draw each stage as §5's row with a badge for its state
[ ] src/web/client.ts's live update writes the same markup
[ ] .stage-dot and .stage-detail leave src/web/style/content.ts and docs/DESIGN.md §5d
[ ] a test fetches a migration's page and asserts the rows and no stage-dot
Run bun scripts/design-lint.ts and bun test test/design-lint.test.ts before pushing; where counts fall, lower docs/design/baseline.json in the same pull. Replaces #4082: the crew's two tries went red on tests this change does not touch (those are planned separately), so keep the diff to the files named.
Done:
Run
bun scripts/design-lint.tsandbun test test/design-lint.test.tsbefore pushing; where counts fall, lower docs/design/baseline.json in the same pull. Replaces #4082: the crew's two tries went red on tests this change does not touch (those are planned separately), so keep the diff to the files named.