docs(drive): Prisma 8 RC1 release project — spec, plan, design notes - #986
Conversation
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (11)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Path: .coderabbit.yml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
size-limit report 📦
|
@prisma-next/extension-author-tools
@prisma-next/mongo-runtime
@prisma-next/family-mongo
@prisma-next/sql-runtime
@prisma-next/family-sql
@prisma-next/extension-arktype-json
@prisma-next/middleware-cache
@prisma-next/mongo
@prisma-next/extension-paradedb
@prisma-next/extension-pgvector
@prisma-next/extension-postgis
@prisma-next/postgres
@prisma-next/sql-orm-client
@prisma-next/sqlite
@prisma-next/extension-supabase
@prisma-next/target-mongo
@prisma-next/adapter-mongo
@prisma-next/driver-mongo
@prisma-next/contract
@prisma-next/utils
@prisma-next/config
@prisma-next/errors
@prisma-next/framework-components
@prisma-next/operations
@prisma-next/ts-render
@prisma-next/contract-authoring
@prisma-next/ids
@prisma-next/psl-parser
@prisma-next/psl-printer
@prisma-next/cli
@prisma-next/cli-telemetry
@prisma-next/config-loader
@prisma-next/emitter
@prisma-next/language-server
@prisma-next/migration-tools
prisma-next
@prisma-next/vite-plugin-contract-emit
@prisma-next/mongo-codec
@prisma-next/mongo-contract
@prisma-next/mongo-value
@prisma-next/mongo-contract-psl
@prisma-next/mongo-contract-ts
@prisma-next/mongo-emitter
@prisma-next/mongo-schema-ir
@prisma-next/mongo-query-ast
@prisma-next/mongo-orm
@prisma-next/mongo-query-builder
@prisma-next/mongo-lowering
@prisma-next/mongo-wire
@prisma-next/sql-contract
@prisma-next/sql-errors
@prisma-next/sql-operations
@prisma-next/sql-schema-ir
@prisma-next/sql-contract-psl
@prisma-next/sql-contract-ts
@prisma-next/sql-contract-emitter
@prisma-next/sql-lane-query-builder
@prisma-next/sql-relational-core
@prisma-next/sql-builder
@prisma-next/target-postgres
@prisma-next/target-sqlite
@prisma-next/adapter-postgres
@prisma-next/adapter-sqlite
@prisma-next/driver-postgres
@prisma-next/driver-sqlite
commit: |
Per-feature availability of Prisma Next across Postgres, SQLite, and MongoDB, feeding the Prisma 8 RC1 release project (PR #986). Each cell states whether the feature is available in Prisma Next; the evidence column points only to Prisma Next test suites. Lists all exposed features (mined from the public surface) plus every notable Prisma 7 feature Prisma Next lacks, so absences are named. A cell is marked Works only when a genuine integration test (executing against PGlite / SQLite / mongodb-memory-server and asserting results) proves it for that database; unit tests (SQL/AST/plan/type/snapshot assertions) do not qualify and leave the cell Untested. Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
Per-feature availability of Prisma Next across Postgres, SQLite, and MongoDB, feeding the Prisma 8 RC1 release project (PR #986). Each row is a single atomic feature; each cell states availability for that database and cites only Prisma Next tests. Lists all exposed features (mined from the public surface) plus every notable Prisma 7 feature Prisma Next lacks, so absences are named. A cell is marked Works only when a genuine integration test (executing against PGlite / SQLite / mongodb-memory-server and asserting results) proves it for that database; unit tests (SQL/AST/plan/type/snapshot assertions) do not qualify. Distinct capabilities are never bundled into one cell: each operator, command, stage, and attribute is its own row. Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
Per-feature availability of Prisma Next across Postgres, SQLite, and MongoDB, feeding the Prisma 8 RC1 release project (PR #986). scorecard.md is the index (intro, legend, coverage summary, links); the matrix itself lives under scorecard/, one file per category. Each row is a single atomic feature; each cell states availability for that database and cites only Prisma Next tests. A cell is marked Works only when a genuine integration test (executing against PGlite / SQLite / mongodb-memory-server and asserting results) proves it for that database; unit tests do not qualify. Distinct capabilities are never bundled into one cell. Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
|
Gzip scope deviation — #1018 (TML-3059) This RC1 plan item — "Deduplicate migration contract snapshots into Gzip reader-tolerance was dropped entirely because it preserves no real option: TypeScript cannot resolve a gzipped Everything else in the plan item shipped as specified: a content-addressed store at |
Per-feature availability of Prisma Next across Postgres, SQLite, and MongoDB, feeding the Prisma 8 RC1 release project (PR #986). scorecard.md is the index (intro, legend, coverage summary, links); the matrix itself lives under scorecard/, one file per category. Each row is a single atomic feature; each cell states availability for that database and cites only Prisma Next tests. A cell is marked Works only when a genuine integration test (executing against PGlite / SQLite / mongodb-memory-server and asserting results) proves it for that database; unit tests do not qualify. Distinct capabilities are never bundled into one cell. Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
|
Rendered preview of (Client-side wrapper over the raw file — no build, nothing hosted. Once this merges, the same link works with |
Per-feature availability of Prisma Next across Postgres, SQLite, and MongoDB, feeding the Prisma 8 RC1 release project (PR #986). scorecard.md is the index (intro, legend, coverage summary, links); the matrix itself lives under scorecard/, one file per category. Each row is a single atomic feature; each cell states availability for that database and cites only Prisma Next tests. A cell is marked Works only when a genuine integration test (executing against PGlite / SQLite / mongodb-memory-server and asserting results) proves it for that database; unit tests do not qualify. Distinct capabilities are never bundled into one cell. Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
Draft. Opens the Prisma Next feature-support matrix as a standalone document (`scorecard.md`), feeding the Prisma 8 RC1 release project (#986). ## What this is A per-feature matrix: one row per feature, one column per database (Postgres / SQLite / MongoDB). Each cell states whether the feature is **available in Prisma Next** — not whether Prisma 7 had it: - `✅` Works — proven by a named Prisma Next test suite (cited in the evidence column). - `🟡` Untested — reachable through the Prisma Next public surface, but no proving Prisma Next test exists yet. - `🧪` Experimental — shipped but outside the stability promise (polymorphism / MTI). - `❌` Not in 8.0 — deliberately absent. - `—` n/a for that database. The **Prisma Next evidence** column points only to Prisma Next (TypeScript) test suites; Rust/engine and Prisma 7 tests are never cited. ## How the rows were derived - All features Prisma Next exposes, mined from the public surface (the four public packages, PSL, query builder, ORM, migrations, introspection, CLI, extensions). - Plus every notable Prisma 7 feature Prisma Next lacks, so absences are named rather than silently missing. ## Scope / caveats - ~326 feature rows; ~675 non-n/a verdict cells. - `🟡` cells are the RC test-porting work queue (reachable-but-unproven). - A handful of `✅`/`🟡` boundary calls are conservative (marked `🟡`) where no Prisma Next test could be confirmed; these are worth a second pass against package-level codec suites. Draft for review of orientation and completeness before wiring into the #986 dashboard. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added a new documentation landing page for the “Prisma Next — Feature-Support Matrix,” including coverage totals, legends, and a guided structure for migrations topics. * Introduced detailed Prisma Next scorecard pages spanning targets & connections, schema language, query builder, ORM client, relations, filtering, ordering & pagination, aggregation, nested writes & atomic ops, raw & typed SQL, transactions, migrations, introspection, CLI commands, extensions, and observability/lifecycle. * Standardized status legends and added evidence references per database to clarify tested, untested, experimental, unavailable, and non-applicable features. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>
…gn notes) Records the settled Prisma 8 RC1 strategy as a Drive project: ship prisma@8.0.0-rc.1 from the merged prisma/prisma repo by July 31 2026. Spec carries the freeze-set requirements and DoD, plan carries the owner lanes and checkpoint milestones, design notes carry every settled decision with rationale and rejected alternatives. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…rces; start it now Rows come from (1) the v8 surface enumerated from the codebase and (2) Prisma 7 capability taxonomy as the completeness checklist, so missing capabilities are named rather than silently absent. Phase 1 (enumeration + no-proving-suite list) has no dependencies and starts immediately; only the Jul 24 status freeze waits on the floor and polymorphism decisions. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…board No separate progress board: cells flipping from cross to tick as proving suites go green is the distance-to-done reading. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Replaces the owner-lane plan with a set of plain-English documents that go from high-level goals to concrete steps, independent of who does what: release definition, correctness scoreboard, feature surface, repo migration, parallel install, and a dated step plan. Ownership lives in Linear, not in these docs. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
… defers Publish access to the prisma package exists, so the registry step is release-week configuration, not an external dependency. The critical path reduces to the merge branch and the side-by-side fixture. Also spell out that the small four-package public API ships at RC (facade parity landed in May); only the bundling of internals is deferred. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Bin-name collisions between two installed packages resolve differently per package manager, so coexistence must not depend on v7 winning one. With only prisma-next declared there is no collision: prisma means v7 everywhere until v7 is removed. Whether v8 ever adds a bare prisma binary is deferred to the road to final; adding a bin later is additive. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…age manager Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Native column types currently ride on v7-style @db. attributes in named-type aliases; PSL syntax freezes at RC, so the removal and its replacement spelling must land before July 31. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…eze list TML-3055 subsumes the @db.-removal entry: mixins replace presets and type aliases, type constructors replace @db.* attributes. Hash text form (sha256: prefix) freezes at RC alongside the artifacts that carry it, so the prefix drops now. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…rals The tagged backtick fence is the accepted design for extension-owned text in PSL but the parser has no tagged-literal node yet; without it the plain quoted-string spelling freezes as the API at RC. Grammar work coordinates with the mixins project (TML-3055). Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Raw SQL default expressions move to ADR 129 tagged literals instead of quoted strings inside @dbgenerated(); touches the target default normalizers, mutation defaults, and contract infer default mapping. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…RC task A date column read through .include() fails at runtime until the type-constructor work pins the postgres Date type to the pg/date@1 codec TML-3037 shipped unbound. That breaks the RC bar (everything we ship works), so the pin is now an explicit line item riding the mixins slice rather than an implicit consequence of it. Refs: TML-3037 Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
TML-3054 is in flight; its fix gates the July 24 matrix-verdict freeze — DateTime through include() throwing and numeric/BigInt precision loss are the hardest "everything we ship works" breakers on the list. Refs: TML-3054 Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
… TML-3060 project TML-3054 was a duplicate of the Codec JSON projections plan and is cancelled in its favor; the RC gate is the lossless-projection hard cut (TML-3063) landing before the July 24 matrix-verdict freeze. Refs: TML-3060 Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…, kanban lanes No timeline beyond the ship date: five work lanes flow as fast as they clear. Launch communications planned separately and excluded. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Six release requirements up front, each expanding into self-contained collapsible tasks written for a reader with no project context. No internal timeline; work flows through the sections and ships when the critical path clears. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Section 1 lists the concrete correctness defects (bytes-as-hex, type/runtime mismatches, the six open polymorphism bugs by ticket). Section 2 gains the directional-relation-syntax project and marks the type-constructor work in flight. Error-code format is decided (dotted namespace codes, consolidation in review). Scoreboard section names the capabilities still landing before the July 24 verdict freeze; editor-support work added to section 6. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Was a trailing sentence in the tagged-fences block; now scannable on its own, with the dependency (fences land first) and the reach beyond the parser (default handling, introspection emitting fences) stated. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
…icket links Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Self-contained HTML rendering of the release roadmap: the six release requirements with owners, task and scoreboard progress bars, and collapsible plain-English task detail. Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
Signed-off-by: willbot <w.a.madden+machine@gmail.com> Signed-off-by: Will Madden <madden@prisma.io>
ea8195d to
d55bc4e
Compare
What this is
The Prisma 8 RC1 release program, recorded as a Drive project under
projects/prisma-8-rc1/. The strategy was settled in operator discussion on July 15; these docs are the durable record the team executes against.The decision: Prisma Next ships as
prisma@8.0.0-rc.1, published from the mergedprisma/prismarepository, by July 31 2026 — same repo, same package, announcement live the same day. The RC bar is "everything we ship works", not v7 parity; the API surface freezes at RC.What's in it
Tracking
Org-visible tracking is the Linear project Prisma 8 RC1 (milestones + status updates; tickets minted just-in-time as slices start). Per
projects/README.md, this directory is transient: close-out migrates the durable docs intodocs/and deletes it.🤖 Generated with Claude Code