Skip to content

Fix planner hangs and preserve work during verification retries - #87

Merged
DevMando merged 1 commit into
mainfrom
codex/planner-verification-recovery
Sep 5, 2026
Merged

Fix planner hangs and preserve work during verification retries#87
DevMando merged 1 commit into
mainfrom
codex/planner-verification-recovery

Conversation

@DevMando

@DevMando DevMando commented Sep 5, 2026

Copy link
Copy Markdown
Owner

Long-running plans could stall when the interface stopped reading progress, or repeat implementation work when only the verification response failed. Retries also discarded earlier evidence, causing the agent to repeatedly recheck unchanged files instead of finishing the task.

This change makes recovery preserve completed work and clearly separates implementation failures from unavailable verification.

What changes for users

  • Progress handling releases blocked work when the interface exits or encounters an error.
  • Verification retries use saved evidence without rerunning implementation. Invalid responses receive bounded retries and a structured JSON fallback.
  • Actual failures carry their diagnosis and previous tool results into a targeted repair attempt.
  • Earlier evidence remains available across repairs when file hashes confirm the observed files are unchanged. File-read results receive more space so useful content is not unnecessarily clipped.
  • Checkpoints preserve partial file changes and pending verification. Saving failures are shown, and exhausted recovery pauses the plan instead of silently skipping required work.
  • Plans receive bounded repository context, retain earlier step results, and request concrete acceptance checks. Failed plan generation is shown explicitly rather than replaced with a generic one-step plan.
  • Known code edits invalidate earlier checks; completion is evaluated against observed tool results rather than a success statement alone.

Validation

  • 143 planner tests passed on .NET 8 and .NET 10.
  • Regression coverage includes early-exit hangs, malformed verification responses, verification-only retry, pause/resume, targeted repairs, evidence retention, changed-file invalidation, and checks after edits.
  • The latest user acceptance session completed all four steps. Stronger runtime checks identified and helped repair ghost movement and restart defects in the generated game.
  • The Desktop integration built successfully in an isolated output folder with zero warnings or errors; the running debugger locked the normal output DLL.

Remaining limitations

Overlapping plan steps and inconsistent model interpretation of acceptance criteria can still cause unnecessary checks. Headless acceptance tests do not establish complete real-browser behavior. These changes improve recovery and evidence handling; they do not guarantee every generated implementation is correct.

The companion Desktop PR, DevMando/MandoCode.Desktop#49, adds the verification-only retry and pause controls. Merge this shared-planner change before the Desktop integration.

@DevMando
DevMando merged commit 08527c1 into main Sep 5, 2026
@DevMando
DevMando deleted the codex/planner-verification-recovery branch September 5, 2026 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant