Stability checkpoint — CLAUDE.md CI batch rule + ADR-0057 polyrepo + ADR-0045/0046 stubs + regen-adr-index hardening (MR !184)
3 distinct concerns batched in one MR (per the new CLAUDE.md rule
'Réduire les vagues CI' that this commit also introduces) :
1. CLAUDE.md mirror : new 'Réduire les vagues CI' rule from global
~/.claude/CLAUDE.md applied locally so svc-only sessions follow
the same batching discipline. Justification : local mvn verify
catches 80 % of fails before push ; CI fails on a batch are still
traceable to specific commits in minutes via diff inspection.
Saves (N-1) × 10-15 min per CI cycle batched.
2. ADR-0057 — Conserver le polyrepo (svc + UI séparés). Decided
against monorepo migration. Rationale dominante : séparation
des expertises (un dev backend ouvre svc et voit du Spring/Maven
uniquement ; idem frontend avec Angular/TS). Le coût de
propagation de règles cross-repo (CLAUDE.md, TASKS.md) est
accepté comme discipline workflow, pas comme défaut architectural.
3. ADR-0045/0046 stubs + regen-adr-index.sh hardening :
- 0045-superseded : original PIT routing ADR was absorbed into
ADR-0042 via commit 33e31e5. Number kept as redirect stub.
- 0046-skipped : numbering only, never assigned. Stub policy =
never recycle a number even after consolidation.
- regen-adr-index.sh BUG : grep without || true under
'set -euo pipefail' was silently TRUNCATING the entire
flat-index table at the first ADR with non-standard Status
block. Symptom uncovered when adding 0045/0046 stubs caused
the table to drop from 56 → 44 entries silently. Hardened with
'|| true' on the grep + default 'Unknown' status when missing.
This bug had been latent for weeks.