Готовность к выпуску
Страница выпуска сообщает безопасный-для-публики статус gate по коду, пакетам, docs, данным портала, презентационным материалам, безопасности, и развёртыванию. Продакшен-развёртывание остаётся заблокированным, пока не пройдёт полный набор зелёных-карт.
✅ Статус gate
| Gate | Текущий статус | Политика доказательств |
|---|---|---|
| Lint и формат | Требуется верификация | uv run ruff format --check . и uv run ruff check . должны пройти без находок. |
| Проверка типов | Требуется верификация | uv run mypy packages tests tools examples должна пройти под заблокированным окружением. |
| Регистр прозы | Требуется верификация | uv run python tools/check_prose_register.py должна пройти на каждой публичной поверхности. |
| Код-первичный вывод | Требуется верификация | uv run python tools/check_code_first.py должна пройти. |
| Заголовки лицензии | Требуется верификация | uv run reuse lint и uv run python tools/license_header.py check должны пройти оба. |
| Сканирование секретов | Требуется верификация | gitleaks detect --source . --redact --config .gitleaks.toml не должна сообщать утечек. |
| Сборка docs | Требуется верификация | npm --prefix site run build и npm --prefix site run check должны завершиться для текущего рабочего пространства. |
| Данные портала | Требуется верификация | uv run pytest tests/site должна пройти и записать прогон до повышения. |
| Покрытие | Требуется верификация | uv run coverage run -m pytest и uv run coverage report должны записать пройденный пороговый результат. |
| Базовая линия доступности | Требуется верификация | Метаданные SVG, alt-текст, помеченные элементы управления, и адаптивная вёрстка должны проверяться тестами сайта или аудитом доступности. |
| Проверка ссылок | Требуется верификация | Сборка сайта должна разрешить документированные навигационные и страничные ссылки для текущего рабочего пространства. |
| Сборка пакета | Требуется верификация | uv run python tools/build_packages.py должна эмитировать артефакты сборки и хеши до повышения пакета. |
| Smoke установки пакета | Требуется верификация | Собранные wheel должны установиться в свежем виртуальном окружении и импортировать каждое публичное пространство имён. |
| Экспорт пакета доказательств | Требуется верификация | Таблицы, фигуры, и дополнение должны регенерироваться из отфильтрованной по раскрытию кампании. |
| Воспроизведение пилотной кампании | Требуется верификация | Ограниченные пилотные кампании должны возобновляться, воспроизводиться из записанных зёрен, и воспроизводить детерминированные экспорты анализа. |
| Кандидатские полные кампании | Требуется верификация | tools/build_campaign_evidence.py должна материализовать 30 проблем на профиль, прогнать сравнительные/абляционные/чувствительностные кампании, и экспортировать отфильтрованные по раскрытию пакеты. |
| Аудит зависимостей | Требуется верификация | uv run pip-audit --path <site-packages> --progress-spinner off должна завершиться без блокирующих выпуск находок. |
| SBOM | Требуется верификация | JSON CycloneDX должен генерироваться из аудированного Python-окружения, обогащённый лицензиями компонентов, хешами, URL пакетов, и рёбрами зависимостей. |
| Хостируемый CI | Заблокирован доступностью runner | .github/workflows/ci.yml должен пройти на Ubuntu, Windows, macOS, и Python 3.12-3.14 до публичных утверждений. |
| Артефакты выпуска | Ручной рабочий процесс | .github/workflows/release.yml собирает дистрибутивы, хеши, пакеты подписи Sigstore, аттестации артефактов GitHub, и доказательства SBOM; выпуск GitHub и публикация PyPI требуют явных входов. |
| Развёртывание | Ручной рабочий процесс | .github/workflows/pages.yml развёртывает site/out только после ввода одобренного подтверждения домена. |
Публичный пакет gate доступен как gate-summary.json.
📦 Каналы публикации
DispatchAtlas спроектирован для нескольких каналов публикации, но каждый канал имеет разное состояние готовности:
| Канал | Текущее состояние | Доказательство повышения |
|---|---|---|
| Локальные wheel и sdist | Активен для smoke-проверок | Сборка пакета плюс smoke импорта в свежем-venv. |
| Индекс пакетов Python | Заблокирован | Версионирование, метаданные, успех рабочего процесса выпуска, доверенная публикация, и явное одобрение выпуска. |
| Сайт документации | Готов к сборке | Сборка сайта и проверка типов, контрактные тесты сайта, проверки ссылок, безопасные-для-публики пакеты данных, и ручное одобрение Pages. |
| Статические наборы данных портала | Готов к превью | Отфильтрованные по раскрытию пакеты JSON/CSV с метками доказательств и без частных входов. |
| Пакеты доказательств | Готов как кандидат | Манифест, таблицы, фигуры, дополнение, и детерминированное воспроизведение над кандидатским доказательством кампании. Утверждения тела остаются заблокированными отсутствием-ничьей и достаточностью осуществимости. |
| Артефакты безопасности | Активен локально | Аудит зависимостей, обогащённый SBOM, сканирование секретов, обзор разрешений рабочего процесса, OpenSSF Scorecard, и сканирование сходства. |
Ни один канал не должен повышаться копированием сгенерированных файлов вручную. Повышайте, перезапуская владеющую команду или рабочий процесс и сохраняя соответствующее доказательство gate зелёным.