{
  "schema": 1,
  "sqlstate": "25008",
  "condition_name": "held_cursor_requires_same_isolation_level",
  "sources": [
    {
      "id": "src.errcodes.18.6",
      "kind": "upstream_source",
      "source_role": "condition_definition",
      "tag": "REL_18_6",
      "commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
      "path": "src/backend/utils/errcodes.txt",
      "sha256": "6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba",
      "url": "https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt"
    },
    {
      "id": "src.calls.REL_18_6",
      "kind": "local_artifact",
      "source_role": "source_call_scan",
      "sha256": "9ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf"
    }
  ],
  "claims": [
    {
      "id": "identity",
      "statement": "25008 is held_cursor_requires_same_isolation_level in Class 25.",
      "sources": [
        "src.errcodes.18.6"
      ],
      "method": "Read the fixed condition row and macro.",
      "limits": "The condition is about a held cursor and transaction isolation, not every cursor-state error."
    },
    {
      "id": "source-boundary",
      "statement": "The exhaustive resolved PostgreSQL 18.6 call scan contains no direct 25008 report group; no natural SQL reproduction or message template is claimed.",
      "sources": [
        "src.calls.REL_18_6"
      ],
      "method": "Scan fixed source call records for SQLSTATE 25008.",
      "limits": "Do not replace this boundary with 24000 or a fabricated cursor error."
    }
  ],
  "messages": [],
  "usage_evidence": [
    {
      "scope": "definition-and-call-scan",
      "status": "definition_only",
      "evidence_ids": [
        "identity",
        "source-boundary"
      ]
    }
  ],
  "runtime": [
    {
      "id": "runtime.25008-batch2-latest-20260909.latest",
      "run_id": "25008-batch2-latest-20260909",
      "target": "latest",
      "server_version": "18.6 (Homebrew)",
      "server_version_num": 180006,
      "status": "not_applicable",
      "case_status": "not_applicable",
      "target_status": "passed",
      "cases": [
        "held_cursor_isolation_boundary"
      ],
      "summary_sha256": "5414fdc3f348658002eb8f411bb9654983e2052d89611ab005702080615e37c7",
      "raw_sha256": "0889c37455fdb5ff5ebd30e4e4e3125b07e927bff2cdf85ff042fa45993c6bc1",
      "case_manifest": {
        "sha256": "623ed0ec9b97c61d9929e15882992efb4f1022f0a8efe344f5f478da23483101"
      },
      "observed": {
        "case_status": "not_applicable"
      }
    },
    {
      "id": "runtime.25008-batch2-pg10-20260909.pg10",
      "run_id": "25008-batch2-pg10-20260909",
      "target": "pg10",
      "server_version": "10.21 (Debian 10.21-1.pgdg90+1)",
      "server_version_num": 100021,
      "status": "not_applicable",
      "case_status": "not_applicable",
      "target_status": "passed",
      "cases": [
        "held_cursor_isolation_boundary"
      ],
      "summary_sha256": "6bcfef17630470c294b892e305ffc58315f3e7653189d5bfdfc670e1e8988950",
      "raw_sha256": "9ec5edb1763265af64f67283d68eeaa0afff4023dda4686ecaf04dc3e5178726",
      "case_manifest": {
        "sha256": "623ed0ec9b97c61d9929e15882992efb4f1022f0a8efe344f5f478da23483101"
      },
      "observed": {
        "case_status": "not_applicable"
      }
    }
  ]
}
