Repository navigation
fix(j5): agent-to-human sends must be asks or replies - #57
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Essentials Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
…nbox mirror, ruling record Jackson's ruling 2026-09-02 (option D, supersedes issue #44's A/B/C and PR #57's wording): an agent-to-human send must be an ask or a reply; a plain message to a person is refused fail-closed. Permanent law. Address book human row becomes can_receive_message=false. Urgency rename to 'whenever' recorded as recommended, not ruled. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
deb1c69 to
a8e2816
Compare
936d4cb to
c630dc2
Compare
|
Posted by an AI agent on Jackson's behalf CodeRabbit review disposition at c630dc26:
Local verification at 2fa7749ae: six focused A2A/MCP suites, 34 tests passed; |
|
Posted by an AI agent on Jackson's behalf Post-review CI disposition: both exact-head workflows at 2fa7749ae correctly exposed dependent test fixtures, not a production regression. 138b8513b updates the exact recovery-response assertion and represents the delivery race as a historical persisted follow-up, so the worker preserves compatibility for already-durable traffic while Local verification at 138b8513b: 8 focused A2A/MCP suites, 48 tests passed; |
138b851 to
95b474a
Compare
Posted by an AI agent on Jackson's behalf
Plain human-directed sends created durable ghost traffic: no human surface and no accountable obligation. Product has ruled that behavior out permanently.
This PR refuses a human-targeted send unless it is an ask (
expect_reply=truewith intent and urgency) or a reply (exchange_id). It also refuses explicit human exchange follow-ups before any ledger write. A second ask to a person while one is already open is refused with a typed error instead of silently coalescing. Agent-to-agent plain sends remain open. Human participant rows now exposecan_receive_message=falseandcan_open_exchange=true, and unreachable-participant recovery text now distinguishes an addressable agent from a human row that can open an ask. The served version-15 tool description is mechanically byte-equal to the product contract.Tests: focused A2A service, inbox, formatter, toolkit, handler, and registration suites (48 passed);
vp run --filter t3 typecheck(no errors).Built with GPT-5.6 Codex in T3 Code.
Closes #44