make update écrivait jusqu'ici les changements de statut et de date, mais se
contentait de journaliser les ajouts et les décisions du Conseil : les mêmes
écarts seraient revenus à chaque passage, indéfiniment. Un rapport qui répète
les mêmes lignes cesse d'être lu.
Deux manques comblés :
- un écart d'ajout porte désormais la collecte qui l'a produit, et appliquer()
crée réellement le texte via classer_nouveau()
- un écart de décision porte l'affaire collectée, et l'écrit dans decisions_cc
Une affaire orpheline est rattachée par similarité de titre : le registre du
Conseil donne l'intitulé complet (« Loi actualisant la programmation militaire
pour les années 2024 à 2030… »), la base le nom d'usage. L'affaire 2026-907 DC
a ainsi trouvé sa loi toute seule.
Résultat sur les sources réelles :
passage 1 → 7 ajouts, 4 modifications
passage 2 → 0 ajout, 4 modifications (décisions désormais écrites)
passage 3 → 0 écart : « la base est conforme aux sources officielles »
Les 7 textes ajoutés sont des lois de janvier à avril 2026, hors de la fenêtre
du corpus mais relevées par la liste du Sénat qui couvre toute la session. Dont
la loi de finances pour 2026 (n° 2026-103), qui touche l'octroi de mer et étend
le versement mobilité aux DROM — donc pertinente pour la Guadeloupe. Toutes
entrent avec confiance = low et le drapeau de revue : le pipeline constate
qu'un texte existe, il ne prétend pas l'avoir analysé.
Base : 59 textes, 367 sources, 13 affaires CC, 0 texte sans lien.
176 tests, make verifier au vert.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Collecteurs, chacun isolé et tolérant à l'échec :
- legifrance : OAuth PISTE validé en production. Deux pièges vérifiés sur le
compte réel — seul le couple « Client ID / Client secret » ouvre un jeton
(la clé d'API donne invalid_client), et les identifiants de production ne
passent pas en bac à sable.
- senat : liste chronologique des lois promulguées. L'URL du §5.1
(senat.fr/lois/index.html) est morte ; l'équivalent fonctionnel est
/dossiers-legislatifs/lois-promulguees.html — 31 lois 2026 relevées.
- conseil_constitutionnel : sans le paramètre ?id=32246 la page des affaires en
instance ne rend que des QPC et aucune affaire DC. Les colonnes DC et QPC
diffèrent : lecture par en-tête, jamais par position.
Rapprochement à trois issues — numéro officiel, similarité de titre, et une
zone de signalement où le pipeline s'abstient plutôt que de fusionner.
make update-dry contre les sources réelles : aucun faux positif sur les 52
textes du corpus, et trois apports que le rapport n'avait pas — le numéro
d'affaire 2026-907 DC de la programmation militaire, la date de saisine du
16 juillet pour l'aide à mourir, les décisions du 23 juillet sur 908 et 909.
Une asymétrie de sources est documentée par un test plutôt que corrigée en
douce : le Sénat ne qualifie pas la loi 2026-650 d'organique, Légifrance si.
Le collecteur rapporte ce que sa source dit ; le champ n'est pas comparé.
Fixtures HTML figées : aucun test ne touche au réseau.
156 tests, 91 % de couverture (chaque module au-dessus du seuil de 70 %).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>