Repository navigation
0.1.8 Beta2: Define the Codex CLI 0.146 Collaboration V1/V2 schema boundary #64
Copy link
Copy link
Closed
Labels
P1Priority 1: current iteration goalPriority 1: current iteration goalcampaign:0.1.8-beta20.1.8 Beta2 generic tool compatibility campaign0.1.8 Beta2 generic tool compatibility campaignenhancementNew feature or requestNew feature or requestorch:readyOrchestrator V6: valid hashed contract is complete and dispatchableOrchestrator V6: valid hashed contract is complete and dispatchableready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agentwayfinder:researchWayfinder evidence or research ticketWayfinder evidence or research ticket
Description
Parent
Outcome
Record the exact Codex CLI 0.146 Collaboration V1/V2 schema boundary needed to keep Beta2 compatibility handling from corrupting either protocol.
This is a structural inventory and isolation contract. Full real-agent lifecycle qualification remains in the later Collaboration V2 phase.
Scope
- Capture the model-visible V1 and V2 declaration shapes, names, argument fields, result identities, history items, and streaming forms.
- Identify the exact signal that selects V1 versus V2 before any schema repair.
- Record which V2 namespace shape may pass natively and which selected protocols require the generic namespace-to-function Adapter.
- Define the fields and lifecycle assumptions that V1 repair/scheduling code must never add to V2.
- Confirm that Codex Client remains the agent owner/executor.
Acceptance criteria
- V1 and V2 declaration/call/result/history schemas are independently documented from CLI 0.146.
- V2-only
fork_turns, task paths, and tool names cannot be confused with V1 agent-ID/close/resume behavior. - The boundary is decidable before tool exposure or semantic repair.
- The generic V2 namespace Adapter requirements are sufficient for 0.1.8 Beta2: Isolate V1 repair from V2 namespace adaptation #198/0.1.8 Beta2: Implement runtime-derived tool compatibility for custom Responses endpoints #58.
- No Gateway-owned agent execution, scheduling, forged result, or V2-to-V1 downgrade is permitted.
- Full spawn/message/follow-up/wait/interrupt/list workflow, restart, and cross-Home qualification are explicitly deferred to the Collaboration V2 phase.
Blocked by
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P1Priority 1: current iteration goalPriority 1: current iteration goalcampaign:0.1.8-beta20.1.8 Beta2 generic tool compatibility campaign0.1.8 Beta2 generic tool compatibility campaignenhancementNew feature or requestNew feature or requestorch:readyOrchestrator V6: valid hashed contract is complete and dispatchableOrchestrator V6: valid hashed contract is complete and dispatchableready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agentwayfinder:researchWayfinder evidence or research ticketWayfinder evidence or research ticket
Activity
NOirBRight commentedon Jul 16, 2026
Reporter evidence — GLM-5.2 visible Worker receives continuations but cannot discover the outbound Task callback (2026-07-16)
Sanitized bounded readback from Codex Desktop 26.707.12708.0 / Codex CLI 0.144.5 through CodexHub:
model=glm-5.2,effort=max,approval=never, and danger-full-access. Independent Gateway telemetry records the same request stream on Ollama Cloud native Responses withmodel=glm-5.2androute_mode=codexhub.tool_searchcalls. All 63 completed, including repeated exact-name queries forsend_message_to_threadandcodex_app__send_message_to_thread; every search output contained an empty tool list.send_message_to_threadcall occurred. Other exposed functions did execute, includingshell_commandand onelist_mcp_resources, so this was not a total model/tool-call outage.BLOCKEDresponse terminated the loop cleanly.Failure-boundary classification
This is not merely a reluctant model that declined to invoke discovery: GLM-5.2 selected
tool_searchrepeatedly. The current red boundary is that the Deferred recovery path returned no callback capability even for exact-name searches, leaving inbound Task continuation functional while outbound native Task messaging was unavailable.#64 owns the visible-Task send/continue lifecycle and its Deferred
tool_searchrecovery path. #63 should distinguish planner/registry exclusion or search-result loss from model next-call behavior when this replay is incorporated into the runtime trace harness.NOirBRight commentedon Jul 16, 2026
Ownership refinement after root-cause expansion
The reporter's expanded evidence now identifies a narrower production bug in addition to this broad verification scope. #156 is the P0 root-fix owner for:
tool_searchreplay on the external adapter path; andspawn_agent.agent_typeloss plus missing effective worker/model/reasoning readback.#64 remains the V1/V2 collaboration lifecycle verification owner and should consume #156's post-fix native GLM-5.2/max Active → Done replay. This does not remove #64's existing #62/#63 research dependencies.
NOirBRight commentedon Jul 22, 2026
rust-v0.145.0 evidence baseline
Keep this issue as the single native V1/V2 lifecycle evidence ticket; do not create a duplicate 0.145 research issue.
The 0.145 run should additionally record:
Scoped implementation follow-ups are tracked separately:
Run the native evidence only after the current connection-stability frontier recorded in #147; this issue is not promoted to P1 merely because upstream marked V2 Stable.
25 remaining items
NOirBRight commentedon Aug 4, 2026
Orchestrator dispatch status (2026-08-04)
Campaign:
campaign:0.1.8-beta2.This ticket is pre-admitted for a single Luna Max worker, but dispatch is held by
dispatch_after: #62. The worker may start only after #62 is closed on the accepted candidate lineage. Its scope is the authoritative Codex CLI 0.146 Collaboration V1/V2 schema boundary and focused contract tests; it must not implement Collaboration V2, alter routing, or make a release decision. Completion still requires exact-SHA review, CLI/manual evidence, and HostedCI / gate.NOirBRight commentedon Aug 5, 2026
Dependency update (2026-08-05): #62 has completed its reviewed CLI 0.146 evidence gate and is closed. This issue is now unblocked for its own structural V1/V2 schema work. Keep #65 locked; this does not authorize full Collaboration V2 lifecycle qualification or a Beta2 release/tag.
NOirBRight commentedon Aug 5, 2026
Roadmap reconciliation (2026-08-05)
The earlier 2026-08-02 note moving this issue to Beta4 is superseded by the current #248/#318 decision and the 2026-08-05 dependency update. #64 is the Beta2 structural input: it records only the CLI 0.146 V1/V2 boundary needed by #198/#58. Full Collaboration V2 lifecycle qualification remains in Beta4 (#284).
The accepted #62 evidence is closed and this issue is now unblocked. #65 remains locked; this comment does not authorize a Beta2 tag/release or a new real-client request.
NOirBRight commentedon Aug 5, 2026
{"contract":{"design":["Use the accepted Issue #62 CLI 0.146 source contract and repository evidence as the sole input; do not run a new real-client request or use 0.144 behavior as 0.146 proof.","Produce a bounded machine-readable and human-readable inventory for Collaboration V1 and V2 declaration, call, result, history, streaming, and terminal/error shapes, including exact discriminators and owner/executor semantics.","Define one decidable pre-exposure V1/V2 boundary and explicitly separate V2 namespace/tool names, task paths, fork_turns, and continuation identities from V1 agent-id/close/resume semantics.","Document only the namespace-to-function Adapter requirements needed by #198/#58; do not implement adapters, routing, scheduling, tool execution, or full Collaboration V2 lifecycle.","Add focused contract and negative tests proving V1 repair cannot accept V2-only fields and that unknown/ambiguous boundary inputs fail closed."],"acceptance":["The inventory identifies the exact CLI 0.146 source revision and independently documents V1 and V2 declaration/call/result/history/stream schemas.","The boundary is decidable before tool exposure or semantic repair; V2-only fork_turns/task paths/tool names cannot be interpreted as V1 agent-id/close/resume fields.","The artifact states Codex Client owns agent execution and explicitly defers full spawn/message/follow-up/wait/interrupt/list, restart, and cross-Home qualification to Beta4.","Focused issue-64 tests pass, malformed/ambiguous schema replays fail closed, and no production routing or model-selection behavior changes.","git diff --check passes and the exact candidate is ready for Spec/Quality review before any manual release verification."],"change_claims":{"paths":["docs/evidence/issue-64/**","tests/test_issue_64*","scripts/*issue_64*"],"resources":["schema:codex-cli-0.146-collaboration-v1-v2","contract:tool-compatibility-boundary"]},"done_when":["py -3.13 -m pytest tests/test_issue_64*.py -q","git diff --check","python scripts/report_quality_gates.py"],"dependencies":{"dispatch_after":[62],"merge_after":[62]},"priority":"P1","difficulty":"standard","risk":"standard","unresolved_decisions":[],"sha256":"860b68e024489270518a77f72c3b068a5307e6321a36844643e0ab006b069346"},"dispatch":null}NOirBRight commentedon Aug 5, 2026
Implemented and merged via PR #359 (merge commit f4a0ddb).
The Beta2-scoped structural boundary is complete at exact candidate e69ade0: V1/V2 discriminator and schema inventory, fail-closed reconciliation, adapter requirements, and negative replay tests. Full Collaboration V2 lifecycle qualification remains deferred to Beta4; this closure does not authorize #65 or a Beta2 release/tag.
NOirBRight commentedon Aug 8, 2026
Beta3 scope decision (2026-08-08)
The accepted structural inventory remains historical evidence, but the scheduling note that defers full official Collaboration lifecycle qualification to Beta4 is superseded by the current release decision. Beta3 Task 4 (#369) now explicitly qualifies the complete official V1/V2 lifecycle for each list-visible Official model: V1 and V2 selection, spawn, returned identity, message/agent_message, follow-up, wait/result, list/interrupt where supported, streaming/history, restart/readback, and terminal/error shape.
This override is limited to official-model qualification. Generic third-party Collaboration V2 lifecycle work remains Beta4 (#252/#282/#283/#284). No catalog default, global switch, provider fallback, or gateway execution behavior is changed by this scheduling decision.
release: 0.1.8-beta.3 advanced tools and official collaboration controls
promote: 0.1.8-beta.3 from dev