{
  "schema": "https://l0g.fr/openapi.json#/components/schemas/FreshnessSurface",
  "version": "1.10.0",
  "generated": "2026-07-10T15:36:35.758Z",
  "latest": [
    {
      "type": "article",
      "slug": "basis-trade-fed-radiographie-pari-record",
      "title": "Basis trade : au plus haut selon la Fed, moribond selon le marché",
      "url": "https://l0g.fr/posts/basis-trade-fed-radiographie-pari-record/",
      "date": "2026-07-10"
    },
    {
      "type": "article",
      "slug": "carry-trade-yen-la-meche-dans-les-obligations-japonaises",
      "title": "Carry trade yen : la mèche est désormais dans les obligations japonaises",
      "url": "https://l0g.fr/posts/carry-trade-yen-la-meche-dans-les-obligations-japonaises/",
      "date": "2026-07-10"
    },
    {
      "type": "article",
      "slug": "semi-conducteurs-pile-contraintes",
      "title": "Semi-conducteurs : la pile de contraintes derrière l'IA",
      "url": "https://l0g.fr/posts/semi-conducteurs-pile-contraintes/",
      "date": "2026-07-08"
    },
    {
      "type": "article",
      "slug": "ethereum-tradfi-infrastructure-finance",
      "title": "Ethereum et la TradFi : le test grandeur nature de la finance programmable",
      "url": "https://l0g.fr/posts/ethereum-tradfi-infrastructure-finance/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-la-volatilite-vix-move",
      "title": "Lire la volatilité : VIX et MOVE, les thermomètres de la peur",
      "url": "https://l0g.fr/guides/lire-la-volatilite-vix-move/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-le-dollar-dxy-cross-currency-basis",
      "title": "Lire le dollar : DXY, cross-currency basis et la dette dollar offshore",
      "url": "https://l0g.fr/guides/lire-le-dollar-dxy-cross-currency-basis/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-le-marche-de-l-or",
      "title": "Lire le marché de l'or : Londres, Comex, papier contre physique",
      "url": "https://l0g.fr/guides/lire-le-marche-de-l-or/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-le-marche-du-repo-sofr",
      "title": "Lire le marché du repo : SOFR, le couloir des taux et la rareté des réserves",
      "url": "https://l0g.fr/guides/lire-le-marche-du-repo-sofr/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-le-pce-inflation-fed",
      "title": "Lire le PCE : la mesure d'inflation que cible vraiment la Fed",
      "url": "https://l0g.fr/guides/lire-le-pce-inflation-fed/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-le-rapport-jolts",
      "title": "Lire le JOLTS : sous le capot du marché du travail américain",
      "url": "https://l0g.fr/guides/lire-le-rapport-jolts/",
      "date": "2026-07-08"
    },
    {
      "type": "guide",
      "slug": "lire-les-spreads-de-credit",
      "title": "Lire les spreads de crédit : OAS, échelle de qualité et signal de stress",
      "url": "https://l0g.fr/guides/lire-les-spreads-de-credit/",
      "date": "2026-07-08"
    },
    {
      "type": "article",
      "slug": "cushing-le-terminal-qui-fixe-le-prix-du-petrole-americain",
      "title": "Cushing : le terminal de l'Oklahoma qui fixe le prix du pétrole américain",
      "url": "https://l0g.fr/posts/cushing-le-terminal-qui-fixe-le-prix-du-petrole-americain/",
      "date": "2026-07-08"
    },
    {
      "type": "article",
      "slug": "rebond-du-dollar-jusqu-ou-avant-la-riposte-des-banques-centrales",
      "title": "Rebond du dollar : jusqu'où avant la riposte des banques centrales ?",
      "url": "https://l0g.fr/posts/rebond-du-dollar-jusqu-ou-avant-la-riposte-des-banques-centrales/",
      "date": "2026-07-08"
    },
    {
      "type": "article",
      "slug": "guerre-d-iran-inventaire-des-navires-et-infrastructures-petroliers-et-gaziers-fr",
      "title": "Guerre d'Iran : inventaire des navires et infrastructures pétroliers et gaziers frappés",
      "url": "https://l0g.fr/posts/guerre-d-iran-inventaire-des-navires-et-infrastructures-petroliers-et-gaziers-fr/",
      "date": "2026-07-07"
    },
    {
      "type": "article",
      "slug": "dette-americaine-le-reveil-de-la-prime-de-terme",
      "title": "Dette américaine : le réveil de la prime de terme",
      "url": "https://l0g.fr/posts/dette-americaine-le-reveil-de-la-prime-de-terme/",
      "date": "2026-07-07"
    },
    {
      "type": "article",
      "slug": "uranium-marche-en-deficit-promesse-de-l-ia-et-goulots-caches",
      "title": "Uranium : marché en déficit, promesse de l'IA, et goulots cachés",
      "url": "https://l0g.fr/posts/uranium-marche-en-deficit-promesse-de-l-ia-et-goulots-caches/",
      "date": "2026-07-07"
    },
    {
      "type": "guide",
      "slug": "lire-le-marche-de-l-uranium",
      "title": "Lire le marché de l'uranium : cycle du combustible, prix et goulots",
      "url": "https://l0g.fr/guides/lire-le-marche-de-l-uranium/",
      "date": "2026-07-07"
    },
    {
      "type": "guide",
      "slug": "lire-le-marche-des-treasuries",
      "title": "Lire le marché des Treasuries : adjudications, courbe et prime de terme",
      "url": "https://l0g.fr/guides/lire-le-marche-des-treasuries/",
      "date": "2026-07-07"
    },
    {
      "type": "guide",
      "slug": "lire-les-previsions-du-cbo",
      "title": "Lire les prévisions du CBO : la baseline budgétaire et ses pièges",
      "url": "https://l0g.fr/guides/lire-les-previsions-du-cbo/",
      "date": "2026-07-07"
    },
    {
      "type": "article",
      "slug": "la-bulle-dans-la-bulle-valorisations-ia-et-benefices-gonfles",
      "title": "La bulle dans la bulle : valorisations, IA et bénéfices gonflés",
      "url": "https://l0g.fr/posts/la-bulle-dans-la-bulle-valorisations-ia-et-benefices-gonfles/",
      "date": "2026-07-06"
    }
  ],
  "corpus": {
    "articles": 62,
    "guides": 29,
    "methodologies": 6,
    "glossary": 270,
    "primarySources": 14,
    "editorialChangelog": 10
  },
  "endpoints": [
    {
      "path": "/agents.json",
      "role": "Manifeste de découverte agent",
      "update": "à chaque build"
    },
    {
      "path": "/openapi.json",
      "role": "Contrat OpenAPI public",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/catalog.json",
      "role": "Catalogue machine complet",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/catalog.ndjson",
      "role": "Catalogue machine en NDJSON",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/claims.json",
      "role": "Graphe affirmation-source",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/claims.ndjson",
      "role": "Claims en NDJSON",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/evidence-graph.json",
      "role": "Evidence graph en nœuds et arêtes",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/evidence-graph.ndjson",
      "role": "Evidence graph en NDJSON",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/sources.json",
      "role": "Registre sources et hôtes cités",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/freshness.json",
      "role": "Fraîcheur et derniers contenus",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/integrity.json",
      "role": "Empreintes SHA-256 des surfaces M2M",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/changes.json",
      "role": "Changefeed machine des publications et révisions",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/changes.ndjson",
      "role": "Changefeed machine en NDJSON",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/risk-diff.json",
      "role": "Diff du risque : signaux, sources, claims, modèles et articles",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/black-box.json",
      "role": "Boîte noire point-in-time des frames de risque rejouables",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/debt-risk.json",
      "role": "Snapshot Dette US avec provenance Debt Risk Radar",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/signals/current.json",
      "role": "Dernières observations point-in-time par instrument",
      "update": "à chaque build"
    },
    {
      "path": "/api/v1/signals/history.json",
      "role": "Historique des signaux pour audit et backtest",
      "update": "à chaque build et archive append-only"
    },
    {
      "path": "/api/v1/signals/history.ndjson",
      "role": "Historique des signaux en NDJSON",
      "update": "à chaque build et archive append-only"
    },
    {
      "path": "/api/v1/signals/history.csv",
      "role": "Observations de signaux à plat pour backtest",
      "update": "à chaque build et archive append-only"
    },
    {
      "path": "/api/v1/signals/schema.json",
      "role": "Schéma des lignes historiques de signaux",
      "update": "à chaque changement de contrat"
    },
    {
      "path": "/llms.txt",
      "role": "Carte concise pour agents",
      "update": "à chaque build"
    },
    {
      "path": "/llms-full.txt",
      "role": "Corpus textuel étendu",
      "update": "à chaque build"
    }
  ],
  "signalFreshness": [
    {
      "key": "us",
      "label": "US Macro Dashboard",
      "source": "https://us.l0g.fr",
      "methodology": "https://l0g.fr/methodologie/us-macro/",
      "observedAt": "2026-07-10T15:35:19.000Z",
      "sourcePublishedAt": null,
      "retrievedAt": null,
      "computedAt": "2026-07-10T15:36:35.758Z",
      "staleAfter": "P7D",
      "expiresAt": "2026-07-17T15:35:19.000Z",
      "timelinessStatus": "fresh",
      "coverageStatus": "partial",
      "coverage": {
        "signalPresent": true,
        "observedAt": true,
        "sourcePublishedAt": false,
        "retrievedAt": false,
        "computedAt": true,
        "staleAfter": true
      },
      "missing": [
        "sourcePublishedAt",
        "retrievedAt"
      ],
      "note": "Temporalité issue du snapshot agrégé disponible. Les dates sourcePublishedAt et retrievedAt restent nulles tant que le dashboard amont ne les expose pas."
    },
    {
      "key": "eu",
      "label": "EU Macro Dashboard",
      "source": "https://euro.l0g.fr",
      "methodology": "https://l0g.fr/methodologie/euro-macro/",
      "observedAt": "2026-07-10T15:35:19.000Z",
      "sourcePublishedAt": null,
      "retrievedAt": null,
      "computedAt": "2026-07-10T15:36:35.758Z",
      "staleAfter": "P7D",
      "expiresAt": "2026-07-17T15:35:19.000Z",
      "timelinessStatus": "fresh",
      "coverageStatus": "partial",
      "coverage": {
        "signalPresent": true,
        "observedAt": true,
        "sourcePublishedAt": false,
        "retrievedAt": false,
        "computedAt": true,
        "staleAfter": true
      },
      "missing": [
        "sourcePublishedAt",
        "retrievedAt"
      ],
      "note": "Temporalité issue du snapshot agrégé disponible. Les dates sourcePublishedAt et retrievedAt restent nulles tant que le dashboard amont ne les expose pas."
    },
    {
      "key": "yen",
      "label": "Yen Carry Monitor",
      "source": "https://yct.l0g.fr",
      "methodology": "https://l0g.fr/methodologie/yen-carry/",
      "observedAt": "2026-07-10T15:35:19.000Z",
      "sourcePublishedAt": null,
      "retrievedAt": null,
      "computedAt": "2026-07-10T15:36:35.758Z",
      "staleAfter": "P7D",
      "expiresAt": "2026-07-17T15:35:19.000Z",
      "timelinessStatus": "fresh",
      "coverageStatus": "partial",
      "coverage": {
        "signalPresent": true,
        "observedAt": true,
        "sourcePublishedAt": false,
        "retrievedAt": false,
        "computedAt": true,
        "staleAfter": true
      },
      "missing": [
        "sourcePublishedAt",
        "retrievedAt"
      ],
      "note": "Temporalité issue du snapshot agrégé disponible. Les dates sourcePublishedAt et retrievedAt restent nulles tant que le dashboard amont ne les expose pas."
    },
    {
      "key": "energie",
      "label": "Energie Monitor",
      "source": "https://energie.l0g.fr",
      "methodology": "https://l0g.fr/methodologie/energie/",
      "observedAt": "2026-07-10T15:35:19.000Z",
      "sourcePublishedAt": null,
      "retrievedAt": null,
      "computedAt": "2026-07-10T15:36:35.758Z",
      "staleAfter": "P7D",
      "expiresAt": "2026-07-17T15:35:19.000Z",
      "timelinessStatus": "fresh",
      "coverageStatus": "partial",
      "coverage": {
        "signalPresent": true,
        "observedAt": true,
        "sourcePublishedAt": false,
        "retrievedAt": false,
        "computedAt": true,
        "staleAfter": true
      },
      "missing": [
        "sourcePublishedAt",
        "retrievedAt"
      ],
      "note": "Temporalité issue du snapshot agrégé disponible. Les dates sourcePublishedAt et retrievedAt restent nulles tant que le dashboard amont ne les expose pas."
    },
    {
      "key": "debt",
      "label": "Debt Risk Radar",
      "source": "https://debt.l0g.fr",
      "methodology": "https://l0g.fr/methodologie/debt-risk-radar/",
      "observedAt": "2026-07-10T15:35:19.000Z",
      "sourcePublishedAt": null,
      "retrievedAt": null,
      "computedAt": "2026-07-10T15:36:35.758Z",
      "staleAfter": "P7D",
      "expiresAt": "2026-07-17T15:35:19.000Z",
      "timelinessStatus": "fresh",
      "coverageStatus": "partial",
      "coverage": {
        "signalPresent": true,
        "observedAt": true,
        "sourcePublishedAt": false,
        "retrievedAt": false,
        "computedAt": true,
        "staleAfter": true
      },
      "missing": [
        "sourcePublishedAt",
        "retrievedAt"
      ],
      "note": "Temporalité issue du snapshot agrégé disponible. Les dates sourcePublishedAt et retrievedAt restent nulles tant que le dashboard amont ne les expose pas."
    }
  ],
  "freshnessPolicy": {
    "rule": "Les agents doivent privilégier date/updated pour le contenu éditorial, observedAt pour les signaux, puis computedAt/generated pour la fraîcheur du fichier.",
    "caveat": "l0g.fr n’est pas un flux temps réel strict ; les snapshots indiquent leur date utile. Les champs sourcePublishedAt et retrievedAt restent explicites et peuvent être null quand la source amont ne les expose pas ; indexedAt décrit seulement l’indexation du lien dans l’artefact.",
    "correctionPolicy": "https://l0g.fr/protocole-editorial/",
    "changelog": "https://l0g.fr/changelog-editorial/"
  },
  "license": "CC BY 4.0",
  "attribution": "l0g.fr"
}
