Phase 5 : collecteurs officiels et run de veille — dry-run contre sources réelles
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>
This commit is contained in:
co-authored by
Claude Opus 5
parent
c9fc8f3f67
commit
feb5544599
Vendored
+345
@@ -0,0 +1,345 @@
|
||||
<html><body><article class="landing landing--type-decisions landing--view-mode-full">
|
||||
|
||||
<header>
|
||||
|
||||
<div class="field field--name-field-image-bandeau field--type-entity-reference field--label-hidden field__item"><article class="media media--type-image media--view-mode-bandeau-landing">
|
||||
|
||||
|
||||
<div class="field field--name-field-media-image field--type-image field--label-hidden field__item"> <picture>
|
||||
<source srcset="/sites/default/files/styles/bandeau_landing_wide/public/2020-07/bg-landing-decisions.jpg.webp?h=06f6671c&itok=Wyn5lULp 1x" media="all and (min-width: 1024px)" type="image/webp" width="1350" height="550">
|
||||
<source srcset="/sites/default/files/styles/bandeau_landing_narrow/public/2020-07/bg-landing-decisions.jpg.webp?h=06f6671c&itok=yKNGqhX1 1x" media="all and (min-width: 481px) and (max-width: 1023px)" type="image/webp" width="1024" height="417">
|
||||
<source srcset="/sites/default/files/styles/bandeau_landing_mobile/public/2020-07/bg-landing-decisions.jpg.webp?h=06f6671c&itok=qFsmUyCr 1x" media="all and (max-width: 480px)" type="image/webp" width="480" height="196">
|
||||
<img loading="lazy" aria-hidden="true" width="480" height="196" src="/sites/default/files/styles/bandeau_landing_mobile/public/2020-07/bg-landing-decisions.jpg.webp?h=06f6671c&itok=qFsmUyCr" alt="Bandeau de la landing Toutes les décisions">
|
||||
|
||||
</picture>
|
||||
|
||||
</div>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<h1 class="title">Les décisions du Conseil Constitutionnel</h1>
|
||||
|
||||
<div class="clearfix text-formatted field field--name-field-texte field--type-text-long field--label-hidden field__item"><p>Toutes les décisions, ainsi que des outils statistiques et explicatifs pour mieux connaître l’activité du Conseil constitutionnel depuis sa création</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-lien-decision field--type-link field--label-hidden field__item"><a href="/les-decisions/decisions-par-type">Comprendre les types de décisions</a></div>
|
||||
|
||||
<div class="field field--name-field-lien-affaires-instance field--type-link field--label-hidden field__item"><a href="/decisions/affaires-instances">Les affaires en instance</a></div>
|
||||
<div class="formulaire-recherche-decisions"><form data-drupal-selector="cc-landing-recherche-decisions" action="/decisions" method="post" id="cc-landing-recherche-decisions" accept-charset="UTF-8">
|
||||
<h3 class="titre-formulaire" data-drupal-selector="edit-titre">Rechercher une décision</h3>
|
||||
<div class="js-form-item form-item js-form-type-search form-type-search js-form-item-textfield form-item-textfield">
|
||||
<label for="edit-textfield">Rechercher un terme ou un numéro de décision</label>
|
||||
<input list="autocomplete-list" data-drupal-selector="edit-textfield" type="search" id="edit-textfield" name="textfield" value="" size="60" maxlength="128" placeholder="Ex: égalité devant la loi" class="form-search">
|
||||
|
||||
</div>
|
||||
<datalist id="autocomplete-list" data-drupal-selector="edit-autocomplete-list"></datalist>
|
||||
<div class="js-form-item form-item js-form-type-select form-type-select js-form-item-types form-item-types form-no-label">
|
||||
<select data-drupal-selector="edit-types" id="edit-types" name="types" class="form-select"><option value="all">Tous les types</option><option value="32205">Question prioritaire de constitutionnalité</option><option value="32246">Constitutionnalité des lois, traités, des règlements des Assemblées</option><option value="32797">Loi ordinaire</option><option value="32800">Loi organique</option><option value="32803">Traité</option><option value="32806">Règlement des assemblées</option><option value="32211">Élections à l'Assemblée nationale</option><option value="32220">Élections au Sénat</option><option value="32224">Loi du pays de Nouvelle-Calédonie</option><option value="32221">Compétences outre-mer</option><option value="32223">Déclassement</option><option value="32215">Incompatibilité des parlementaires</option><option value="32400">Obligations fiscales</option><option value="32216">Déchéance de parlementaires</option><option value="32222">Fins de non-recevoir</option><option value="32212">Avis de l'article 16</option><option value="32219">Élection présidentielle</option><option value="32214">Fonctionnement du Conseil constitutionnel</option><option value="32218">Référendum</option><option value="32403">Référendum d'initiative partagée</option><option value="32217">Divers élections</option><option value="32213">Autres textes et décisions</option></select>
|
||||
</div>
|
||||
<div class="block-facets block-facet-date-range-picker js-form-wrapper form-wrapper" id="periode" data-drupal-selector="edit-date-range"><div class="form-group js-form-wrapper form-wrapper" data-drupal-selector="edit-form-group" id="edit-form-group"><label data-drupal-selector="edit-label">Par période</label>
|
||||
<div class="js-form-item form-item js-form-type-date form-type-date js-form-item-date-from form-item-date-from form-no-label">
|
||||
<span class="clear-input hidden">X</span>
|
||||
<input id="edit-date-from" name="date_from" data-drupal-selector="edit-date-from" type="date" value="" class="form-date">
|
||||
|
||||
</div>
|
||||
<div class="js-form-item form-item js-form-type-date form-type-date js-form-item-date-to form-item-date-to form-no-label">
|
||||
<span class="clear-input hidden">X</span>
|
||||
<input id="edit-date-to" name="date_to" data-drupal-selector="edit-date-to" type="date" value="" class="form-date">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<input data-drupal-selector="edit-submit" type="submit" id="edit-submit" name="op" value="Lancer une recherche" class="button js-form-submit form-submit">
|
||||
<input class="reset reload-page button js-form-submit form-submit" data-drupal-selector="edit-reset" type="submit" id="edit-reset" name="op" value="Réinitialiser">
|
||||
<a href="/recherche-experte" class="lien-page-recherche" data-smarttag="[]" data-drupal-selector="edit-lien" id="edit-lien">Plus de critères de recherche</a><input autocomplete="off" data-drupal-selector="form-if1ifd6wffso28jvmkzvnsozeco7wqt14mauqf8sdi" type="hidden" name="form_build_id" value="form-_IF1iFd6WfFSo28JVMkZvnSozEcO7wQt14Mauqf8sdI">
|
||||
<input data-drupal-selector="edit-cc-landing-recherche-decisions" type="hidden" name="form_id" value="cc_landing_recherche_decisions">
|
||||
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</header>
|
||||
<div class="sidebar">
|
||||
<h3>Outils et ressources</h3>
|
||||
|
||||
<div class="content">
|
||||
|
||||
<div class="item">
|
||||
|
||||
<div class="field field--name-field-date-analytique field--type-string field--label-above">
|
||||
<div class="field__label">Les tables analytiques</div>
|
||||
<div class="field__item">À jour au 1<sup>er</sup> septembre 2024</div>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-reference-analytique field--type-entity-reference field--label-hidden field__item"><article class="media media--type-file media--view-mode-ressource-decisions">
|
||||
|
||||
<a href="https://www.conseil-constitutionnel.fr/sites/default/files/2024-10/1958-202408_tables.pdf">Tables analytiques 1958-2024</a><div class="type-size"><span class="type">Pdf</span>
|
||||
<span class="size">33.95 Mo</span>
|
||||
</div>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-lien-analytique field--type-link field--label-hidden field__item"><a href="/les-decisions/tables-analytiques">En savoir plus</a></div>
|
||||
|
||||
</div>
|
||||
<div class="item">
|
||||
|
||||
<div class="field field--name-field-lien-dispositions field--type-link field--label-above">
|
||||
<div class="field__label">Recueil des dispositions validées</div>
|
||||
<div class="field__item"><a href="/dispositions">Voir le recueil</a></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="item">
|
||||
|
||||
<div class="field field--name-field-date-bilan field--type-string field--label-above">
|
||||
<div class="field__label">Bilan statistique</div>
|
||||
<div class="field__item">À jour au 30 juin 2025</div>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-lien-bilan field--type-link field--label-hidden field__item"><a href="/bilan-statistique">Voir le bilan</a></div>
|
||||
|
||||
</div>
|
||||
<div class="item">
|
||||
|
||||
<div class="field field--name-field-lien-archive-seance field--type-link field--label-above">
|
||||
<div class="field__label">Archives des comptes rendus de séances</div>
|
||||
<div class="field__item"><a href="/les-decisions/archives-des-comptes-rendus-de-seances">En savoir plus</a></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper-content">
|
||||
<div class="wrapper-dernieres-decisions"><h2>Les dernières décisions</h2>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026908DC.htm" rel="bookmark" title="Décision n° 2026-908 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-908 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi organique relative au renforcement des juridictions criminelles</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026909DC.htm" rel="bookmark" title="Décision n° 2026-909 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-909 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi sur la justice criminelle et le respect des victimes</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Non conformité partielle - réserve</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026906DC.htm" rel="bookmark" title="Décision n° 2026-906 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-906 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi visant à renforcer la sécurité, la rétention administrative et la prévention des risques d’attentat</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité - réserve</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/20261213QPC.htm" rel="bookmark" title="Décision n° 2026-1213 QPC du 10 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-1213 QPC du 10 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Société Altaroc Partners et autres [Notification du droit de se taire à la personne à laquelle sont notifiés des griefs dans le cadre d'une procédure de sanction par l’Autorité des marchés financiers]</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/20269LP.htm" rel="bookmark" title="Décision n° 2026-9 LP du 9 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-9 LP du 9 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi du pays modifiant le code minier de la Nouvelle-Calédonie (partie législative)</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026326L.htm" rel="bookmark" title="Décision n° 2026-326 L du 9 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-326 L du 9 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Nature juridique de certaines dispositions de l’article L. 122-8 du code de l’énergie</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Réglementaire</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/20261211QPC.htm" rel="bookmark" title="Décision n° 2026-1211 QPC du 3 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-1211 QPC du 3 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>M. Maurice D. [Interdiction de l’inscription au tableau de l’ordre des médecins, chirurgiens dentistes et sages-femmes inscrits ou enregistrés dans un autre État]</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/20261212QPC.htm" rel="bookmark" title="Décision n° 2026-1212 QPC du 3 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-1212 QPC du 3 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>M. Valeriu M. [Circonstances justifiant l’aggravation de la suspension prononcée par l’Agence française de lutte contre le dopage]</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Non conformité totale</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026325L.htm" rel="bookmark" title="Décision n° 2026-325 L du 2 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-325 L du 2 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Nature juridique de certaines dispositions de l’article L. 1422-3 du code du travail et de l’article L. 131-3 du code de l’entrée et du séjour des étrangers et du droit d’asile</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Réglementaire</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
|
||||
<article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/20261210QPC.htm" rel="bookmark" title="Décision n° 2026-1210 QPC du 25 juin 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-1210 QPC du 25 juin 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Société Orange SA [Cumul de poursuites et de sanctions en cas de manquement aux règles encadrant la prospection directe par voie automatisée]</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Non conformité totale - effet différé - réserve transitoire</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article>
|
||||
</div>
|
||||
<a href="/les-decisions" class="lien-toutes-decisions">Toutes les décisions</a>
|
||||
</div></article><article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026908DC.htm" rel="bookmark" title="Décision n° 2026-908 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-908 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi organique relative au renforcement des juridictions criminelles</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article><article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026909DC.htm" rel="bookmark" title="Décision n° 2026-909 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-909 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi sur la justice criminelle et le respect des victimes</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Non conformité partielle - réserve</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article><article class="node node--type-decision node--promoted node--view-mode-synthetique">
|
||||
|
||||
<a href="/decision/2026/2026906DC.htm" rel="bookmark" title="Décision n° 2026-906 DC du 23 juillet 2026">
|
||||
<div class="node__content">
|
||||
<h3 class="title">Décision n° 2026-906 DC du 23 juillet 2026</h3>
|
||||
|
||||
<div class="field field--name-field-titre-complet field--type-string-long field--label-hidden field__item">
|
||||
<p>Loi visant à renforcer la sécurité, la rétention administrative et la prévention des risques d’attentat</p>
|
||||
</div>
|
||||
|
||||
<div class="field field--name-field-solution-normalisee field--type-string field--label-hidden field__item">
|
||||
<p>Conformité - réserve</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</a>
|
||||
</article></body></html>
|
||||
Reference in New Issue
Block a user