chore: regenerate CHANGELOG, bump VERSION to 0.991 for RC1

This commit is contained in:
senke 2026-03-03 19:52:49 +01:00
parent 9eb1b3cd65
commit 0f31c11304
4 changed files with 161 additions and 1 deletions

View file

@ -1,5 +1,33 @@
# Changelog - Veza
## [v0.991] - 2026-03-03 (RC1)
### Added
- docs/V1_SIGNOFF.md: v1.0.0 release checklist (21 critères)
- docs/SECURITY_SCAN_RC1.md: security scan results (govulncheck, npm audit)
- Branche release/v1.0.0 pour code freeze RC
### Changed
- OpenAPI spec régénérée (make openapi)
- PROJECT_STATE: prochaine v0.992 RC2
---
## [v0.982] - 2026-03-03
### Added
- docs/PERFORMANCE_BASELINE.md: section Lighthouse v0.982 (objectifs ≥90)
- docs/PWA_OFFLINE_VERIFICATION.md: checklist vérification mode offline
- docs/RGPD_CCPA_VERIFICATION.md: checklist export, suppression, opt-out
### Fixed
- docs/BUG_BASH_V0981.md: critères release validés (0 P1/P2 ouverts)
### Changed
- VERSION: 0.982
---
## [v0.981] - 2026-03-02
### Added

View file

@ -1 +1 @@
0.982
0.991

52
docs/SECURITY_SCAN_RC1.md Normal file
View file

@ -0,0 +1,52 @@
# Security Scan — v0.991 RC1
**Date** : 2026-03-03
**Objectif** : Valider l'absence de vulnérabilités CRITICAL bloquantes pour RC1
---
## Go (govulncheck)
| ID | Module | Sévérité | Statut | Justification |
|----|--------|----------|--------|---------------|
| GO-2026-4337 | crypto/tls (stdlib) | | Accepté | Fix dans go1.25.7 — mise à jour Go planifiée |
| GO-2025-4233 | quic-go | | Accepté | QPACK DoS — impact limité, fix en v0.57.0 |
| GO-2025-4108 | containerd | | Accepté | Testcontainers uniquement — pas en production |
| GO-2025-4100 | containerd | | Accepté | Idem — usage tests uniquement |
| GO-2025-3528 | containerd | | Accepté | Idem — usage tests uniquement |
**Actions** : Mettre à jour Go vers 1.25.7+ si disponible. Containerd vulnérabilités : testcontainers utilisé uniquement en CI/tests, pas exposé en production.
---
## npm (apps/web)
| Package | Sévérité | Statut | Note |
|---------|----------|--------|------|
| basic-ftp | CRITICAL | À traiter | Path Traversal — dépendance transitive, `npm audit fix` en conflit peer (Storybook/Vite) |
| minimatch | HIGH | À traiter | ReDoS |
| rollup | HIGH | À traiter | Path Traversal |
| storybook | HIGH | Accepté | WebSocket Hijacking — dev only, pas en production |
| ajv | MODERATE | Accepté | ReDoS, usage limité |
**Actions** : Exécuter `npm audit fix --legacy-peer-deps` ou mise à jour manuelle des dépendances. Storybook : acceptable car outil de dev uniquement.
---
## Rust (cargo audit)
`cargo-audit` non installé. Commande : `cargo install cargo-audit && cargo audit`
---
## Docker (Trivy)
À exécuter sur les images finales : `trivy image <image>:v0.991-rc1`
---
## Verdict RC1
- [ ] Zéro vulnérabilité CRITICAL non documentée
- [ ] Vulnérabilités ÉLEVÉES documentées avec justification
- [ ] Plan de correction pour v1.0.1 si nécessaire

80
docs/V1_SIGNOFF.md Normal file
View file

@ -0,0 +1,80 @@
# Sign-off Release v1.0.0 — Checklist
**Document** : Validation des critères de release v1.0.0
**Référence** : [ROADMAP_V09XX_TO_V1.md](ROADMAP_V09XX_TO_V1.md) section 15
**Date de validation** : ___________
**Validateur** : ___________
---
## Critères obligatoires
| # | Critère | Statut | Preuve / Commande |
|---|---------|--------|-------------------|
| 1 | Zéro vulnérabilité CRITIQUE ou ÉLEVÉE | | `govulncheck ./...`, `cargo audit`, `npm audit` |
| 2 | Flux OAuth fonctionnel E2E (Google, GitHub) | | Test d'intégration OAuth |
| 3 | Flux paiement Hyperswitch vérifié E2E | | Test d'intégration paiement |
| 4 | Couverture tests Go — par package critique (auth > 80%, core > 70%, handlers > 50%, global > 55%) | | `go test -cover ./...` |
| 5 | Couverture tests Frontend > 50% global | | `cd apps/web && npm run test -- --coverage --run` |
| 6 | Couverture tests Rust > 30% global | | `cargo tarpaulin` |
| 7 | Tests passent sans skip excessif (< 50 skips Go, < 5 skips E2E) | | `go test -short ./...`, `grep -r "t.Skip" \| wc -l` |
| 8 | Load test : 1000 WebSocket simultanées | | Script loadtests |
| 9 | Load test : 500 req/s API | | k6 stress_500rps.js |
| 10 | P99 < 500ms endpoints critiques | | Prometheus ou rapport load test |
| 11 | Zéro TODO/FIXME dans le code | | `grep -rn "TODO\|FIXME\|HACK" --include="*.go" --include="*.ts" --include="*.tsx" --include="*.rs"` |
| 12 | Documentation API complète (OpenAPI validée) | | `swagger-cli validate openapi.yaml` |
| 13 | Runbook opérationnel (déploiement, rollback, incident) | | Fichiers `docs/runbooks/*.md` |
| 14 | Dashboard Grafana fonctionnel avec alertes | | Screenshot, test alerte |
| 15 | Migrations consolidées | | `000_full_schema.sql` ou équivalent |
| 16 | VERSION file synchronisé | | `cat VERSION` == `git describe --tags --abbrev=0` |
| 17 | Docker images sans vulnérabilité CRITICAL | | Trivy scan |
| 18 | Secrets : rotation documentée, aucun en dur | | `docs/runbooks/SECRET_ROTATION.md`, `grep` |
| 19 | RGPD/CCPA : export, suppression, opt-out | | [docs/RGPD_CCPA_VERIFICATION.md](RGPD_CCPA_VERIFICATION.md) |
| 20 | Accessibilité : Lighthouse > 90 | | [docs/PERFORMANCE_BASELINE.md](PERFORMANCE_BASELINE.md) section Lighthouse |
| 21 | PWA : mode dégradé offline | | [docs/PWA_OFFLINE_VERIFICATION.md](PWA_OFFLINE_VERIFICATION.md) |
---
## Résumé
| Statut | Count |
|--------|-------|
| PASS | |
| FAIL | |
| N/A (documenté) | |
**Verdict** : [ ] GO [ ] NO-GO
---
## Sign-off RC1 (v0.991)
- [ ] Tous les critères PASS ou documentés
- [ ] Scan sécurité : zéro CRITICAL
- [ ] Code freeze effectif (branche `release/v1.0.0`)
- [ ] Images Docker production prêtes
**Date** : ___________
**Signataire** : ___________
---
## Sign-off RC2 (v0.992)
- [ ] Zéro bug ouvert
- [ ] Sign-off final validé
- [ ] Release notes prêtes
**Date** : ___________
**Signataire** : ___________
---
## Sign-off v1.0.0
- [ ] Déploiement production réussi
- [ ] Smoke test post-déploiement OK
- [ ] Release notes publiées
**Date** : ___________
**Signataire** : ___________