Skip to content

Interactive review flow and stage orchestration #231

Description

@SorraTheOrc

Implement the interactive review flow for Stage 3:

  • runReviewStage(session): Main stage function returning 'advance' | 'back'

    • Display palette summary table using outputTable()
    • Show coherence warnings (or skip message if <3 entries)
    • Present action menu: swap selection, add recipes, remove recipes, confirm and advance, go back
    • Swap: prompts user to pick a recipe, then re-enters explore audition for that recipe
    • Add: returns 'back' to go to Define stage (preserving current state)
    • Remove: prompts user to pick recipe to remove, removes from selections and manifest
    • Confirm: shows final confirmation prompt, then returns 'advance'
    • Back: returns 'back'
  • Wire into src/tui/index.ts:

    • Import runReviewStage
    • Replace placeholder at lines 107-110 with proper dispatch (same pattern as explore stage)

Acceptance Criteria:

  • runReviewStage displays the palette summary table on entry
  • Coherence warnings are displayed for flagged entries
  • Info message shown when <3 entries (coherence check skipped)
  • All menu actions (swap, add, remove, confirm, back) work correctly
  • Confirmation prompt is shown before advancing to Export
  • index.ts properly dispatches to runReviewStage and handles advance/back
  • Removing last entry warns user and prevents advancing with empty palette

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions