This commit is contained in:
30
docs/nl-command-bar/FASTFOLLOW-multistep-plan.md
Normal file
30
docs/nl-command-bar/FASTFOLLOW-multistep-plan.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# Fast-follow: multi-step plan execution for the NL Command Bar
|
||||
|
||||
**Opened:** 2026-06-27 · **Status:** open · **Owner:** TBD
|
||||
|
||||
## Context
|
||||
The Tier 1 NL intent resolver (`POST /api/command/interpret`) ships in v1 with
|
||||
**single-action + approval** only (per the brief's §2 "v1 = single-action").
|
||||
The `plan` kind is **typed but not executed**:
|
||||
|
||||
- `command-intent.ts` carries `InterpretResult.steps?: ResolvedAction[]`.
|
||||
- `command-interpret.ts` collapses a 1-step plan to a single action and
|
||||
**downgrades a multi-step plan to `clarify`** ("This needs multiple steps: …
|
||||
Want me to start with the first?"), offering only the first step.
|
||||
|
||||
## Scope of this ticket
|
||||
Execute a validated multi-step plan end-to-end:
|
||||
1. Sequential execution of `steps[]` with a per-step preview (reuse the approval
|
||||
surface for each side-effect step; reads/navs run inline).
|
||||
2. Stop-on-failure + partial-progress reporting.
|
||||
3. A plan review surface in the palette (list the steps, let the user drop/reorder
|
||||
before running) — or hand off to the chat/agent loop for true orchestration.
|
||||
4. Decide ownership: a multi-step plan may belong to the **agent loop**
|
||||
(`agent-loop.ts`) rather than the command bar, since it already has
|
||||
step/confirmation/loop-guard machinery. Evaluate routing `plan` → a scoped
|
||||
agent run instead of bespoke palette orchestration.
|
||||
|
||||
## Guardrails (unchanged)
|
||||
- Closed registry only — every step is a registry action id, server-validated.
|
||||
- Destructive steps always approve (D4 / `confirmation.ts`), every autonomy level.
|
||||
- Tier gate applies per step.
|
||||
Reference in New Issue
Block a user