From 9c9c32a9411656fc364a6913bd49d67046a6c839 Mon Sep 17 00:00:00 2001 From: didericis Date: Tue, 26 May 2026 01:03:23 -0400 Subject: [PATCH] =?UTF-8?q?docs(prd-0019):=20drop=20e/p=20fallback=20?= =?UTF-8?q?=E2=80=94=20selection-only,=20no-op=20otherwise?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When no agent is selected, `e` / `p` do nothing (status line shows "no agent selected") rather than falling back to today's global discover-and-prompt. The discover-and-prompt scaffolding in `_operator_edit_routes_flow` / `_operator_edit_allowlist_flow` comes out entirely — selection in the agents pane is now the only way to scope an edit. Old open-question #4 (single-bottle shortcut behavior in proposals-pane mode) is moot and removed. --- docs/prds/0019-active-agents-in-dashboard.md | 36 +++++++++----------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/docs/prds/0019-active-agents-in-dashboard.md b/docs/prds/0019-active-agents-in-dashboard.md index 6a5b8bb..548b9dc 100644 --- a/docs/prds/0019-active-agents-in-dashboard.md +++ b/docs/prds/0019-active-agents-in-dashboard.md @@ -63,10 +63,10 @@ the "operator wants to make an unprompted change" case. 4. Pressing `e` (routes edit) or `p` (pipelock edit) with an agent selected targets that agent. No disambiguation prompt; no global discover. -5. Pressing `e` / `p` with NO agent selected (e.g., zero agents - running, or the cursor is in the proposals pane) falls back - to today's global behavior — discover, prompt if multiple, - abort if none. +5. Pressing `e` / `p` with NO agent selected is a no-op (status + line surfaces "no agent selected"). The global discover- + and-prompt path comes out — selection in the agents pane is + now the only way to scope an edit. 6. The active-agents list refreshes on the same ~1s tick as the proposals list so an agent starting / stopping is reflected without operator action. @@ -106,10 +106,11 @@ the "operator wants to make an unprompted change" case. - Tab-toggle selection state: which pane the cursor is in. `j` / `k` / arrow keys move within that pane. - Rewire `_operator_edit_routes_flow` and - `_operator_edit_allowlist_flow` to accept an optional - "preselected slug". When the cursor is in the agents pane, - pass that slug; otherwise keep today's discover-and-prompt - behavior. + `_operator_edit_allowlist_flow` to require a slug from the + caller. The discover-and-prompt scaffolding (no-arg + discover + single-bottle shortcut + multi-bottle prompt) + comes out. The dashboard's key handlers pass the agents-pane + selection in directly, or no-op if nothing is selected. - Status-line indicator showing which agent is selected (or "no agent selected" when in the proposals pane). - Tests for the new discovery helper. @@ -154,10 +155,12 @@ active agents: - Each pane keeps its own selection index. Switching panes doesn't lose the position in the other. - `e` / `p`: - - Cursor in the agents pane → use that agent's slug. - - Cursor in the proposals pane → today's discover-and-prompt - behavior (so the muscle memory still works for operators - who didn't switch panes first). + - An agent is selected (cursor in the agents pane on a row) + → use that agent's slug. + - Otherwise → no-op with a status-line "no agent selected". + The pre-PRD global discover-and-prompt code paths come out + of `_operator_edit_routes_flow` and + `_operator_edit_allowlist_flow`. ### Active-agent discovery @@ -215,18 +218,13 @@ Sized small. previous row, not jump to the top. Mirrors the existing proposals-list behavior. -4. **Should `e` / `p` still prompt when the cursor is in the - proposals pane but only one agent is running?** Today the - single-bottle case skips the prompt; we'd keep that. Two - or more bottles still prompts in proposals-pane mode. - -5. **Color / highlight for the selected agent.** The proposals +4. **Color / highlight for the selected agent.** The proposals pane uses green for newly-arrived. Agents could use a different attribute (e.g., reverse video for selection, no color for the row itself). Aesthetic decision; pick something readable in the standard 8-color palette. -6. **Selecting a proposal cross-selects its agent?** Possible +5. **Selecting a proposal cross-selects its agent?** Possible UX: highlighting a proposal in the proposals pane could auto-move the agents-pane cursor to that proposal's bottle. Cute, but probably confusing — the explicit Tab