Skip to content

T-DO2G-waypost-runner-order-split-brain

State: planning/proposed · Impact: low · Complexity: small

Keep both orders — the project’s stated one and the browser’s dragged one — and make the precedence visible where a person meets them. The override is fine; having no way to clear it is not.

LocationRole today
packages/ts/detect-runners/src/config.tsrunners.order and orderRunners(); drives --json, --list, --table.
packages/ts/waypost/src/tui.tsThe terminal tab row follows runners.order.
packages/ts/waypost/src/web/state.tspersistRunnerOrder / restoreRunnerOrder keep a per-browser arrangement in localStorage.
packages/ts/waypost/docs-site/src/content/docs/guide/web-view.mdxDocuments that the saved arrangement always wins over what the server sends.

Set runners.order and the web view ignores it. Drag a tab and the CLI never learns. That much is deliberate and documented. What is not deliberate is that once a drag has happened, nothing short of clearing site data returns you to the configured order — a local override with no reset is a trap.

runners.order is the project’s stated order, edited on the settings screen like any other config key. A drag in the tab bar is a local override that wins until cleared.

The settings screen’s runner list carries Reset local order, which clears the saved arrangement and says when one is active — so the two orders and their precedence are visible in the one place that holds both.

The two other answers were considered and rejected. Writing a drag back to the config file makes a drag edit a tracked file, which is a much larger act than a drag looks like. Dropping runners.order for the interactive surfaces loses a preference a repository can legitimately state for everyone working in it.

  1. clearRunnerOrder beside persistRunnerOrder.
  2. The reset control on the settings screen’s runner list, shown with a note when a local arrangement is in force. The screen itself is T-EFZQ-waypost-settings-screen’s src/web/settings.ts, which is why it is not listed below — this task adds one control to a file that task creates.
  3. One sentence naming the precedence on the web-view guide page.
AreaNote
packages/ts/waypost/src/web/state.tsclearRunnerOrder, dropping the saved arrangement.
packages/ts/waypost/docs-site/src/content/docs/guide/web-view.mdxName the precedence where a user meets it.
  • AC-1: A user who has dragged tabs can return to runners.order from the settings screen, without clearing site data.
  • AC-2: The control appears with a note only while a local arrangement is actually in force, so it does not offer to undo nothing.
  • AC-3: One page states which order wins and how to get back to the configured one.

Drafted as WP-0004 in #1616 and moved here. Recorded in the first place because two settings answering one question read as deliberate only while the person who decided it is still around.

T-EFZQ


← Back to Tasks