Files
wt 55d9c69a21 S00-004: Record blocked task and remediation handoff
Changes: Preserve incomplete work and blocker metadata for S00-004. This checkpoint does not mark implementation accepted.
Validation: Session ended with status blocked.
Blocker: S00-004 acceptance requires establishing legacy/OMEMO2 AND worker/wasm AND persistence without a homegrown ratchet. Reproduced (this run) probes and live public-registry queries confirm only the audited session/ratchet engine + persistence are verified (@signalapp/libsignal-client@0.105.0, Node native addon, zero .wasm). The browser/worker/WASM deployment and the OMEMO/OMEMO2 wire layer are not available from any maintained package on the reachable registry (@signalapp/libsignal, @converse/omemo, @xmpp/omemo, omemo2, omemo-js, omemo-client, omemo-top, omemo-wasm all E404). ENC-009 forbids a homegrown algorithm/ratchet and ENC-011 forbids substituting media AES-GCM for the OMEMO2 wire format, so the spike cannot synthesize a browser backend inside S00-004 scope.

Task: S00-004
Agent: auto-crypto-fe1c81c17ded
Role: crypto
Action: claim
Status: blocked

Task title: Проверить browser OMEMO backend
2026-10-15 15:42:43 +07:00

3.6 KiB
Raw Permalink Blame History

S00-004: Проверить browser OMEMO backend

Generated from planning/tasks.json; status is in state/tasks.json.

  • Этап: S00
  • Оператор: crypto
  • Reviewer: security
  • Зависимости: S00-001, S00-002, S00-021, S00-022
  • Требования: ENC-003, ENC-009, ENC-011

Один результат

Spike и ADR устанавливают реальную возможность legacy/OMEMO2, worker/wasm и persistence без самодельного ratchet.

Разрешённые пути

  • docs/decisions/0003-crypto-library.md
  • experiments/0003-crypto-library/**

Не изменять другие modules, shared contracts или spec snapshots без изменения плана. Stem без расширения разрешает принятые stack-specific extensions и focused test рядом.

Прочитать

  • docs/WEB_PROFILE.md
  • docs/ARCHITECTURE.md
  • docs/CONTRACTS.md
  • docs/TESTING.md
  • roles/crypto.md
  • docs/decisions/README.md

Шаги

  1. Прочитать приведённые requirements, контракт через реестр и evidence прямых dependencies.
  2. До выбора стека: читать реальные первичные документы кандидатов, выполнить только разрешённый focused experiment, записать решение/ограничения. Не считать framework/backend уже принятым.
  3. Работать только над одним указанным outcome. Если для него нужен новый shared contract — создать отдельную remediation через escalate, заблокировать original и завершить запуск; не расширять текущий scope.
  4. Spike и ADR устанавливают реальную возможность legacy/OMEMO2, worker/wasm и persistence без самодельного ratchet.
  5. Добавить focused fixtures/checks из списка ниже, выполнить их и записать фактический результат.

Приёмка

  1. Spike и ADR устанавливают реальную возможность legacy/OMEMO2, worker/wasm и persistence без самодельного ratchet.
  2. Известный vector/library smoke
  3. неподдержанный формат записан blocker, а не success
  4. Нет изменений вне scope; реальный результат/evidence и handoff позволяют другому агенту продолжить.

Focused checks

  1. Известный vector/library smoke
  2. неподдержанный формат записан blocker, а не success

Блокер и завершение запуска

Для всех ролей scope — только эта задача. При блокере создать issue JSON по state/ISSUE_TEMPLATE.json, вызвать escalate с текущим ID/role/agent, проверить status=blocked и resolution_task, затем немедленно завершить запуск. Не решать blocker и не выбирать следующую задачу самому. Новый агент назначается runner. Правки metadata через CLI — единственное исключение scope.

Передача

Сохранить evidence/handoff; submit → review и завершить запуск. Reviewer также выполняет только эту задачу, включая обязательное escalate при блокере.