Adds `paths:` YAML frontmatter so each rule only loads into Claude Code context when the agent is working on relevant files, keeping context lean in a large monorepo. - architecture-page-level-auth: fires on page.tsx and layout.tsx - data-prisma-migrations: fires on packages/prisma/** - testing-playwright: fires on playwright dirs, *.e2e.ts, and api e2e dirs - api-thin-controllers: fires on *.controller.ts files only Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1.8 KiB
paths, title, impact, impactDescription, tags
| paths | title | impact | impactDescription | tags | |
|---|---|---|---|---|---|
|
Prisma Schema and Migrations | HIGH | Schema changes affect all downstream code and deployments | prisma, database, migrations, schema |
Prisma Schema and Migrations
After Schema Changes
After making changes to the Prisma schema in Cal.diy and creating migrations, you need to run:
yarn prisma generate
This updates the TypeScript types. This is especially important:
- When switching Node.js versions
- After adding new fields to models
- After pulling changes that include Prisma schema updates
Creating Migrations
# Development migration
npx prisma migrate dev --name migration_name
# Production deployment
yarn workspace @calcom/prisma db-deploy
Timestamp Fields
When adding timestamp fields like createdAt and updatedAt:
- Do not set default values if you want existing records to have null values
- Only new records should get timestamps automatically
- For
updatedAtfields, ensure they're updated when records are modified
Squash Migrations
Whenever you change the schema.prisma file, remember to always consolidate migrations by squashing them as declared in the Prisma docs.
This helps maintain a clean migration history and prevents accumulation of multiple migration files.
Enum Generator Errors
If you encounter enum generator errors during the Prisma generate step (like "Cannot find module './enum-generator.ts'"), run yarn install first before trying to generate.
Cache-Related Features
When implementing cache-related features that require timestamp tracking, always update the database schema first before modifying application code that references those fields.