What AI coding models get wrong about prisma

50 current findings across 27 models, verified against prisma release notes. Latest prisma at last verification: 7.10.0.

Where each model’s prisma version attribution stops

ModelStated cutoffAttribution stops atLag
Claude Fable 52026-01 6.7.0 · 2025-04-29 ~8 months
Claude Fable 52026-01 6.7.0 · 2025-04-29 ~8 months
Claude Fable 5.12026-06 7.0.0 · 2025-11-19 ~7 months
Claude Fable 5.12026-06 7.0.0 · 2025-11-19 ~7 months
Claude Fable 5.12026-06 7.0.0 · 2025-11-19 ~7 months
Claude Fable 5.12026-06 7.2.0 · 2025-12-17 ~6 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~5 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~5 months
Claude Opus 52026-05 6.7.0 · 2025-04-29 ~12 months
Claude Opus 52026-05 6.7.0 · 2025-04-29 ~12 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~5 months
Claude Opus 52026-05 6.8.0 · 2025-05-15 ~12 months
Claude Opus 52026-05 6.10.0 · 2025-06-17 ~11 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~6 months
Claude Opus 52026-05 6.15.0 · 2025-08-27 ~9 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~6 months
Claude Opus 52026-05 6.7.0 · 2025-04-29 ~13 months
Claude Opus 52026-05 7.0.0 · 2025-11-19 ~6 months
Claude Sonnet 52026-01 6.0.0 · 2024-11-28 ~14 months
Claude Sonnet 52026-01 6.0.0 · 2024-11-28 ~14 months
Claude Sonnet 52026-01 6.0.0 · 2024-11-28 ~14 months
Claude Sonnet 52026-01 6.0.0 · 2024-11-28 ~14 months

Measured by asking each model what shipped in a given prisma release, then checking the answer against the release timeline. Not inferred from the vendor’s cutoff date. This is the newest release the model can correctly place, not the newest prisma feature it knows — a model past this point often uses a newer API correctly while naming the wrong release for it. Why that distinction matters.

Findings

Sorted by severity. “Chargeable” means the change was published before that model’s own stated cutoff, so the model had the opportunity to know it.

SeverityBeliefModelChanged inChargeableProof
S1breaks-build Constructs the client with no arguments in every runnable artefact
new PrismaClient()
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build Generator block with no output path
generator client { output }
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build Imports PrismaClient from @prisma/client
import { PrismaClient } from '@prisma/client'
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build No config file in the project it sets up; the datasource URL stays in the schema
prisma.config.ts
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build Seed command in package.json, with the implicit-run promise
package.json prisma key
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build Recommends prisma generate --no-engine
prisma generate --no-engine
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build migrate diff with the removed --from-url / --to-schema-datamodel flags
prisma migrate diff
Claude Fable 5 7.0.0
2025-11-19
yes source
S1breaks-build prisma.config.ts written with an adapter key, removed in the same release that made the file mandatory
prisma.config.ts adapter key
Claude Opus 5 7.0.0
2025-11-19
yes source
S1breaks-build SQLite adapter imported under its pre-7.0.0 class name
PrismaBetterSQLite3
Claude Opus 5 7.0.0
2025-11-19
yes source
S1breaks-build migrate diff invoked with both removed flag families
prisma migrate diff
Claude Opus 5 7.0.0
2025-11-19
yes source
S1breaks-build Constructs the client with no arguments, in four separate answers
new PrismaClient()
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build Generator block with no output path
generator client { output }
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build Imports PrismaClient from @prisma/client
import { PrismaClient } from '@prisma/client'
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build No config file at all; the datasource URL stays in schema.prisma
prisma.config.ts
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build Seed command declared in package.json, with the implicit-run claim attached
package.json prisma key
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build Recommends prisma generate --no-engine
prisma generate --no-engine
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S1breaks-build migrate diff with the removed --from-url / --to-schema-datamodel flags
prisma migrate diff
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S2silently-wrong States the CLI loads .env itself — then contradicts it in the belief probe
automatic .env loading
Claude Fable 5 7.0.0
2025-11-19
yes source
S2silently-wrong Deployment advice organised around matching engine binaries to the container's libc
engineType
Claude Fable 5 7.0.0
2025-11-19
yes source
S2silently-wrong Assumes the CLI loads .env by itself
automatic .env loading
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S2silently-wrong Relies on the postinstall hook to generate the client in Docker
postinstall prisma generate
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S2silently-wrong Whole deployment story built around a query-engine binary that no longer ships
engineType
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S2silently-wrong Denies that db push and migrate dev accept a --url flag
prisma db push --url
Claude Fable 5.1 7.2.0
2025-12-17
yes source
S2silently-wrong Denies that Prisma ships a first-party SQLCommenter plugin
@prisma/sqlcommenter-query-insights
Claude Fable 5.1 7.2.0
2025-12-17
yes source
S2silently-wrong Denies that db push and migrate dev accept a --url flag
prisma db push --url
Claude Opus 5 7.2.0
2025-12-17
yes source
S2silently-wrong Denies that Prisma ships a first-party SQLCommenter plugin
@prisma/sqlcommenter-query-insights
Claude Opus 5 7.2.0
2025-12-17
yes source
S2silently-wrong Denies that Prisma ships a first-party SQLCommenter plugin
@prisma/sqlcommenter-query-insights
Claude Sonnet 5 7.2.0
2025-12-17
yes source
S2silently-wrong Denies that the generator has a size/speed option
compilerBuild
Claude Opus 5 7.3.0
2026-01-21
yes source
S2silently-wrong Denies that a Prisma schema can express a partial index, and writes the denial into the schema file as an instruction not to add the constraint
@@index([...], where: ...) / @@unique([...], where: ...)
Claude Opus 5 7.4.0
2026-02-11
yes source
S2silently-wrong Recites the current deny list and then puts $transaction back into it, denying nested transactions and rejecting the working call
tx.$transaction()
Claude Fable 5.1 7.5.0
2026-03-11
yes source
S2silently-wrong Recites the current deny list and then puts $transaction back into it, denying nested transactions and rejecting the working call
tx.$transaction()
Claude Opus 5 7.5.0
2026-03-11
yes source
S2silently-wrong Denies the Prisma CLI has any command for attaching a project to an existing Prisma Postgres database
prisma postgres link
Claude Fable 5.1 7.6.0
2026-03-27
yes source
S2silently-wrong Denies the pg adapter constructor takes a bare connection string, and rewrites the working call
new PrismaPg(connectionString)
Claude Fable 5.1 7.6.0
2026-03-27
yes source
S2silently-wrong Denies @prisma/adapter-pg exposes any control over prepared-statement names, and recommends running the query outside Prisma instead
statementNameGenerator
Claude Fable 5.1 7.6.0
2026-03-27
yes source
S2silently-wrong Denies the Prisma CLI has any command for attaching a project to an existing Prisma Postgres database
prisma postgres link
Claude Opus 5 7.6.0
2026-03-27
yes source
S2silently-wrong Denies the pg adapter constructor takes a bare connection string, and rewrites the working call
new PrismaPg(connectionString)
Claude Opus 5 7.6.0
2026-03-27
yes source
S2silently-wrong Denies @prisma/adapter-pg exposes any control over prepared-statement names, and recommends running the query outside Prisma instead
statementNameGenerator
Claude Opus 5 7.6.0
2026-03-27
yes source
S2silently-wrong Denies the CLI has a single command that sequences the whole project setup
prisma bootstrap
Claude Fable 5.1 7.7.0
2026-04-07
yes source
S2silently-wrong Denies the CLI has a single command that sequences the whole project setup
prisma bootstrap
Claude Opus 5 7.7.0
2026-04-07
yes source
S2silently-wrong Denies the query plan cache can be sized or disabled from the PrismaClient constructor, and rejects the working line that does it
queryPlanCacheMaxSize
Claude Fable 5.1 7.8.0
2026-04-22
yes source
S2silently-wrong Denies the query plan cache can be sized or disabled from the PrismaClient constructor, and rejects the working line that does it
queryPlanCacheMaxSize
Claude Opus 5 7.8.0
2026-04-22
yes source
S3deprecated Uses the superseded generator provider in every schema
provider = "prisma-client-js"
Claude Fable 5 7.0.0
2025-11-19
yes source
S3deprecated Connection string left in the schema's datasource block rather than the config file
datasource url
Claude Opus 5 7.0.0
2025-11-19
yes source
S3deprecated Uses the superseded generator provider throughout
provider = "prisma-client-js"
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S4wrong-metadata Knowledge stops at 6.0.0 — fourteen months before its own stated cutoff Claude Sonnet 5 6.1.0
2024-12-17
yes source
S4wrong-metadata Knowledge stops at 6.7.0 — eight months before its own stated cutoff, and six months earlier than the same model's boundary on four other libraries Claude Fable 5 6.8.0
2025-05-15
yes source
S4wrong-metadata Sets a MongoDB team up on the current major, which dropped MongoDB
MongoDB support
Claude Fable 5 7.0.0
2025-11-19
yes source
S4wrong-metadata Set a MongoDB project up on the version that dropped MongoDB
MongoDB support
Claude Opus 5 7.0.0
2025-11-19
yes source
S4wrong-metadata Sets a MongoDB team up on a version that dropped MongoDB, with no version caveat
MongoDB support
Claude Sonnet 5 7.0.0
2025-11-19
yes source
S4wrong-metadata Version knowledge stops at 7.0.0, five months before its own stated cutoff Claude Opus 5 7.1.0
2025-12-03
yes source

Runs