Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Specifications

Specifications define contracts that more than one crate or repository depends on. They are versioned by their header and changed through pull requests to this repository before the code that implements the change (contract-first, ADR-0002).

SpecVersionOwner streamConsumers
document-model.mdv0 (draft, validated by CORE-004)MODELevery core crate
engine-protocol.mdv0 (draft; details fixed by CORE-007)UI / enginebayan-desktop, bayan-web
fidelity-lab.mdv1LABbayan-core CI, all layout work
font-compatibility.mdv0 (verified by CORE-008)TEXTbayan-fonts, packaging
coverage-matrix.mdv1allplanning, release notes
threat-model.mdv1 (SRV-003, 2026-10-14; reviewed at every phase gate)SECURITYall repositories
word-behavior/livingLABbayan-text, bayan-layout, bayan-edit
protocols/living; Apache-2.0SERVERthird-party clients and integrations, bayan-core, bayan-server

The sync protocol between core and server is written in Phase 1 (SRV-104) in protocols/, which, unlike the rest of this repository, is licensed Apache-2.0 so anyone can implement it (ADR-0003).