Message metadata may include audit records for tool calls and agent responses.
Tool call audit entries include a call_id, tool_name, and status, while
agent response audit metadata records a status plus optional identifiers such
as response_id and model.
use corbusier::message::domain::{
AgentResponseAudit, AgentResponseStatus, MessageMetadata, ToolCallAudit, ToolCallStatus,
};
let metadata = MessageMetadata::empty()
.with_tool_call_audit(ToolCallAudit::new(
"call-123",
"read_file",
ToolCallStatus::Succeeded,
))
.with_agent_response_audit(
AgentResponseAudit::new(AgentResponseStatus::Completed).with_response_id("resp-456"),
);
assert_eq!(metadata.tool_call_audits.len(), 1);
assert!(metadata.agent_response_audit.is_some());