Skip to content

feat(agent): preview post-tool convergence before boundaries - #457

Draft
zhengdaqi wants to merge 2 commits into
codex/convergence-v24r14-issue-closure-transactionfrom
codex/convergence-v24r15-post-tool-preview
Draft

feat(agent): preview post-tool convergence before boundaries#457
zhengdaqi wants to merge 2 commits into
codex/convergence-v24r14-issue-closure-transactionfrom
codex/convergence-v24r15-post-tool-preview

Conversation

@zhengdaqi

Copy link
Copy Markdown
Collaborator

Summary

  • add a bounded, domain-neutral PostToolUse convergence preview transported only through internal lifecycle metadata
  • defer one required Progress Lease boundary only for confirmed progress, completion, or an in-budget handoff; fail closed before the model when the next PreModelRequest does not confirm it
  • adapt Legal Coverage only for durable legal-state writes and state-changing plugin CLI commands, with independent Gateway and O1 decisions

Why

The preserved V24R14 Case 09 trajectory spent an estimated 10-15 minutes on 19 forced full compactions. In the dominant ordering defect, a tool had already written a valid state-bound proposal, but AgentLoop compacted before the next PreModelRequest could expose the new handoff.

Boundaries

  • no validator, model, Router, Memory, deadline, corpus, prompt, or Lease threshold change
  • no Case 09 text matching
  • repair-only, replayed, over-budget, and multi-scope previews cannot defer
  • PostToolUse previews are advisory and never persist lease state

Verification

  • focused cross-layer gate: 103 passed, 0 failed
  • full repository suite: 325 passed, 0 failed
  • real local Gateway: two deferred boundaries, zero forced full compactions, complete O1 model/tool/turn pairing, zero recorder drops
  • stale-preview counterexample: stopped with boundary_preview_unconfirmed before a third model request
  • git diff --check: clean

Evidence: .omo/evidence/20260727-convergence-v24r15-post-tool-preview/QA.md

Product gate

This PR completes only the code gate. Case 09 must run once in a new immutable V24R15 campaign using the unchanged V24R14 runner controls before V25 or the 85-case campaign can proceed.

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