Skip to content

v2.2.0 — Run history + startup resume chooser

Choose a tag to compare

@vankhangfet vankhangfet released this 20 Sep 04:56
· 84 commits to main since this release

v2.2.0 — Run history + startup resume chooser

Features

  • Run history — per-run artifact snapshots. Every NEW run copies the previous run's flat artifacts into .orca/artifacts/runs/<seq>-<timestamp>/ before its own steps write anything — a COPY, so the flat layout and its readiness/--from resume semantics are exactly what they always were. Each folder keeps the run's artifacts plus its status.js (objective, per-step outcomes, token usage), so any two runs compare side by side long after the second one overwrote the first. Copy failures warn and never block a run; the folder is gitignored; nothing is pruned automatically.
  • Startup resume chooser. When previous runs exist and none of --from / --only / --new was passed, the flow lists the 10 newest runs (newest first, the current flat state labeled (current); objective, steps-succeeded and overall verdict per line) and asks before starting:
    • <n> — resume that run. Archived entries archive the current flat state FIRST, then restore the chosen run's artifacts (copy-over, non-destructive); the resume point is the first enabled step not recorded succeeded — an automatic --from reusing all existing resume machinery.
    • 0, Enter, or EOF — start a NEW run. Piped stdin (scripts, CI) closes with EOF, so automated invocations never block on the prompt.
    • Picking a completed run starts a fresh run instead (noted in the log).
  • --new flag — skip the chooser, always start a new run (the snapshot of the previous run still happens).
  • Dry-run now lists the worktree's previous runs read-only above the plan.

Bug fixes

  • Chooser input is strictly validated (/^\d+$/): garbage like 1x, +1, or an out-of-range number starts a NEW run — never silently resumes the wrong entry (prefix-parsing would have picked entry 1).
  • The E2E harness no longer silently runs the FULL suite on an empty or zero-match --only filter — both now fail fast with a clear message.
  • A failed snapshot no longer consumes a sequence number (the empty folder is removed).

Documentation

  • .orca/CONFIGURATION.md: new "Run history (per-run snapshots)" subsection; section 5.5 "The startup run chooser (resume a previous run)" (trigger, listing, selection semantics incl. copy-over restore and the chooser-before-config-error note); --new row in the flags table.
  • README.md: run-snapshot sentence on the "Everything is left on disk" bullet; "Resuming runs" note; troubleshooting entry for picking the wrong run.
  • ROADMAP.md: v2.2.0 shipped row; the queued status-page run selector remains open (disk side shipped).