Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions docs/reference/error-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Namespaces:
| `BRANCH` | Branch listing (`prisma branch`) |
| `BUCKET` | Bucket and bucket-key management (`prisma bucket`) |
| `CLI` | Engine-level invocation: arguments, config loading, prompts, consent, credentials, child processes |
| `CONFIG` | The `composer` section of `prisma.config.ts` and its `config` and `secrets` adapters (`prisma dev`, `prisma deploy`) |
| `DEPLOY` | Deploying, listing and destroying a Composer app (`prisma deploy`, `prisma deploy list`, and the `deploy` and `destroy` operations of `@prisma/composer/control`) |
| `DEV` | Running an app on this machine with Composer (`prisma dev`, `prisma dev url`, `prisma dev stop`, `prisma emulator list`) |
| `FEEDBACK` | Sending product feedback (`prisma feedback`) |
Expand Down Expand Up @@ -247,6 +248,62 @@ The `prisma telemetry status|enable|disable` commands could not resolve the user

The typed path routed to no command (stricli's route failure, mapped at the adapter boundary) and no redirect claims it; next actions carry up to three "did you mean" suggestions ranked by edit distance over command paths and their prefixes, plus a pointer to `--help`. Exits 2. Meta: none.

## CONFIG

These codes come from Composer, the command family behind `prisma dev` and `prisma deploy`. They report a problem with the `composer` section of `prisma.config.ts`, or with what its `config` and `secrets` adapters return, and are raised before Composer starts the app.

### CONFIG.ADAPTER_FAILED

An adapter in `composer.config` or `composer.secrets` threw while reading the values for the environment. `why` carries the adapter's own error message, and `where.path` is the `prisma.config.ts` that lists it. The fix is to fix the adapter, or to remove it from the list. Meta: `field` (the list and index, such as `secrets[0]`).

### CONFIG.ADAPTER_INVALID

An adapter in `composer.config` or `composer.secrets` returned something other than an object of values: a function (usually an adapter factory listed without calling it, such as `dotenv` instead of `dotenv()`), a non-object, or, in `secrets`, a value that is not text. The fix is to return an object whose keys are the value names and, for secrets, whose values are strings. `where.path` is the `prisma.config.ts` that lists the adapter. Meta: `field` (the list and index, such as `config[1]`).

### CONFIG.DESCRIPTOR_KIND_MISMATCH

A configured extension has a descriptor for a node type the app uses, but it is the wrong kind of descriptor for the step that needs it. The message names the step that needs the descriptor and the kind it needs. Meta: `extension`, `type`, `kind` (the kind the descriptor has).

### CONFIG.DESCRIPTOR_MISSING

A configured extension has no descriptor for a node type the app uses. `why` lists the node types the extension does know. Meta: `extension`, `type`.

### CONFIG.ENTRY_MISSING

No entry module is set, so there is no app to load. The entry is the module whose default export is the app root, built with `module(...)`. The fix is to set `entry: './module.ts'` in the `composer` section of `prisma.config.ts`, or to pass `--entry <path>`. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.EXTENSION_DUPLICATE

The same extension is listed more than once in `composer.extensions`. The fix is to remove the repeated entry. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.EXTENSION_MISSING

The app uses a node from an extension that is not listed in `composer.extensions`. The fix is to import the extension's `/control` entry in `prisma.config.ts` and add its descriptor to `extensions`. Meta: `extension`, `type`.

### CONFIG.FIELD_INVALID

A field of the `composer` section has the wrong shape, for example an `entry` that is not a non-empty string, a `state` that is not a state descriptor, or an extension entry whose `nodes` is not an object. The summary names the field and the shape it must have. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.FIELD_RETIRED

The `composer` section uses a field Composer no longer reads, such as `configPath`, which pointed at the retired `prisma-composer.config.ts`. The fix is to move what that field pointed at into the `composer` section itself. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.FIELD_UNKNOWN

The `composer` section has a field Composer does not know. The section takes only `entry`, `extensions`, `state`, `config` and `secrets`. The fix is to remove the field, or, when the field is `composer`, to pass the `composer` property of the config export rather than the whole export. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.FILE_MISSING

The config file Composer was given does not exist. The fix is to pass the path of the `prisma.config.ts` that declares the `composer` section. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.FILE_RETIRED

A `prisma-composer.config.*` file sits beside `prisma.config.ts`. Composer no longer reads that file, so its settings would be ignored without notice. The fix is to move its settings into the `composer` section of `prisma.config.ts` and delete the file. Meta: `field` (the field at fault, when there is one), `findings` (every problem the check found; the envelope reports the first).

### CONFIG.SECRET_AS_PLAIN_VALUE

A plain value would hold the value of a secret that an `envSecret()` in the app reads: either a field of the root input or a configuration key. Composer writes every plain value it read to a file for the app's process and never writes a secret to a file, so it refuses. The message names where the value is and which secret, never the value. The fix is to read the secret with `envSecret('<NAME>')` where it is used, or to give the plain value text that does not contain the secret. Meta: none.

## DEPLOY

These codes come from Composer, the command family behind `prisma deploy`, `prisma deploy list`, and the `deploy` and `destroy` operations of `@prisma/composer/control`. The deploy and destroy operations share a pipeline that loads the config and app, assembles each service, connects to the deploy target, runs each extension's preflight (on the Prisma Cloud target, the environment-variable check), and hands the generated stack program to the deploy engine (alchemy).
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "prisma-cli",
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"private": true,
"engines": {
"node": "^24.11.0 || >=26.0.0"
Expand Down
4 changes: 2 additions & 2 deletions packages/cli-conformance/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@repo/cli-conformance",
"private": true,
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"description": "Reusable conformance checks for the engine's consumers: import purity over built output, config-section validators that never throw, and verification of the tarballs a registry would receive. Depends on no package it checks.",
"type": "module",
"exports": {
Expand All @@ -24,7 +24,7 @@
"test": "pnpm run typecheck && vitest run"
},
"devDependencies": {
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"es-module-lexer": "^2.1.0",
"tsx": "^4.22.4",
Expand Down
4 changes: 2 additions & 2 deletions packages/cli-engine/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@
},
"devDependencies": {
"@prisma/management-api-sdk": "1.80.0",
"@repo/cli-conformance": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/cli-conformance": "workspace:8.0.0-rc.31",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"ci-info": "^4.3.1",
"tsdown": "^0.21.10",
Expand Down
4 changes: 2 additions & 2 deletions packages/cli-telemetry/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@repo/cli-telemetry",
"private": true,
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"description": "CLI telemetry child sender: the detached subprocess the engine hands a composed payload to, its system probes, and the POST",
"type": "module",
"sideEffects": [
Expand Down Expand Up @@ -35,7 +35,7 @@
"@vercel/detect-agent": "^1.2.3"
},
"devDependencies": {
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"tsdown": "^0.21.10",
"typescript": "^6.0.3",
Expand Down
8 changes: 4 additions & 4 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@prisma/cli",
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"description": "Command-line interface for the Prisma Developer Platform.",
"type": "module",
"bin": {
Expand Down Expand Up @@ -64,9 +64,9 @@
"devDependencies": {
"@prisma/composer": "0.37.0",
"@prisma/credentials-store": "^7.8.0",
"@repo/cli-conformance": "workspace:8.0.0-rc.30",
"@repo/cli-telemetry": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/cli-conformance": "workspace:8.0.0-rc.31",
"@repo/cli-telemetry": "workspace:8.0.0-rc.31",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"@types/cross-spawn": "^6.0.6",
"tsdown": "^0.21.10",
Expand Down
2 changes: 1 addition & 1 deletion packages/compute/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
"test": "vitest run"
},
"devDependencies": {
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"tsdown": "^0.21.10",
"typescript": "^6.0.3",
Expand Down
8 changes: 4 additions & 4 deletions packages/prisma/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "prisma",
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"description": "The Prisma CLI: one binary for the ORM, Composer, and the Prisma Developer Platform.",
"type": "module",
"bin": {
Expand Down Expand Up @@ -63,10 +63,10 @@
"open": "^11.0.0"
},
"devDependencies": {
"@prisma/cli": "workspace:8.0.0-rc.30",
"@prisma/cli": "workspace:8.0.0-rc.31",
"@prisma/credentials-store": "^7.8.0",
"@repo/cli-telemetry": "workspace:8.0.0-rc.30",
"@repo/tsconfig": "workspace:8.0.0-rc.30",
"@repo/cli-telemetry": "workspace:8.0.0-rc.31",
"@repo/tsconfig": "workspace:8.0.0-rc.31",
"@types/node": "^22.19.19",
"tsdown": "^0.21.10",
"typescript": "^6.0.3",
Expand Down
2 changes: 1 addition & 1 deletion packages/tsconfig/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@repo/tsconfig",
"private": true,
"version": "8.0.0-rc.30",
"version": "8.0.0-rc.31",
"description": "Base tsconfig providing package for the monorepo",
"license": "Apache-2.0",
"files": [
Expand Down
30 changes: 17 additions & 13 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion skills/prisma-platform-core-concepts/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: prisma-platform-core-concepts
metadata:
library: "prisma"
library_version: "8.0.0-rc.30"
library_version: "8.0.0-rc.31"
version: 2026.9.2
description: >-
Use when hosting, deploying, or operating an app on the Prisma Platform:
Expand Down
Loading