Tesseras

Phase 0: Foundation Laid

2026-02-14

The first milestone of the Tesseras project is complete. Phase 0 establishes the foundation that every future component will build on: domain types, cryptography, storage, and a usable command-line interface.

What was built

tesseras-core — The domain layer defines the tessera format: ContentHash (BLAKE3, 32 bytes), NodeId (Kademlia, 20 bytes), memory types (Moment, Reflection, Daily, Relation, Object), visibility modes (Private, Circle, Public, PublicAfterDeath, Sealed), and a plain-text manifest format that can be parsed by any programming language for the next thousand years. The application service layer (TesseraService) handles create, verify, export, and list operations through port traits, following hexagonal architecture.

tesseras-crypto — Ed25519 key generation, signing, and verification. A dual-signature framework (Ed25519 + ML-DSA placeholder) ready for post-quantum migration. BLAKE3 content hashing. Reed-Solomon erasure coding behind a feature flag for future replication.

tesseras-storage — SQLite index via rusqlite with plain-SQL migrations. Filesystem blob store with content-addressable layout (blobs/<tessera_hash>/<memory_hash>/<filename>). Identity key persistence on disk.

tesseras-cli — A working tesseras binary with five commands:

Testing — 67+ tests across the workspace: unit tests in every module, property-based tests (proptest) for hex roundtrips and manifest serialization, integration tests covering the full create-verify-export cycle including tampered file and invalid signature detection. Zero clippy warnings.

Architecture decisions

What comes next

Phase 0 is the local-only foundation. The road ahead:

The tessera format is stable. Everything built from here connects to and extends what exists today.