An original, clean-room Rust library and toolset for unencrypted Access 97 /
Jet 3 .mdb files.
This repository is in its foundation phase. It contains format-neutral checked binary I/O and resource-bound primitives, generic Microsoft-published Jet signature recognition, a typed non-semantic raw-candidate session, content-agnostic bounded reads and allocation-free sequential streaming of complete 2-KiB Jet 3 pages, bounded access to the documented contextual header commit region, and a versioned DAO evidence protocol. It does not yet open, parse, create, update, or validate an MDB, and no Microsoft DAO compatibility is claimed.
crates/jet3: safe public librarycrates/jet3-cli: diagnostic and inspection command-line programcrates/jet3-testkit: fixture and semantic-comparison supportoracle/windows-dao: Windows-only independent DAO test oracledocs/validation: measurable requirements and evidence rules
./scripts/acceptance.sh quickThe eventual complete acceptance gate has a stable entry point:
./scripts/acceptance.sh fullDuring bootstrap, full intentionally exits nonzero with BLOCKED after the
wired checks; missing release gates are never treated as a pass.
See validation/README.md for the distinction between currently wired bootstrap checks and the full v1 acceptance contract.
Generic Jet header probing and raw Jet 3 page transfer or streaming are
experimental: the support matrix records them as partial and internal-only.
Physical version and encryption discrimination, page semantics, allocation
maps, database opening, schema, rows, indexes, long values, creation, updates,
and validation remain planned. The raw commit-region reader preserves every
two-byte value; its two documented labels are contextual and cannot diagnose a
database without contemporaneous .ldb lock evidence. The bounded-input safety
and format-neutral atomic-publication foundations are also partial,
internal-only work. None of these states is an MDB validity or compatibility
claim.