Aperçu texte échappé
{
"adapter": {
"name": "TSEP offline capture adapter",
"version": "50"
},
"protocol": {
"name": "TSEP",
"version": "0.3.0-draft.8",
"sha256": "298399d8f3ab8ca513be85b7d6905d03e8be7b521bac1376d2a4a037a51e4ce8"
},
"interpreter": {
"name": "TSEP bounded reference interpreter",
"version": "54"
},
"imported_at": "2026-10-25T19:07:59.625850+00:00",
"python": "3.9.6",
"source_files": {
"adapters/captures.py": "0d9472dabe007e53b7a90595a01b2620b01c222adfda3bee064b6d89517d0ad5",
"tsep.py": "b2d62d6961a9ea9bcd51ba07ae7bc6b9f0221ddde1468493987d5fd060c34121",
"conformance/google_directives.py": "727dfef6404a54db6cfacbccb2b5753d940e564f95e56c323fdd1a36e01fa706",
"conformance/exclusion_observation.py": "8c95437e3ef7426b4019bf754603bf6f138a1c2b13ed222687ee75076c336d9f",
"conformance/http_canonical.py": "8f10e3b652e73bc90b4ec90c608f9b9dcc736240348b1f585570526956b90459",
"conformance/preview_intent.py": "748b6f27f3f75b37a78ac131f3d813dba57f3f5d5a181c4c42e048a9afa91d33",
"conformance/performance.py": "51ef1674edb82fdba72841543c38f661f455dc95adbee577aca9e66c8b70a8fa",
"conformance/agent_policy.py": "4d5dd82393d9e01de7402c53ec8d45db319c34bb51d4ccb40611e9d4ca45544f",
"conformance/agent_access.py": "e0cb627852270bdbc15cb5a550e830bb451ebab758ce7dc31171b0e4f88d1c23",
"conformance/critical_content.py": "102d9175c9e4e78356502ad9ef723ec6d3e17c6500803bb02c89e55cc84c3752",
"conformance/release_monitoring.py": "c869383e419f2cc2e2262fc1a2805aedc6562ed7c772d261cfcda712349ae922",
"conformance/essential_links.py": "0e927b5221739e3b71632de82b4bdb65698bf4064adcd4992ca8d21456887b40",
"conformance/essential_links_source.py": "fb9561767cfb512a42ecd098131bfad7cc6e747453910a139bfd8d84603bfcf1",
"conformance/essential_links_dom.py": "96698ff3d5ececd14d6b4d1ca844e4d31c8ee1e2cab074565ff9c780c9a5a6a5",
"conformance/graph_bounds.py": "d7ff8db2206617b9bf735b15d3d5edbb33635b66350a970d05078382ad891256",
"conformance/graph_inventories.py": "e8df8ba76ac74b049eadc650176603c77a1f655d1a41bc51f2eb02d0feb73b2a",
"conformance/graph_documents.py": "d278eb961d36b1437c221449610d543b6081c9d88b5f4e723b263606256b0d0b",
"conformance/graph_reviews.py": "5ccd17a2115d3bc99028b653e9a61a209b0bc96a9ea82d121e85073cf75c5d01",
"conformance/graph_reconciliation.py": "73672ac5fa23230bb20a5e6fd7bea1b69c92db0788546cddd526f6fae34b1397",
"conformance/hreflang_native.py": "b2b9b8e33021e164bb9230270cb6305e7c21275bcdc9fccd546278080bd70796",
"conformance/hreflang_reciprocity.py": "737fe1d0d006f6e8d0baf6c490d9892e53fbe46a33da74886e2cbcbf556411d8",
"conformance/xdefault_role.py": "a46091da1a42b41f5d9446dbc096e4aa9e12c7942c20dbcf76ecc175e77a1b34",
"conformance/critical_presence.py": "933198fc8a0a8fa9ff0bbbd9baf9b87e4d27211acac9763f8f90f43a52f7d95c",
"adapters/hreflang_intake.py": "2c6e6ddf31bf6ef7670bf56723f814c7130be201dfb953e3268bf4d8d6c799de",
"adapters/graph_intake.py": "64787d95bd4209535ceaada1a71d17984af9ac8d7e71dc0b0a328d3b9871138a",
"conformance/incoming_links.py": "e226e919009980f1b2f6baacb2bfc5cd699a6f1f5649b30d6f293409e080f271",
"adapters/incoming_links_intake.py": "29c67558b2f8a9ece101cff65e95acd7a26c94957e62a4c8dfd0d9f14b45920f",
"conformance/sitemap_files.py": "8915e1eae3bdb6529efe639ff73d818e2639e0f964392d8f2be28ab7de497a72",
"conformance/evidence_dossier.py": "bbb66d2685e042222d7ae264221394cc23d073031a95da812591f3f1d8d16512",
"conformance/url_policy.py": "881be117db736abf9bfa1db9b29ddb507bb13be691f9201fd680f616ea9f7d5d",
"conformance/indexing_locale.py": "0c1ae53aaa1f038bf056151fae6097a6a262849411ba0f39b4eaa9c3ba820ed0",
"conformance/render_transport.py": "863c353fabca7c5f1e0f85a293bcf7af7d54480d4512fb796e82a954f334fe98",
"conformance/sitemap_quality.py": "43b017d17e96a8365acdc70862038ab40a9fa519ee89684d74c8053fc4a90a66",
"conformance/sitemap_set.py": "dec8eb9661f510c16390ddd05c4d744b6bcf50a41f0acb9109dc5cfdc8e86f2b",
"conformance/structured_validation.py": "1561bd5ccb38e39539f090f473798ab35fc8d4deb60b397c273bee88c2f2d8d5",
"conformance/structured_identity.py": "c9b7cf10512a9c84c674d6f7a7fe4190597d4fc6b502c3404193d4f462d069bf",
"conformance/structured_content.py": "129301e2153e5c63ffe9c5b22fabc894f135b23b48016ac6a4936f85134f856e",
"conformance/canonical_comparison.py": "e5d735591266c4c5a9eb480deede6dc6bdc7d2b83371b5b97d26dd2bfa894b96",
"conformance/inspection.py": "96b0c1d762ea6981d5b8fce46c7bf80fc782648507a9747a993b3ca396197a01",
"diagnostics/search_console.py": "97236df65baece46f0268cca284149be57e94c32a76f4ec04ba208b648298a24",
"conformance/delivery.py": "7d9460bb0728d1167ceae9f84cbf4c7ce6e90ad3782f2de15f324f5d7b789743",
"experiments/delivery_variants.py": "e804f14756282375e98d30465d1aabcd766cb4c33f96a5898fa0727e1b61b828",
"conformance/release_invariants.py": "797794e7f621233b770b17aa67494e88bcf023ceb8a14da8ac216f3fac202991",
"experiments/source_content.py": "fc4f4fa08e0f232fec3bc1e13b7a7ddde3a4bf755f10f26d663d2d232b297ff4",
"conformance/source_markers.py": "c53930d73a46f5e6336793ef4c8de4487431c3207d05fd810eac2b60273a1b49",
"experiments/source_markers.py": "9dca806e1249498ed0468b36c8e3cf782cef7ef65a7a11f359a5501c330f5514",
"conformance/evaluate.py": "1b5e332958a46b98a8b75f732c1128399c24108d7a7303a925696f557ba8c115",
"conformance/ts06_access.py": "6b2eb24da344fb1b95dc34f17edfaf351bd7d1aba06c39859c4c4597b717240c",
"conformance/http.py": "4fdaf8eda589461979d0e05e5fb7fd2041b017d13b9b61c8540c6e677b3c3e56",
"conformance/canonical.py": "16344897cbd4095615a99b538dea9640aca454097324e2e6b16b6736f3a06f31",
"conformance/sitemap_locations.py": "5f9108eda0e8f309c2b3aa6c5895c3e80d8f61c391d89ba35f8c3f903bef2b77",
"conformance/canonical_attributes.py": "ccc0d4917c4a349964bcb7c7a4a28b81b17acca71231adaeca92b9cf77068544",
"conformance/source_text.py": "ce2a519368049ab5da3e0c9e542f8b29a6de0e4ed9ce66c27a59c36b0ac8b343",
"conformance/redirects.py": "13724a328672cabf824a377af5b9b9d01e8d13142a01a49e5d36396c95c568d2",
"conformance/robots.py": "b8c0385bf77cb253e6d0ad2ac50537c3b39739ad505d52707a409bf4e992337d",
"conformance/robots_control.py": "dce351a194692b6713793bdf31d04f9e6d0c2c695276597b28c2be63066164a4",
"conformance/structured_dom.py": "1cc8f48106e16dabbb1635260b8c8d26bb86c974d9ba3298a27056ac9f2044d6",
"experiments/rendered_metadata.py": "6020756b55332d1b126cb44cb563a50ce6d1083939d11231ce6fde525a6fea08",
"experiments/rendered_canonical.py": "46095e01906adebab50d4b1f55cc3fc28ec6d5286724228d62a0cb2840fb07fe",
"provenance/runtime.py": "5480de2ede016b64e9cb6ab692c59250a84eda2a68bc1474131494187a4b4be0",
"conformance/source_directives.py": "c59543dce84cba0b8d4e36940202f8368dd9f52a8d25d08b56e92d4dc644100a",
"conformance/source_canonical.py": "ae5183b31b0fd48e46e026b8457cb42ab85d8eae49aa1740c2fa0d51e95dd062",
"experiments/source_head.py": "d68671ef5eebdc07472b903bc2cb1edecd29e1d0e6a84b222c6c6bad1d7c824c",
"experiments/source_http.py": "2fd3d17815d00bf50716676ee7e45148a6b723276d13dd55512aea69df2c8924",
"experiments/source_tree.py": "3ae30f859dfe71925c1ff02905175c2de9991ffe9525da4fb73c9c9f63d0c30b",
"third_party/schemaorg/schemaorg-all-https-30.1.jsonld": "07e7c663dbc12a0937581745e59a98ed12b8698f38e8e3b03650287d9df88ae5",
"conformance/data/locale-code-facts-v1.json": "88dcbd178d0bf5faee8433a0976bc1dea0820f7a311e14a12c31674f5f10f6a7",
"conformance/data/locale-code-facts-v1.sha256": "8d089856f00c538080407e57afcda9927a943626c776cc5a4cdfd30e85b1f92b",
"collectors/rendered_metadata.js": "a0cef846495ed630a89149aafc017ed817f1632b6902402564a24b74d18ba206",
"experiments/source_tree.mjs": "0d0a5dc94237b37ee6ba9b65435598d923a2b6aa217cb4a33abe5ab96a711422",
"experiments/source_tree_network_guard.mjs": "68f439f3dceeef85e11a84bc3f78c72df3897cca53aafb8918dec16727fbe0c7",
"third_party/source-tree/packages.json": "32757186a1ceda70ee76295042b6f0d812ee7dc36bd0506fd82ceebe0f5e8099",
"third_party/source-tree/parse5-8.0.1.tgz": "d94ec8606e3cef24b8ec001ac121df5d7938f015be69615da27b53a082f86832",
"third_party/source-tree/entities-8.0.0.tgz": "8e8b16388e19c12fc80f9f75f518a0f83d99428be6765a38f04c264a078cc25b",
"experiments/source_http.mjs": "cbc87a6d0a27f25b26970d78290b38e4bf9f2cd83f4d5897eda3080f35714586",
"experiments/source_head.mjs": "1cea8e2e138bd01276ae5739be7790ba57935de0ed63ec10604fbc9847d3b5d0",
"experiments/source_content.mjs": "cd11892ed619f60f8b1d29bdfc9d298d04168f15267bf463be0695afbe1e19e2",
"experiments/source_scripts.py": "d0bb74b4a5b70191195578ccd7d85abbf3e6166f27530b2d00622b510fa623db",
"experiments/source_scripts.mjs": "417aef0ddb89d9006231e4c2165b67d53ae3d87d3dc61e57b75817278cbf288a",
"experiments/jsonld_processing.py": "e0f80ea10a82a646c02ff2d78247d3fc08b41f01b7bd05872eaabc87d28bf6cc",
"experiments/jsonld_processing.mjs": "17486529e5c3a744cffbc926ceb0ca8bd586535ec454de047e866f4650185c06",
"third_party/jsonld/packages.json": "ec0b586921a31ef90751c1822d040f845360a8be48fe99f446159440cefb0ee1",
"third_party/jsonld/jsonld-9.0.0.tgz": "3628c8df4ceaf4da1f0b55dc7a006287dc4362ed78f6f7c85e83bd99b9328627",
"third_party/jsonld/LICENSE": "0707101bd4a2fc564788b1ba03c53615e35388dad33879663db263e724a6bd4a",
"experiments/jsonld_html.py": "448c20e9359d274041552a588afe5f290b38e125513fa8584129e3df4ad54a00",
"experiments/jsonld_rendered.py": "523c3a4ef41d2df9c9bf90da977b4a0a6c136e32b1d75c9abb56a815e6e832af",
"conformance/source_link_policy.py": "3b7365b2994a171a70598ef234288a1f6a8ecb6ebff44b5cf677f5faa0ae58c7",
"experiments/link_elements.py": "ad50dc41da8b76a5d24d4068021595f8c24df40126a4d37ccf432c055e8fa438",
"experiments/url_resolution.py": "b7c393aa5f0cf0986da2a2db4c729c803e283489afee8da1a5261897dde4e2c2",
"experiments/link_elements.mjs": "7da25bb82714282d9d49c65081f43edab0e032d91337439b10c47a402027214e",
"experiments/url_resolution.mjs": "6a28ee91a806a7f871c63a6d5d28bc0d0b0842af570e96b4b57239429c533d8c",
"experiments/source_metadata.mjs": "d0b4ae3247251b31a209d6de6ba2d962b5c606b1e4d4869f2fe504ff628f32f6"
},
"runtime": {
"implementation": "CPython",
"python": "3.9.6",
"build": "3.9.6 (default, May 22 2026, 11:13:45) \n[Clang 21.0.0 (clang-2100.1.1.101)]",
"stdlib_source_sha256": {
"html": "8d69aeb50f77de6d84c51b9d01e08497983bafe9297cdd1620bf75aa1b1dba1c",
"html.entities": "fbe69b7c04e3e75eb7b33fefd2d5ad730bff35c4a7b865a8ecfc041075f6f93c",
"html.parser": "038bd4c85fc9d814f39f70a03733fddec2c3d3364b75bca4c276178488afae2e"
},
"scope": "Selected HTML runtime dependencies; null means source unavailable. Not complete environment authentication."
},
"source_verification": "Loaded module file/spec origins match this tool root; on-disk hashes checked before and after interpretation. Not execution authentication.",
"input_sha256": "f8f7b35de3a61df39aaad4c5f81aa874e51227995332b098c0f6929ade344df5",
"access": "synthetic",
"coverage_inventory": [
{
"state": "implemented",
"fr": "TS26–30/37 : sources, états et revues fournis, TLS hors ligne sur racines déclarées ; 44 contrôles possèdent des règles bornées, aucun audit global implicite.",
"en": "TS26–30/37: supplied sources, states and reviews, offline TLS with declared roots;44 controls have bounded rules, no implicit global audit."
},
{
"state": "implemented",
"fr": "TS09/11/19/20/38 : politiques, contenus et variantes sur pièces sources bornées et revues liées ; aucune qualification globale.",
"en": "TS09/11/19/20/38: policy, content and variants on bounded source evidence and bound reviews; no global qualification."
},
{
"state": "implemented",
"fr": "TS21/22/40 : diagnostics de familles, codes/destinations et méthodes hreflang fournis ; aucune causalité, indexation réelle ou localisation authentifiée.",
"en": "TS21/22/40: supplied family investigations, locale codes/destinations and hreflang methods; no causal, actual-indexing or authenticated-localization claim."
},
{
"state": "implemented",
"fr": "TS06-A01 : matrice fournie de routes `.invalid`, rôles synthétiques, canaris et triplets étiquetés ; aucune identité, aucun cache réel ni domaine live.",
"en": "TS06-A01: supplied `.invalid` route matrix, synthetic roles, canaries and labelled triplets; no real identity, real cache or live domain."
},
{
"state": "implemented",
"fr": "TS25 : cinq rôles déclarés, présence source/rendu et revues fournies ; aucune exécution ou visibilité authentifiée.",
"en": "TS25: five declared roles, source/render presence and supplied reviews; no authenticated execution or visibility."
},
{
"state": "implemented",
"fr": "TS24 : politique x-default, contexte motivé et revue de rôle fournis ; aucune neutralité ni approbation humaine inférée.",
"en": "TS24: supplied x-default policy, motivated context and role review; no inferred neutrality or human approval."
},
{
"state": "implemented",
"fr": "TS23 : réciprocité et auto-référence natives dans le groupe préalable ; aucune validité linguistique, indexabilité ou sélection Google déduite.",
"en": "TS23: native reciprocal/self annotations in the prior cluster; no inferred language validity, indexability or Google selection."
},
{
"state": "implemented",
"fr": "TS18 : inventaires, graphe borné et revues fournis ; aucune exhaustivité, identité de relecteur ou collecte authentifiée.",
"en": "TS18: supplied inventories, bounded graph and reviews; no completeness, authenticated reviewer or acquisition."
},
{
"state": "implemented",
"fr": "TS16 : liens entrants dans la population préalable fournie ; aucune exhaustivité du site ni importance authentifiée.",
"en": "TS16: incoming links within a prior supplied population; no site completeness or authenticated importance."
},
{
"state": "implemented",
"fr": "TS17 : liens essentiels a/href dans les source et états fournis ; stratégie préalable, scénarios et association HTTP/DOM déclarés, aucune interaction ou acquisition authentifiée.",
"en": "TS17: essential a/href links in supplied source/states; prior strategy, declared scenarios and HTTP/DOM association, no authenticated interaction/acquisition."
},
{
"state": "implemented",
"fr": "TS15 : population déclarée de fichiers fournis, limites natives et structure minimale ; aucun constat du serveur ni exhaustivité du site.",
"en": "TS15: declared population of supplied files, native bounds and minimal structure; no server observation or site completeness."
},
{
"state": "implemented",
"fr": "TS33 : syntaxe et noms de vocabulaire sur les captures liées, messages API indexés séparés ; erreurs bloquantes conservées, aucune éligibilité actuelle garantie.",
"en": "TS33: syntax/vocabulary names on bound captures, separate indexed API messages; blocking errors retained, no current eligibility guarantee."
},
{
"state": "implemented",
"fr": "TS32 : identifiants et références des exports JSON-LD fournis, registre préalable et revues liées ; cohérence du corpus, sans stabilité temporelle ni identité authentifiée.",
"en": "TS32: IDs/references from supplied JSON-LD exports, prior registry and bound reviews; corpus coherence, no temporal stability or authenticated identity."
},
{
"state": "implemented",
"fr": "TS31 : source et DOM JSON-LD fournis recalculés, périmètre et contenu revus avec liaison aux graphes ; visibilité, faits et résultats enrichis non authentifiés.",
"en": "TS31: recomputed supplied source/DOM JSON-LD, graph-bound scope/content reviews; visibility, facts and rich results are not authenticated."
},
{
"state": "implemented",
"fr": "TS36 : suivi documentaire baseline/J+1/J+7/J+30, API et logs fournis ; échéances futures NT, causalité et identité Google non établies.",
"en": "TS36: supplied baseline/D+1/D+7/D+30 API/log follow-up; future stages inconclusive, causality and Google identity unestablished."
},
{
"state": "implemented",
"fr": "TS12 : comparaisons littérales API/HTTP/HTML/DOM prévus et revues fournies ; C documentaire, jamais canonical correcte, TS10 ou indexation. Rendu absent : NT sauf contradiction indépendante.",
"en": "TS12: literal API/HTTP/HTML/planned DOM comparisons and supplied reviews; documentary C, never correct canonical, TS10 or indexing. Missing rendering: NT unless independent contradiction."
},
{
"state": "implemented",
"fr": "TS08 : sélection et objectifs préalables, JSON API natifs et revues/décisions fournies ; dossier qualifié seulement, aucun état live ou verdict TS12.",
"en": "TS08: prior selection/objectives, native API JSON and supplied reviews/decisions; documentation only, no live state or TS12 verdict."
},
{
"state": "implemented",
"fr": "TS01-A02 : identity_reader html-tree-markers-v1 préalable, segments parsés attribués et deux hypothèses globales. CRLF/CR bruts deviennent LF ; critères littéraux inchangés. Ni visibilité ni navigateur observés. Ancien lecteur et priorités URL/empreinte/stabilité conservés ; Node 24 requis pour cette seule branche, sans repli.",
"en": "TS01-A02: prior html-tree-markers-v1 identity_reader, attributed parsed segments and two whole-document hypotheses. Raw CRLF/CR become LF; literal criteria unchanged. No visibility or browser observation. Historical reader and URL/hash/stability precedence retained; Node 24 required for this branch, without fallback."
},
{
"state": "implemented",
"fr": "TS39 : matrice/configuration revues, signaux natifs TS07/TS10 et revues sémantiques, contextes et cache liés aux preuves fournies. Aucune région, visite Googlebot ou production authentifiée.",
"en": "TS39: reviewed matrix/configuration, native TS07/TS10 signals and semantic reviews, context/cache tied to supplied evidence. No authenticated geography, Googlebot visit or production."
},
{
"state": "implemented",
"fr": "TS41 : plan préalable, sorties natives recalculées, journal et réaction aux échecs/inconnues. C qualifie le dispositif déclaré ; les défauts SEO restent visibles. Aucune commande fournie exécutée ni CI distante authentifiée.",
"en": "TS41: prior plan, recalculated native outputs, journal and failure/unknown response. C qualifies the declared process; SEO defects stay visible. No supplied command executed or remote CI authenticated."
},
{
"state": "implemented",
"fr": "TS43 : client de test documenté, réponse prévue, journaux JSONL natifs et corrélation revue. Un refus prévu peut être cohérent ; aucune identité, visite ou accessibilité réelle de l’opérateur établie.",
"en": "TS43: documented test client, planned response, native JSONL logs and reviewed correlation. An expected denial can conform; no actual operator identity, visit or access established."
},
{
"state": "implemented",
"fr": "TS42 : usages documentés, décisions du responsable et arbitrages fournis ; comparaison robots bornée sur la représentation du client. Aucun agent réel ni respect des règles par un opérateur établi.",
"en": "TS42: documented purposes, supplied owner decisions and tradeoffs; bounded robots comparison on the client representation. No actual agent or operator compliance established."
},
{
"state": "implemented",
"fr": "TS34/TS35 : imports CrUX et Lighthouse distincts, valeurs et classes conservées ; C décrit la documentation, jamais une garantie de bonnes performances. Revues fournies sans authentification ; aucune collecte.",
"en": "TS34/TS35: separate CrUX and Lighthouse imports with retained values/classes; C describes documentation, never a guarantee of good performance. Supplied reviews are not authenticated; no collection."
},
{
"state": "implemented",
"fr": "TS07-A01/A03 : profil préalable google-preview-intent-v1, intervalles de permission texte/image/vidéo, contradictions et inconnues conservées. Aucun affichage Google ou usage de contenu déduit.",
"en": "TS07-A01/A03: prior google-preview-intent-v1, text/image/video permission intervals, retained contradictions and unknowns. No inferred Google display or content usage."
},
{
"state": "implemented",
"fr": "TS10-A01/A02 : http-link-context-v1 préalable, premier rel, contexte anchor attribué et inconnues conservées ; destination comparée littéralement. Ancien lecteur inchangé ; aucun choix Google déduit.",
"en": "TS10-A01/A02: prior http-link-context-v1, first rel, attributed anchor context and retained unknowns; literal destination comparison. Historical reader unchanged; no inferred Google choice."
},
{
"state": "implemented",
"fr": "TS10-A04 : profils source préalables html-tree-links-v1/v2, liens HTML a/area attribués, base conditionnelle et URL sérialisées. Convergence dans une famille déclarée, pas présence ou suffisance du maillage ; v2 rend les href dépendants indéterminés sous première base non analysable ; rendu antérieur inchangé.",
"en": "TS10-A04: prior html-tree-links-v1/v2 source profiles, attributed HTML a/area, conditional base and serialized URLs. Declared-family convergence, not link presence or sufficiency; v2 keeps dependent hrefs unknown under an unparseable first base; earlier rendered readers unchanged."
},
{
"state": "implemented",
"fr": "TS10-A01/A02 : lecteur source canonical préalable, positions et hypothèses attribuées ; rendu/revue toujours nécessaires.",
"en": "TS10-A01/A02: prior canonical source reader with attributed positions/hypotheses; rendering/reviews remain required."
},
{
"state": "implemented",
"fr": "TS07 : source_reader html-tree-directives-v1 préalable, deux hypothèses statiques et métadonnées attribuées aux octets ; Node 24 facultatif requis pour ce profil, aucun repli. Rendu et revues distincts.",
"en": "TS07: prior html-tree-directives-v1 source_reader, two static hypotheses with byte-attributed metadata; optional Node 24 required for this profile, no fallback. Rendering and reviews remain separate."
},
{
"state": "implemented",
"fr": "TS10-A03 : lecteur sitemap-locations-v1 préalable ; loc de pages distincts des annotations langues/images conservées sans évaluation. Profil historique inchangé, extensions inconnues indéterminées.",
"en": "TS10-A03: prior sitemap-locations-v1 reader; page loc distinct from retained, unassessed language/image annotations. Legacy profile unchanged; unknown extensions inconclusive."
},
{
"state": "implemented",
"fr": "Profil robots google-robotstxt-fields-v2 : registre fermé de champs hors portée accès, valeurs conservées ; anciens profils inchangés, autres champs indéterminés.",
"en": "Robots profile google-robotstxt-fields-v2: closed registry of fields outside access scope, retained values; old profiles unchanged, other fields inconclusive."
},
{
"state": "implemented",
"fr": "TS04 : directive_crawler préalable distingue le groupe Googlebot et le client HTTP réel ; les refus HTTP restent propres au client observé, sans accès Googlebot déduit.",
"en": "TS04: prior directive_crawler separates the Googlebot group from the actual HTTP client; HTTP denials concern the observed client, without inferring Googlebot access."
},
{
"state": "implemented",
"fr": "TS10 : attributs ordinaires source et DOM structurés classés en commun ; modificateurs, namespaces et attributs inconnus indéterminés. DOM sérialisé historique inchangé.",
"en": "TS10: shared source/structured canonical attribute classification; modifiers, namespaces and unknown attributes inconclusive. Historical serialized DOM unchanged."
},
{
"state": "implemented",
"fr": "TS07/TS10 : lecteur DOM structuré préalable, arbre complet, provenance fournie, sans authentification de navigation. Limites source et revues conservées.",
"en": "TS07/TS10: predeclared structured DOM reader, complete tree and supplied attribution, without navigation authentication. Source limits and reviews retained."
},
{
"state": "implemented",
"fr": "TS04 : matrice robots préalable, ressources nécessaires, revues fournies et lecteur partagé TS07. Profils bornés explicites ; anciennes entrées TS07 sous profil historique fixe.",
"en": "TS04: prior robots matrix, required resources, supplied reviews and shared TS07 reader. Explicit bounded profiles; legacy TS07 inputs use a fixed historical profile."
},
{
"state": "implemented",
"fr": "Octets HTTP exacts en entrée v2 ; lecture des anciennes entrées UTF-8 v1.",
"en": "Exact HTTP bytes in input v2; legacy UTF-8 input v1 retained."
},
{
"state": "implemented",
"fr": "HTTP/1.1 chunked borné, gzip simple et deflate enveloppé zlib ; SHA-256 après décodage, sans normalisation.",
"en": "Bounded HTTP/1.1 chunked, single gzip member and zlib-wrapped deflate; SHA-256 after decoding, without normalization."
},
{
"state": "implemented",
"fr": "Rapport hors ligne, preuves originales et comparaison ; inconnues et échecs conservés.",
"en": "Offline report, original evidence and comparison; unknowns and failures retained."
},
{
"state": "implemented",
"fr": "TS01 : extracteur de texte source distinct de TS07 ; éléments ordinaires équilibrés, références de caractères, titre RCDATA et icônes SVG bornées sans texte.",
"en": "TS01: source-text extractor separate from TS07; balanced ordinary elements, character references, RCDATA title and bounded text-free SVG icons."
},
{
"state": "deferred",
"fr": "Brotli, gzip multimembre, extensions/trailers chunked, HTTP/2 brut : indéterminés.",
"en": "Brotli, multi-member gzip, chunk extensions/trailers and raw HTTP/2: inconclusive."
},
{
"state": "deferred",
"fr": "Marqueurs : UTF-8 explicite et HTML borné seulement. Octets non UTF-8 conservés et empreintes comparables, sans extraction de texte implicite.",
"en": "Markers: explicit UTF-8 and bounded HTML only. Non-UTF-8 bytes retained and hashes comparable, without implicit text extraction."
},
{
"state": "implemented",
"fr": "TS01 : select/option/optgroup et tableaux explicitement structurés ; aucune fermeture implicite ni réparation.",
"en": "TS01: explicitly structured select/option/optgroup and tables; no implied closure or repair."
},
{
"state": "deferred",
"fr": "TS01 sans identity_reader : noscript/template/textarea non vides, texte SVG, MathML, select/table hors sous-ensemble, script échappé et HTML ambigu : extraction entière indéterminée. Le profil parsé distinct garde les erreurs rapportées, texte étranger non blanc, frames et intervalles non attribuables indéterminés.",
"en": "TS01 without identity_reader: nonempty noscript/template/textarea, SVG text, MathML, unsupported select/table, escaped script and ambiguous HTML: whole extraction inconclusive. The distinct parsed profile keeps reported errors, nonblank foreign text, frames and unattributable spans inconclusive."
},
{
"state": "out-of-scope",
"fr": "Cet adaptateur ne collecte pas, ne rend pas JavaScript et ne produit aucune revue humaine manquante.",
"en": "This adapter does not collect, render JavaScript or supply missing human reviews."
},
{
"state": "out-of-scope",
"fr": "Pas de preuve de Googlebot réel, indexation, classement ou conformité globale.",
"en": "No evidence of actual Googlebot behavior, indexing, ranking or global conformity."
}
],
"network_requests_by_adapter": 0,
"coverage": {
"TS02": {
"requested_rules": [
"TS02-A01",
"TS02-A02"
],
"omitted_rules": [],
"requested_pairs": 2,
"required_pairs": 2
}
},
"limitations": "Reference interpreter only. Supplied intent/reviews are not authenticated; no collection, JS execution, engine observation or global conformity."
}