Sandbox & smoke test
The sandbox is the single-org dev network brought up by make up. Beyond curl
(see the Quickstart), you can drive
it with the SDKs and verify offline.
With the Go SDK
Section titled “With the Go SDK”import "github.com/RicardoMBregalda/aeternis-log/sdk/go"
c := aeternislog.New("http://localhost:5001")rec, _ := c.CreateRecord(ctx, "audit", "payments", map[string]any{"event": "charge"}, nil)batch, _ := c.BatchRecords(ctx, "audit")res, _ := c.VerifyBatch(ctx, "audit", batch.BatchID) // res.IsValidWith the Python SDK
Section titled “With the Python SDK”pip install ./sdk/pythonfrom aeternislog import Clientc = Client("http://localhost:5001")rec = c.create_record("audit", source="payments", payload={"event": "charge"})batch = c.batch_records("audit")assert c.verify_batch("audit", batch.batch_id).is_validOffline audit (CLI)
Section titled “Offline audit (CLI)”An auditor who holds a CSV export of the records can confirm it matches what was anchored — fully offline:
aeternislog verify --file records.csv --api http://localhost:5001 \ --domain audit --batch-id <batch_id># exit 0 = VALID, exit 2 = CORRUPTEDCSV columns: id,timestamp,source,payload. Row order must match the anchored
batch. See local verification.
One-command smoke test
Section titled “One-command smoke test”make smoke # full black-box end-to-end suite against the dev APIIt creates records, anchors them, verifies on-chain, tampers and re-verifies
(expecting CORRUPTED), checks the public endpoint, oversized-body rejection, and
reconciliation — a fast confidence check that the whole stack is healthy.