{
  "protocol_version": "1.2.0-real-pages-addendum",
  "executed_at": "2026-09-20T17:11:44.032Z",
  "sampling": {
    "method": "bounded convenience sample of eight first-party Edikka production snapshots archived on 11 September 2026",
    "page_types": [
      "article",
      "contact",
      "library"
    ],
    "languages": [
      "fr",
      "en"
    ],
    "representative": false,
    "causal_comparison": false,
    "limitation": "This addendum checks ecological execution only. It does not estimate extractor quality, web-wide prevalence, accessibility conformance, ranking or AI citation."
  },
  "preprocessing": "Archived HTML bytes are passed unchanged. JSDOM does not execute scripts or fetch resources; metadata are not removed.",
  "tools": [
    "@mozilla/readability 0.6.0",
    "trafilatura 2.2.0",
    "readability-lxml 0.8.4.1",
    "newspaper4k 0.9.3.1",
    "jusText 3.0.2",
    "html2text 2025.4.15",
    "markdownify 1.2.2"
  ],
  "pages": [
    {
      "id": "article-accessibility-fr",
      "page_type": "article",
      "language": "fr",
      "canonical": "https://www.edikka.com/insights/developpement-web/accessibilite-web-bases-site-professionnel",
      "title": "Accessibilité web : 36 contrôles essentiels et grille XLSX",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/insights_developpement-web_accessibilite-web-bases-site-professionnel.html",
      "source_html_sha256": "eb906574b2cc242be50c4d3bc854844a0bcc996b5389f88287cf28fd23d92157",
      "source_bytes": 175903,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/article-accessibility-fr.json",
      "input": "inputs/article-accessibility-fr.html"
    },
    {
      "id": "article-accessibility-en",
      "page_type": "article",
      "language": "en",
      "canonical": "https://www.edikka.com/en/insights/web-development/web-accessibility-professional-website-basics",
      "title": "Web accessibility: 36 essential checks and XLSX grid",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/en_insights_web-development_web-accessibility-professional-website-basics.html",
      "source_html_sha256": "54a81eb9b8c69a4d823ca9d0c0dac924cdc5a86685bf5ae97d724fb4e66c0a83",
      "source_bytes": 163781,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/article-accessibility-en.json",
      "input": "inputs/article-accessibility-en.html"
    },
    {
      "id": "article-ai-fr",
      "page_type": "article",
      "language": "fr",
      "canonical": "https://www.edikka.com/insights/ia-automatisation-web/ia-fiable-prompt-regles-metier",
      "title": "Comment rendre une IA fiable : prompts, règles métier et tests",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/insights_ia-automatisation-web_ia-fiable-prompt-regles-metier.html",
      "source_html_sha256": "c0bde189c7569418f7c1d26345ee4eb124e9eaadcfe304974223dd861696fbcc",
      "source_bytes": 167518,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/article-ai-fr.json",
      "input": "inputs/article-ai-fr.html"
    },
    {
      "id": "article-ai-en",
      "page_type": "article",
      "language": "en",
      "canonical": "https://www.edikka.com/en/insights/ai-web-automation/reliable-ai-prompts-business-rules",
      "title": "How to make AI reliable: prompts, business rules and tests",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/en_insights_ai-web-automation_reliable-ai-prompts-business-rules.html",
      "source_html_sha256": "cb34a0b529e0088154206272fd3626ebbc93dca9821c444f4e2afbde28de8133",
      "source_bytes": 153938,
      "deterministic_replay": false,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": false,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/article-ai-en.json",
      "input": "inputs/article-ai-en.html"
    },
    {
      "id": "contact-fr",
      "page_type": "contact",
      "language": "fr",
      "canonical": "https://www.edikka.com/contact",
      "title": "Contact | Edikka — Agence web, SEO & développement sur mesure",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/contact.html",
      "source_html_sha256": "87747f19bb981da1d5349bfdc0a75c6764e22113456273e4da93ae10245dd0fb",
      "source_bytes": 78028,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/contact-fr.json",
      "input": "inputs/contact-fr.html"
    },
    {
      "id": "contact-en",
      "page_type": "contact",
      "language": "en",
      "canonical": "https://www.edikka.com/en/contact",
      "title": "Contact | Edikka — Web agency, SEO & custom development",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/en_contact.html",
      "source_html_sha256": "6343ed281ed83875abb3de29c80b2122b83cb100c21b8472400706430fa8dd13",
      "source_bytes": 77474,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/contact-en.json",
      "input": "inputs/contact-en.html"
    },
    {
      "id": "library-fr",
      "page_type": "library",
      "language": "fr",
      "canonical": "https://www.edikka.com/bibliotheque",
      "title": "Bibliothèque des instruments ouverts d’Edikka",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/bibliotheque.html",
      "source_html_sha256": "dadcb5d2e64ff734308d4ca496449390b866662fac4f37b4cc755f761855e10c",
      "source_bytes": 249800,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/library-fr.json",
      "input": "inputs/library-fr.html"
    },
    {
      "id": "library-en",
      "page_type": "library",
      "language": "en",
      "canonical": "https://www.edikka.com/en/library",
      "title": "Edikka Open Instrument Library",
      "source_archive": "audit/bibliotheque-consolidation-2026-09-11/production-check/en_library.html",
      "source_html_sha256": "16030ba4b06e3601f5f5054a0b9b227844c27f0657a8084efacf6dcfe9c8bcd7",
      "source_bytes": 241653,
      "deterministic_replay": true,
      "component_replays": {
        "readability": true,
        "trafilatura": true,
        "readability_lxml": true,
        "newspaper4k": true,
        "justext": true,
        "html2text": true,
        "markdownify": true
      },
      "statuses": {
        "readability": "ok",
        "trafilatura": "ok",
        "readability_lxml": "ok",
        "newspaper4k": "ok",
        "justext": "ok",
        "html2text": "ok",
        "markdownify": "ok"
      },
      "raw_output": "outputs/library-en.json",
      "input": "inputs/library-en.html"
    }
  ],
  "all_deterministic": false
}
