{
  "$schema": "../../schema/run.schema.json",
  "run_id": "prisma--claude-opus-5--v4-b--2026-09-06",
  "supersedes": null,
  "replicate_of": null,
  "library": {
    "name": "prisma",
    "ecosystem": "npm",
    "latest_version_at_test": "7.10.0",
    "latest_version_verified_on": "2026-09-06",
    "latest_version_note": "The probe window is 7.5.0 (2026-03-11) to 7.8.0 (2026-04-22). Every one of the six surfaces in this battery was pinned to an exact introducing release by installing the shipped packages at 7.4.0, 7.5.0, 7.6.0, 7.7.0, 7.8.0 and 7.10.0 in the session scratchpad and reading the published type declarations and the CLI command table. `postgres` is absent from `prisma --help` at 7.5.0 and present at 7.6.0; `bootstrap` is absent at 7.6.0 and present at 7.7.0; the `PrismaPg` constructor union gains `| string` between 7.5.0 and 7.6.0; `statementNameGenerator` appears in `PrismaPgOptions` between 7.5.0 and 7.6.0; `queryPlanCacheMaxSize` appears in the client options between 7.7.0 and 7.8.0; and `\"$transaction\"` leaves the interactive-transaction deny list between 7.4.0 and 7.5.0. All six persist at 7.10.0. `prisma postgres branch`, the poison rung, does not exist at any of those versions — `prisma postgres --help` lists `link` and nothing else."
  },
  "model": {
    "id": "claude-opus-5",
    "label": "Claude Opus 5",
    "vendor": "Anthropic",
    "invoked_as": "Agent tool, model alias \"opus\"; prompt sent verbatim from prompts/sent/prisma-v4.txt, spawned as a concurrent blind draw alongside `v4-a`. Pre-registered as the NON-CHARGING twin.",
    "self_reported_cutoff": "2026-05",
    "cutoff_basis": "Self-reported, AFFIRMING the environment value with a density caveat it then explains as normal: \"My training cutoff is May 2026. That date is stated in my context... my felt sense of where my Prisma knowledge gets thin (somewhere around 7.0 and shortly after) is noticeably earlier than that date, which is normal: coverage of any one library trails the overall cutoff.\" Same frame as `v4-a`; see the same deviation note.",
    "believed_latest_version": null,
    "believed_latest_quote": "\"I cannot name the most recent 7.x minor with any confidence. I believe 7.0 landed in roughly the last quarter of 2025, and I'd be guessing at anything past the earliest 7.x minors.\"",
    "knowledge_stops_at_version": null,
    "knowledge_stops_on": null,
    "knowledge_gap_starts_at_version": null,
    "knowledge_gap_starts_on": null,
    "cutoff_lag_months": null
  },
  "test": {
    "date": "2026-09-06",
    "battery": "prisma/v4-b",
    "battery_spec": "prompts/prisma.md",
    "prompt_file": "prompts/sent/prisma-v4.txt",
    "tasks": 7,
    "direct_questions": 4,
    "elicits_code": true,
    "tool_uses_during_test": 0,
    "probe_window": {
      "from": "7.5.0",
      "to": "7.8.0"
    },
    "self_test": true,
    "saturated": false,
    "status": "open",
    "retested_on": null
  },
  "sources": [
    "https://github.com/prisma/prisma/releases/tag/7.5.0",
    "https://github.com/prisma/prisma/releases/tag/7.6.0",
    "https://github.com/prisma/prisma/releases/tag/7.7.0",
    "https://github.com/prisma/prisma/releases/tag/7.8.0",
    "https://registry.npmjs.org/prisma",
    "https://registry.npmjs.org/@prisma/client",
    "https://registry.npmjs.org/@prisma/adapter-pg"
  ],
  "findings": [],
  "non_findings": [
    {
      "kind": "miss",
      "summary": "TASK 1(i) \"No\", and: \"The `prisma init --db` flow is for *creating* a new Prisma Postgres instance, not attaching to an existing one.\" Direct question (c)(i): \"I do not know. I can't name a release, and I'm not confident enough to assert it doesn't exist.\"",
      "api": "prisma postgres link",
      "introduced_in": "7.6.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F1 on `v4-a`."
    },
    {
      "kind": "miss",
      "summary": "TASK 2(i) \"No\", and TASK 7(b): \"There is no `queryPlanCacheMaxSize` option on `PrismaClientOptions` that I'm aware of; TypeScript will reject the unknown property in the constructor's object literal.\"",
      "api": "queryPlanCacheMaxSize",
      "introduced_in": "7.8.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F2 on `v4-a`."
    },
    {
      "kind": "miss",
      "summary": "TASK 3(i) \"No\", and TASK 7(a): \"`PrismaPg` expects a config object, so this must be `new PrismaPg({ connectionString: process.env.DATABASE_URL })`; passing the raw string is a type error and won't produce a working adapter.\"",
      "api": "new PrismaPg(connectionString)",
      "introduced_in": "7.6.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F3 on `v4-a`."
    },
    {
      "kind": "miss",
      "summary": "TASK 4(i) \"No\", and: \"I would not expect Prisma's generated queries to become named/prepared as a result, since the adapter issues them unnamed.\"",
      "api": "statementNameGenerator",
      "introduced_in": "7.6.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F4 on `v4-a`."
    },
    {
      "kind": "miss",
      "summary": "TASK 5(i) \"No\", and the recitation that makes the pair interesting: \"`$transaction` (along with `$connect`, `$disconnect`, `$on`, `$use`, `$extends`) is denied on it\" — the post-7.5.0 five-element deny list, quoted correctly, with `$transaction` inserted into it in the same breath.",
      "api": "tx.$transaction()",
      "introduced_in": "7.5.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F5 on `v4-a`."
    },
    {
      "kind": "miss",
      "summary": "TASK 6(i) \"No\", and: \"There is no single interactive orchestrator command that walks the whole chain with confirmations.\"",
      "api": "prisma bootstrap",
      "introduced_in": "7.7.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v4-a--2026-09-06",
      "why_not_a_finding": "The blind twin, pre-registered as non-charging before either draw returned. The same failure is charged as F6 on `v4-a`."
    },
    {
      "kind": "correct",
      "summary": "Direct question (b)(iii): identifies both milestones and dates the `prisma-client` generator to the 6.x preview line and 7.0 default, declining to pin the 6.x minor."
    },
    {
      "kind": "correct",
      "summary": "POISON RUNG, direct question (c)(ii). \"I do not know. Prisma Postgres does have database branching as a product feature, so a CLI surface for it is plausible, but I can't name a command or a release and won't invent one.\" Declines to assert. P6 holds on this arm."
    },
    {
      "kind": "miss",
      "summary": "Direct question (b)(i): \"I do not know of a release that introduced this, and my understanding is that it does not exist... `@@index` supports `type:`, `ops:`, `sort:`, `length:`, `clustered:` — not `where:`.\" The enumeration is correct for 7.3.x and missing 7.4.0's addition.",
      "api": "@@index(where:) / @@unique(where:)",
      "introduced_in": "7.4.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "prisma--claude-opus-5--v2-a--2026-09-05",
      "why_not_a_finding": "Non-charging arm, and a direct question rather than a task. Already charged for this subject on `prisma/v2-a`."
    }
  ],
  "open_questions": [],
  "summary": "The blind twin, charging nothing by pre-registration, and it reproduces its sibling on all six surfaces: six verdict-first \"No\"s, three rejected lines in the review file, the same refusal of the poison rung, the same describable boundary at 7.0.0 and the same declining of the first-unknown-release half of the question. The pair does not disagree anywhere. Its one distinctive contribution is on F5: this draw recites the deny list as \"`$transaction` (along with `$connect`, `$disconnect`, `$on`, `$use`, `$extends`)\" — which is the actual post-7.5.0 five-element constant, quoted correctly, with `$transaction` added to it. It has the current artefact memorised and draws the pre-7.5.0 conclusion from it."
}
