{"observatoryVersion":"434457062efe8dca63b87549606cc7e20d811547305ad8c6b140dcc7d806a664","schemaVersion":"1.0.0","publishedAt":"2026-07-15","scope":"Catalogue CompatAir et registre public de qualité documentaire","observationStartedAt":"2026-07-15","measurementProgram":{"baseline":{"period":"2026-07","kind":"baseline","capturedAt":"2026-07-15","metrics":{"correctionMedianDays":0,"measurableCorrectionCount":1,"multiPressureFadPercentage":64,"referenceBaselineCoveragePercent":100,"referenceChangeCount":0,"contradictionResponseRate":100}},"trend":{"status":"insufficient_data","periodCount":1,"fromPeriod":null,"toPeriod":"2026-07","deltas":null},"targets":{"policyVersion":"1.0.0","correctionLeadTime":{"status":"pending_baseline","medianDays":null,"minimumMeasuredCount":2,"rationale":"Aucun délai chiffré n'est fixé avant deux corrections disposant d'une date d'ouverture et d'une date de résolution."},"multiPressureFad":{"status":"pending_trend","targetPercent":null,"minimumPeriodCount":2,"rationale":"Aucun seuil chiffré n'est présenté comme objectif avant une deuxième période mensuelle comparable."},"referenceBaselineCoverage":{"targetPercent":100,"rationale":"Toute référence MPN suivie doit posséder une ligne de base publique."},"contradictionResponses":{"targetPercent":100,"rationale":"Toute contradiction recensée doit publier un arbitrage, une réserve ou un refus d'utiliser la valeur."}},"history":[{"period":"2026-07","kind":"baseline","capturedAt":"2026-07-15","metrics":{"correctionMedianDays":0,"measurableCorrectionCount":1,"multiPressureFadPercentage":64,"referenceBaselineCoveragePercent":100,"referenceChangeCount":0,"contradictionResponseRate":100}}]},"metrics":{"correctionLeadTime":{"status":"measured","medianDays":0,"measuredCount":1,"excludedLegacyCount":5,"definition":"Nombre de jours calendaires entre l’ouverture documentée d’un signalement et la publication de sa correction."},"multiPressureFad":{"status":"measured","availableCount":61,"eligibleCount":96,"percentage":64,"definition":"Compresseurs pour lesquels au moins deux points FAD sont documentés à des pressions distinctes."},"referenceStability":{"status":"baseline","monitoredCount":141,"stableCount":141,"changeCount":0,"missingBaselineCount":0,"observationStartedAt":"2026-07-15","changes":[],"definition":"Évolution des MPN explicitement suivis depuis la ligne de base publique. Un alias historique n’est pas compté comme une mutation silencieuse."},"contradictionResponses":{"status":"measured","answeredCount":4,"totalCount":4,"openCount":0,"responseRate":100,"medianResponseDays":0,"definition":"Part des contradictions documentaires pour lesquelles CompatAir publie un arbitrage, une réserve ou un refus d’utiliser la valeur."}},"corrections":[{"id":"quadratic-page-migration-contract","title":"Migration des anciennes pages de compatibilité","openedAt":"2026-07-15","resolvedAt":"2026-07-15","summary":"Les anciennes URL exactes sont redirigées vers le calculateur et les références inconnues répondent 410, avec contrat explicite pour les widgets en cache.","impact":"La suppression du HTML quadratique ne laisse plus le cycle de vie des anciennes intégrations implicite."},{"id":"catalog-counter-dynamic","title":"Compteur des comparatifs","openedAt":null,"resolvedAt":"2026-07-14","summary":"La mention fixe « 24 références documentées » a été remplacée par un compteur actualisé automatiquement lors de la publication.","impact":"La taille affichée du catalogue suit désormais les données publiées."},{"id":"javascript-budget-enforced","title":"Poids des pages","openedAt":null,"resolvedAt":"2026-07-14","summary":"Une promesse de légèreté devenue inexacte a été retirée et remplacée par des budgets automatiques de JavaScript.","impact":"Une page dépassant le budget déclaré bloque désormais la publication."},{"id":"verdict-consistency","title":"Cohérence des résultats","openedAt":null,"resolvedAt":"2026-07-14","summary":"Le calculateur, les fiches produit et les pages de compatibilité utilisent désormais le même moteur et le même cycle de service.","impact":"Une configuration identique produit le même verdict sur toutes les surfaces."},{"id":"evidence-date-derived","title":"Dates de vérification","openedAt":null,"resolvedAt":"2026-07-14","summary":"Les dates affichées proviennent maintenant de la preuve la plus récente liée au produit.","impact":"Une date recopiée dans un modèle de page ne peut plus masquer la fraîcheur réelle des sources."},{"id":"seo-title-budget","title":"Titres de pages","openedAt":null,"resolvedAt":"2026-07-14","summary":"Le contrôle de publication limite les titres destinés aux moteurs de recherche à 60 caractères.","impact":"Le titre éditorial visible reste distinct du titre technique contrôlé."}],"contradictions":[{"id":"abac-atf-s-4-100-tank-weight-conflict","productId":"abac-atf-s-4-100","observedAt":"2026-07-14","answeredAt":"2026-07-14","status":"answered","subject":"Volume de cuve publié dans deux sections de la même fiche","contradiction":"La table technique indique une cuve de 90 L tandis que le résumé annonce 100 L.","response":"CompatAir retient 90 L selon la table technique, plus précise que le résumé de la page.","sourceIds":["abac-4116000871-official"],"field":{"key":"tankLiters","label":"Volume de cuve","unit":"L"},"claims":[{"id":"abac-tank-summary-100","evidenceId":"abac-4116000871-official","channel":"manufacturer","locator":"Résumé de la fiche produit","value":"100 L","normalizedValue":100,"observedAt":"2026-07-14"},{"id":"abac-tank-table-90","evidenceId":"abac-4116000871-official","channel":"manufacturer","locator":"Table technique de la fiche produit","value":"90 L","normalizedValue":90,"observedAt":"2026-07-14"}],"decision":{"outcome":"retain_claim","selectedClaimId":"abac-tank-table-90"}},{"id":"abac-atf-s-4-100-weight-conflict","productId":"abac-atf-s-4-100","observedAt":"2026-07-14","answeredAt":"2026-07-14","status":"answered","subject":"Masse publiée dans deux sections de la même fiche","contradiction":"La page officielle publie 76 kg dans une section et 81,9 kg dans une autre.","response":"CompatAir suspend la publication de la masse tant qu’une source plus précise ne permet pas de trancher.","sourceIds":["abac-4116000871-official"],"field":{"key":"weightKg","label":"Masse","unit":"kg"},"claims":[{"id":"abac-weight-section-76","evidenceId":"abac-4116000871-official","channel":"manufacturer","locator":"Première section de caractéristiques","value":"76 kg","normalizedValue":76,"observedAt":"2026-07-14"},{"id":"abac-weight-section-81-9","evidenceId":"abac-4116000871-official","channel":"manufacturer","locator":"Seconde section de caractéristiques","value":"81,9 kg","normalizedValue":81.9,"observedAt":"2026-07-14"}],"decision":{"outcome":"withhold","selectedClaimId":null}},{"id":"chicago-pneumatic-cp721-speed-conflict","productId":"chicago-pneumatic-cp721","observedAt":"2026-07-15","answeredAt":"2026-07-15","status":"answered","subject":"Vitesse à vide CP721","contradiction":"La fiche produit courante annonce 11 000 tr/min, contre 9 000 tr/min dans le catalogue général 2026.","response":"La valeur de la fiche produit courante, plus spécifique à la référence, est retenue et l’écart reste publié dans les réserves.","sourceIds":["cp-t021963-official","cp-general-industry-2026-impact-wrenches"],"field":{"key":"specifications.freeSpeedRpm","label":"Vitesse à vide","unit":"tr/min"},"claims":[{"id":"cp721-product-page-11000","evidenceId":"cp-t021963-official","channel":"manufacturer","locator":"Fiche produit courante","value":"11 000 tr/min","normalizedValue":11000,"observedAt":"2026-07-15"},{"id":"cp721-catalog-9000","evidenceId":"cp-general-industry-2026-impact-wrenches","channel":"manual","locator":"Catalogue General Industry 2026, page 18","value":"9 000 tr/min","normalizedValue":9000,"observedAt":"2026-07-15"}],"decision":{"outcome":"retain_claim","selectedClaimId":"cp721-product-page-11000"}},{"id":"chicago-pneumatic-cp7731c-speed-conflict","productId":"chicago-pneumatic-cp7731c","observedAt":"2026-07-15","answeredAt":"2026-07-15","status":"answered","subject":"Vitesse à vide CP7731C","contradiction":"La fiche produit courante annonce 9 000 tr/min, contre 11 000 tr/min dans le catalogue général 2026.","response":"La valeur de la fiche produit courante, plus spécifique à la référence, est retenue et l’écart reste publié dans les réserves.","sourceIds":["cp-8941077311-official","cp-general-industry-2026-impact-wrenches"],"field":{"key":"specifications.freeSpeedRpm","label":"Vitesse à vide","unit":"tr/min"},"claims":[{"id":"cp7731c-product-page-9000","evidenceId":"cp-8941077311-official","channel":"manufacturer","locator":"Fiche produit courante","value":"9 000 tr/min","normalizedValue":9000,"observedAt":"2026-07-15"},{"id":"cp7731c-catalog-11000","evidenceId":"cp-general-industry-2026-impact-wrenches","channel":"manual","locator":"Catalogue General Industry 2026, page 18","value":"11 000 tr/min","normalizedValue":11000,"observedAt":"2026-07-15"}],"decision":{"outcome":"retain_claim","selectedClaimId":"cp7731c-product-page-9000"}}],"limitations":["Les corrections antérieures au registre sans date d’ouverture sont publiées mais exclues du calcul du délai.","La stabilité des références commence à la date de la ligne de base ; elle ne reconstitue pas un historique antérieur.","Une réponse à une contradiction désigne la décision documentaire de CompatAir, pas nécessairement une réponse du fabricant.","Le taux FAD multi-pression décrit le corpus CompatAir et non un échantillon aléatoire du marché.","Les objectifs sont des politiques internes de qualité documentaire, pas des références de performance du marché."]}