Files
roboco/tests/unit/gateway
Renn FandClaude Opus 4.7 855cd24477 feat(gateway): restore Gate Set D content-tool ownership guards
When a caller passes an explicit task_id to commit / note / say / dm /
evidence, ContentActions now verifies task.assigned_to == caller_agent_id
before allowing the side effect. Auto-fill from get_active_task_for_agent
is implicitly self-owned and does not need a re-check.

evidence() additionally allows assigned_to=None (post-handoff transient
state) so QA / documenter can inspect tasks between reassignments.

Pre-gateway, agents could not even see tasks they didn't own because the
MCP handlers resolved task from session context. The gateway exposes
task_id parameters across multiple verbs, so the explicit ownership
gate is required.

Exception: say() and dm() with NO task_id are exempt — used for channel
announcements and off-task A2A. The strict guard only applies when the
agent supplies a task_id parameter.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 03:31:10 +02:00
..
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00
2026-05-02 03:11:49 +02:00