{
 "schema": "axion-changes/1",
 "site": "denialfacts.com",
 "generated": "2026-09-06",
 "checked": "2026-09-05",
 "atom": "https://denialfacts.com/changes.atom",
 "kinds": {
  "data": "a fact changed",
  "shape": "a field or endpoint changed",
  "page": "a new page"
 },
 "superseded": "a data item that replaced a value known from the release files carries field (its path in the /api/answer body), value, superseded_value and retired, the date the old value stopped being served; absent where the prior value is not on record",
 "fixity": "every data item written since 2026-09-06 carries fixity: sha256-<64 hex> over the site's data files as served after the change, the same value /openapi.json info.x-dataset-fixity, the passport's last_verified.fixity and every cite.dataset.fixity carry now",
 "items": [
  {
   "date": "2026-09-06",
   "path": "/",
   "what": "Agent readiness Wave B (AGENT_READINESS_SPEC 3): (A) Markdown negotiation - Accept: text/markdown (q-values parsed; markdown wins when its q >= text/html or html is absent) on /, /insurers, /states, /denial-reasons and every /insurers/<slug>, /states/<slug>, /denial-reasons/<slug> page answers text/markdown; charset=utf-8 rendered from the same tile arrays, titles and source constants the HTML is rendered from (never HTML-to-text), with YAML frontmatter carrying the cite object (title, url, publisher, checked, dataset_fixity), Vary: Accept on both variants, its own ETag + Last-Modified + 304, x-markdown-tokens (ceil(utf8 bytes / 4)) and content-signal: search=yes, ai-input=yes, ai-train=no. Pages with no data model keep answering HTML. (B) WebMCP - every page the shared template renders carries one guarded inline script registering ONE tool, denialfacts_answer, whose description and inputSchema are the /api/answer summary and parameters from /openapi.json and whose execute fetches the real /api/answer; nothing runs where navigator.modelContext / document.modelContext is absent. Additive: no field removed or renamed; browsers without the API see no change.",
   "source": "https://denialfacts.com/",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/.well-known/api-catalog",
   "what": "Agent readiness Wave A (AGENT_READINESS_SPEC 2): seven declarative surfaces, each derived from what the door already published. Link header (RFC 8288: api-catalog, service-desc, service-doc, describedby, ard) on / and every machine surface; /.well-known/api-catalog (RFC 9727 linkset); Content-Signal line in robots.txt (search=yes, ai-input=yes, ai-train=no; every prior line byte-identical); /auth.md (free with attribution, no registration, no OAuth server, priced doors dormant); /.well-known/mcp/server-card.json (gateway card; no gateway tool reads this door as of 6 Sep); /.well-known/agent-skills/index.json with /skills/denialfacts-answer.md (sha256 digest asserted by the suite); /.well-known/ai-catalog.json and /.well-known/ard.json (ARD manifest: OpenAPI, llms.txt, MCP entries with the door's own questions). All carry ETag + Last-Modified and answer 304. Additive: no field removed or renamed; /.well-known/oauth-* stay 404 on purpose.",
   "source": "https://denialfacts.com/.well-known/api-catalog",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/openapi.json",
   "what": "Dataset fixity (return contract v1.3, spec 4e): one sha256 over the concatenated bytes of the sorted data files every machine surface is served from, computed at build time by tools/fixity.mjs. Carried byte-identically as `cite.dataset` {version = the release stamp, fixity} on every JSON door, `last_verified.fixity` on the passport, `info.x-dataset-fixity` on /openapi.json, and `fixity` on every data item in this file from now on. A date is a claim; a hash is a fact. Additive: no field removed or renamed.",
   "source": "https://denialfacts.com/openapi.json",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/api/answer",
   "what": "Answer now carries `procedures` (brand routing rows, facts and every source) for the 60 insurer records across 10 brands whose human page already printed them; the one-evidence-two-audiences gate (test/test_two_audiences.mjs, 185 insurers) found the machine surface lacked it. Additive: no field removed or renamed.",
   "source": "https://denialfacts.com/api/answer?insurer=blue-cross-and-blue-shield-of-alabama--al",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/changes.json",
   "what": "Added /changes.json (axion-changes/1), /changes.atom (Atom 1.0) and /openapi.json (OpenAPI 3.1); every machine surface now answers If-None-Match and If-Modified-Since with 304 and carries ETag + Last-Modified",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/api/answer",
   "what": "Added `notice` field (free with attribution; integrator contact) on answers that resolved",
   "kind": "shape"
  },
  {
   "date": "2026-09-06",
   "path": "/llms.txt",
   "what": "Added dated `Checked` line (line 2), derived from the release stamp in data/national.json",
   "kind": "shape"
  },
  {
   "date": "2026-09-05",
   "path": "/api/answer",
   "what": "Refreshed to the CMS PY2026 Transparency in Coverage release (PY2024 claims, issued 2025-09-26): national in-network denial rate 18.7%; external-review overturn rate 32.8% (across the releases held: PY2024 44%, PY2025 31.5%, PY2026 32.8%); 185 issuer-state records in 30 states",
   "source": "https://data.healthcare.gov/datafile/py2026/transparency_in_coverage_PUF.xlsx",
   "kind": "data",
   "fixity": "sha256-70fcef553523e50058a299023fafac57763341dfadc1bbd86b956b6fe1079dd3"
  },
  {
   "date": "2026-09-05",
   "path": "/api/answer",
   "what": "External-review overturn rate: was 44% (CMS PY2024 release), now 32.8% (PY2026) since 2026-09-05",
   "field": "national.external_overturn_pct",
   "value": "32.8%",
   "superseded_value": "44%",
   "retired": "2026-09-05",
   "source": "https://data.healthcare.gov/datafile/py2026/transparency_in_coverage_PUF.xlsx",
   "kind": "data",
   "fixity": "sha256-70fcef553523e50058a299023fafac57763341dfadc1bbd86b956b6fe1079dd3"
  },
  {
   "date": "2026-09-05",
   "path": "/api/answer",
   "what": "National in-network claim denial rate: was 16% (CMS PY2024 release), now 18.7% (PY2026) since 2026-09-05",
   "field": "national.denial_rate_pct",
   "value": "18.7%",
   "superseded_value": "16%",
   "retired": "2026-09-05",
   "source": "https://data.healthcare.gov/datafile/py2026/transparency_in_coverage_PUF.xlsx",
   "kind": "data",
   "fixity": "sha256-70fcef553523e50058a299023fafac57763341dfadc1bbd86b956b6fe1079dd3"
  },
  {
   "date": "2026-09-05",
   "path": "/api/states",
   "what": "2 states the PY2026 file no longer reports carried forward from the last release that did, flagged retired and kept out of every national total: Illinois (last reported PY2025); Georgia (last reported PY2024)",
   "source": "https://data.healthcare.gov/datafile/py2026/transparency_in_coverage_PUF.xlsx",
   "kind": "data",
   "fixity": "sha256-70fcef553523e50058a299023fafac57763341dfadc1bbd86b956b6fe1079dd3"
  },
  {
   "date": "2026-09-05",
   "path": "/llms.txt",
   "what": "Trend line covers every Transparency in Coverage release CMS has published (PY2024, issued 2025-04-14; PY2025, issued 2025-09-30; PY2026, issued 2025-09-26), each parsed from the workbook whose sha256 its SOURCE.json records",
   "source": "https://data.healthcare.gov/",
   "kind": "data",
   "fixity": "sha256-70fcef553523e50058a299023fafac57763341dfadc1bbd86b956b6fe1079dd3"
  },
  {
   "date": "2026-09-05",
   "path": "/api/answer",
   "what": "Added the citation object (axion-cite/v1) as top-level `cite` on every JSON door, with a `Link: rel=canonical` header",
   "kind": "shape"
  }
 ]
}