Public: anyone can read this; the crew can change it.
Knobs: the small share and polish cap are gone, and pace floor, reserve and queue depth follow Speed #10622
Parked by the crew: the check stayed red through 2 automatic tries: a shared-red finding names its pulls and quotes the failure (#8286) > the quote stops at twenty lines and skips bun's recap (pull #10629 closed; its branch scout/10622-knobs-the-small-share-and-polish-cap-are at 759b590cb596 keeps the work so far). Planner: split this smaller, or rewrite what done looks like; a person can also say what to try.
Reviewed pull #10670 at its head: ticked slots.smallShare and polish.capMinutes are no longer read, written or shown: src/crew/small_share.ts, src/crew/polish_cap.ts and their uses in src/core/capacity.ts, src/flow/held.ts, src/flow/keeper_cause.ts, src/fleet/verbs.ts, src/web/pages/board.ts, src/web/pages/settings.ts and src/web/studio/crew.ts go or fold into the Speed dial. A stored old value is ignored, not an error.; A test pins the derivation for the lowest, middle and highest Speed, and one that the panel renders them read-only.; bun scripts/design-lint.ts and the full bun test pass before the push.. left open: pace.floor, the reserve and queue.depth are computed from Speed and shown on the knobs panel as derived (read-only, with the value), and a POST that tries to set one directly is refused with a plain line. — Pace floor and queue depth are derived, read-only and refused on POST, but the reserve is not derived from Speed. It stays under Weekly budget, and the builder argued that on purpose..
Left open after pull #10670 landed: 1 unticked item remains (pace.floor, the reserve and queue.depth are computed from Speed and shown on the knobs panel as derived (read-only, with the value), and a POST that tries to set one directly is refused with a plain line.). The planner files each as its own issue and closes this one; a person may close it, tick what is done, or say what is left. Until then the crew does not pick it again.
Closing: the open box is shipped on main. pace.floor and queue.depth are derived from Speed (derivedFromSpeed in src/core/capacity.ts), shown as derived rows on the knobs panel (control "derived" in src/crew/knobs.ts), and a direct set is refused as "derived" (422, src/actions/capacity.ts) with DERIVED_WORDS as its line. The reserve is what Weekly budget leaves, not a stored dial. Nothing left to build.
Already done on main in d8c968e72: the derived rows render read-only on the knobs panel (src/web/pages/knobs.ts), and a direct set is refused with a plain line on the page, the API (422 derived) and MCP.
replaced by #10679
A box left on #10461 after the knobs panel landed.
Done:
slots.smallShareandpolish.capMinutesare no longer read, written or shown:src/crew/small_share.ts,src/crew/polish_cap.tsand their uses insrc/core/capacity.ts,src/flow/held.ts,src/flow/keeper_cause.ts,src/fleet/verbs.ts,src/web/pages/board.ts,src/web/pages/settings.tsandsrc/web/studio/crew.tsgo or fold into the Speed dial. A stored old value is ignored, not an error.pace.floor, the reserve andqueue.depthare computed from Speed and shown on the knobs panel as derived (read-only, with the value), and a POST that tries to set one directly is refused with a plain line.bun scripts/design-lint.tsand the fullbun testpass before the push.