batpak
This bundle is the final clean-room architecture for BatPak.
BatPak is a contract-compiled, sync-first event machine. It stores accepted local truth in .fbat, compiles Rust declarations through MacBat, compiles application questions and actions through BatQL, runs logical work through SyncBat, interprets sealed programs through PakVM, admits and supervises attempts through Bvisor, carries bounded calls through NetBat, and proves the repository through TestPak.
The one-line system law is:
MacBat declares. BatPak remembers. BatQL compiles. SyncBat runs. PakVM interprets. Bvisor contains. NetBat carries. TestPak attacks and proves.
PakVM and Bvisor are not standalone packages. They are internal planes of the syncbat runtime crate, beside runtime, world, and port.
Build qualification
The semantic profiles of batpak and syncbat are required to compile under no_std + alloc. Native and browser host mechanisms are explicit adapters and may not alter semantic traces, receipts, or recovery law.
Frozen package map
| Name | Kind | Authority |
|---|---|---|
batpak |
production Cargo package | semantic and durable core, including .fbat |
macbat-compiler |
production Cargo package | pure contract compiler |
macbat |
proc-macro Cargo package | Rust declaration front door |
syncbat |
production Cargo package | runtime, PakVM, Bvisor, world composition, host ports |
batql |
production Cargo package | BatQL frontend and ProgramImage compiler |
netbat |
production Cargo package | bounded typed transport |
testpak |
dev-only Cargo package | repository proof, forge, gauntlet, benchmarks, mutation |
batpak-cli |
binary adapter | thin command composition, no semantic ownership |
pakvm |
module inside syncbat |
typed program validation and interpretation |
bvisor |
module inside syncbat |
capability, budget, attempt, supervision, reconciliation |
muterprater |
module inside testpak |
mutation testing only |
.vpak remains the immutable executable package extension. PakVM is the machine. ProgramImage and WorldImage are semantic types.
Authority order
00 Constitution
→ typed facts in spec/
→ status and decision ledgers
→ numbered domain contracts
→ BatQL companion grammar
→ generated views
→ source and receipts
→ legacy evidence
When two documents disagree, do not average them. Apply Status and Supersession, then report the contradiction if it survives.
Reading order
- Constitution
- System Model
- Repository and Packages
- Type System and Source Layout
- Storage,
.fbat, and Tiles - Crypto and Secret Authority
- MacBat
- PakVM ISA
- SyncBat Runtime
- Bvisor
- World Images and Ports
- BatQL Architectural Contract
- BatQL Language
- Legacy Semantic Obligations
- Legacy Invariant Coverage
- Decision and Rejection Ledger
- Public API, CI, and Release
- Agent Finish-Line Checklist
The remaining numbered documents close the storage, schema, delivery, proof, security, migration, bootstrap, command, and workflow details.
Independent checks
python bootstrap/freeze.py . --check
python bootstrap/audit.py .
rustc bootstrap/seedcheck.rs -o target/seedcheck
./target/seedcheck .
rustc bootstrap/materialize.rs -o target/materialize
# Run ./target/materialize . only when creating the Gate-0 source skeleton.
audit.py and freeze.py use only the Python standard library. seedcheck.rs uses only Rust’s standard library and remains independent after TestPak self-hosts.