Back to Prisma

Walkthrough

projects/prisma7-compatibility-cli/slices/cli-owned-distribution-identity/walkthrough.md

7.10.0-integration-fix-prisma-publish-token.111.0 KB
Original Source

Sources

Intent

Complete the CLI-owned prisma7 identity slice by making identity selection explicit at CLI composition boundaries and proving the shipped behavior from packed artifacts. Product behavior stays within the CLI-owned identity seam, with only the workspace alias resolver adapted to bundle the new package entrypoints; stable Prisma domain names remain unchanged, and lower-package identity work is still follow-up scope.

Change map

The story

  1. Keep identity inference at the true executable boundary: bin.ts and the separate completion entrypoint decide between prisma and prisma7, and everything downstream receives that value explicitly.
  2. Move every CLI-owned user-facing surface onto the selected executable without renaming stable Prisma domain surfaces such as prisma/schema.prisma, prisma.config.ts, or @prisma/client.
  3. Replace slice-local mock evidence with one packed installed-artifact scenario whose command-local inline snapshots stay beside the invocation, while completion branding uses concise assertions instead of snapshotting the generated script.

Behavior changes & evidence

Compatibility / migration / risk

  • Ordinary prisma behavior is preserved, but call sites and existing tests now pass 'prisma' explicitly instead of relying on constructor defaults.
  • Stable Prisma domain surfaces remain unchanged, including prisma/schema.prisma, prisma.config.ts, @prisma/client, docs URLs, and protocol names.
  • Inline-snapshot normalization is intentionally narrow: it replaces cwd/temp/bin paths and projects --version output down to stable identity-bearing fields and metadata key/label sets.
  • The packed proof is limited to command-visible behavior; it does not claim direct executable-boundary observation of checkpoint suppression or mismatch lookup internals.

Follow-ups / open questions

  • Propagate the selected executable through lower-package migrate, internals, and generator-owned guidance in downstream-actionable-guidance.
  • Handle release mirroring and publication workflow in the later release slice.

Non-goals / intentionally out of scope

  • No lower-package identity propagation in this slice.
  • No generic branding framework or backwards-compat identity shim.
  • No release automation, publish ordering, or package-publication work.