Перейти к содержанию

История изменений

Ненормативный журнал. Действующие требования и их уровни определяются документами из перечня в README.md.

4.8.0 — 2026-08-16

Архитектурные требования

  • Добавлены INT-HOOK-006INT-HOOK-007: критичный webhook фиксирует фактическую гарантию доставки выбранной версии producer, не подменяет полноту доставки retry или идемпотентностью и восстанавливает пропущенные факты через authoritative reconciliation либо независимый сохраняемый канал.

Инфраструктурные требования

  • Добавлены INF-DAT-017INF-DAT-019: production MinIO bucket notifications фиксируют product/release и семантику очереди, рассчитывают её ёмкость, проверяют влияние sync/async режима и наблюдают задержку, отказ и потерю.
  • Расширен смысл INF-ARC-002: инфраструктурная реализация webhook-доставки теперь явно зависит от architecture:INT-HOOK-006INT-HOOK-007.

Инструменты и документация

  • Документ MinIO bucket notifications включён в инфраструктурный каталог, object-storage profile, README и навигацию сайта.

4.7.0 — 2026-08-16

Архитектурные требования

  • Уточнён смысл DEV-DOC-001DEV-DOC-003: локальный сценарий требуется только применимому запускаемому приложению, неизменившаяся ссылка не требует отдельного изменения README.md, а автоматическое формирование относится к закрытому перечню справочных данных из машинного источника истины.

4.6.0 — 2026-08-16

Архитектурные требования

  • Добавлены DEV-DOC-001DEV-DOC-003: корневой README.md как человекообнаружимая точка входа, атомарная актуализация документации и воспроизводимое автоматическое формирование производных материалов.
  • Расширен смысл DEV-PROF-001: требования к проектной документации включены в базовый профиль запускаемых и публикуемых компонентов.

4.5.0 — 2026-07-28

Архитектурные требования

  • Добавлен INT-EVT-015: контракт классифицирует событие как notification либо перенос состояния, запрещает скрывать обязательную downstream-реакцию за публикацией события и связывает такую реакцию с distributed workflow.
  • Добавлены capability financial-ledger и требования DATA-LED-001DATA-LED-008: append-only postings, точные денежные вычисления, идемпотентность, сверка balance projection и условные контракты Event Sourcing. CQRS и Event Sourcing не являются обязательными для всего проекта.

Инструменты и документация

  • GitLab CI запускает обязательные проверки для merge request и default branch; публикация документации остаётся ограничена push в default branch.

4.4.0 — 2026-07-28

Архитектурные требования

  • Добавлены ARC-PAT-005ARC-PAT-010: закрытая поверхность и владение состоянием модулей, карта доменных контекстов, однозначная терминология, преобразование моделей и сохранение границы атомарного инварианта.
  • Добавлены ARC-SVC-007ARC-SVC-010 для явного выбора синхронной композиции либо производной модели чтения, ограничения fan-out, восстановления read model и проверки свежести обязательного решения.
  • Добавлены ARC-SVC-011ARC-SVC-015: ADR и критерии выделения сервиса, однозначное владение на каждом этапе, единственный write path, проверяемые backfill и shadow read, переключение и удаление прежнего пути.
  • Добавлены DEV-VER-010DEV-VER-012: минимальный consumer contract, проверка release-кандидата provider и управляемый жизненный цикл contract.
  • Добавлены DEP-ROL-006DEP-ROL-008: стабильный canary cohort, отдельные критерии продвижения и остановки canary и контракт переключения blue/green.
  • Расширены DEV-PROF-001 и DEV-PROF-003: карта доменных контекстов включена в базовый профиль; схема manifest и каталог применимости поддерживают capabilities cross-service-query и service-extraction.

Инфраструктурные требования

  • Добавлены INF-RES-008 и INF-RES-009: горизонтальное масштабирование связано с реальной schedulable-ёмкостью узлов, а масштабирование consumer и worker — с backlog, скоростью обработки, downstream-пределами и безопасным scale-down.
  • Добавлены INF-REL-009 и INF-REL-010: инфраструктурные контракты маршрутизации, evidence и жизненного цикла revisions для canary и blue/green.
  • Расширен смысл INF-REL-001 и INF-ARC-002: обязательная реализация rollout-контрактов теперь охватывает DEP-ROL-001DEP-ROL-008.

4.3.0 — 2026-07-27

Инфраструктурные требования

  • Добавлен INF-DAT-016: общая платформа данных реализует architecture:ARC-SVC-004 отдельными service identities, credentials и write-полномочиями. Расширен смысл INF-ARC-002; обновлены stateful technology profiles и их структурная проверка.

Инструменты и документация

  • standards.py diff теперь обнаруживает изменение нормализованного нормативного тела существующего ID, включая строки profiles, и не считает изменением простой перенос строк.
  • X-Robots-Tag перенесён на server scope Nginx; smoke-test проверяет также точный маршрут /50x.html.

4.2.0 — 2026-07-27

Архитектурные требования

  • Добавлены требования ARC-SVC-001ARC-SVC-006 к обоснованию границы независимо развёртываемого сервиса, владению, закрытой поверхности взаимодействия, данным, независимой поставке и поведению при отказе зависимости.
  • Добавлены DEV-ADR-004DEV-ADR-006: определены изменения, для которых ADR обязателен, проверяемое сравнение альтернатив и измеримый сценарий критичной характеристики.
  • Добавлены INT-WF-001INT-WF-007 и capability distributed-workflow: зафиксированы идентичность, модель состояний, контракты шагов, компенсация, конкурентность, восстановление и управляемое вмешательство распределённой бизнес-операции.
  • Добавлены DEV-VER-008 и DEV-VER-009: машинно наблюдаемый архитектурный инвариант проверяется автоматически, а технически неавтоматизируемый — ограниченным воспроизводимым review по принятому ADR.
  • Расширен смысл DEV-PROF-001: требования к сервисным границам включены в базовый профиль. Расширены DEV-PROF-003, схема manifest и каталог применимости новым типом capability distributed-workflow.

Инструменты и документация

  • Документационный сайт закрыт от индексации поисковыми системами через HTML robots metadata и HTTP X-Robots-Tag; robots.txt разрешает обход, необходимый для получения директивы noindex.
  • Служебные статьи об обновлении и происхождении vendored mado исключены из сборки и навигации документационного сайта; исходные файлы сохранены в репозитории.

4.1.0 — 2026-07-27

Архитектурные требования

  • Добавлены требования к идентификаторам сущностей (docs/architecture/data/identifiers.md, префикс DATA-ID): новый технический идентификатор — UUIDv7 по RFC 9562 (DATA-ID-001), а при запрете раскрытия времени генерации — UUIDv4 (DATA-ID-003); внешний контракт фиксирует каноническую форму, версию и variant (DATA-ID-002). Идентификатор не является средством доступа (DATA-ID-004), не задаёт бизнес-время или глобальный порядок (DATA-ID-005), остаётся уникальным и неизменяемым с безопасным отказом при коллизии (DATA-ID-006), а его отсутствие не кодируется фиктивным значением (DATA-ID-007).
  • Документ включён в возможность stateful-storage архитектурного каталога применимости, таблицу DEV-PROF-003 и связанные технологические profiles.

4.0.4 — 2026-07-27

Инструменты и документация

  • Добавлены страницы содержания для всех разделов и подразделов меню MkDocs; названия разделов ведут на соответствующие страницы.
  • В инструкции для агентов добавлено обязательное обновление страниц содержания при изменении публикуемых страниц.

4.0.3 — 2026-07-27

Инструменты и документация

  • Извлечение release-версии в publish pipeline переведено на один процесс awk, чтобы исключить SIGPIPE от конструкции sed | head при включённом pipefail; регрессионная проверка выполняет команду через POSIX sh и запрещает опасную конструкцию.

4.0.2 — 2026-07-27

Инструменты и документация

  • Исправлено извлечение release-версии в publish pipeline и добавлена регрессионная проверка фактически исполняемой shell-команды.
  • Публикация ожидает обе validate-стадии; CLI image теперь минимален, запускается непривилегированным пользователем и содержит корректные OCI labels, а version label сайта отделён от commit SHA.
  • Docker и локальная строгая сборка сайта используют единый скрипт; Compose требует явную immutable-ссылку на image.
  • Release helper восстанавливает CHANGELOG.md при ошибке до commit, явно ограничивает staging подготовленными путями и выполняет обе локальные документационные проверки.
  • Удалены устаревшие следы self-manifest, Trivy и отсутствующего Makefile; конфигурация Ruff приведена к заявленной совместимости с Python 3.10.

4.0.1 — 2026-07-26

Документация

  • В назначении репозитория явно указано, что он содержит корпоративные требования к web-разработке.

4.0.0 — 2026-07-26

Нормативные изменения

  • Удалены обязательные STD-EVD-001STD-EVD-003 и .standards/evidence.yaml: структурный перечень результатов по каждому применимому ID не подтверждал фактическое выполнение указанных команд, запросов или review. Освобождённые ID зарегистрированы и не используются повторно.
  • JSON Schema manifest теперь принимает только действующую schema_version: 4 по STD-MAN-001. Schema v3 остаётся допустимой только как вход команды upgrade, но не проходит validate или check.

Инструменты и документация

  • Удалены команды conformance и audit-coverage, неиспользуемые каталоги evidence/audit coverage и непроверяемый self-manifest репозитория.
  • Quick start и полный пример подключения сведены к одному материалу в examples/standards/project-onboarding.md; устаревшие schema v3 примеры и отдельное руководство удалены.
  • Полная Markdown-таблица каталога требований теперь генерируется только при staging сайта; в Git остаются компактная страница-ссылка и предназначенный для offline-consumers catalog/requirements.json.
  • scripts/build-docs.sh закреплён как локальная команда строгой сборки MkDocs.

3.0.0 — 2026-07-25

Нормативные изменения

  • Из определения MAJOR удалён самостоятельный критерий нового обязательства: уровень версии теперь определяется совместимостью изменения.
  • Удалено правило, по которому каждое изменение стандартов обязано проходить через merge request; значимые обсуждения и согласования по-прежнему должны сохраняться в GitLab.
  • Удалены ручное подтверждение MAJOR-релиза и флаг release-helper --allow-major; уровень версии по-прежнему выбирается по семантике diff.
  • Manifest schema v4 теперь однозначно связывает компоненты с deployment targets и технологическими profiles; повторяющиеся targets и просроченные risk acceptance отклоняются.
  • Добавлены STD-EVD-001STD-EVD-003, schema и CLI-проверка доказательств результата для каждого применимого requirement ID.

Инструменты и документация

  • Audit получил каталог формальных и ручных сигналов для всех capability; добавлены команды audit-coverage, diff, upgrade и conformance.
  • Репозиторий подключён к собственным стандартам, добавлены group CODEOWNERS, шаблон merge request и проверка CLI на Python 3.10.
  • Trivy и иное новое vulnerability/license scanning в CI репозитория не добавлялись.

2.3.0 — 2026-07-25

Нормативные изменения

  • Добавлены условные INF-SEC-015INF-SEC-016: если политика класса данных требует шифрования при хранении, platform storage должен покрывать основную копию, реплики, snapshots и временное дисковое состояние, а ключи должны иметь отдельный проверяемый жизненный цикл.
  • Добавлены INF-PLT-010INF-PLT-011 для lifecycle, обновлений и административной границы self-managed Kubernetes-узлов. Managed node service подтверждает эквивалентный результат через действующую границу ответственности платформы.
  • Добавлены рекомендации INF-SEC-017 по federated workload identity и INF-ART-008 по проверке registry, release identifier и provenance на границе production deployment. Криптографическая подпись image не стала обязательной.
  • INF-SEC-001INF-SEC-014 без изменения ID, уровня и смысла разнесены по предметным документам. Каталог подключает общие секреты как base, registry по runtime, аудит только для production, а изоляцию production-данных только для local и non-production.

Инструменты и документация

  • Сгенерированная главная страница сайта автоматически показывает текущую выпущенную SemVer-версию из CHANGELOG.md; вручную дублировать номер в README.md не требуется.
  • Удалены CLI-команда upgrade и переходные инструкции между версиями standards checkout. До появления потребителей репозиторий не поддерживает и не описывает migration path между своими release-версиями.
  • DOC-CLR-008 больше не разрешает сохранять ссылку на изменённое требование с переходной пометкой: связанное представление должно быть обновлено или удалено в том же изменении.

2.2.0 — 2026-07-25

Нормативные изменения

  • Добавлен MOB-API-005: обязательное обновление установленного приложения теперь имеет версионируемый результат, включается только после доступности совместимого release и не уничтожает локальное состояние.
  • Добавлен MOB-PLAT-008: системный Back, жесты, закрытие, deep-link back stack, несохранённый ввод и восстановление не должны расходиться по результату или повторять необратимый эффект.
  • INT-FILE-001INT-FILE-004 распространены на нативные mobile-клиенты и подключены к mobile-consumer существующей capability http-api.
  • MOB-PLAT-001MOB-PLAT-005 и MOB-PLAT-007 без изменения ID и смысла разнесены по предметным документам. Push notifications, deep links, background execution и биометрия подключаются только объявленными capabilities; базовый mobile-профиль сохраняет lifecycle/navigation и локализацию.
  • Добавлены условные MOB-GEO-001MOB-GEO-003 для permission, качества, доверия и жизненного цикла device location, а также MOB-BT-001MOB-BT-003 для ограниченного Bluetooth discovery, проверяемой identity peer и безопасного восстановления обмена. Область MOB-SEC-006 уточнена для Bluetooth и nearby devices.

2.1.0 — 2026-07-25

Нормативные изменения

  • Добавлены INT-HTTP-001INT-HTTP-003: backend-, worker- и data-pipeline-consumers HTTP API теперь фиксируют версию контракта, ограничивают и проверяют ответ и восстанавливают неопределённый результат изменяющего вызова. Документ подключается существующей capability http-api только к component-consumer соответствующего вида.
  • Добавлен BE-STATE-007 для согласованности операции с несколькими независимыми фиксациями и BE-JOB-008 для однозначной семантики плановых запусков, пропусков, catch-up и перекрытий. Требования остаются условными внутри существующих capability stateful-storage и background-processing; обязательный backend-профиль не расширен.

Инструменты и документация

  • Агентам запрещено автоматически создавать MAJOR-теги без явного разрешения пользователя в текущей задаче. Release-helper отклоняет major release без дополнительного флага --allow-major; PATCH и MINOR остаются доступны без отдельного разрешения.

2.0.0 — 2026-07-25

Инструменты и документация

  • CLI получил фильтры контекста по компоненту, capability, документу, префиксу, уровню и строке поиска, а check и audit — стабильные JSON- и SARIF-отчёты.
  • Schema v2 производного каталога требований теперь содержит заголовок, уровень, область применения и строку источника; на сайте публикуется автоматически генерируемая поисковая таблица всех ID.
  • GitLab CI публикует versioned CLI image с зафиксированными стандартами. Добавлен безопасный release-helper для проверки, commit, аннотированного тега и атомарного push. Канонический manifest-пример закреплён за реальным release.

1.0.0 — 2026-07-25

Нормативные изменения

  • Удалены дублирующиеся BE-TST-001BE-TST-003 и FE-TST-001FE-TST-003. Общие для backend-, worker-, data-pipeline- и frontend-компонентов контракты воспроизводимости и изоляции проверочных данных перенесены в новые DEV-VER-006 и DEV-VER-007, а низкоинформативное требование о назначении теста поглощено проверяемым результатом DEV-VER-001. Область общих норм ограничена проверками, используемыми как evidence для merge или release, и проверками, работающими с данными вне production. Освобождённые ID зарегистрированы и не используются повторно.
  • Удалены FE-ERR-003 и FE-ERR-008. Обязательный закрытый перечень обработанных frontend-ошибок, которые нельзя отправлять, больше не устанавливается: выбор расследуемых событий остаётся рекомендацией FE-ERR-001, а запрет регистрировать отменённый запрос сохранён в FE-API-006. Отдельная рекомендация browser grouping удалена: она не задавала самостоятельного browser-контракта сверх поведения выбранных SDK/GlitchTip. ID зарегистрированы как освобождённые.
  • INT-NATS-002 теперь регулирует только stream и consumer. Core NATS request/reply выделен в INT-NATS-006, подтверждённая и дедуплицируемая публикация JetStream — в INT-NATS-007, а единственность responder и ответа — в INT-NATS-008; неопределённый результат публикации теперь требует стабильного прикладного идентификатора. Инфраструктурная граница обновлена на полный диапазон INT-NATS-001INT-NATS-008.
  • Монолитные технологические требования разделены без перенумерации исходных норм: добавлены INF-DAT-010INF-DAT-015 для бюджета соединений, failover и migration identity PostgreSQL, failover Valkey, владения JetStream consumers и отказных доменов MinIO. INF-DAT-002INF-DAT-005 теперь имеют один проверяемый предмет и явно связывают невоспроизводимые данные с capability persistent-data. Новые нормы явно требуют fencing HA, отдельную identity миграции, безопасное исчерпание authoritative Valkey и ёмкость для healing MinIO; это нормативное усиление, а не редакционное разделение.
  • Из MOB-DEP-001 выделен MOB-DEP-002: выбор package manager и lock- контракта iOS и Android теперь проверяется и исключается независимо.
  • INF-LHN-001 больше не требует capability persistent-data для воспроизводимого volume: её объявление теперь следует общей семантике INF-MAN-006; для воспроизводимых данных вместо RPO задаются источник и максимальное время реконструкции.
  • Добавлены условные web-контракты FE-NAV-001FE-NAV-003, FE-FORM-001FE-FORM-003, FE-OFF-001FE-OFF-004, FE-SEO-001FE-SEO-004 и FE-EXT-001FE-EXT-003 для browser- навигации, форм, offline/PWA, индексируемости и стороннего кода. FE-NAV-003 и GEO-контракт FE-SEO-004 имеют уровень SHOULD; остальные нормы применяются только при наличии названной функции.
  • Добавлены INT-CACHE-001INT-CACHE-003 и INT-FILE-001INT-FILE-004 для динамического HTTP-кэширования и передачи файлов, а также BE-HTTP-011 для проверяемой семантики rate limit. INF-NET-006 теперь реализует scope, результат отказа и деградацию архитектурного rate-limit контракта. Frontend- и http-api-профили синхронно подключают новые документы без новых обязательных manifest- capabilities.

Инструменты и документация

  • Обязательный рабочий процесс ИИ-агента, изменяющего этот репозиторий, перенесён из README.md в AGENTS.md. Он теперь требует автоматически создавать новый аннотированный SemVer-тег для каждого commit, публикуемого агентом в main, и атомарно отправлять commit с тегом; рабочие ветки не тегируются.
  • GitLab CI теперь создаёт pipeline только для default branch; проверки рабочих веток и merge request выполняются локально до review.
  • Во все нормативные документы инфраструктурного слоя, NATS и границ слоёв добавлены явные область документа и ссылка на уровни обязательности из README.md; прикладные обязанности при этом не изменены. Структурная проверка и негативные unit-тесты теперь блокируют документ без этих двух элементов.
  • Longhorn-специфичные INF-BCK-004 и INF-BCK-005 перенесены без изменения ID и смысла из общего документа backup в storage/longhorn.md, чтобы документная применимость не включала их для целей без capability longhorn.

0.2.1 — 2026-07-25

Инструменты и документация

  • Добавлены production Compose-конфигурация сайта и пример несекретных переменных: immutable image по digest, loopback endpoint для TLS reverse proxy, healthcheck, resource/security limits и ротация логов.
  • Примеры Compose и Kustomize переработаны в практические руководства: определены входные контракты, адаптация, preflight/render, проверяемый результат, диагностика, очистка и явно отсутствующие production-механизмы.
  • Вложенные разделы левой навигации MkDocs больше не разворачиваются по умолчанию.
  • Меню сайта перестроено по пользовательским задачам: onboarding, архитектурные и инфраструктурные требования, практические руководства, машинные интерфейсы и материалы о сопровождении стандарта.
  • AGENTS.md теперь требует актуализировать nav MkDocs при изменении структуры публикуемых страниц и проверять полноту меню строгой сборкой.
  • Структурные проверки ID, README, ненормативных пометок и whitespace перенесены из Bash в тестируемый scripts/check_docs.py; независимые ошибки теперь собираются за один прогон.
  • Добавлены закреплённый Ruff, .editorconfig и schema-validated allowlist для ID-подобных ссылок. CI smoke-test проверяет все страницы из sitemap и все опубликованные JSON Schema.
  • Документированы committed generated-каталог catalog/requirements.json и воспроизводимая процедура обновления vendored mado.
  • Из pipeline репозитория удалён запуск Trivy для build- и release-образов; нормативные требования и рекомендации по сканированию потребительских артефактов не изменены.
  • Публикация документационного образа больше не запрашивает SBOM и provenance attestations, которые не поддерживаются docker driver используемого GitLab Runner; metadata сборки и продвижение образа по digest сохранены.
  • Навигация сосредоточена в README.md, машинных каталогах и CLI; отдельный дублирующий SUMMARY.md удалён. AGENTS.md требует синхронно обновлять README, changelog, manifests, schemas, примеры и проверки.
  • Governance явно выделен как авторский слой вне consumer-применимости DOC-CLR; реестр префиксов теперь валидируется отдельной JSON Schema.

0.2.0 — 2026-07-25

Нормативные изменения

  • Архитектурные и инфраструктурные стандарты объединены в один release. STD-MAN-001, INF-MAN-001, INF-MAN-003, INF-ARC-001 и INF-ARC-003 теперь определяют единый manifest, commit и атомарное изменение двух нормативных слоёв без межрепозиторного lock.
  • Требования NATS и platform data services разделены на технологические документы без изменения опубликованных ID.

Инструменты и документация

  • Добавлен ненормативный краткий обзор требований с навигацией по областям и ID. AGENTS.md требует синхронно обновлять обзор, README, changelog, manifests, schemas, примеры, проверки и межпроектные зависимости.
  • Документы перемещены в docs/architecture, docs/infrastructure и docs/governance; добавлены технологические profiles, единый CLI scripts/standards.py и общие проверки.
  • Исправлены smoke-test путей опубликованных каталогов и canonical onboarding manifest; проверка репозитория теперь валидирует оба контракта напрямую.
  • Добавлены корневой индекс архитектурных и инфраструктурных примеров, полный реестр точных requirement-префиксов и path rules для governance-документов.

0.1.2 — 2026-07-25

Нормативные изменения

  • OBS-MET-001, OBS-TRACE-001, OBS-ERR-001, FE-OBS-001, FE-OBS-002, FE-ERR-001, MOB-OBS-001, MOB-OBS-002 и MOB-OBS-005 переведены с MUST на SHOULD: OTel metrics, traces, RUM и GlitchTip рекомендуются, а детальные контракты соответствующего канала применяются только после его выбора проектом. FE-PERF-001 также переведён на SHOULD, а BE-RSRC-003 допускает эквивалентные сигналы runtime, оркестратора или платформы.
  • INT-EVT-009 переведён с MUST на SHOULD: DLQ или отдельный replay channel желательны, но могут отсутствовать при определённом и наблюдаемом терминальном результате. BE-JOB-003 и INT-EVT-012 согласованы с этой политикой. INT-NATS-002 больше не требует от микросервиса создавать broker-side consumers или владеть AckWait/BackOff, MaxDeliver и MaxAckPending; сервис фиксирует ожидания и проверяет совместимость с конфигурацией NATS.
  • DEP-SUP-001, DEP-SUP-003 и DEP-SUP-004 переведены с MUST на SHOULD: vulnerability scanning, SBOM и digest promotion стали рекомендуемыми. Для runtime image допускается уникальный непереиспользуемый release tag, при этом продвижение того же артефакта без пересборки остаётся обязательным.
  • DEV-DEP-002 ограничен проверкой лицензий и поддержки, а рекомендуемое сканирование уязвимостей зависимостей вынесено в новый DEV-DEP-004. DEP-IMG-004 допускает точный неплавающий tag базового image без digest и явно объявленный registry без статуса утверждённого; предпочтение утверждённого registry и digest вынесено в новый DEP-IMG-013 уровня SHOULD.

0.1.1 — 2026-07-25

Нормативные изменения

  • Удалён дублирующий AI-DEV-009: независимое человеческое одобрение существенного риска полностью регулируется базовым DEV-REV-002. Освобождённый ID зарегистрирован и не используется повторно.
  • Удалён дублирующий DEP-CI-004; условия однозначного успеха обязательной проверки перенесены в общий DEV-VER-003. Освобождённый ID зарегистрирован.
  • AI-DEV-002 теперь требует сначала получить индекс применимости и полностью читать только требования, область которых пересекает задачу; повторное чтение заведомо неприменимых документов больше не требуется. Неопределённый порог «существенности» удалён из preflight и атрибуции агентных изменений.
  • STD-MAN-002 требует чистого checkout зафиксированного commit, а STD-MAN-003 однозначно определяет роль providers для возможностей без producer/consumer-взаимодействия.
  • STD-MAN-001 теперь исполнимо проверяет стандартное расположение manifest; альтернативный путь допускается только внутри проекта с явным исключением. Ненормативный manifest-пример перенесён в такое же стандартное расположение.
  • DEV-ADR-001, DEV-ADR-002 и STD-MAN-005 задают минимальный YAML front matter исключения; validate и check блокируют непринятый ADR, повторяющийся ID ADR-исключения, несовпадающий ID требования и истёкший по UTC срок.
  • STD-MAN-002 ограничивает unreleased периодом до первого release-тега.
  • DEV-REL-002 устраняет конфликт идентификации mobile release: публичный service.version используется вместе с монотонным app.build_number.
  • OBS-TRACE-007 однозначно исключает повтор одного exception event во вложенных span, сохраняя право родительского span отражать ошибку статусом.
  • Добавлены UI-STATE-001UI-STATE-005: владение реактивным состоянием, различимые асинхронные исходы, lifecycle эффектов, разрешение конкурирующих результатов и стабильная идентичность элементов. Документ включён в профили frontend, mobile-ios и mobile-android.
  • Добавлены BE-JOB-005BE-JOB-007: срок актуальности работы, владение reservation и независимый результат элементов batch. INT-EVT-005 уточнён обязательным подтверждением broker перед удалением или отметкой outbox-записи.
  • Удалён дублирующий MOB-PLAT-006; его область полностью регулируется MOB-AXS-001, MOB-AXS-002 и MOB-AXS-004. Освобождённый ID занесён в реестр и не подлежит повторному использованию.
  • DEP-CI-003 оставляет общее назначение merge-проверок за DEV-VER-003 и регулирует только дополнительные риски release-проверок.
  • Добавлены INT-NATS-001INT-NATS-005: выбор Core NATS или JetStream, stream/consumer и request/reply contract, границы KV и Object Store, NKey и subject permissions. Применимость задаётся capability nats.
  • Добавлены DEV-ADR-001DEV-ADR-003, определяющие содержание, жизненный цикл и связь ADR с изменением.
  • Добавлены DATA-CLS-001DATA-CLS-003, определяющие минимальный контракт классификации, маскирования и изменения правил обработки данных.
  • Добавлен BE-CONF-012 для динамической backend-конфигурации и feature flags.
  • Добавлены INT-EVT-011INT-EVT-013: владение broker topology, эксплуатационные пределы backlog/retention и защита проекций состояния от устаревших событий.
  • Добавлены AI-DEV-001AI-DEV-008 и AI-DEV-010AI-DEV-011: точка входа и свежесть контекста агента, предварительный критерий результата, остановка и эскалация, связность diff, воспроизводимое evidence, защита передаваемых модели данных, минимальные полномочия и атрибуция участия агента.
  • Добавлены OPS-INC-001OPS-INC-004: severity, on-call escalation, ведение инцидента, экстренные изменения и postmortem actions.
  • Добавлены OPS-CAP-001OPS-CAP-003: нагрузочная модель, release-доказательство SLO/лимитов и плановый запас ёмкости.
  • Добавлены DEV-REV-001DEV-REV-004: protected branches, независимое одобрение существенного риска, предмет review и автоматизированные lint/format checks.
  • Добавлены SEC-SCRT-006SEC-SCRT-009: источник, ротация, отказное поведение и аудит production-секретов.
  • Добавлены SEC-THR-001SEC-THR-003: triggers, содержание и актуальность модели угроз.
  • Добавлены MOB-AXS-001MOB-AXS-004: нативная accessibility-семантика, масштабирование, контраст, альтернативный ввод и release-проверка.
  • Добавлены DEV-REL-001DEV-REL-005: источник версии компонента, service.version, публичная схема версий, release notes и deprecation notice.
  • Добавлены BE-CONF-013, BE-STATE-006 и INT-EVT-014: управляемый rollout feature flags, fencing прежнего владельца lease и сверка критичных асинхронных проекций.
  • DEP-ROL-003 повышен с SHOULD до MUST и дополнен проверкой пользовательского результата и обязательным recovery action при регрессии.
  • DATA-BACK-004 дополнен репрезентативным объёмом recovery exercise, фиксацией версий и блокирующим gate при просроченной или неуспешной проверке.
  • Добавлены MOB-SEC-007MOB-SEC-008: обработка серверного отзыва активной сессии и контроль назначения сбора данных сторонним SDK.
  • Добавлены MOB-DATA-006MOB-DATA-007: изоляция локального состояния между аккаунтами и безопасное восстановление на новом устройстве.
  • mobile/storage-offline.md включён в базовые mobile-профили; требования offline-сценария сохраняют собственное условие применимости.
  • Добавлены MOB-BUILD-007 и MOB-OBS-007: контроль размера store artifact и rendering/jank regression.
  • Из MOB-TECH-001 выделен MOB-TECH-005: SwiftUI и Jetpack Compose остаются MUST, а точные минимальные версии iOS 16.0 и Android API 26 стали SHOULD.
  • Из BE-CONF-004 выделен BE-CONF-011 уровня SHOULD для обнаружения неизвестных переменных окружения.
  • Из BE-HLTH-001 выделен BE-HLTH-009 уровня SHOULD для стандартных HTTP-путей health checks; семантика статусов и ответа остаётся MUST.
  • Область FE-AXS-001 ограничена публичными и клиентскими сценариями; для внутренних интерфейсов добавлен FE-AXS-005 уровня SHOULD.
  • STD-MAN-002 теперь прямо требует отдельной CI-сверки release-тега и commit SHA, а DOC-CLR-013 — регистрации освобождённого ID.

Инструменты и документация

  • Явно зафиксирована односторонняя зависимость инфраструктурного стандарта от стабильных архитектурных ID, границы владения и порядок согласованного выпуска межрепозиторных изменений без обратных нормативных ссылок.
  • Добавлены потребительские команды verify-version, check и context. check объединяет проверку manifest, чистого checkout tag/SHA и audit, а context выдаёт компактный индекс либо полный bundle применимых требований с выбором точных ID и явными метаданными исключений без включения основного текста проектных ADR. Причины применимости называют конкретный provider или consumer и не повторяют базовый профиль для каждого компонента.
  • init --from-checkout безопасно заполняет tag и commit SHA; для потребительского CLI добавлен отдельный минимальный requirements-cli.lock. Документационный набор наследует тот же входной список CLI-зависимостей, исключая независимое закрепление общих версий.
  • Git добавлен в воспроизводимый validation image как исполнимая системная зависимость команд проверки версии.
  • Site staging публикует manifest-пример из проектного .architecture по видимому URL без второй исходной копии.
  • audit теперь заранее исключает dependency/build-деревья из обхода и обнаруживает корневой AGENTS.md, Swagger и AsyncAPI-контракты. Исправлена проверка локальных ссылок AGENTS.md; добавлены black-box тесты версии checkout, context, исключений и новых сигналов.
  • Добавлено ненормативное практическое руководство по подключению стандартов, созданию manifest, вычислению применимости, проверке в CI и обновлению зафиксированной версии.
  • Добавлены машинный реестр освобождённых ID и проверка неучтённых пробелов.
  • Добавлены black-box тесты команд init, validate, explain и audit.
  • Manifest поддерживает capability ai-assisted-development; validate проверяет корневой AGENTS.md, ссылку на manifest и локальные ссылки.
  • Проверка примеров контролирует ненормативную пометку, связанные ID и ограничения применимости.
  • Документированы поддерживаемые эвристики audit; build-, coverage- и dependency-каталоги исключены из поиска.
  • CI-сканирование container image расширено на secrets и licenses.
  • Зафиксированы upstream-источник и граница доверия vendored mado.
  • Добавлены ненормативные JSON Schema общего event envelope и тела health-check с valid/invalid проверками.
  • Добавлены сквозные примеры корреляции observability-сигналов и жизненного цикла события от outbox до dead-letter/replay.
  • Практическое руководство дополнено рабочим циклом, таблицей выбора профиля, ожидаемыми результатами, диагностикой ошибок и end-to-end примером проекта с AGENTS.md, manifest и GitLab CI.
  • В перечень нормативных источников corporate-fields.md добавлен FE-OBS-001; руководство явно напоминает вручную объявлять stateful-storage, поскольку audit не выводит использование хранилища из зависимостей.

0.1.0 — 2026-07-24

Нормативные изменения

  • До первого release префикс требований аутентификации изменён с SEC-AUTH на SEC-AUTHN (SEC-AUTHN-001SEC-AUTHN-012); SEC-AUTHZ сохранён за требованиями авторизации.
  • Добавлены ARC-PAT-001ARC-PAT-004: минимальная достаточность архитектурных абстракций, направление зависимостей прикладной границы, единый путь применения прикладного правила и ациклический граф проектных модулей. Документ включён в базовый профиль каждого объявленного компонента.
  • DEV-RUN-004: уровень изменён с MUST на SHOULD; вместо обязательного локального запуска допускается воспроизводимая проверка в изолированной управляемой среде.
  • DEV-RUN-009: добавлен запрет использовать для локального запуска production-секреты, production-данные и изменяющий доступ к production-системам.
  • DEP-CI-003: отдельная release-проверка требуется только для риска, который не подтверждён merge-проверками того же commit и продвигаемого артефакта.
  • DEP-IMG-001: уровень требования к multi-stage build изменён с MUST на SHOULD; одноэтапная сборка допускается при эквивалентной проверке состава, происхождения и полномочий runtime image.
  • FE-PERF-002: уровень требования к бюджету bundle изменён с MUST на SHOULD; бюджет может быть заменён воспроизводимым автоматизированным контролем регрессий до release.
  • MOB-PLAT-007: область применения ограничена приложениями с двумя и более locale либо с обязательным процессом перевода.

Идентификаторы изменённых требований сохранены. Смысл DEV-PROF-001, DEV-PROF-002 и DEV-PROF-003 не изменён: их перечни представлены в однозначном формате для автоматической сверки.

Инструменты и документация

  • Добавлены CONTRIBUTING.md и корневая MIT License.
  • Staging сайта перенесён из regex-преобразований Dockerfile в импортируемый scripts/stage_docs.py с явным отображением путей и автоматической проверкой staged-ссылок.
  • scripts/check-docs.sh и validate-стадия Docker поддерживают Linux ARM64; vendored-архивы mado v0.3.1 для ARM64 и x86-64 проверяются по SHA-256.
  • Добавлен ненормативный образец допустимых и недопустимых границ компонента для ARC-PAT-001ARC-PAT-004.
  • Добавлена двусторонняя сверка catalog/applicability.json с таблицами DEV-PROF.
  • Структурные проверки из heredoc-блоков scripts/check-docs.sh перенесены в импортируемый модуль scripts/check_docs.py.