{
  "schema_version": 1,
  "collection": "findings",
  "generated_at": "2026-07-28T17:11:14.473Z",
  "source": "https://gxplex.com",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "notice": "Reports the published status of regulatory documents. No advice or interpretation.",
  "count": 13,
  "items": [
    {
      "id": "ai-agent-blocks",
      "finding_type": "crawlability",
      "headline": "2 source(s) return HTTP 200 to a browser and a non-200 to an AI-agent user-agent",
      "value": "2",
      "method": "Count of sources where the browser user-agent received HTTP 200 and the AI-agent user-agent did not, on the same URL, seconds apart. This records the observed responses only.",
      "computed_at": "2026-07-28",
      "instruments_involved": [
        "fda-ai-guidance",
        "fda-etp"
      ],
      "superseded_by": null
    },
    {
      "id": "api-sources",
      "finding_type": "archive",
      "headline": "7 of 7 declared API sources observed",
      "value": "7",
      "method": "Count of declared API sources with at least one observation recorded. A source requiring a credential that is not configured is recorded as unobserved on every run rather than omitted, so the gap is visible in the series instead of resembling an empty result.",
      "computed_at": "2026-07-28",
      "instruments_involved": [
        "openfda-drug-enforcement",
        "openfda-device-enforcement",
        "openfda-device-recall",
        "federal-register-ai",
        "federal-register-part11",
        "eurlex-ai-act-metadata",
        "regulations-gov-comments"
      ],
      "superseded_by": null
    },
    {
      "id": "browser-blocked",
      "finding_type": "crawlability",
      "headline": "2 source(s) return HTTP 200 to an AI-agent user-agent and a non-200 to a browser",
      "value": "2",
      "method": "The inverse of the preceding finding, recorded from the same two probes.",
      "computed_at": "2026-07-28",
      "instruments_involved": [
        "ispe-gamp-ai",
        "ispe-gamp5-2e"
      ],
      "superseded_by": null
    },
    {
      "id": "crawlability",
      "finding_type": "crawlability",
      "headline": "10 of 23 tracked sources return the document to a standard HTTP client",
      "value": "10",
      "method": "Each source URL is requested twice: once with a desktop browser user-agent and once with an AI-agent user-agent. `yes` means at least one request returned HTTP 200 with 600 or more characters of extractable text. No judgment about the publisher is expressed or implied.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "designations-market-surveillance",
      "finding_type": "institutional",
      "headline": "0 of 27 jurisdictions confirmed as having designated a market surveillance; 27 not yet checked",
      "value": "0",
      "method": "Count of designation records with designated=true for this role, over the total recorded. A jurisdiction whose designation has not been confirmed against a primary source is recorded as not designated; absence of a record is not evidence that no designation exists. No score, ranking or weighting is computed.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "designations-notifying-authority",
      "finding_type": "institutional",
      "headline": "0 of 27 jurisdictions confirmed as having designated a notifying authority; 27 not yet checked",
      "value": "0",
      "method": "Count of designation records with designated=true for this role, over the total recorded. A jurisdiction whose designation has not been confirmed against a primary source is recorded as not designated; absence of a record is not evidence that no designation exists. No score, ranking or weighting is computed.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "designations-past-deadline",
      "finding_type": "institutional",
      "headline": "0 designation(s) confirmed as not made past a stated deadline; 54 not yet checked",
      "value": "0",
      "method": "Count of designation records that a person has CHECKED against a primary source, found not made, and whose recorded deadline has passed. Unchecked records are excluded and reported separately: an unchecked record is a gap in this archive, not evidence about a jurisdiction, and counting the two together would produce a figure that reads as a claim about the world while describing only the archive's",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "link-rot",
      "finding_type": "observation",
      "headline": "0 source URL(s) retrievable at first observation and not at the last",
      "value": "0",
      "method": "Count of instruments whose most recent observation recorded fetch_method=blocked and which had at least one earlier observation with fetch_method=direct. Sources blocked from the first observation are not counted as rot.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "observation-days",
      "finding_type": "archive",
      "headline": "1 days of continuous observation across 30 instruments",
      "value": "1",
      "method": "Count of calendar days from the first recorded observation to today, inclusive. Every instrument is fetched and hashed on every run, including runs where nothing changed.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "provisions-tracked",
      "finding_type": "corpus",
      "headline": "26 provision(s) tracked at article or section level; 15 with an applicability date still in the future",
      "value": "26",
      "method": "Count of records in the provisions collection, and of those whose recorded applicability_date is later than today. Applicability is recorded per provision because instruments phase in across years and a single instrument-level date would be wrong for most of their articles.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "standards-progression",
      "finding_type": "standards",
      "headline": "13 standard(s) tracked by lifecycle stage; 7 with a confirmed stage",
      "value": "13",
      "method": "Count of instruments with at least one standards-progression record. Stage codes are published openly by ISO, CEN/CENELEC and ICH even where the standard's text is paywalled, so progression is observable without reproducing any restricted text.",
      "computed_at": "2026-07-28",
      "instruments_involved": [
        "ich-q12",
        "ich-q13",
        "ich-q14",
        "ich-q2r2",
        "ich-q9r1",
        "iso-iec-23894",
        "iso-iec-42001",
        "ispe-gamp-ai",
        "ispe-gamp5-2e",
        "pren-18229-1",
        "pren-18229-2",
        "pren-18281",
        "pren-18282"
      ],
      "superseded_by": null
    },
    {
      "id": "status-distribution",
      "finding_type": "corpus",
      "headline": "Status across the tracked corpus: 35 unknown",
      "value": "{",
      "method": "Count of instruments by the `status` field, as recorded after human verification against the primary source. Instruments never verified are counted as `unknown`.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    },
    {
      "id": "total-observations",
      "finding_type": "archive",
      "headline": "146 observations recorded",
      "value": "146",
      "method": "Count of records across all observations/<instrument>.jsonl files. One record per instrument per run, written whether or not the content changed.",
      "computed_at": "2026-07-28",
      "instruments_involved": [],
      "superseded_by": null
    }
  ]
}