Files
wt 54bfc0f34f
Foundation checks / foundation (push) Successful in 1m12s
initial commit
2026-10-14 17:47:38 +07:00

3.2 KiB
Raw Permalink Blame History

S18-012: Реализовать revoke/expiry/rotation

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

  • Этап: S18
  • Оператор: backend
  • Reviewer: security
  • Зависимости: S17-014, S18-003, S18-005, S18-006
  • Требования: PUSH-005, PUSH-007

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

Unregister and token replacement idempotent, old owner no longer deliverable.

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

  • services/push/revoke-rotation.*
  • tests/backend/revoke-rotation.*

Не изменять другие 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/backend.md
  • docs/decisions/README.md
  • docs/decisions/0001-stack.md (upstream artifact; отсутствие после S00 gate — blocker)
  • docs/contracts/push.md (upstream artifact S01)
  • docs/contracts/lifecycle.md (upstream artifact S01)

Шаги

  1. Прочитать приведённые requirements, контракт через реестр и evidence прямых dependencies.
  2. Описать input/output этого модуля или документа; использовать accepted stack/ports без расширения scope.
  3. Работать только над одним указанным outcome. Если для него нужен новый shared contract — создать отдельную remediation через escalate, заблокировать original и завершить запуск; не расширять текущий scope.
  4. Unregister and token replacement idempotent, old owner no longer deliverable.
  5. Добавить focused fixtures/checks из списка ниже, выполнить их и записать фактический результат.

Приёмка

  1. Unregister and token replacement idempotent, old owner no longer deliverable.
  2. Logout/revoke prevents delivery
  3. rotation no duplicates
  4. Нет изменений вне scope; реальный результат/evidence и handoff позволяют другому агенту продолжить.

Focused checks

  1. Logout/revoke prevents delivery
  2. rotation no duplicates

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

Для всех ролей 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 при блокере.