Key takeaways
- Dave by voolama logs every AI agent call, every human approval decision, and every compliance-standard change in an immutable audit trail at Admin, then Settings, then Audit Log. Access requires the Admin role (admin:*) or the audit:read permission.
- Every Human Review decision in an AI approval workflow is logged with the acting user's identity, the decision type (Approve, Reject, or Request Changes), the reviewer's comment, and a timestamp, creating a named chain of custody for every AI output that reached a customer.
- SOC 2 compliance mode (CC6/CC7/CC8) and GDPR compliance mode (Articles 5/15/17/30/33) extend the audit trail to read-access events on sensitive endpoints, tagged with complianceTriggered: true. SOC 2 recommends at least 7 years (2,555 days) of retention.
- A five-question audit readiness test applies to any AI workflow platform: does the log capture the agent version called, the exact input, the reviewer's named identity, the decision type, and the timestamp? A platform that cannot answer yes to all five is not audit-ready.
- Known limitation at DEV v0.11.0: the audit log captures what was sent to the agent and the parameters used. The agent's output is stored in the instance context, not in the audit log event itself. To reconstruct the full exchange, you need both.
Summary
A five-question audit readiness test for any AI workflow platform
Run this five-question test in any AI workflow platform's free trial before you commit. The questions are derived from SOC 2 CC6 (logical access logging), CC7 (system operations logging), and GDPR Article 5 (accountability principle). A platform that cannot answer yes to all five is not audit-ready for production AI operations. This test is platform-neutral: it applies equally to Dave by voolama (hellodave.ai) and to every competitor. The answers for Dave by voolama at DEV v0.11.0, confirmed against content_orchestrator main at commit ddb945f, 2026-08-30, are given after each question.
Does the audit log record the agent version called, not just the agent name? Agent behaviour changes between versions. An audit trail that records the agent name but not the version cannot tell you which system prompt, model, or temperature was active when the output was produced. Dave by voolama answer: yes. The Entity field in every Agent Interaction audit event records the agent definition ID and the version ID called.
Does the audit log record the exact input passed to the agent? The output an agent produces is a function of the input it received. Without the input, the output is uninterpretable. Dave by voolama answer: yes. The Details field in every Agent Interaction event includes the sanitised request body, which contains the input text passed to the agent. Passwords, secrets, and tokens are automatically redacted.
Does the audit log record the reviewer's named identity for every human approval decision? A log that records "approved" without recording who approved it is not a chain of custody. Dave by voolama answer: yes. Every Human Review decision event records the reviewer's email address and user ID in the Actor field.
Does the audit log record the reviewer's comment when a decision is Reject or Request Changes? The comment is the 'why': it is the human's stated reason for rejecting or requesting a change. Without it, the audit trail records that a rejection occurred but not why. Dave by voolama answer: yes. The reviewer's comment is stored in the Details field of the Human Review decision event.
Is the audit log immutable and exportable as a structured format? An audit trail that can be edited or deleted after the fact is not an audit trail. Dave by voolama answer: yes. There is no edit or delete action on audit log events. The log can be exported as CSV via the download button on the Audit Log page, suitable for external audit submissions under SOC 2 and GDPR.
All five: yes, at DEV v0.11.0, sourced from the audit-logs help documentation, confirmed 2026-08-30.
What the audit trail records for every AI agent call
The audit trail in Dave by voolama (hellodave.ai) answers the question "what did the AI agent say?" by recording every Agent Interaction event with the following fields, sourced from the audit-logs help documentation at DEV v0.11.0, confirmed 2026-08-30:
- Timestamp: when the agent call occurred, to the second.
- Event type: the categorised label for the action (for example,
agent.interaction). - Actor: who triggered the call, identified by email address and user ID. For agent calls triggered by a running workflow instance, the actor is the workflow instance.
- Entity: the object affected, identified by type and ID. For an agent call, this is the agent definition and version called.
- HTTP context: the request method, path, and status code.
- IP address: the source IP of the request.
- Details: the request body, sanitised. Passwords, secrets, and tokens are automatically redacted.
Click any row in the audit log table to expand it and see the full event details as formatted JSON. The output the agent produced is stored in the workflow instance's context, accessible from the instance detail page at Instances, then the instance name, then the Context viewer.
Known limitation at DEV v0.11.0: the audit log captures what was sent to the agent and the parameters used. The agent's output is stored in the instance context, not in the audit log event itself. To reconstruct the full exchange, you need both: the audit log event for the input and the instance context for the output. Both are accessible without leaving the platform.
Why the human approval workflow is the answer to 'why did it say it?'
"Why did the agent say it?" requires a human approval workflow: a structured process in which a named human reviewer reads the agent's output and makes an explicit decision before that output reaches a customer.
The Human Review node is one of ten native workflow node types in Dave by voolama: Start, End, User Interaction, Human Review, Agent Interaction, Agent Review, Routing, API Call, Information, and Safety. When a workflow reaches a Human Review node, execution pauses. A task is generated in the reviewer's Task Inbox. The reviewer reads the agent's output and clicks one of three decisions:
- Approve: the output is accepted and the workflow continues.
- Reject: the output is rejected. The workflow stops or loops back to the Agent Interaction node, depending on how the Routing node is configured.
- Request Changes: the reviewer adds a comment specifying what needs to change. The workflow loops back to the Agent Interaction node. The agent receives the reviewer's comment as context on the next iteration.
Every decision is logged with the reviewer's email address and user ID, the decision type, the reviewer's comment (if provided), and the timestamp. The result is a complete, named chain of custody: input, first agent output, human decision with named reviewer and reason, revised output (if applicable), final approval.
This chain of custody is the architectural mechanism that satisfies EU AI Act Article 14(4) (Regulation EU 2024/1689, in force 1 August 2024), which requires that high-risk AI systems be designed so that natural persons can intervene in or interrupt the system's operation. Whether a specific deployment constitutes a high-risk AI system is a legal determination requiring qualified counsel. Sourced from the audit-logs and getting-started help documentation, DEV v0.11.0, confirmed 2026-08-30.
How to read the audit trail and export it for compliance
The audit log is at Admin, then Settings, then Audit Log in Dave by voolama (hellodave.ai). Access requires the Admin role (admin:*) or the audit:read permission. Sourced from the audit-logs help documentation, DEV v0.11.0, confirmed 2026-08-30.
To reconstruct what an AI agent said and why, in five steps:
- Filter by event type. Use the Event Type dropdown to filter to agent-related events.
- Filter by date range. Use the From/To date pickers to scope the view to the period when the output in question was produced.
- Filter by actor or entity. Use the text search box to search by email address, user ID, or entity ID. If you know the workflow instance ID, search for it to see all events associated with that run.
- Expand the agent call row. Click the row to see the full event details as formatted JSON, including the sanitised request body.
- Open the instance context. Navigate to Instances, find the instance by ID or workflow name, and open the Context viewer to see the agent's output.
To export for an external audit: click the download button to export all currently filtered results as a CSV file. The exported data includes all event fields and is suitable for compliance record-keeping under SOC 2 (CC6/CC7/CC8) and GDPR (Articles 5/15/17/30/33). Click Clear filters before exporting if you need the complete record for a period.
Compliance modes: SOC 2 mode and GDPR mode extend logging to GET requests on sensitive endpoints (users, roles, secrets, API clients, OAuth providers, reports), tagged with complianceTriggered: true. Both are enabled at Admin, then Settings, then General, then System Parameters, then Audit Log. SOC 2 recommends at least 7 years (2,555 days) of retention.
Known limitation at DEV v0.11.0: existing events are not retroactively tagged when a compliance mode is enabled. Enable compliance modes before the date from which you need tagged records.
Frequently asked questions
How do I audit what an AI agent said to a customer and why it said it in Dave by voolama?
Navigate to Admin, then Settings, then Audit Log in Dave by voolama (hellodave.ai). Every AI agent call is recorded as an Agent Interaction event with the actor identity, timestamp, HTTP context, IP address, and sanitised request body. For human approval workflows, every Human Review decision is logged separately with the reviewer's identity, the decision type (Approve, Reject, or Request Changes), and the reviewer's comment. Use the Event Type filter to scope the view to agent-related events, and the date-range filter to scope to the period in question. Export as CSV for external audit submissions. Access requires the Admin role (admin:*) or the audit:read permission. Sourced from the audit-logs help documentation, DEV v0.11.0, confirmed against content_orchestrator main at commit ddb945f, 2026-08-30.
What is an AI agent audit trail and what should it contain?
An AI agent audit trail is an immutable, searchable record of every action an AI agent took, every input it received, every output it produced, and every human decision made about that output. At minimum it should contain: the agent identity and version called, the timestamp of each call, the actor who triggered the call, the input passed to the agent (sanitised to remove credentials), and every human review decision with the reviewer's named identity, decision type, and comment. In Dave by voolama (hellodave.ai), all of these are captured in the audit log at Admin, then Settings, then Audit Log. Sourced from the audit-logs help documentation, DEV v0.11.0, confirmed 2026-08-30.
What is a human approval workflow for AI agents?
A human approval workflow for AI agents is a structured process in which an AI agent produces an output, a named human reviewer reads that output and makes an explicit decision (Approve, Reject, or Request Changes), and the workflow either continues, stops, or loops back based on that decision. The key architectural requirement is a native Human Review node type: a workflow node that pauses execution, generates a task in a reviewer's inbox, and records the reviewer's decision in the audit trail. In Dave by voolama (hellodave.ai), the Human Review node is one of ten native workflow node types. Every decision is logged with the reviewer's identity, decision type, comment, and timestamp. Sourced from the getting-started help documentation, DEV v0.11.0, confirmed 2026-08-30.
Which compliance standards does the Dave by voolama audit trail support?
Dave by voolama (hellodave.ai) supports two configurable compliance modes in the audit trail, both enabled at Admin, then Settings, then General, then System Parameters, then Audit Log. SOC 2 mode covers CC6 (logical access), CC7 (system operations), and CC8 (change management): it extends logging to GET requests on sensitive endpoints tagged with complianceTriggered: true, and displays a warning if retention is set below the SOC 2 recommended minimum of 2,555 days (7 years). GDPR mode covers Articles 5, 15, 17, 30, and 33: it extends logging to GET requests on user data endpoints with the same complianceTriggered: true flag. Both modes can be active simultaneously. Sourced from the audit-logs help documentation, DEV v0.11.0, confirmed 2026-08-30.
What happens in the audit log when an AI agent is rejected by a human reviewer?
In Dave by voolama (hellodave.ai), when a human reviewer clicks Reject on a Human Review task, the audit log records the reviewer's email address and user ID, the decision type (Reject), the reviewer's comment, and the timestamp. If the workflow loops back to the Agent Interaction node on rejection, the subsequent re-run of the agent is logged as a new Agent Interaction event. This creates a complete chain of custody: input, first agent output, rejection with named reviewer and reason, revised agent output, and final approval or further rejection. Sourced from the audit-logs help documentation, DEV v0.11.0, confirmed 2026-08-30.
Sources
Last reviewed