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

/next reads as one numbered queue, folded into the open chapter, what comes after, and Later, with a count on each fold #11681

Merged opened this

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

Merged

`/:owner/:name/next` now reads as one numbered queue in the dispatcher's order, folded into three sections with a count on each. The screenshots at 390 px and 1280 px are not in the pull because this sandbox has no Chromium. `next-fit.test.ts` skipped for the same reason.

shipped production is serving it deploy eb2664b

opened this

/:owner/:name/next now reads as one numbered queue in the dispatcher's order, folded into three sections with a count on each. The screenshots at 390 px and 1280 px are not in the pull because this sandbox has no Chromium. next-fit.test.ts skipped for the same reason.

I ran tsc, scripts/gate.ts, scripts/design-lint.ts, and the next-up, MCP, TUI, page-budget and design tests, and all pass. I did not run the full suite; scripts/fast.ts named 1,954 files, so I picked the tests that cover the change.

  • Rows: each row shows its position (1 at the top, continuing across folds), its title, and #N · <state> · <who or "next">.
  • State word (src/web/pages/next_state.ts): building, checking, in review, landing, waiting on #N (first three, then +k), held, or ready. An open pull that closes the issue sets the stage, and a row waiting on open issues says so. A row someone is on and with no pull reads "building".
  • Folds: native <details> with no new script or class. "Up next" is the first ten rows and starts open. "After" is the rest and "Later" is the Later-gate rows; both start closed. ?all=1 is gone, since everything is already in the page.
  • Chapters: the repo has no "open chapter" concept, so the first section is simply the top ten.
  • Data: NextRow gains waits, the open issues a row waits for. flow/read.ts gains openPullStages, one statement plus lookups only for pulls that close a queued issue.
  • Tests:

- A new test on the page finds the rows in the /queue API's order, with positions 1..n and the fold counts. - test/next-state.test.ts covers the state word. - I rewrote the old ?all=1 and "Ready, in order" assertions in test/next-up.test.ts, because they asserted the shape this issue removes. - No test creates a real pull and checks that its row reads "in review".

  • Query budget: test/pages-budget.test.ts allows /next 65 statements instead of 64, one more for the pull-stage read. The file says never to raise a budget; I couldn't find a statement to trim on the page, so please look at that line.
  • Not done: the drag script and cut line still work on the "Up next" list only.
  • Docs: docs/design/areas/next-up.md is updated.

To try it, open /<owner>/<name>/next on the preview and fold or unfold each section.

🤖 Generated with Claude Code

Closes #11619

commented

/:owner/:name/next now reads as one numbered queue in the dispatcher's order, folded into three sections with a count on each. The screenshots at 390 px and 1280 px are not in the pull because this sandbox has no Chromium. next-fit.test.ts skipped for the same reason.

I ran tsc, scripts/gate.ts, scripts/design-lint.ts, and the next-up, MCP, TUI, page-budget and design tests, and all pass. I did not run the full suite; scripts/fast.ts named 1,954 files, so I picked the tests that cover the change.

  • Rows: each row shows its position (1 at the top, continuing across folds), its title, and #N · <state> · <who or "next">.
  • State word (src/web/pages/next_state.ts): building, checking, in review, landing, waiting on #N (first three, then +k), held, or ready. An open pull that closes the issue sets the stage, and a row waiting on open issues says so. A row someone is on and with no pull reads "building".
  • Folds: native <details> with no new script or class. "Up next" is the first ten rows and starts open. "After" is the rest and "Later" is the Later-gate rows; both start closed. ?all=1 is gone, since everything is already in the page.
  • Chapters: the repo has no "open chapter" concept, so the first section is simply the top ten.
  • Data: NextRow gains waits, the open issues a row waits for. flow/read.ts gains openPullStages, one statement plus lookups only for pulls that close a queued issue.
  • Tests:

- A new test on the page finds the rows in the /queue API's order, with positions 1..n and the fold counts. - test/next-state.test.ts covers the state word. - I rewrote the old ?all=1 and "Ready, in order" assertions in test/next-up.test.ts, because they asserted the shape this issue removes. - No test creates a real pull and checks that its row reads "in review".

  • Query budget: test/pages-budget.test.ts allows /next 65 statements instead of 64, one more for the pull-stage read. The file says never to raise a budget; I couldn't find a statement to trim on the page, so please look at that line.
  • Not done: the drag script and cut line still work on the "Up next" list only.
  • Docs: docs/design/areas/next-up.md is updated.

To try it, open /<owner>/<name>/next on the preview and fold or unfold each section.

🤖 Generated with Claude Code

Changes requested — before the latest push

The head does not contain the /next change. The diff touches only src/flow/alarm_no_release.ts, src/release/landings.ts and two alarm tests, which is the no-release alarm fix from #11673. There is no src/web/pages/next.ts, next_state.ts, flow/read.ts, design doc or next-up test in it. The description and the title talk about a numbered, folded /next queue that this head does not carry. It looks like the wrong work was committed or pushed to this branch.

Fix first: put the /next work on this branch (numbered single list in the dispatcher order, rows with position, title, who or next, one-word state; three <details> folds with counts; test finding rows in the /queue API order; design-lint green; 390 px and 1280 px before/after pictures). Move the #11673 alarm change to its own pull, since small single-purpose pulls are the rule here.

Also, once the /next work is back: (1) raising the /next query budget in test/pages-budget.test.ts from 64 to 65 breaks the file own rule, so find a statement to trim instead; (2) add a test that a real open pull makes its row read in review; (3) the drag script and cut line should keep working, and the folded lists must stay keyboard and screen reader reachable at 360 px; (4) the how-to belongs in docs/features/, not README, and the terminal needs the same queue view in src/tui/ if it lacks one.

The alarm change itself reads fine (split only lets own-repo pulls set the live mark; the 2026-11-11 replay test is a good one), but it is not what this pull claims to be.

commented

/<owner>/<name>/next now reads as one numbered queue in the dispatcher's order, folded under Up next, After and Later, with a count on each fold. The branch head already carried this work, so I extended it rather than re-adding it.

Head check: the head is a9fcf6fbe plus one new commit. Against main the diff holds src/web/pages/next.ts, next_state.ts, src/flow/read.ts, the next-up design doc, and the next-up and next-state tests. It contains no src/flow/alarm_no_release.ts, src/release/landings.ts or alarm tests; the #11673 change is not on this branch. The review may have been read against another pull's head.

What the queue shows:

  • Each row has its position (continuing across folds), title, who is on it or "next", and one state word: building, checking, in review, landing, waiting on #N, held or ready.
  • Up next is the first ten and open; After and Later are closed.
  • ?all=1 is gone.

Changes for the review's four points:

  • Query budget:

- The /next budget is back at 64. - pickFilter now reads ranks only when polish is over its share, which was the one statement to trim. - The open-pull read takes constant statements (checks and reviews for all pulls in two reads, not two per pull).

  • Open-pull test: test/next-pull-state.test.ts opens a real pull on a real repo and watches its row read building, then checking, then in review.
  • Terminal: the Next up screen in src/tui/screens/next.ts now numbers rows by position and shows the same state word and "who or next".
  • How-to: it is in docs/features/next-up.md, not the README.

Checks: bun x tsc --noEmit and bun scripts/design-lint.ts are clean. bun scripts/gate.ts is clean once the commit carries a "No door:" line, since the terminal screen and feature doc already existed. The /next, next_state, next-pull-state, tui-next-up, budget, week and picker tests pass. I did not run the full suite or bun scripts/fast.ts: it reported the diff too broad and I killed a stray whole-suite run.

Not done:

  • Before/after pictures: the 390 px and 1280 px pictures are not taken; the sandbox can't screenshot.
  • 360 px reach: the folds are native <details>/<summary> with no script, so they are keyboard and screen-reader reachable.
  • Drag and cut line: the cut line and the drag list still sit in the Up next list, which keeps id="next-list". I did not drive the drag script itself.

Try it: open /<owner>/<name>/next on the preview at https://lab--11681--forge-trevato-apps.open-platform.sh.

🤖 Generated with Claude Code

Approved

Earlier asks are met: the /next budget is back at 64 (pickFilter reads ranks lazily), a real-pull test (next-pull-state) shows building, checking, in review, the terminal screen numbers rows and shows the same state word and who-or-next, and the how-to is in docs/features/next-up.md, not the README. The folds are native details, with no script and no new class. Two things I would do next. Non-blocking: take the 390 px and 1280 px before/after screenshots where a browser exists. Non-blocking: the drag script and the cut line only cover the Up next list, so rows in After cannot be dragged, which I would extend or document.

commented

Left #11619 open: 1 unticked item remain (A test renders the page and finds the rows in the API's order; bun scripts/design-lint.ts passes; before/after screenshots at 390 px and 1280 px in the pull.).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs