Aller au contenu

PD-299 — Décomposition step 6a

Stratégie d'exécution

Mode : sequential (bi-projet, 10 modules, 2 repos distincts)

Justification : Les modules gov et app sont dans des repos différents. Les modules gov ne nécessitent pas de TypeScript check. Exécution séquentielle pour maintenir la cohérence.

Données résolues (pré-implémentation)

Donnée Valeur résolue Source
Scope comptage tests *.{test,spec}.{ts,tsx} récursif depuis src/ DEC-01 (plan §0)
Échelle comptage Niveau projet (project_code) DEC-02
Cap zéro-test 6.0 exact (pas min()) DEC-01 + INV-299-12
Regex Bearer ^Bearer [!-~]+$ (ASCII visible, single space) DEC-10 + spec D-299-07 corrigée
Source companion source_story_id en front-matter YAML du besoin DEC-07
Format ratification PO Commentaire Jira horodaté Spec D-299-21 corrigée
Allowlist metadata z.strictObject({}) — 0 clé par défaut INV-299-05
Fallback maskIp Littéral exact IP masquée indisponible INV-299-06

Waves d'exécution

Wave 1 — Modules gouvernance (ProbatioVault-ia-governance)

# Module Agent Fichiers
1 gov-docs-guardrails agent-developer .claude/rules/learnings-universal.md, templates/prompts/6a Decomposition.md, scripts/check-6a-block.py
2 gov-6cbis agent-developer scripts/gov-6cbis.sh, scripts/lib/extract-cross-module-points.py
3 gov-gate-zerotest agent-developer scripts/lib/gate8-zero-test.py
4 gov-assemble-companion agent-developer scripts/lib/load-companion-source.py
5 gov-check-extensions agent-developer scripts/detect-plan-extensions.py
6 gov-legal agent-developer scripts/validate-legal-approvals.py

Wave 2 — Modules app (ProbatioVault-app)

# Module Agent Fichiers
7 sharing-telemetry agent-developer src/sharing/telemetry/**, src/sharing/masking/**, src/sharing/errors/**
8 sharing-api agent-developer src/sharing/api/**
9 sharing-ui agent-developer src/sharing/screens/**, src/sharing/guards/**, src/sharing/hooks/**
10 sharing-tests agent-qa src/sharing/**/__tests__/**

Cross-module points (6c.bis)

Fichiers attendus dans le diff pour step 7 : - ProbatioVault-app/src/proofs/screens/ProofDetailScreen.tsx (injection guard) - ProbatioVault-app/src/sharing/guards/OwnershipGuard.tsx (nouveau composant) - ProbatioVault-app/src/sharing/guards/index.ts (export)