Skip to content

Codex: serve and delegate A2A tasks - #26

Merged
dimavrem22 merged 10 commits into
mainfrom
feat/a2a-v1
Jul 27, 2026
Merged

Codex: serve and delegate A2A tasks#26
dimavrem22 merged 10 commits into
mainfrom
feat/a2a-v1

Conversation

@dimavrem22

@dimavrem22 dimavrem22 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Decisions

  • Live protocol coverage: Exercise inbound and outbound behavior at both single-turn and multi-turn lengths. Serialize the four cases because they share live identities and one tunnel endpoint.
  • Durability: Write receiver deliveries before acknowledgement and reconcile registry state before paging every submitted task on restart.
  • Cross-process authorization: Bridge verified A2A turn context to the Codex MCP subprocess through a private mode-0600 file keyed by the isolated session, then remove it when the turn ends.
  • Delegation continuity: Persist outbound message/retry data before SendMessage, promote it to (identity, RPC origin, context) after the server returns, and inject later task updates into the originating Codex session.
  • Compatibility: Keep the base SDK range for non-A2A users, while documenting that A2A requires Inkbox SDK 0.5.6 or newer.

Changes

  • Add a published-SDK live A2A workflow that boots the real host and verifies all four protocol legs.
  • Add A2A call, check/wait, reply, and explicit inbound complete/ask/fail tools.
  • Subscribe and serve inbound A2A tasks with durable deduplication, serialized context sessions, task cancellation, restart recovery, and guarded default completion.
  • Persist caller-side delegation routing and return a2a.sent_task.updated events to the delegating session.
  • Bump the plugin to 0.1.5.

Related pull requests

Prerequisites

Merge after A2A server support is deployed and Inkbox SDK 0.5.6 is available.

Verification

  • uv run --with pytest python -m pytest -q: 310 passed, 22 skipped.
  • Unit and host-contract checks passed.
  • Full-stack live checks passed, including mock and real channels, inbound and outbound A2A at single-turn and multi-turn lengths, voice, external events, and the aggregate gate.

@dimavrem22
dimavrem22 marked this pull request as draft July 27, 2026 05:55
@dimavrem22
dimavrem22 marked this pull request as ready for review July 27, 2026 08:39
@dimavrem22
dimavrem22 merged commit 72a50db into main Jul 27, 2026
20 checks passed
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