Thanks to visit codestin.com
Credit goes to github.com

Skip to content

chore: finish the roadmap removal and let docs-only PRs merge - #30261

Merged
wmadden merged 2 commits into
mainfrom
chore/roadmap-leftovers
Sep 11, 2026
Merged

chore: finish the roadmap removal and let docs-only PRs merge#30261
wmadden merged 2 commits into
mainfrom
chore/roadmap-leftovers

Conversation

@wmadden-electric

@wmadden-electric wmadden-electric commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Linked issue

n/a — no Linear ticket. Follow-up to #30229 (roadmap removal) and #30248 (Prisma 8 rename).

At a glance

Docs-only PRs could not enter the merge queue: Size Limit is a required check, and the bundle-size workflow skipped the whole job on an inert diff, so the check never reported. #30229 needed an admin merge for exactly this reason. The job now always runs and only its steps skip.

Summary

Three leftovers from the roadmap removal in one commit, plus a second commit that fixes the test-database idle timeout behind today's Connection terminated unexpectedly failures.

The idle-timeout mismatch

createDevDatabase in @repo/test-utils started the dev Postgres with a one-second idle timeout, while the Postgres driver's pool keeps an idle client for thirty seconds. Any test that pauses more than a second between queries then gets a dead client back from the pool: Client has encountered a connection error and is not queryable, wrapped as SqlConnectionError: Connection terminated unexpectedly. Coverage instrumentation makes such pauses routine, which is why the adapter-postgres native-enum lifecycle suite failed the Coverage job on five branches today (#30249's queue run, #30241, prepare-orm, prisma-8-skill-rc9-refresh, #30262 four times in a row) while passing every plain shard.

Three suites had already worked around it with a per-call thirty- or sixty-second override and a comment explaining exactly this. The default now matches the pool (thirty seconds), the three redundant overrides are gone, the telemetry harness keeps its sixty, and the returned handle exposes the setting so the test can assert it.

The roadmap leftovers

  1. ROADMAP.html is deleted. It was the rendered twin of the ROADMAP.md that Replace the stale RC1 roadmap and early-access status with the release-candidate position #30229 removed and still described the rc.1 plan.
  2. scripts/lint-legacy-name.mjs no longer cites the deleted roadmap. Two of its temporary allowances pointed at "ROADMAP.md § 3" as the task that retires them; they now name the pending identifier rename directly. The file-specific allowance for the roadmap itself is gone with the files, and so is its test.
  3. The Size Limit job always reports. The inert-diff condition moves from the job to each step, following the pattern the CI workflow already uses for its required Test summary job.

Behavior changes & evidence

  • CI: a docs-only PR now gets a green Size Limit check instead of a skipped one, so auto-merge can enqueue it. Evidence: this PR touches .github/ and scripts/, so it is non-inert and exercises the real path; the inert path is exercised by the next docs-only PR.
  • Lint: pnpm lint:legacy-name still passes on main; node --test scripts/lint-legacy-name.test.mjs scripts/lint-workflow-triggers.test.mjs passes (29 tests).

Skill update

n/a — no user-facing surface changed.

Checklist

  • All commits are signed off (git commit -s) per the DCO.
  • I read CONTRIBUTING.md and the change is scoped to one logical concern.
  • Tests are updated (the lint test drops the roadmap allowance case and asserts the new pointer).
  • The PR title is in TML-NNNN: <sentence-case title> form. No Linear ticket exists for this change.
  • The Skill update section above is filled in.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation

    • Removed the Prisma 8 RC1 roadmap page.
  • Bug Fixes

    • Bundle-size checks now report consistently, including for documentation-only changes.
  • Development Experience

    • Improved local development database connection handling by keeping idle connections available for longer, reducing unexpected disconnects during extended development and testing sessions.

ROADMAP.html was the rendered twin of the ROADMAP.md that #30229 deleted;
it still described the rc.1 plan. The legacy-name lint explained two of its
temporary allowances by pointing at a roadmap section that no longer exists,
and carried a file allowance for the roadmap itself; both now describe the
pending identifier rename directly.

Size Limit is a required status check, but the bundle-size workflow skipped
the whole job on an inert diff, so every docs-only PR sat blocked on a check
that never reported. The job now always runs and only its steps skip.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Signed-off-by: willbot <[email protected]>
Signed-off-by: Will Madden <[email protected]>
@wmadden-electric
wmadden-electric requested a review from a team as a code owner September 11, 2026 16:24
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Advanced

Run ID: b2d4d164-6b32-41c3-9bb6-972717445ea7

📥 Commits

Reviewing files that changed from the base of the PR and between 7c323aa and ef68d57.

📒 Files selected for processing (5)
  • packages/1-framework/3-tooling/cli-telemetry/test/backend-harness.ts
  • test/integration/test/_harness/postgres.ts
  • test/integration/test/sql-orm-client/integration-helpers.ts
  • test/utils/src/exports/index.ts
  • test/utils/test/dev-database.test.ts

Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

The Bundle Size workflow now reports a status for inert diffs. The roadmap page and its lint exemption are removed. Legacy-name tests reference the pending rename. Test database helpers now use a 30-second idle timeout by default and validate it.

Changes

Bundle-size status reporting

Layer / File(s) Summary
Gate bundle-size steps
.github/workflows/bundle-size.yml
The size job always starts. Its steps run only for non-inert diffs, with event-specific conditions preserved.

Legacy-name allowance cleanup

Layer / File(s) Summary
Remove roadmap artifacts and allowances
ROADMAP.html, scripts/lint-legacy-name.mjs
The roadmap page is deleted. The roadmap-file exemption is removed. Remaining temporary allowances use the pending rename description.
Update rename allowance test
scripts/lint-legacy-name.test.mjs
The test checks the pending rename description for the remaining temporary allowances.

Test database idle timeout alignment

Layer / File(s) Summary
Align test database timeout configuration
test/utils/src/exports/index.ts, test/integration/test/_harness/postgres.ts, test/integration/test/sql-orm-client/integration-helpers.ts, packages/1-framework/3-tooling/cli-telemetry/test/backend-harness.ts
The test database utility defaults to a 30-second idle timeout and exposes the resolved value. Integration helpers stop overriding the timeout. The telemetry comment describes the behavior without the old default value.
Validate database timeout
test/utils/test/dev-database.test.ts
A new test verifies that the idle timeout is at least 30 seconds and closes the database after the assertion.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Bug fix

Suggested reviewers: sevinf

Merge Risk: ⚪ Minimal · up to ef68d

The CI, legacy-name cleanup, and test-database timeout changes have no verified merge-blocking issue.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 16.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 7 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes two primary changes: completing roadmap removal and enabling docs-only pull requests to merge. It is concise and relevant, although it does not mention the test-database t…
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/roadmap-leftovers

Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Sep 11, 2026

Copy link
Copy Markdown

Open in StackBlitz

@prisma/orm-extension-arktype-json

npm i https://pkg.pr.new/@prisma/orm-extension-arktype-json@30261

@prisma/orm-extension-middleware-cache

npm i https://pkg.pr.new/@prisma/orm-extension-middleware-cache@30261

@prisma/orm-extension-paradedb

npm i https://pkg.pr.new/@prisma/orm-extension-paradedb@30261

@prisma/orm-extension-pgvector

npm i https://pkg.pr.new/@prisma/orm-extension-pgvector@30261

@prisma/orm-extension-postgis

npm i https://pkg.pr.new/@prisma/orm-extension-postgis@30261

@prisma/orm-extension-supabase

npm i https://pkg.pr.new/@prisma/orm-extension-supabase@30261

@prisma/orm-family-mongo

npm i https://pkg.pr.new/@prisma/orm-family-mongo@30261

@prisma/orm-family-sql

npm i https://pkg.pr.new/@prisma/orm-family-sql@30261

@prisma/orm-framework

npm i https://pkg.pr.new/@prisma/orm-framework@30261

@prisma/orm-mongo

npm i https://pkg.pr.new/@prisma/orm-mongo@30261

@prisma/orm-postgres

npm i https://pkg.pr.new/@prisma/orm-postgres@30261

@prisma/orm-sqlite

npm i https://pkg.pr.new/@prisma/orm-sqlite@30261

@prisma/orm-target-mongo

npm i https://pkg.pr.new/@prisma/orm-target-mongo@30261

@prisma/orm-target-postgres

npm i https://pkg.pr.new/@prisma/orm-target-postgres@30261

@prisma/orm-target-sqlite

npm i https://pkg.pr.new/@prisma/orm-target-sqlite@30261

@prisma/orm-toolchain

npm i https://pkg.pr.new/@prisma/orm-toolchain@30261

commit: ef68d57

@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size
postgres / no-emit 181.43 KB (0%)
postgres / emit 154.52 KB (0%)
mongo / no-emit 107.36 KB (0%)
mongo / emit 91.81 KB (0%)
cf-worker / no-emit 205.94 KB (0%)
cf-worker / emit 176.09 KB (0%)

…river pool does

createDevDatabase started the dev Postgres with a one-second idle timeout
while the Postgres driver pool keeps an idle client for thirty seconds, so
any test pausing longer than a second between queries got a dead client
back: "Connection terminated unexpectedly". Coverage-instrumented runs pause
that long routinely, which is why the adapter-postgres native-enum lifecycle
suite failed the Coverage job across five branches today while passing every
plain shard. Three suites had already worked around it per call.

The default now matches the pool, the redundant overrides go, and the
returned handle exposes the setting so a test can hold the line.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Signed-off-by: willbot <[email protected]>
Signed-off-by: Will Madden <[email protected]>
@wmadden
wmadden added this pull request to the merge queue Sep 11, 2026
Merged via the queue into main with commit a83f377 Sep 11, 2026
42 of 44 checks passed
@wmadden
wmadden deleted the chore/roadmap-leftovers branch September 11, 2026 17:53
thallesdomician pushed a commit to thallesdomician/prisma that referenced this pull request Sep 11, 2026
…prisma#30262)

## Linked issue

n/a — no Linear ticket. Completes the rename that prisma#30248 started for
prose; builds on prisma#30261.

## At a glance

Every `prisma-next` identifier a user can see is renamed. Before and
after, for a scaffolded project:

```text
// use prisma-next          →  // use prisma-8            (schema header)
prisma-next.md              →  prisma-8.md                (primer at the project root)
PRISMA_NEXT_DISABLE_TELEMETRY  →  PRISMA_DISABLE_TELEMETRY  (and every other PRISMA_NEXT_* variable)
~/.config/prisma-next/      →  ~/.config/prisma-8/        (per-user telemetry config)
prisma-next contract emit   →  prisma contract emit       (CLI invocations in docs, fixtures, recordings)
```

## Summary

After prisma#30248 the product was called Prisma 8 in prose, but the working
name was still written into user projects and printed by the CLI: the
schema header, the primer file, the environment variables, the per-user
config directory, the language-server diagnostic source, the Standard
Schema vendor string, the contract brand symbol, the advisory-lock
domain, and about 650 fixture and doc files that spelled out
`prisma-next …` commands. This PR renames all of it in one pass and
tightens the legacy-name lint so the only occurrences left are the ones
with a reason.

## Decision

One commit. The mapping:

| Surface | Before | After |
|---|---|---|
| Schema header | `// use prisma-next` | `// use prisma-8` |
| Primer file `init` writes | `prisma-next.md` | `prisma-8.md` |
| CLI environment variables | `PRISMA_NEXT_*` | `PRISMA_*` |
| Per-user config directory | `prisma-next/` | `prisma-8/` |
| Language-server diagnostic source | `prisma-next` | `prisma` |
| Standard Schema vendor, VS Code publisher | `prisma-next` | `prisma` |
| Contract brand symbol | `__prisma_next_brand__` | `__prisma_8_brand__`
|
| Postgres advisory-lock domain | `prisma_next.contract.marker` |
`prisma_8.contract.marker` |
| Example database names | `prisma_next_*` | `prisma_8_*` |
| README banner image | `images/prisma-next.png` | `images/prisma-8.png`
|
| Telemetry docs URL | `prisma-next.dev/docs/…` | `www.prisma.io/docs/…`
|
| New-issue links | `github.com/prisma/prisma-next/issues/new` |
`github.com/prisma/orm/issues/new` |
| CLI invocations in prose, fixtures, and recordings | `prisma-next db
verify` | `prisma db verify` |

`prisma-8` is the slug the repo already uses for the skill, the
examples, and the upgrade directories, so it is the slug for everything
that needs one. Environment variables drop the infix entirely because
`PRISMA_*` is what users expect and nothing else in the repo claims
those names.

What keeps the old name, each with a lint allowance that says why:

- **Dated records**: changelog, release notes, ADRs, shipped upgrade
instructions, gotcha logs, the framework-gaps review, and the
`projects/` and `drive/` write-ups.
- **Pinned links** into the old repository by number, Linear slugs, and
links to ADRs whose filenames carry the name.
- **`@cipherstash/prisma-next`**, a third party's published package
name.
- **Retirement proofs**: the list of old skill directories `init`
deletes, and the tests asserting that no `prisma-next` bin or skill
directory is installed any more.

## Behavior changes & evidence

- **Schema header.** The inferred-schema printer and the `init`
templates write `// use prisma-8`. The language server accepts both
headers, so existing schemas keep their diagnostics and completion, and
its Format action rewrites the old header to the new one.
[packages/1-framework/3-tooling/language-server/src/schema-directive.ts](packages/1-framework/3-tooling/language-server/src/schema-directive.ts),
[packages/1-framework/2-authoring/psl-printer/src/ast-to-print-document.ts](packages/1-framework/2-authoring/psl-printer/src/ast-to-print-document.ts).
Evidence: the `renameLegacyDirective` tests, the server test that
formats a legacy-headed schema, and the psl-printer tests.
- **Environment variables.** Telemetry gating, the endpoint override,
and the debug switch read the new names. `PRISMA_NEXT_DISABLE_TELEMETRY`
is still honoured as an opt-out so nobody is silently opted back in; the
endpoint and debug spellings are not.
[packages/1-framework/3-tooling/cli-telemetry/src/gating.ts](packages/1-framework/3-tooling/cli-telemetry/src/gating.ts).
Evidence: cli-telemetry gating tests.
- **Per-user config directory.**
[packages/1-framework/3-tooling/cli-telemetry/src/user-config.ts](packages/1-framework/3-tooling/cli-telemetry/src/user-config.ts).
Existing users see the telemetry consent prompt once more; nothing else
is lost.
- **Primer file.**
[packages/1-framework/3-tooling/cli/src/orm/init-scaffold.ts](packages/1-framework/3-tooling/cli/src/orm/init-scaffold.ts).
Evidence: init-scaffold tests and template snapshots.
- **Advisory-lock domain.** A CLI on this version and one on the
previous version take different locks for the same marker. Both versions
running migrations against one database at the same moment is already
unsupported.
- **Upgrade instructions.** Entries for the header, the environment
variables, and the primer file are recorded in the rc.9 → rc.10 app and
extension instructions with detection patterns, so the published upgrade
skill applies the rename.

## Testing performed

- `pnpm test` in cli (1437), cli-telemetry (112), language-server (312),
psl-printer (63), framework-components (672), target-postgres (1607),
vite-plugin-contract-emit (31), emitter (231), and `pnpm test:scripts`
(507): all pass after `pnpm build`. The language-server tests hard-coded
the old header's length in semantic-token arrays and span offsets; those
expectations are updated.
- Committed migration steps and their content-addressed contract
snapshots are left untouched, since rewriting them would break their
hashes; the lint treats them as dated records.
- `pnpm lint:legacy-name` passes with the tightened allowances; `node
--test scripts/lint-legacy-name.test.mjs` passes (14 tests, including
new negative cases for the header, primer, and skill names).
- `pnpm check:upgrade-coverage --mode pr --prev origin/main` passes.

## Skill update

`skills/prisma-8` references and the two rc.9 → rc.10 upgrade
instruction files are updated in this PR.

## Checklist

- [x] All commits are signed off (`git commit -s`) per the
[DCO](../CONTRIBUTING.md#developer-certificate-of-origin-dco).
- [x] I read [CONTRIBUTING.md](../CONTRIBUTING.md) and the change is
scoped to one logical concern.
- [x] Tests are updated.
- [ ] The PR title is in `TML-NNNN: <sentence-case title>` form. No
Linear ticket exists for this change.
- [x] The **Skill update** section above is filled in.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Signed-off-by: willbot <[email protected]>
Signed-off-by: Will Madden <[email protected]>
Co-authored-by: Claude Fable 5.1 <[email protected]>
RyanGarber pushed a commit to RyanGarber/prisma-orm that referenced this pull request Sep 13, 2026
…#30261)

## Linked issue

n/a — no Linear ticket. Follow-up to prisma#30229 (roadmap removal) and prisma#30248
(Prisma 8 rename).

## At a glance

Docs-only PRs could not enter the merge queue: `Size Limit` is a
required check, and the bundle-size workflow skipped the whole job on an
inert diff, so the check never reported. prisma#30229 needed an admin merge
for exactly this reason. The job now always runs and only its steps
skip.

## Summary

Three leftovers from the roadmap removal in one commit, plus a second
commit that fixes the test-database idle timeout behind today's
`Connection terminated unexpectedly` failures.

### The idle-timeout mismatch

`createDevDatabase` in `@repo/test-utils` started the dev Postgres with
a one-second idle timeout, while the Postgres driver's pool keeps an
idle client for thirty seconds. Any test that pauses more than a second
between queries then gets a dead client back from the pool: `Client has
encountered a connection error and is not queryable`, wrapped as
`SqlConnectionError: Connection terminated unexpectedly`. Coverage
instrumentation makes such pauses routine, which is why the
adapter-postgres native-enum lifecycle suite failed the Coverage job on
five branches today (prisma#30249's queue run, prisma#30241, `prepare-orm`,
`prisma-8-skill-rc9-refresh`, prisma#30262 four times in a row) while passing
every plain shard.

Three suites had already worked around it with a per-call thirty- or
sixty-second override and a comment explaining exactly this. The default
now matches the pool (thirty seconds), the three redundant overrides are
gone, the telemetry harness keeps its sixty, and the returned handle
exposes the setting so the test can assert it.

### The roadmap leftovers

1. **`ROADMAP.html` is deleted.** It was the rendered twin of the
`ROADMAP.md` that prisma#30229 removed and still described the rc.1 plan.
2. **`scripts/lint-legacy-name.mjs` no longer cites the deleted
roadmap.** Two of its temporary allowances pointed at "ROADMAP.md § 3"
as the task that retires them; they now name the pending identifier
rename directly. The file-specific allowance for the roadmap itself is
gone with the files, and so is its test.
3. **The `Size Limit` job always reports.** The inert-diff condition
moves from the job to each step, following the pattern the CI workflow
already uses for its required `Test` summary job.

## Behavior changes & evidence

- **CI:** a docs-only PR now gets a green `Size Limit` check instead of
a skipped one, so auto-merge can enqueue it. Evidence: this PR touches
`.github/` and `scripts/`, so it is non-inert and exercises the real
path; the inert path is exercised by the next docs-only PR.
- **Lint:** `pnpm lint:legacy-name` still passes on main; `node --test
scripts/lint-legacy-name.test.mjs
scripts/lint-workflow-triggers.test.mjs` passes (29 tests).

## Skill update

n/a — no user-facing surface changed.

## Checklist

- [x] All commits are signed off (`git commit -s`) per the
[DCO](../CONTRIBUTING.md#developer-certificate-of-origin-dco).
- [x] I read [CONTRIBUTING.md](../CONTRIBUTING.md) and the change is
scoped to one logical concern.
- [x] Tests are updated (the lint test drops the roadmap allowance case
and asserts the new pointer).
- [ ] The PR title is in `TML-NNNN: <sentence-case title>` form. No
Linear ticket exists for this change.
- [x] The **Skill update** section above is filled in.

🤖 Generated with [Claude Code](https://claude.com/claude-code)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Documentation**
  - Removed the Prisma 8 RC1 roadmap page.

- **Bug Fixes**
- Bundle-size checks now report consistently, including for
documentation-only changes.

- **Development Experience**
- Improved local development database connection handling by keeping
idle connections available for longer, reducing unexpected disconnects
during extended development and testing sessions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: willbot <[email protected]>
Signed-off-by: Will Madden <[email protected]>
Co-authored-by: Claude Fable 5.1 <[email protected]>
RyanGarber pushed a commit to RyanGarber/prisma-orm that referenced this pull request Sep 13, 2026
…prisma#30262)

## Linked issue

n/a — no Linear ticket. Completes the rename that prisma#30248 started for
prose; builds on prisma#30261.

## At a glance

Every `prisma-next` identifier a user can see is renamed. Before and
after, for a scaffolded project:

```text
// use prisma-next          →  // use prisma-8            (schema header)
prisma-next.md              →  prisma-8.md                (primer at the project root)
PRISMA_NEXT_DISABLE_TELEMETRY  →  PRISMA_DISABLE_TELEMETRY  (and every other PRISMA_NEXT_* variable)
~/.config/prisma-next/      →  ~/.config/prisma-8/        (per-user telemetry config)
prisma-next contract emit   →  prisma contract emit       (CLI invocations in docs, fixtures, recordings)
```

## Summary

After prisma#30248 the product was called Prisma 8 in prose, but the working
name was still written into user projects and printed by the CLI: the
schema header, the primer file, the environment variables, the per-user
config directory, the language-server diagnostic source, the Standard
Schema vendor string, the contract brand symbol, the advisory-lock
domain, and about 650 fixture and doc files that spelled out
`prisma-next …` commands. This PR renames all of it in one pass and
tightens the legacy-name lint so the only occurrences left are the ones
with a reason.

## Decision

One commit. The mapping:

| Surface | Before | After |
|---|---|---|
| Schema header | `// use prisma-next` | `// use prisma-8` |
| Primer file `init` writes | `prisma-next.md` | `prisma-8.md` |
| CLI environment variables | `PRISMA_NEXT_*` | `PRISMA_*` |
| Per-user config directory | `prisma-next/` | `prisma-8/` |
| Language-server diagnostic source | `prisma-next` | `prisma` |
| Standard Schema vendor, VS Code publisher | `prisma-next` | `prisma` |
| Contract brand symbol | `__prisma_next_brand__` | `__prisma_8_brand__`
|
| Postgres advisory-lock domain | `prisma_next.contract.marker` |
`prisma_8.contract.marker` |
| Example database names | `prisma_next_*` | `prisma_8_*` |
| README banner image | `images/prisma-next.png` | `images/prisma-8.png`
|
| Telemetry docs URL | `prisma-next.dev/docs/…` | `www.prisma.io/docs/…`
|
| New-issue links | `github.com/prisma/prisma-next/issues/new` |
`github.com/prisma/orm/issues/new` |
| CLI invocations in prose, fixtures, and recordings | `prisma-next db
verify` | `prisma db verify` |

`prisma-8` is the slug the repo already uses for the skill, the
examples, and the upgrade directories, so it is the slug for everything
that needs one. Environment variables drop the infix entirely because
`PRISMA_*` is what users expect and nothing else in the repo claims
those names.

What keeps the old name, each with a lint allowance that says why:

- **Dated records**: changelog, release notes, ADRs, shipped upgrade
instructions, gotcha logs, the framework-gaps review, and the
`projects/` and `drive/` write-ups.
- **Pinned links** into the old repository by number, Linear slugs, and
links to ADRs whose filenames carry the name.
- **`@cipherstash/prisma-next`**, a third party's published package
name.
- **Retirement proofs**: the list of old skill directories `init`
deletes, and the tests asserting that no `prisma-next` bin or skill
directory is installed any more.

## Behavior changes & evidence

- **Schema header.** The inferred-schema printer and the `init`
templates write `// use prisma-8`. The language server accepts both
headers, so existing schemas keep their diagnostics and completion, and
its Format action rewrites the old header to the new one.
[packages/1-framework/3-tooling/language-server/src/schema-directive.ts](packages/1-framework/3-tooling/language-server/src/schema-directive.ts),
[packages/1-framework/2-authoring/psl-printer/src/ast-to-print-document.ts](packages/1-framework/2-authoring/psl-printer/src/ast-to-print-document.ts).
Evidence: the `renameLegacyDirective` tests, the server test that
formats a legacy-headed schema, and the psl-printer tests.
- **Environment variables.** Telemetry gating, the endpoint override,
and the debug switch read the new names. `PRISMA_NEXT_DISABLE_TELEMETRY`
is still honoured as an opt-out so nobody is silently opted back in; the
endpoint and debug spellings are not.
[packages/1-framework/3-tooling/cli-telemetry/src/gating.ts](packages/1-framework/3-tooling/cli-telemetry/src/gating.ts).
Evidence: cli-telemetry gating tests.
- **Per-user config directory.**
[packages/1-framework/3-tooling/cli-telemetry/src/user-config.ts](packages/1-framework/3-tooling/cli-telemetry/src/user-config.ts).
Existing users see the telemetry consent prompt once more; nothing else
is lost.
- **Primer file.**
[packages/1-framework/3-tooling/cli/src/orm/init-scaffold.ts](packages/1-framework/3-tooling/cli/src/orm/init-scaffold.ts).
Evidence: init-scaffold tests and template snapshots.
- **Advisory-lock domain.** A CLI on this version and one on the
previous version take different locks for the same marker. Both versions
running migrations against one database at the same moment is already
unsupported.
- **Upgrade instructions.** Entries for the header, the environment
variables, and the primer file are recorded in the rc.9 → rc.10 app and
extension instructions with detection patterns, so the published upgrade
skill applies the rename.

## Testing performed

- `pnpm test` in cli (1437), cli-telemetry (112), language-server (312),
psl-printer (63), framework-components (672), target-postgres (1607),
vite-plugin-contract-emit (31), emitter (231), and `pnpm test:scripts`
(507): all pass after `pnpm build`. The language-server tests hard-coded
the old header's length in semantic-token arrays and span offsets; those
expectations are updated.
- Committed migration steps and their content-addressed contract
snapshots are left untouched, since rewriting them would break their
hashes; the lint treats them as dated records.
- `pnpm lint:legacy-name` passes with the tightened allowances; `node
--test scripts/lint-legacy-name.test.mjs` passes (14 tests, including
new negative cases for the header, primer, and skill names).
- `pnpm check:upgrade-coverage --mode pr --prev origin/main` passes.

## Skill update

`skills/prisma-8` references and the two rc.9 → rc.10 upgrade
instruction files are updated in this PR.

## Checklist

- [x] All commits are signed off (`git commit -s`) per the
[DCO](../CONTRIBUTING.md#developer-certificate-of-origin-dco).
- [x] I read [CONTRIBUTING.md](../CONTRIBUTING.md) and the change is
scoped to one logical concern.
- [x] Tests are updated.
- [ ] The PR title is in `TML-NNNN: <sentence-case title>` form. No
Linear ticket exists for this change.
- [x] The **Skill update** section above is filled in.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Signed-off-by: willbot <[email protected]>
Signed-off-by: Will Madden <[email protected]>
Co-authored-by: Claude Fable 5.1 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants