{
  "status": "PASS",
  "validatedAt": "2026-07-28T12:06:15.139264+00:00",
  "regulatoryContentVerifiedOn": "2026-07-28",
  "summary": {
    "questions": 300,
    "uniqueConcepts": 100,
    "repetitionsPerConcept": 3,
    "sourcesActuallyUsed": 49,
    "browserTests": 10,
    "consoleErrors": 0
  },
  "checks": {
    "requiredFilesPresent": true,
    "questionCount": 300,
    "uniqueQuestionIds": 300,
    "uniqueConcepts": 100,
    "sourceCount": 49,
    "threeRepetitionsPerConcept": true,
    "allListedSourcesUsed": true,
    "allSourcesHttpsAndAllowlisted": true,
    "jsonAndJavaScriptDataMatch": true,
    "officialEvaluationMetadata": true,
    "regulatoryRegressionChecks": {
      "examDuration4h15": true,
      "examSplit100Plus100": true,
      "examAdmissionThresholds": true,
      "controlPeriod56Days": true,
      "driverCardDownload28Days": true,
      "vehicleUnitDownload90Days": true,
      "serviceTime12HoursExactSource": true,
      "cddFourMonthsTwoWeeksExactSource": true,
      "normalVat20Percent": true,
      "domesticOverFourAxles44Tonnes": true,
      "cmr833Sdr": true,
      "adrWrittenInstructionsVolumeII": true,
      "adrCertificateFiveYearsVolumeII": true
    },
    "auditCsvMatchesQuestionBank": true,
    "buildAuditPass": true,
    "browserQaPass": true,
    "examBoundaryTests": true,
    "javascriptSyntax": {
      "app.js": true,
      "questions.js": true,
      "sw.js": true
    },
    "allLocalHtmlAndManifestReferencesExist": true,
    "serviceWorkerAssetsExist": true,
    "temporaryScreenshotsAbsent": true
  },
  "categoryCounts": {
    "A": 9,
    "B": 24,
    "C": 60,
    "D": 15,
    "E": 39,
    "EXAM": 9,
    "F": 42,
    "G": 39,
    "H": 63
  },
  "difficultyCounts": {
    "difficile": 6,
    "facile": 165,
    "moyen": 129
  },
  "manualRegulatoryCrossChecks": [
    {
      "concept": "Examen",
      "result": "4 h 15; 100 points QCM + 100 points écrit; seuils 120/200, 50/100 et 40/100",
      "sourceKey": "EXAM"
    },
    {
      "concept": "Tachygraphe",
      "result": "28 jours carte; 90 jours unité véhicule; présentation 56 jours précédents",
      "sourceKeys": [
        "DRIVING",
        "TACHO_DOWNLOAD"
      ]
    },
    {
      "concept": "Masses nationales",
      "result": "44 t possible pour plus de quatre essieux, transport entièrement national, sous conditions",
      "sourceKeys": [
        "WEIGHTS_44",
        "WEIGHTS_44_CONDITIONS"
      ]
    },
    {
      "concept": "ADR",
      "result": "consignes avant départ dans la cabine; certificat 5 ans",
      "sourceKey": "ADR_TEXT_II"
    },
    {
      "concept": "CMR",
      "result": "plafond 8,33 DTS/kg",
      "sourceKey": "CMR_PROTOCOL"
    },
    {
      "concept": "CDD",
      "result": "1 jour par semaine, plafond 2 semaines jusqu'à 6 mois",
      "sourceKey": "CDD"
    },
    {
      "concept": "TVA",
      "result": "taux normal métropolitain 20 %",
      "sourceKey": "FISCALITY"
    }
  ],
  "sha256": {
    "index.html": "c97b5f97674e59586cdff69e875f601529d03c226da65b7eb36fcb2538bc20f6",
    "styles.css": "930e1863149e358d056689bbbf39448beb4425ea5fd24bc6339cf08ec8f03a4c",
    "app.js": "01611cb3418d3043d7a5b9b7239edc6889b20a9c22c62afcbd87cff4e9cdac95",
    "questions.js": "b63c1e176d349ec30ebea0d77d5b20bc6d94e93ccc617097e4f80f18047e6fcc",
    "questions.json": "1717ef1e937d0e4d94a02be3f51984e56fde3c6ce9628eb793a09f8c93f5c68b",
    "sources.json": "4573ea2a3733d19b51cc9b556ccdd241e7018f66cc1e75c7733c37ff68c686a1",
    "manifest.webmanifest": "c46eb7e762f4b5b0b10755560111e0b31841c2336d68c57a09805b19a4970f90",
    "sw.js": "d8891189e4cc41ec47dbbb83755b74c19ef91e2901fa64bdb260e9fa1362bb1b",
    "icon.svg": "0096aabf8c037a830f2f7f65598afba5b7ae2784b76945ff90b7e27597581a10",
    "icon-192.png": "89f7a32e6014054d88f4a0119beff65f6baab1effae5af9ca633dc06a5048ec4",
    "icon-512.png": "2fa798d9fbd57bead15f5267fcb2ab5f6334087225d311b9030f565bdd9a1858",
    "audit_questions.csv": "c6fc74038698b452b0c84c948c7ab4d70ae56aca6b3a49706beecb5c5327b695",
    "audit_report.json": "3d163ff03503cdf609f9ff88ea204cff22a2ddb485acf7a0c30ee3df2f5dee05",
    "qa_report.json": "b4a420f9345f14c16520448bfdf120b6f7a39dce7a84d37c807d61608789101d",
    "README.md": "dab5c2d55a7e5b7bdcd67ca5307524a8383970308327498850a97890223cbefa",
    "CHANGELOG_VERIFICATION.md": "7faf95e76e4065b1680dbbf6576a7e41ed81753eb6002ad1fe77711708bb4fb5",
    "build_site.py": "db3e9ed728025a294ef8cde16d43fff83bafb8cb66c402fcdf4819c030d62082",
    "qa_e2e.py": "0ccff9ffcadb34d6b332912124d1ce47cc29eecd8c81403a7d3a9d75b155b909",
    "validate_site.py": "c4a3e6272ef2ce0bd71a9f2d5dbb4c665d7128e9566bfdd69f575a4a69854d71"
  },
  "failures": []
}