Files
saltbo__agent-kanban/docs/adr/0008-signed-task-session-observation.md

27 lines
1.1 KiB
Markdown

# 0008: Observe only the Session proven by Task Claim
Status: accepted
## Context
The board must display work performed for a Task without owning Session
execution. Guessing the latest Session by Agent or accepting a caller-provided
URL could expose unrelated work or cross a tenant boundary.
## Decision
Task Claim copies `runtime` and the canonical Agency `session_id` only from the
verified Realmroot-issued Agent binding into an immutable Task observation
binding. Claim accepts no client-authored Session identifier or socket URL.
For an authenticated human viewer, AK uses delegated Agency authority and the
tenant's mapped Project to read that exact Session. It verifies the returned
Session and Project identities and relays the canonical event socket read-only.
The relay accepts history-backfill frames and rejects runtime commands.
## Consequences
Task work is observable without an AK Session entity or reverse dependency in
Agency. Missing, mismatched, or unavailable Agency data fails closed. Agents
cannot use the observation endpoints to control a Session.