# Реестр contracts Данная основа задаёт перечень требуемых contracts, но не подделывает их принятие. Задачи S01 должны заполнить schemas, exact examples и error semantics до реализаций. | Contract | Планируемый файл | Producer/consumer | | --- | --- | --- | | Models/identity | `docs/contracts/models.md` | domain, storage, protocol, UI | | Account operation context | `docs/contracts/lifecycle.md` | application, every async adapter | | Persistence transactions | `docs/contracts/persistence.md` | storage, archive, application | | XMPP events/commands | `docs/contracts/xmpp.md` | protocol, application | | Crypto boundary | `docs/contracts/crypto.md` | crypto worker, protocol, media | | Media assets/drafts | `docs/contracts/media.md` | file IO, upload, players, UI | | Calls | `docs/contracts/calls.md` | signaling, media, UI | | Push protocol | `docs/contracts/push.md` | browser, gateway, XMPP registration | Каждый contract должен содержать: types/shape, IDs normalization, required/optional fields, errors, ownership/cancellation, fixtures valid/invalid, versioning и definition of done. Пример не содержит реальных JID/secret. Shared contract review предшествует downstream gate. При отсутствующем contract реализация не заменяет его приватным предположением.