@shepai/cli 1.55.0 → 1.55.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +11 -11
  2. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
  3. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +25 -0
  4. package/dist/tsconfig.build.tsbuildinfo +1 -1
  5. package/package.json +1 -1
  6. package/web/.next/BUILD_ID +1 -1
  7. package/web/.next/build-manifest.json +2 -2
  8. package/web/.next/cache/.previewinfo +1 -1
  9. package/web/.next/cache/.rscinfo +1 -1
  10. package/web/.next/cache/config.json +3 -3
  11. package/web/.next/fallback-build-manifest.json +2 -2
  12. package/web/.next/prerender-manifest.json +3 -3
  13. package/web/.next/required-server-files.js +1 -1
  14. package/web/.next/required-server-files.json +1 -1
  15. package/web/.next/server/app/_global-error.html +2 -2
  16. package/web/.next/server/app/_global-error.rsc +1 -1
  17. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  18. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  20. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  21. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  22. package/web/.next/server/app/page/server-reference-manifest.json +14 -14
  23. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  24. package/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js +2 -2
  25. package/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js.map +1 -1
  26. package/web/.next/server/chunks/ssr/[root-of-the-server]__2d1a8e37._.js +2 -2
  27. package/web/.next/server/chunks/ssr/[root-of-the-server]__6e8b5181._.js +1 -1
  28. package/web/.next/server/pages/500.html +2 -2
  29. package/web/.next/server/server-reference-manifest.js +1 -1
  30. package/web/.next/server/server-reference-manifest.json +15 -15
  31. package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
  32. package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +2 -2
  33. package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
  34. package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
  35. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
  36. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
  37. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  38. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  39. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  40. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  41. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  42. package/web/.next/standalone/src/presentation/web/.next/server/app/page/server-reference-manifest.json +14 -14
  43. package/web/.next/standalone/src/presentation/web/.next/server/app/page_client-reference-manifest.js +1 -1
  44. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js +2 -2
  45. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__2d1a8e37._.js +2 -2
  46. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6e8b5181._.js +1 -1
  47. package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
  48. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
  49. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +15 -15
  50. package/web/.next/standalone/src/presentation/web/server.js +1 -1
  51. package/web/.next/static/chunks/{3eaa6f2966e27b8f.js → bf551f1aa44c2133.js} +2 -2
  52. package/web/.next/trace +1 -1
  53. package/web/.next/trace-build +1 -1
  54. /package/web/.next/static/{JmDtIt3S6EfLuRKwlzJrW → YfN7Hg9rumm97Ou6lHF9d}/_buildManifest.js +0 -0
  55. /package/web/.next/static/{JmDtIt3S6EfLuRKwlzJrW → YfN7Hg9rumm97Ou6lHF9d}/_clientMiddlewareManifest.json +0 -0
  56. /package/web/.next/static/{JmDtIt3S6EfLuRKwlzJrW → YfN7Hg9rumm97Ou6lHF9d}/_ssgManifest.js +0 -0
@@ -80,9 +80,9 @@ export function fromDatabase(row) {
80
80
  relatedArtifacts: JSON.parse(row.related_artifacts),
81
81
  createdAt: new Date(row.created_at),
82
82
  updatedAt: new Date(row.updated_at),
83
- ...(row.plan !== null && { plan: JSON.parse(row.plan) }),
84
- ...(row.agent_run_id !== null && { agentRunId: row.agent_run_id }),
85
- ...(row.spec_path !== null && { specPath: row.spec_path }),
83
+ ...(row.plan != null && { plan: JSON.parse(row.plan) }),
84
+ ...(row.agent_run_id != null && { agentRunId: row.agent_run_id }),
85
+ ...(row.spec_path != null && { specPath: row.spec_path }),
86
86
  // Assemble workflow flags from flat columns
87
87
  push: row.push === 1,
88
88
  openPr: row.open_pr === 1,
@@ -91,22 +91,22 @@ export function fromDatabase(row) {
91
91
  allowPlan: row.allow_plan === 1,
92
92
  allowMerge: row.allow_merge === 1,
93
93
  },
94
- ...(row.worktree_path !== null && { worktreePath: row.worktree_path }),
94
+ ...(row.worktree_path != null && { worktreePath: row.worktree_path }),
95
95
  // Repository reference
96
- ...(row.repository_id !== null && { repositoryId: row.repository_id }),
96
+ ...(row.repository_id != null && { repositoryId: row.repository_id }),
97
97
  // Assemble pr from flat columns (only when pr_url exists)
98
- ...(row.pr_url !== null && {
98
+ ...(row.pr_url != null && {
99
99
  pr: {
100
100
  url: row.pr_url,
101
101
  number: row.pr_number,
102
102
  status: row.pr_status,
103
- ...(row.commit_hash !== null && { commitHash: row.commit_hash }),
104
- ...(row.ci_status !== null && { ciStatus: row.ci_status }),
105
- ...(row.ci_fix_attempts !== null && { ciFixAttempts: row.ci_fix_attempts }),
106
- ...(row.ci_fix_history !== null && { ciFixHistory: JSON.parse(row.ci_fix_history) }),
103
+ ...(row.commit_hash != null && { commitHash: row.commit_hash }),
104
+ ...(row.ci_status != null && { ciStatus: row.ci_status }),
105
+ ...(row.ci_fix_attempts != null && { ciFixAttempts: row.ci_fix_attempts }),
106
+ ...(row.ci_fix_history != null && { ciFixHistory: JSON.parse(row.ci_fix_history) }),
107
107
  },
108
108
  }),
109
109
  // Feature dependency
110
- ...(row.parent_id !== null && { parentId: row.parent_id }),
110
+ ...(row.parent_id != null && { parentId: row.parent_id }),
111
111
  };
112
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAmU3C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAA4C,CAAC;AAE/E;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B9E"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AA4V3C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAA4C,CAAC;AAE/E;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B9E"}
@@ -309,6 +309,14 @@ ALTER TABLE features ADD COLUMN ci_fix_history TEXT;
309
309
  sql: '',
310
310
  handler: (db) => {
311
311
  const columns = db.pragma('table_info(features)');
312
+ // Backfill ci_fix columns for users whose old migration 19 added parent_id
313
+ // instead of ci_fix_attempts/ci_fix_history (pre-rebase ordering).
314
+ if (!columns.some((c) => c.name === 'ci_fix_attempts')) {
315
+ db.exec('ALTER TABLE features ADD COLUMN ci_fix_attempts INTEGER');
316
+ }
317
+ if (!columns.some((c) => c.name === 'ci_fix_history')) {
318
+ db.exec('ALTER TABLE features ADD COLUMN ci_fix_history TEXT');
319
+ }
312
320
  if (!columns.some((c) => c.name === 'parent_id')) {
313
321
  db.exec('ALTER TABLE features ADD COLUMN parent_id TEXT');
314
322
  }
@@ -316,6 +324,23 @@ ALTER TABLE features ADD COLUMN ci_fix_history TEXT;
316
324
  db.exec('CREATE INDEX IF NOT EXISTS idx_features_parent_id ON features(parent_id)');
317
325
  },
318
326
  },
327
+ {
328
+ version: 21,
329
+ // Migration 021: Backfill columns that may be missing due to migration 19 rebase reordering.
330
+ // If the old migration 19 (parent_id) ran before the rebase, ci_fix_attempts/ci_fix_history
331
+ // were never added. Migration 20's handler now covers fresh installs; this covers
332
+ // databases that already ran migration 20 with the old handler.
333
+ sql: '',
334
+ handler: (db) => {
335
+ const columns = db.pragma('table_info(features)');
336
+ if (!columns.some((c) => c.name === 'ci_fix_attempts')) {
337
+ db.exec('ALTER TABLE features ADD COLUMN ci_fix_attempts INTEGER');
338
+ }
339
+ if (!columns.some((c) => c.name === 'ci_fix_history')) {
340
+ db.exec('ALTER TABLE features ADD COLUMN ci_fix_history TEXT');
341
+ }
342
+ },
343
+ },
319
344
  ];
320
345
  /**
321
346
  * The latest schema version (highest migration version number).