Objectif / Goal
Tester chaque usage console → services externes (GitLab, Keycloak, Vault, ArgoCD, Nexus, Registry, SonarQube, Harbor) contre apps/server-nestjs, pour trouver les bugs et incompatibilités de la migration apps/server → apps/server-nestjs, et couvrir 100 % des features customer-facing touchées.
Contexte / Context
apps/server (Fastify) est figé — ne pas modifier.
apps/server-nestjs est le backend cible.
- Le mapping legacy→nestjs repose sur des événements :
apps/server fire hook.<entity>.<verb> ; nestjs utilise EventEmitter2 avec @OnEvent → capturePluginResult.
- Checklist de parité : https://github.com/cloud-pi-native/console (cf.
MIGRATION-PARITY-MATRIX.md).
Livrables / Deliverables
- Tests unitaires (vitest) couvrant chaque chemin console→service externe + le contrat emit→consumer.
- Tests e2e (
apps/server-nestjs/test/*.e2e-spec.ts, gated E2E=1) pour chaque ressource migrée.
- Playwright pour les journeys UI customer-facing (cross-service fragility → socle cahier).
- Issues une par bug/incoherence trouvée, itérées jusqu'au vert.
Statut / Status
- Baseline unitaire : 578 passés / 59 skipped (Node 24, CI=true).
- Seed validé :
app-events.service.spec.ts — parity zone.* (listener sans émetteur). 12/12 ✅
- Blocage infra : les hôtes d'intégration
*.dso.cpin-hp.numerique-interieur.fr ne résolvent pas en DNS depuis cette machine dev → les tests e2e sont exécutés sur un host connecté / en CI.
Sous-tâches / Sub-tasks
Gates de sortie
pnpm --filter @cpn-console/server-nestjs run lint && pnpm --filter @cpn-console/server-nestjs test vert + chaque sous-tâche clôturée (issue liée + test vert). E2E validé sur host connecté.
Objectif / Goal
Tester chaque usage console → services externes (GitLab, Keycloak, Vault, ArgoCD, Nexus, Registry, SonarQube, Harbor) contre
apps/server-nestjs, pour trouver les bugs et incompatibilités de la migrationapps/server→apps/server-nestjs, et couvrir 100 % des features customer-facing touchées.Contexte / Context
apps/server(Fastify) est figé — ne pas modifier.apps/server-nestjsest le backend cible.apps/serverfirehook.<entity>.<verb>; nestjs utiliseEventEmitter2avec@OnEvent→capturePluginResult.MIGRATION-PARITY-MATRIX.md).Livrables / Deliverables
apps/server-nestjs/test/*.e2e-spec.ts, gatedE2E=1) pour chaque ressource migrée.Statut / Status
app-events.service.spec.ts— parityzone.*(listener sans émetteur). 12/12 ✅*.dso.cpin-hp.numerique-interieur.frne résolvent pas en DNS depuis cette machine dev → les tests e2e sont exécutés sur un host connecté / en CI.Sous-tâches / Sub-tasks
Gates de sortie
pnpm --filter @cpn-console/server-nestjs run lint && pnpm --filter @cpn-console/server-nestjs testvert + chaque sous-tâche clôturée (issue liée + test vert). E2E validé sur host connecté.