Repository navigation
v0.8.0
Safe concurrent writes, quality hardening, and S3 promotion
Summary
v0.8.0 adds CAS optimistic concurrency so concurrent writers get conflict detection instead of corruption, promotes the S3 adapter from experimental, and includes a broad hardening pass across code, tests, CI, and docs.
Highlights
- CAS optimistic concurrency:
ConditionalWriterinterface withCompareAndSwapon FS (Unix), Memory, and S3 stores — automatic conflict detection viaErrSnapshotConflictwith retry pattern - S3 adapter promoted: No longer experimental; documentation, ARCH_INDEX, and examples updated
- Optimistic concurrency example:
examples/optimistic_concurrency/demonstrates CAS conflict detection and retry - Vector artifact pipeline example:
examples/vector_artifacts/demonstrates embeddings, indices, and active pointers - CI hardened: Race detection added as parallel job; all workflows scoped to least-privilege permissions
- Test hardening: Store coverage (Exists, List, path safety), sentinel error messages, Parquet type conversion, table-driven manifest validation
Upgrade Notes
- CAS is always-on: When the store implements
ConditionalWriter, CAS is used automatically. No configuration required. - Retry on conflict: Callers that write concurrently should handle
ErrSnapshotConflictby re-readingLatest(), merging state, and re-committing. - No migration required: Existing data and stores work without modification. Stores without
ConditionalWriterretain the existing Delete+Put single-writer path.
References
Full Changelog: v0.7.4...v0.8.0