FN-5880: recover plan-ready mission interview drafts
Keep completed mission interview summaries resumable until they are approved or discarded. - include mission interview sessions in dashboard, CLI, and extension draft listings - relabel complete drafts as plan-ready review items and reopen them at the summary approval step - add regression coverage and docs/changeset updates for resumable complete drafts Files changed: .../fn-5880-mission-interview-complete-draft.md | 5 ++ docs/missions.md | 8 +-- packages/cli/src/__tests__/extension.test.ts | 13 +++- .../cli/src/commands/__tests__/mission.test.ts | 11 ++- packages/cli/src/commands/mission.ts | 17 ++++- packages/cli/src/extension.ts | 7 +- .../dashboard/app/components/MissionManager.tsx | 24 ++++--- .../components/__tests__/MissionManager.test.tsx | 70 ++++++++++++++++++ packages/dashboard/app/components/mission-types.ts | 2 +- .../mission-interview-drafts-routes.test.ts | 18 ++++ - .../src/__tests__/mission-interview.test.ts | 82 ++++++++++++++++++++++ packages/dashboard/src/mission-interview.ts | 36 +++++----- 12 files changed, 252 insertions(+), 41 deletions(-) Fusion-Task-Id: FN-5880 Fusion-Task-Lineage: 18a9c25c-3f59-4179-9e9c-63f0747acb7f
This commit is contained in:
@@ -158,7 +158,7 @@ The dashboard supports mission planning workflows where you can:
|
||||
- Associate features to executable tasks
|
||||
- Track progress at each layer
|
||||
- Persisted missions with `interviewState: "in_progress"` remain visible as interview-styled mission cards in the main mission list so planning work does not disappear after reloads
|
||||
- Resume in-progress mission interview sessions directly from separate transient session rows in the main missions list (`mission_interview` sessions in `generating`, `awaiting_input`, or `error`) before a mission record is created
|
||||
- Resume in-progress mission interview sessions directly from separate transient session rows in the main missions list (`mission_interview` sessions in `generating`, `awaiting_input`, `error`, or `complete`) before a mission record is created; `complete` means the plan summary is ready for review/approval but has not been converted into a mission yet
|
||||
- Banner-driven mission interview resumes are one-shot: if you close or send the interview to background, Missions re-fetches project-scoped `mission_interview` sessions and re-surfaces the transient row (including on the mobile stacked Missions view) so resume/retry remains discoverable without losing persisted `interviewState: "in_progress"` mission cards
|
||||
- Mission interview, milestone interview, and slice interview agents have read-only board visibility via `fn_task_list` and `fn_task_get`, so they can reference active backlog context and avoid duplicating in-flight tasks while asking planning questions
|
||||
|
||||
@@ -166,9 +166,9 @@ The dashboard supports mission planning workflows where you can:
|
||||
|
||||
Mission interview sessions are persisted in `ai_sessions` before a mission row exists, so unfinished drafts stay recoverable across reloads and restarts.
|
||||
|
||||
- **Dashboard:** the Missions view shows a **Drafts** section for in-flight `mission_interview` sessions with **Resume** and **Discard** actions.
|
||||
- **CLI:** `fn mission list` shows drafts by default before normal mission status sections. Pass `--no-drafts` to hide them.
|
||||
- **pi extension:** `fn_mission_list` includes drafts by default and accepts `includeDrafts: false` to suppress them.
|
||||
- **Dashboard:** the Missions view shows a **Drafts** section for in-flight `mission_interview` sessions with **Resume**/**Review** and **Discard** actions. A `complete` draft is a generated-but-unapproved plan parked at the summary step.
|
||||
- **CLI:** `fn mission list` shows drafts by default before normal mission status sections, including `complete` plan-ready drafts. Pass `--no-drafts` to hide them.
|
||||
- **pi extension:** `fn_mission_list` includes drafts by default and accepts `includeDrafts: false` to suppress them; `complete` mission interview drafts are returned here too.
|
||||
- **Discarding drafts:** discarding removes the `ai_sessions` row even for cold drafts after a server restart.
|
||||
|
||||
Mission interview draft endpoints:
|
||||
|
||||
Reference in New Issue
Block a user