Skip to content

feat: persist verified goal phases and ACP plan metadata - #66

Merged
danyel117 merged 7 commits into
mainfrom
codex/goal-acp-plans
Oct 8, 2026
Merged

danyel117 merged 7 commits into
mainfrom
codex/goal-acp-plans

Conversation

@danyel117

@danyel117 danyel117 commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Persist the overall goal's phases, tasks, completion criteria, decisions and verification evidence. A verified task advances the saved plan while the original objective stays active; only verified overall completion closes the goal.

Related issue

Related to #59. ACP command lifetime is delivered by #65, with explicit Cancel/transport shutdown correction in #67. The host integrations are anomalyco/opencode#53913 (lifetime/Cancel) and anomalyco/opencode#53929 (live/replayed plans).

Changes

  • Add update_goal_plan to V1/V2 with atomic goal-ID and revision checks, evidence requirements, bounded history, and scope-change evidence.
  • Carry plans through continuation, compaction, persistence and archives; migrate V1/V2 state to V3 and retain V3 sidebar support.
  • Require a matching explicit /goal edit <objective> grant to clear a planned objective. Completed work cannot disappear; modifying pending scope requires recorded evidence.
  • Publish standard ACP plan metadata on goal tools; completion rejects unfinished planned phases.

Verification

Lint, typecheck, build and npm pack dry run pass. 361 Bun tests pass. Opus approved the implementation; all five PR CI checks and the release workflow passed. Native packed-package ACP tests cover two phases, automatic continuation, original-scope retention, live and reloaded plans, and cancellation during work and between cycles. Tests use isolated state and a local SSE fixture. Published npm 0.1.59 was installed exactly, gitHead 3eba062 verified, and the same native ACP scenarios passed against both pending host fixes combined: create/get goal, two phases and two continuations, five live and five reloaded plans, busy Cancel, idle Cancel, and transport shutdown preserving the goal. Combined host validation: 111 ACP tests and all 36 package typechecks pass. Native Zed UI rendering and an upstream OpenCode release remain pending maintainer integration.

Checklist

  • Regression coverage for the new behavior
  • bun run lint passes
  • bun run typecheck passes
  • bun run build passes and dist/server.js is committed
  • README/docs updated

Merging to main automatically publishes a new patch release to npm.

Chain Context

main
 └── #65 goal command lifetime
      └── #67 explicit Cancel intent
           └── 📍 #66 persistent plans and ACP metadata

@danyel117
danyel117 changed the base branch from codex/goal-acp-lifetime to main October 8, 2026 09:19
@danyel117 danyel117 added the size:exception Maintainer-approved exception to the review size budget label Oct 8, 2026
@danyel117
danyel117 marked this pull request as ready for review October 8, 2026 12:34
@danyel117
danyel117 merged commit 3eba062 into main Oct 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:exception Maintainer-approved exception to the review size budget

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant