Ce que nous entendons par gouvernance
Pour nous, la gouvernance signifie une politique codée dans des chemins de code, des limites, des tests et des contrôles de déploiement. Il ne s’agit pas d’une promesse uniquement documentaire.
Les références ci-dessous correspondent aux points de mise en œuvre dans ce référentiel afin que les affirmations puissent être vérifiées de manière indépendante.
Métadonnées de vérification
Métadonnées d'itinéraire
- Itinéraire :
/transparency/verification-governance/ - Dernière vérification :
- Prochaine révision prévue :
- Portée de la vérification : examen manuel des implémentations de portes décrites par rapport aux hooks actuels, aux vérifications du pipeline CI et aux chemins de contrôle d'exécution.
- Previous version: Verification and Governance before the June 2026 tooling update
Limites connues
- Les descriptions de portes sont gérées manuellement ; une référence croisée automatisée entre cette page et la configuration du hook/pipeline est prévue pour la clôture trimestrielle.
- Les valeurs limites d'exécution reflètent les valeurs par défaut ; Les remplacements spécifiques à l'environnement peuvent différer sur les instances non liées au développement.
Ces métadonnées sont mises à jour trimestriellement dans le cadre de la clôture de l'audit de gouvernance.
Statut actuel de l'audit de sécurité
Depuis le 24/03/2026, PayCal reste dans le statut PASS après l'expansion de BRS-01 à BRS-05 et la synchronisation de l'hygiène des versions de suivi.
Les détails du statut public et les références des preuves sont publiés sur /transparency/security-audit/.
1) Portes de politique locale (Git Hooks)
Les hooks locaux bloquent les fusions dangereuses avant que le code n'atteigne les branches partagées.
githooks/pre-commitruns PHPStan Level 9 on staged PHP files underhtml/.githooks/pre-commitblocks baseline usage inphpstan.neonand blocksphpstan-baseline.neon.githooks/pre-pushruns full-repo PHPStan Level 9 and applies the same baseline-blocking policy.
Ces portes réduisent les risques de dérive politique et de régressions silencieuses de la qualité.
2) Pipeline de vérification CI
Le flux de travail CI exécute des couches de test de plus en plus approfondies, depuis la validation rapide jusqu'à la vérification sous contrainte.
For the current end-to-end CI/CD operating model, see CI/CD Tooling and Release Governance.
.github/workflows/phpunit.ymlStage 2:composer run test:all(unit + integration + contract)..github/workflows/phpunit.ymlStage 3:composer run test:random(order-randomized)..github/workflows/phpunit.ymlStage 3:composer run test:coverage..github/workflows/phpunit.ymlStage 4: mutation test job.
Representative contract/integration suites include html/tests/Integration/KekContractTest.php, html/tests/Integration/RedisContractTest.php, and contract tests under html/tests/Contract/.
3) Limites de taux d'exécution et gouvernance des entrées
Les points de terminaison opérationnels sont limités par des fenêtres de requête explicites et des règles de validation de charge utile.
html/src/Domain/RateLimiter.phpdefines per-minute endpoint and IP limits, including telemetry (90/minute).html/src/Controllers/TelemetryController.phpenforces authentication and telemetry rate limits before accepting events.html/src/Controllers/TelemetryController.phpbounds event type format with a strict regex to control key cardinality.html/src/Controllers/EmailVerificationController.phpapplies retry windows with TTL-backed rate-limit keys.
Ces contrôles visent à maintenir le comportement prévisible dans des conditions de circulation normales et abusives.
4) Gouvernance du TTL et des limites de sécurité
Les limites de flux sensibles à la sécurité sont définies de manière centralisée et limitées par des contraintes min/max.
html/src/system-limits-master.phpincludesenable_rate_limitingand account-recovery controls.- Les limites de récupération de compte incluent la durée de vie du code, les temps de recharge de renvoi, les tentatives de vérification maximales, les fenêtres de relecture et les durées de vie des blocs IP hachés.
html/src/Domain/AccountRecoveryAbuseGuard.phprecords replay telemetry and applies automatic hashed-IP blocking when thresholds are exceeded.html/src/Domain/AccountRecoveryTransaction.phpenforces transaction/proof/bootstrap expiries from system limits.
Cette structure permet des mises à jour contrôlées des politiques sans contourner les limites typées.
5) Contrôles de livraison des CSP et des actifs
Les pages destinées au public sont régies par une politique de sécurité du contenu explicite et un rendu de script/style non-aware.
html/header.phpbuilds and emits CSP directives includingdefault-src 'none'and strictscript-src/style-srcpolicies.html/header.phpincludes Trusted Types policy directives.html/src/Domain/Render.phpsupports nonce-based module script rendering.
Ces contrôles limitent les surfaces exécutables et font partie de notre modèle de gouvernance de base.
Comment vérifier ces affirmations
Les développeurs peuvent reproduire les signaux de vérification directement dans ce référentiel :
# Static analysis gates
bash githooks/pre-commit
bash githooks/pre-push
# Test pipeline equivalents
cd html
composer run test:all
composer run test:random
composer run test:coverage
Dernière mise à jour : June 22, 2026.