Status
Built in phases, each with a spec written first.
Every phase ends with a report: what was built, test results,
simulator metrics, open questions, and anything that deviated from
the plan and why. Significant choices and the alternatives rejected
are kept in a decision log.
00
Skeleton
Workspace, crate boundaries, doc stubs, CI across host, embedded
and iOS targets.
Done
01
Framing and simulator
Wire format spec, encode/decode, fragmentation at any MTU, the
engine API, every impairment in the simulator, a fuzz target on
handle_packet.
Done
02
Reliability
Selective acks, adaptive RTO, a storage-backed outbox, dedupe,
causal ordering, bounded queues — 100% eventual delivery at a
64-byte MTU with 50% bursty loss and outages.
Done
03
Cryptography
Identities, contacts, per-packet AEAD, routing tags, replay
windows, and a security model that names its non-goals.
Done
04
Forward error correction
Cross-message parity with an adaptive repair rate, measured
against Phase 3's p95 under bursty loss.
Next
05
Sync
Summary-based reconciliation, so a peer offline for a simulated
week converges with bounded bytes exchanged.
Planned
06
Real network
The UDP adapter, a two-peer CLI demo, and
tc netem profiles mirroring the simulator's.
Planned
07
Portability
A C ABI via cbindgen, an iOS XCFramework, and an
example on real microcontroller hardware.
Planned