message AuditEntry {
string id = 1; // Unique entry ID
string timestamp = 2; // ISO-8601
string server_name = 3;
Direction direction = 4; // REQUEST or RESPONSE
string method = 5; // JSON-RPC method
string message_id = 6;
string tool_name = 7;
bytes arguments_json = 8; // Tool call arguments
bytes response_json = 9; // Tool response (if RESPONSE)
Verdict verdict = 10; // Policy decision
string policy_hash = 11; // Hash of active policy at decision time
bytes prev_hash = 12; // SHA-256 of previous entry's signature
bytes signature = 13; // Ed25519 signature over canonical entry
string public_key = 14; // SPKI PEM of signing key
string nonce = 15; // UUID for replay protection
}