Aller au contenu
DispatchAtlas
Rechercher

Préparation à la publication

La page de publication rapporte le statut de gate sûr-pour-le-public à travers le code, les paquets, les docs, les données du portail, les matériaux de présentation, la sécurité, et le déploiement. Le déploiement en production reste bloqué jusqu'à ce que l'ensemble complet de cartes-vertes passe.

Statut de gate

GateStatut actuelPolitique de preuve
Lint et formatageVérification requiseuv run ruff format --check . et uv run ruff check . doivent passer sans constat.
Vérification de typesVérification requiseuv run mypy packages tests tools examples doit passer sous l'environnement verrouillé.
Registre de proseVérification requiseuv run python tools/check_prose_register.py doit passer sur chaque surface publique.
Dérivation code-d'abordVérification requiseuv run python tools/check_code_first.py doit passer.
En-têtes de licenceVérification requiseuv run reuse lint et uv run python tools/license_header.py check doivent passer tous deux.
Scan de secretsVérification requisegitleaks detect --source . --redact --config .gitleaks.toml ne doit rapporter aucune fuite.
Compilation des docsVérification requisenpm --prefix site run build et npm --prefix site run check doivent se terminer pour l'espace de travail actuel.
Données du portailVérification requiseuv run pytest tests/site doit passer et enregistrer l'exécution avant la promotion.
CouvertureVérification requiseuv run coverage run -m pytest et uv run coverage report doivent enregistrer un résultat de seuil réussi.
Ligne de base d'accessibilitéVérification requiseMétadonnées SVG, texte alt, contrôles étiquetés, et mise en page responsive doivent être vérifiés par les tests du site ou l'audit d'accessibilité.
Vérification des liensVérification requiseLa compilation du site doit résoudre les liens de navigation et de page documentés pour l'espace de travail actuel.
Compilation de paquetVérification requiseuv run python tools/build_packages.py doit émettre des artefacts de compilation et des hachages avant la promotion de paquet.
Smoke d'installation de paquetVérification requiseLes wheels compilées doivent s'installer dans un environnement virtuel frais et importer chaque espace de noms public.
Export de lot de preuvesVérification requiseTableaux, figures, et supplément doivent se régénérer depuis une campagne filtrée par divulgation.
Relecture de campagne piloteVérification requiseLes campagnes pilotes bornées doivent reprendre, rejouer depuis les graines enregistrées, et reproduire des exports d'analyse déterministes.
Campagnes complètes candidatesVérification requisetools/build_campaign_evidence.py doit matérialiser 30 problèmes par profil, exécuter des campagnes comparatives/d'ablation/de sensibilité, et exporter des lots filtrés par divulgation.
Audit de dépendancesVérification requiseuv run pip-audit --path <site-packages> --progress-spinner off doit se terminer sans constat bloquant la publication.
SBOMVérification requiseLe JSON CycloneDX doit être généré depuis l'environnement Python audité, enrichi de licences de composants, hachages, URLs de paquet, et arêtes de dépendance.
CI hébergéeConditionnée à la disponibilité de runner.github/workflows/ci.yml doit passer sur Ubuntu, Windows, macOS, et Python 3.12-3.14 avant les affirmations publiques.
Artefacts de publicationWorkflow manuel.github/workflows/release.yml compile les distributions, hachages, lots de signature Sigstore, GitHub artifact attestations, et preuve SBOM ; la publication GitHub et la publication PyPI nécessitent des entrées explicites.
DéploiementWorkflow manuel.github/workflows/pages.yml déploie site/out seulement après saisie de la confirmation de domaine approuvée.

Le lot de gate public est disponible sous gate-summary.json.

📦 Canaux de publication

DispatchAtlas est conçu pour plusieurs canaux de publication, mais chaque canal a un état de préparation différent :

CanalÉtat actuelPreuve de promotion
Wheels et sdists locauxActif pour les vérifications de testCompilation de paquet plus smoke d'import en venv-frais.
Index de paquets PythonConditionnéVersionnage, métadonnées, succès du workflow de publication, publication de confiance, et approbation explicite de publication.
Site web de documentationPrêt à compilerCompilation du site et vérification de types, tests de contrat du site, vérifications de liens, lots de données sûrs-pour-le-public, et approbation manuelle de Pages.
Jeux de données statiques du portailPrêt pour l'aperçuLots JSON/CSV filtrés par divulgation avec étiquettes de preuve et sans entrées privées.
Lots de preuvesPrêt comme candidatManifeste, tableaux, figures, supplément, et relecture déterministe sur la preuve de campagne candidate. Les affirmations de corps restent conditionnées par non-égalité et suffisance de faisabilité.
Artefacts de sécuritéActif localementAudit de dépendances, SBOM enrichi, scan de secrets, revue des permissions de workflow, OpenSSF Scorecard, et scan de similarité.

Aucun canal ne doit être promu en copiant des fichiers générés manuellement. Promouvez en réexécutant la commande ou le workflow propriétaire et en gardant la preuve de gate correspondante au vert.