Skip to content

feat(broker): support AgentKit tool continuations - #3

Merged
Sertaç Özercan (sozercan) merged 4 commits into
mainfrom
feat/governed-tool-workflows
Sep 14, 2026
Merged

Sertaç Özercan (sozercan) merged 4 commits into
mainfrom
feat/governed-tool-workflows

Conversation

@sozercan

@sozercan Sertaç Özercan (sozercan) commented Sep 11, 2026 •

Copy link
Copy Markdown
Member

Hosted AgentKit agents can now continue multi-step workflows after Orka executes each requested tool. Configure ORKA_FOUNDRY_BROKER_AGENTKIT_CONTINUATION_PROOF with the hosted agent's shared proof. After validating ownership, leases, and response/call IDs, the broker normalizes MCP success/error results and attaches the proof to tool-result continuations.

Caller-supplied proof fields and headers are rejected. The proof stays outside the ACP child, ledger, and logs. Conflicting case-folded MCP error flags are also rejected before projection. Bounded failure diagnostics expose only a failure stage, hashed owner, invocation sequence, allowlisted error code, and numeric HTTP status; response bodies and provider messages remain excluded.

Validation:

  • make verify, focused race-detector tests, and production image builds passed.
  • Eight cross-repository cases passed using the real AgentKit server, Foundry ACP process, and lifecycle broker. They cover sequential tools, tool errors, authorization denial, stripped continuation proof, disconnect, lease expiry, lost acknowledgement, and native MAF cancellation.
  • Live Orka harness v2 validation passed through the public Foundry gateway with a real Azure model and simulated operational tools. Three independent workflows each completed five hosted invocations and exactly four governed tool calls, with no repeated fixture operations.
  • Live cancellation, healthy reuse, and deadline enforcement passed after early response acknowledgement. Prompt/session settlement proofs and exact remote session absence were verified. The deadline run ended Cancelled / TaskTimeout.

The shared proof authenticates the continuation route; it is not a signed execution receipt. Approval-required tools remain unsupported. Lost acknowledgements and unresolved remote ownership still fail closed; these changes do not authorize inference replay or forced cleanup.

Companion AgentKit change: sozercan/agentkit#25

Signed-off-by: Sertac Ozercan <sozercan@gmail.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-11T23:17:15.306834Z 2d997ee New commits
🔒 Security Review ✅ Completed 2026-09-11T20:01:35.071565Z 54b57e2 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Signed-off-by: Sertac Ozercan <sozercan@gmail.com>
Signed-off-by: Sertac Ozercan <sozercan@gmail.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0a7223ebc7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "Codex (@codex) review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "Codex (@codex) address that feedback".

Comment thread README.md
Signed-off-by: Sertac Ozercan <sozercan@gmail.com>
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