Skip to content
XTXP

Team model

decided

The build is organised as one principal and one expert per stack. Each expert answers to the shared test vectors, not to the other experts.

Owns everything that crosses a boundary:

  • CRDT semantics (The Math)
  • the wire protocol (The Wire), and identity and access
  • the BDD feature files and JSON vector suite
  • property tests against the vector suite, from day one
Stack Owns
Engine (Rust) Xmesh on Yrs’s XML types: node-kind mapping, XML Patch translation, canonical output, and its C and Wasm bindings
Inkscape fork The muppet adapter inside Inkscape, and keeping the fork current
muppet roles (Rust) Hosting (admission, grants, routing, storage, trust between sessions), its WebSocket endpoint, and the server-side muppet
Wire and bridges The sync protocol’s message encoding, and the XMPP bridge for mobile and chat clients (from M4)
Web clients The Wasm muppet and the no-JS HTML client

The riskiest bugs in a system like this live between implementations: two engines that disagree by one tombstone. Giving the principal sole ownership of the vectors makes the agreement between implementations a deliverable, not a hope.