Skip to content

Prisma 8: documented MutationUpdateInput is missing from the public orm-client exports #30609

Open

Description

@inhanbyeol94

Package and version

@prisma/orm-postgres@8.0.0-rc.14; @prisma/orm-family-sql@8.0.0-rc.14; prisma CLI@8.0.0-rc.20

What happened?

The documented type MutationUpdateInput cannot be imported from @prisma/orm-postgres/orm-client:

error TS2305: Module '"@prisma/orm-postgres/orm-client"' has no exported member 'MutationUpdateInput'.

CreateInput resolves through the same entrypoint. This prevents application code, such as repository methods, from naming the ORM update input using the documented public API.

I checked the respective npm latest releases and reran prisma contract emit successfully in the original project; the error persists. The reduced reproduction below does not require a generated contract or a database.

What did you expect to happen?

The documented import should work, or the documentation should identify the supported alternative if this type is intentionally private.

The official query guidance explicitly says that MutationUpdateInput<Contract, 'User'> comes from @prisma/orm-postgres/orm-client.

ADR 250 also describes this type as already exported by the ORM client.

Minimal reproduction

Create these files in an empty directory.

package.json:

{
  "private": true,
  "type": "commonjs",
  "dependencies": { "@prisma/orm-postgres": "8.0.0-rc.14" },
  "devDependencies": { "typescript": "6.0.3" }
}

repro.ts:

import type { CreateInput, MutationUpdateInput } from '@prisma/orm-postgres/orm-client';
export type { CreateInput, MutationUpdateInput };

tsconfig.json:

{
  "compilerOptions": {
    "target": "ES2023",
    "module": "NodeNext",
    "moduleResolution": "NodeNext",
    "noEmit": true,
    "skipLibCheck": true,
    "strict": true
  },
  "files": ["repro.ts"]
}

Run:

pnpm install
pnpm exec tsc -p tsconfig.json

Expected: both documented imports resolve.

Actual: TS2305 for MutationUpdateInput; CreateInput resolves.

The isolated two-import file and compiler configuration above were verified against the installed RC.14 dependencies in my existing project.

Environment

  • Node.js: 24.19.0
  • TypeScript: 6.0.3
  • pnpm: 10.33.0
  • OS: macOS 26.6.2
  • Database: not required; this is a compile-time import failure.

Additional context

The apparent break is in the re-export chain:

  1. @prisma/orm-postgres/orm-client re-exports @prisma/orm-family-sql/orm-client.
  2. The SQL ORM internal types file defines export type MutationUpdateInput, and update() uses it.
  3. The public exports/index.ts lists CreateInput but omits MutationUpdateInput. The installed bundled declarations show the same omission.

A possible fix is to re-export MutationUpdateInput from the public entrypoint and add a type test importing it through @prisma/orm-postgres/orm-client.

This report is specifically about the missing public export. It is separate from #30404 and its proposed fixes (#30407 / #30409), which concern whether mutation fields use codec input or output types.

Activity

  1. added
    bug/1-unconfirmedBug should have enough information for reproduction, but confirmation has not happened yet.
    on Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug/1-unconfirmedBug should have enough information for reproduction, but confirmation has not happened yet.kind/bugA reported bug.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions