CLAUDE.md
internal-packages/database/CLAUDE.mdCLAUDE.md
Quality
65/100
Scores the file, not the repository.Length
290 words
6 headings · 3 code blocksRepository
16k
— · pushed 0 days agoLast changed
3 days ago
First indexed 3 days ago.1# Database Package23Prisma 6.14.0 client and schema for PostgreSQL (`@trigger.dev/database`).45## Schema67Located at `prisma/schema.prisma`. Key models include TaskRun, BackgroundWorker, BackgroundWorkerTask, WorkerDeployment, RuntimeEnvironment, and Project.89### Engine Versions1011```prisma12enum RunEngineVersion {13 V1 // Retired v3 engine - no longer executes; kept for historical rows and rejection14 V2 // Current (run-engine + redis-worker)15}16```1718New code should always target V2.1920## Creating Migrations21221. Edit `prisma/schema.prisma`232. Generate migration:24```bash25 cd internal-packages/database26 pnpm run db:migrate:dev:create --name "descriptive_name"27```283. **Clean up generated migration** - remove extraneous lines for:29 - `_BackgroundWorkerToBackgroundWorkerFile`30 - `_BackgroundWorkerToTaskQueue`31 - `_TaskRunToTaskRunTag`32 - `_WaitpointRunConnections`33 - `_completedWaitpoints`34 - `SecretStore_key_idx`35 - Various `TaskRun` indexes (unless you added them)364. Apply migration:37```bash38 pnpm run db:migrate:deploy && pnpm run generate39```4041## Index Migration Rules4243When adding indexes to **existing tables**:4445- Use `CREATE INDEX CONCURRENTLY IF NOT EXISTS` to avoid table locks in production46- CONCURRENTLY indexes **must be in their own separate migration file** - they cannot be combined with other schema changes (PostgreSQL requirement)47- Only add one index per migration file48- Pre-apply the index manually in production before deploying the migration (Prisma will skip creation if the index already exists)4950Indexes on **newly created tables** (in the same migration as `CREATE TABLE`) do not need CONCURRENTLY and can be in the same migration file.5152When adding an index on a **new column on an existing table**, use two migrations:531. First migration: `ALTER TABLE ... ADD COLUMN IF NOT EXISTS ...` (the column)542. Second migration: `CREATE INDEX CONCURRENTLY IF NOT EXISTS ...` (the index, in its own file)5556See `README.md` in this directory and `ai/references/migrations.md` for the full index workflow.5758## Read Replicas5960Use `$replica` from `~/db.server` for read-heavy queries in the webapp.61
Also in triggerdotdev/trigger.dev
Diff this repo’s formatsOne repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| triggerdotdev/trigger.dev.cursor/rules/executing-commands.mdc · 16k | Cursor rules | test | 49/100 | 3 days ago | |
| triggerdotdev/trigger.dev.cursor/rules/otel-metrics.mdc · 16k | Cursor rules | styledo-not | 61/100 | 3 days ago | |
| triggerdotdev/trigger.dev.cursor/rules/webapp.mdc · 16k | Cursor rules | setuptestsecurity | 55/100 | 3 days ago | |
| triggerdotdev/trigger.dev.cursor/rules/writing-tasks.mdc · 16k | Cursor rules | setupbuildarchtypes+5 | 64/100 | 3 days ago | |
| triggerdotdev/trigger.dev.github/copilot-instructions.md · 16k | Copilot instructions | teststyletypes | 32/100 | 3 days ago | |
| triggerdotdev/trigger.devAGENTS.md · 16k | AGENTS.md | setupbuildtestlint-format+8 | 88/100 | 3 days ago | |
| triggerdotdev/trigger.devapps/supervisor/CLAUDE.md · 16k | CLAUDE.md | no sections | 25/100 | 3 days ago | |
| triggerdotdev/trigger.devapps/webapp/CLAUDE.md · 16k | CLAUDE.md | setupbuildteststyle+5 | 88/100 | 3 days ago | |
| triggerdotdev/trigger.devinternal-packages/clickhouse/CLAUDE.md · 16k | CLAUDE.md | styletypesdo-not | 61/100 | 3 days ago | |
| triggerdotdev/trigger.devinternal-packages/run-engine/CLAUDE.md · 16k | CLAUDE.md | buildteststyle | 70/100 | 3 days ago | |
| triggerdotdev/trigger.devpackages/core/CLAUDE.md · 16k | CLAUDE.md | no sections | 31/100 | 3 days ago | |
| triggerdotdev/trigger.devpackages/redis-worker/CLAUDE.md · 16k | CLAUDE.md | test | 29/100 | 3 days ago | |
| triggerdotdev/trigger.devpackages/trigger-sdk/CLAUDE.md · 16k | CLAUDE.md | do-not | 54/100 | 3 days ago | |
| triggerdotdev/trigger.devpackages/cli-v3/CLAUDE.md · 16k | CLAUDE.md | deploymentdo-notdocs | 51/100 | 3 days ago |
Diff against .cursor/rules/executing-commands.mdc Diff against .cursor/rules/otel-metrics.mdc Diff against .cursor/rules/webapp.mdc Diff against .cursor/rules/writing-tasks.mdc Diff against .github/copilot-instructions.md Diff against AGENTS.md Diff against apps/supervisor/CLAUDE.md Diff against apps/webapp/CLAUDE.md Diff against internal-packages/clickhouse/CLAUDE.md Diff against internal-packages/run-engine/CLAUDE.md Diff against packages/core/CLAUDE.md Diff against packages/redis-worker/CLAUDE.md Diff against packages/trigger-sdk/CLAUDE.md Diff against packages/cli-v3/CLAUDE.md
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| dotCMS/corecore-web/CLAUDE.md · 950 | CLAUDE.md | teststylearchtesting-strategy+3 | 100/100 | 3 days ago | |
| Adit-Jain-srm/NightmareNetCLAUDE.md · 45 | CLAUDE.md | buildtestlint-formatstyle+6 | 100/100 | 3 days ago | |
| microsoft/playwrightCLAUDE.md · 94k | CLAUDE.md | buildtestlint-formatstyle+7 | 100/100 | 3 days ago | |
| nimbalyst/nimbalystpackages/android/CLAUDE.md · 1.4k | CLAUDE.md | setupbuildstylearch+2 | 100/100 | 3 days ago | |
| bagisto/bagistoCLAUDE.md · 28k | CLAUDE.md | setupbuildteststyle+5 | 100/100 | 3 days ago | |
| dotCMS/coreCLAUDE.md · 950 | CLAUDE.md | setupbuildteststyle+7 | 99/100 | 3 days ago | |
| lollipopkit/flutter_server_boxCLAUDE.md · 8.3k | CLAUDE.md | buildteststylearch+2 | 98/100 | 3 days ago | |
| oven-sh/buntest/CLAUDE.md · 95k | CLAUDE.md | teststyletesting-strategydo-not | 97/100 | 3 days ago |
