{"record":{"id":"bac8da290782d59f","repo":"paperclipai/paperclip","slug":"database-for-configpath-is-not-up-to-date-pen","errorCode":null,"errorMessage":"Database for ${configPath} is not up to date.${pending} Run `pnpm db:migrate` (or start Paperclip once) before using worktree merge history.","messagePattern":"Database for (.+?) is not up to date\\.(.+?) Run `pnpm db:migrate` \\(or start Paperclip once\\) before using worktree merge history\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/src/commands/worktree.ts","lineNumber":3093,"sourceCode":"  }\n  const envEntries = readPaperclipEnvEntries(resolvePaperclipEnvFile(configPath));\n  let embeddedHandle: EmbeddedPostgresHandle | null = null;\n\n  try {\n    if (config.database.mode === \"embedded-postgres\") {\n      embeddedHandle = await ensureEmbeddedPostgres(\n        config.database.embeddedPostgresDataDir,\n        config.database.embeddedPostgresPort,\n      );\n    }\n    const connectionString = resolveSourceConnectionString(config, envEntries, embeddedHandle?.port);\n    const migrationState = await inspectMigrations(connectionString);\n    if (migrationState.status !== \"upToDate\") {\n      const pending =\n        migrationState.reason === \"pending-migrations\"\n          ? ` Pending migrations: ${migrationState.pendingMigrations.join(\", \")}.`\n          : \"\";\n      throw new Error(\n        `Database for ${configPath} is not up to date.${pending} Run \\`pnpm db:migrate\\` (or start Paperclip once) before using worktree merge history.`,\n      );\n    }\n    const db = createDb(connectionString) as ClosableDb;\n    return {\n      db,\n      stop: async () => {\n        await closeDb(db);\n        if (embeddedHandle?.startedByThisProcess) {\n          await embeddedHandle.stop();\n        }\n      },\n    };\n  } catch (error) {\n    if (embeddedHandle?.startedByThisProcess) {\n      await embeddedHandle.stop().catch(() => undefined);\n    }\n    throw error;","sourceCodeStart":3075,"sourceCodeEnd":3111,"githubUrl":"https://github.com/paperclipai/paperclip/blob/01ad8584922b5d85292b1723cae71fa0d9b07a19/cli/src/commands/worktree.ts#L3075-L3111","documentation":"Migration-state precondition for worktree merge-history: the database behind the given config has pending migrations, so schema-dependent merge queries could read wrong shapes; the operator must run `pnpm db:migrate` or start Paperclip once first.","triggerScenarios":"Thrown at cli/src/commands/worktree.ts:2278 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Run `pnpm db:migrate` in the instance at ${configPath}.","Start Paperclip once so migrations are applied, then retry."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"01ad8584922b5d85292b1723cae71fa0d9b07a19","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}