Skip to content

go-audit v2.0.0

Choose a tag to compare

@faustbrian faustbrian released this 30 Sep 08:05
· 23 commits to main since this release
465a142

Bound integrity and record-validation work in the root v2 module.

Chain verification, checkpoint-suffix verification, and Merkle construction
accept at most 1,000 records per operation. Oversized record text and map
inputs are rejected before scanning or allocating normalization and encoding
buffers, including when configured field budgets exceed the record ceiling.

Migration requires github.com/faustbrian/go-audit/v2 and /v2/memory
imports, Go 1.27 or newer, and bounded integrity batches. Retain trusted
checkpoints between verification segments; splitting a Merkle batch does not
preserve the larger batch's root. Validation now checks byte limits before
text and privacy errors.

The independently released PostgreSQL adapter remains on root v1 and cannot
accept v2 record types. Root-v2 consumers need application-owned persistence
integration pending a separately reviewed adapter migration. Legacy v1
callers should enforce record-field byte and integrity-count limits before
calling validation or integrity operations.

Synchronous callbacks, aggregate request admission, privacy allowances,
database-driver allocations, and independent key/checkpoint custody remain
caller-owned; v2 does not preempt arbitrary callbacks or establish compliance.