Every memory operation in Memproof emits lifecycle events to an audit trail powered by Trailproof. These events form a tamper-evident, hash-chained record of what happened, when, and why.
Event Types
Each operation progresses through a sequence of namespaced events:
Choosing a Trail Store
In-Memory (default)
JSONL (durable)
Events are stored in memory. Suitable for development and testing. Data is lost on process exit. Events are appended to a JSONL (JSON Lines) file on disk. Each event is a single line, making the file append-only and easy to process with standard tools. Suitable for production deployments.
Event Signing
Provide a signing key to enable HMAC-SHA256 signing. Trailproof signs each event and stores the signature in the TrailEvent:
Store the signing key in a secrets manager (AWS Secrets Manager, HashiCorp Vault, etc.). If the key is compromised, an attacker could forge valid signatures for fabricated events.
Verifying the Audit Trail
Trailproof links each event to its predecessor using SHA-256 hashes. Call verify_audit_trail() / verifyAuditTrail() to validate the entire hash chain and detect any tampering:
Run verification on a schedule (e.g., every hour or as part of a health check) to detect tampering early. If the chain breaks, the verification result identifies the first invalid event.
Querying the Audit Trail
Use the query_audit_trail() / queryAuditTrail() method to search events:
You can also retrieve all events for a single operation by filtering on operation_id in the metadata:
TrailEvent Structure
Each event in the audit trail is a Trailproof TrailEvent:
Environment Variable Configuration
All trail settings can be configured via environment variables:
See Configuration for the full environment variable reference.
Learn More
For advanced Trailproof features — custom stores, chain semantics, and more — see the Trailproof documentation.