Plain logs · syslog · print()
Unstructured. Silently editable. No retention enforcement. No hash chain. Zero evidentiary value.
VouchRail wraps your existing LLM calls and agent frameworks and emits tamper-evident, hash-chained, Article-12-structured audit logs into storage you own. One config line. Framework-agnostic. GDPR-compatible.
// One config line. Article 12 compliant. Drops into your stack.
import { AuditLogger } from '@vouchrail/sdk';
import Anthropic from '@anthropic-ai/sdk';
const audit = new AuditLogger({
systemId: 'hireflow-resume-screener',
storage: { type: 's3', bucket: 'audit-eu-west-1', workMode: true },
retention: { minimumDays: 180, targetDays: 2555 },
hashChain: { enabled: true, algorithm: 'sha256' },
piiRedaction: { strategy: 'pseudonymize' },
signingKey: process.env.AUDIT_SIGNING_KEY,
});
const anthropic = audit.wrap(new Anthropic());
// Every call through `anthropic` now produces a verifiable Article 12 log entry.
Every observability tool on the market was built for engineers triaging incidents — not for an EU regulator demanding a reconstructable decision trail six months from now.
print()Unstructured. Silently editable. No retention enforcement. No hash chain. Zero evidentiary value.
Designed for crash triage. No prompt-template versioning, no agent call tree, no tamper-evidence, retention SLA mismatched.
Engineer debug + evals. Vendor controls storage — you can't prove no tampering. 30–90 day retention. Article-12 fields absent.
On-chain logs are immutable → incompatible with GDPR right-to-erasure. Public visibility leaks customer data. Per-action gas costs don't scale.
They lint your code; they don't record anything at runtime. Complementary tools — not Article 12 evidence.
Runtime-integrated. Article-12-shaped. Hash-chained. Customer-owned storage. GDPR-compatible PII pipeline. The complete evidence chain.
Attestation services prove existence but don't log. Scanners lint code but don't record. Observability tracks debug but not regulation. We deliver the entire evidence chain in one product.
Wraps raw Anthropic / OpenAI / Google SDKs plus agent frameworks (LangGraph, Anthropic Agent SDK, OpenAI Agents SDK, LlamaIndex). No code rewriting. Article 12 demands logging at the decision boundary — this is impossible without runtime integration.
Every entry carries model identity, prompt template + version, input/output fingerprints, agentic call tree, operator identity, human-review record, reason codes, risk flags, retention bounds — mapped field-by-field to Article 12 paragraphs.
Each entry SHA-256-hashed in JCS-canonical form, linked to the previous entry, signed by a KMS-held key outside the agent trust boundary. WORM-locked storage. Logs without cryptographic integrity have zero court value.
Logs land in your S3 bucket (or compatible store) under your KMS keys with S3 Object Lock in Compliance mode. The evidentiary chain depends on the regulator believing the customer controls it — vendor-cloud logs are circumstantial.
Article 12 says retain six months+. GDPR says delete on request. We resolve the conflict: pseudonymized tokens in the log, raw values in a separate deletable escrow. Decisions stay reconstructable; individuals stay forgettable.
You keep LangSmith for debug, Datadog for ops, OneTrust for policy. VouchRail slots between your framework and your storage — never replaces, never blocks.
Same on-disk shape across TypeScript and Python SDKs. Byte-identical canonicalisation. Cross-language conformance vectors gate every release.
// One audit log entry — mapped to Article 12 paragraphs
{
"callId": "7b0d3a14-7f4f-4f12-9e90-3b1b9a16c2c1",
"parentCallId": "4a1c9b22-...", // Article 12(2) — agentic call tree
"caseId": "candidate-12345",
"systemId": "hireflow-resume-screener",
"startedAt": "2026-08-15T14:32:00.123456Z", // Article 12(3)(a)
"endedAt": "2026-08-15T14:32:01.987654Z",
"durationMs": 1864,
"modelProvider": "anthropic", // Article 12(2)(a) · Article 11 traceability
"modelName": "claude-3-5-sonnet",
"modelVersion": "20241022",
"modelConfiguration": { "temperature": 0.2, "maxTokens": 1024 },
"promptTemplateId": "resume-scoring-v3",
"promptTemplateVersion": "3.2.1",
"promptFingerprint": "sha256:8f3a…b921",
"inputFingerprint": "sha256:2c91…7e0d", // Article 12(3)(c)
"inputPiiRedacted": {
"fields": ["name", "email", "phone"],
"pseudonymKey": "escrow:pii-2026-08:abc123" // GDPR-deletable
},
"toolCalls": [
{ "toolName": "resume_parser", "inputFingerprint": "sha256:…", "outputFingerprint": "sha256:…" }
],
"outputFingerprint": "sha256:91ab…c204",
"outputDecision": { "score": 7.5, "recommended": true },
"reasonCodes": ["EXPERIENCE_MATCH", "EDUCATION_OK"],
"operatorId": "system", // Article 14 · Article 12(3)(d)
"humanReview": {
"reviewerId": "ops-emma",
"reviewedAt": "2026-08-15T14:35:00Z",
"decision": "approve"
},
"riskFlags": ["low_confidence"],
"entryHash": "sha256:5d41…a8c2", // tamper-evidence
"previousEntryHash": "sha256:f102…9b3e",
"signature": "kms:eu-west-1:…:sig",
"schemaVersion": "vouchrail-v1.0",
"recordedBy": "@vouchrail/[email protected]"
}
Pre-tuned PII patterns, reason-code libraries, FRIA templates, reference integrations. Generic compliance products lose vertical bake-offs.
Largest single Annex III category. Resume scoring, automated screening, interview ranking. Pre-tuned for CV PII — name, education, employment history.
AI lending decisions, creditworthiness, BNPL underwriting. Reason codes mapped to EBA adverse-action guidance. Audit defence kit for AI-driven denials.
Risk pricing, claim assessment, parametric triggers. Capture model lineage + decision rationale across portfolio shifts.
AI triage, mental-health pre-screen, radiology pre-read (non-medical-device). NHS-number redaction, GDPR-Article-9 sensitive-data discipline.
Essay scoring, placement testing, automated proctoring. Reason codes auditable against academic integrity standards.
One schema satisfies EU AI Act Article 12, UK AI framework, Canadian AIDA, US OMB M-26-04, NIST AI RMF, ISO/IEC 42001, draft Japanese AI Act.
SDK is Apache 2.0 forever. You can run it entirely on your own S3. Paid tiers add managed storage, multi-region, full PII workflow, and the auditor portal.
Building VouchRail as a Taiwan-based solo technical founder. If you're running high-risk AI in the EU, drop a line and I'll respond personally.