sqlew 3.5.3 → 3.6.0

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 (227) hide show
  1. package/CHANGELOG.md +247 -1772
  2. package/README.md +70 -304
  3. package/assets/config.example.toml +97 -0
  4. package/dist/adapters/index.d.ts +11 -0
  5. package/dist/adapters/index.d.ts.map +1 -0
  6. package/dist/adapters/index.js +21 -0
  7. package/dist/adapters/index.js.map +1 -0
  8. package/dist/adapters/mysql-adapter.d.ts +31 -0
  9. package/dist/adapters/mysql-adapter.d.ts.map +1 -0
  10. package/dist/adapters/mysql-adapter.js +63 -0
  11. package/dist/adapters/mysql-adapter.js.map +1 -0
  12. package/dist/adapters/postgresql-adapter.d.ts +31 -0
  13. package/dist/adapters/postgresql-adapter.d.ts.map +1 -0
  14. package/dist/adapters/postgresql-adapter.js +63 -0
  15. package/dist/adapters/postgresql-adapter.js.map +1 -0
  16. package/dist/adapters/sqlite-adapter.d.ts +37 -0
  17. package/dist/adapters/sqlite-adapter.d.ts.map +1 -0
  18. package/dist/adapters/sqlite-adapter.js +129 -0
  19. package/dist/adapters/sqlite-adapter.js.map +1 -0
  20. package/dist/adapters/types.d.ts +33 -0
  21. package/dist/adapters/types.d.ts.map +1 -0
  22. package/dist/adapters/types.js +2 -0
  23. package/dist/adapters/types.js.map +1 -0
  24. package/dist/cli.js +55 -54
  25. package/dist/cli.js.map +1 -1
  26. package/dist/config/example-generator.d.ts +11 -0
  27. package/dist/config/example-generator.d.ts.map +1 -0
  28. package/dist/config/example-generator.js +48 -0
  29. package/dist/config/example-generator.js.map +1 -0
  30. package/dist/config/loader.d.ts.map +1 -1
  31. package/dist/config/loader.js +4 -0
  32. package/dist/config/loader.js.map +1 -1
  33. package/dist/config/types.d.ts +9 -0
  34. package/dist/config/types.d.ts.map +1 -1
  35. package/dist/config/types.js.map +1 -1
  36. package/dist/database.d.ts +44 -122
  37. package/dist/database.d.ts.map +1 -1
  38. package/dist/database.js +145 -416
  39. package/dist/database.js.map +1 -1
  40. package/dist/index.js +215 -185
  41. package/dist/index.js.map +1 -1
  42. package/dist/knexfile.d.ts +6 -0
  43. package/dist/knexfile.d.ts.map +1 -0
  44. package/dist/knexfile.js +85 -0
  45. package/dist/knexfile.js.map +1 -0
  46. package/dist/migrations/add-help-system-tables.d.ts +35 -0
  47. package/dist/migrations/add-help-system-tables.d.ts.map +1 -0
  48. package/dist/migrations/add-help-system-tables.js +206 -0
  49. package/dist/migrations/add-help-system-tables.js.map +1 -0
  50. package/dist/migrations/add-token-tracking.d.ts +28 -0
  51. package/dist/migrations/add-token-tracking.d.ts.map +1 -0
  52. package/dist/migrations/add-token-tracking.js +108 -0
  53. package/dist/migrations/add-token-tracking.js.map +1 -0
  54. package/dist/migrations/index.d.ts +25 -12
  55. package/dist/migrations/index.d.ts.map +1 -1
  56. package/dist/migrations/index.js +147 -20
  57. package/dist/migrations/index.js.map +1 -1
  58. package/dist/migrations/knex/20251025020452_create_master_tables.d.ts +4 -0
  59. package/dist/migrations/knex/20251025020452_create_master_tables.d.ts.map +1 -0
  60. package/dist/migrations/knex/20251025020452_create_master_tables.js +65 -0
  61. package/dist/migrations/knex/20251025020452_create_master_tables.js.map +1 -0
  62. package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts +4 -0
  63. package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts.map +1 -0
  64. package/dist/migrations/knex/20251025021152_create_transaction_tables.js +235 -0
  65. package/dist/migrations/knex/20251025021152_create_transaction_tables.js.map +1 -0
  66. package/dist/migrations/knex/20251025021351_create_indexes.d.ts +4 -0
  67. package/dist/migrations/knex/20251025021351_create_indexes.d.ts.map +1 -0
  68. package/dist/migrations/knex/20251025021351_create_indexes.js +62 -0
  69. package/dist/migrations/knex/20251025021351_create_indexes.js.map +1 -0
  70. package/dist/migrations/knex/20251025021416_seed_master_data.d.ts +4 -0
  71. package/dist/migrations/knex/20251025021416_seed_master_data.d.ts.map +1 -0
  72. package/dist/migrations/knex/20251025021416_seed_master_data.js +58 -0
  73. package/dist/migrations/knex/20251025021416_seed_master_data.js.map +1 -0
  74. package/dist/migrations/knex/20251025070349_create_views.d.ts +4 -0
  75. package/dist/migrations/knex/20251025070349_create_views.d.ts.map +1 -0
  76. package/dist/migrations/knex/20251025070349_create_views.js +143 -0
  77. package/dist/migrations/knex/20251025070349_create_views.js.map +1 -0
  78. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts +4 -0
  79. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
  80. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js +15 -0
  81. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
  82. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts +8 -0
  83. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
  84. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js +12 -0
  85. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js.map +1 -0
  86. package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts +19 -0
  87. package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts.map +1 -0
  88. package/dist/migrations/knex/20251025090000_create_help_system_tables.js +115 -0
  89. package/dist/migrations/knex/20251025090000_create_help_system_tables.js.map +1 -0
  90. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts +13 -0
  91. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
  92. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js +377 -0
  93. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
  94. package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts +15 -0
  95. package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts.map +1 -0
  96. package/dist/migrations/knex/20251025100000_seed_help_metadata.js +253 -0
  97. package/dist/migrations/knex/20251025100000_seed_help_metadata.js.map +1 -0
  98. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts +16 -0
  99. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
  100. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js +276 -0
  101. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js.map +1 -0
  102. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts +8 -0
  103. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
  104. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js +64 -0
  105. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
  106. package/dist/migrations/seed-help-data.d.ts +48 -0
  107. package/dist/migrations/seed-help-data.d.ts.map +1 -0
  108. package/dist/migrations/seed-help-data.js +1466 -0
  109. package/dist/migrations/seed-help-data.js.map +1 -0
  110. package/dist/migrations/seed-tool-metadata.d.ts +24 -0
  111. package/dist/migrations/seed-tool-metadata.d.ts.map +1 -0
  112. package/dist/migrations/seed-tool-metadata.js +392 -0
  113. package/dist/migrations/seed-tool-metadata.js.map +1 -0
  114. package/dist/migrations/v3.6.0-help-system-refactor.d.ts +46 -0
  115. package/dist/migrations/v3.6.0-help-system-refactor.d.ts.map +1 -0
  116. package/dist/migrations/v3.6.0-help-system-refactor.js +223 -0
  117. package/dist/migrations/v3.6.0-help-system-refactor.js.map +1 -0
  118. package/dist/schema.d.ts.map +1 -1
  119. package/dist/schema.js +2 -0
  120. package/dist/schema.js.map +1 -1
  121. package/dist/tests/git-aware-completion.test.js +89 -70
  122. package/dist/tests/git-aware-completion.test.js.map +1 -1
  123. package/dist/tests/help-system.test.d.ts +23 -0
  124. package/dist/tests/help-system.test.d.ts.map +1 -0
  125. package/dist/tests/help-system.test.js +374 -0
  126. package/dist/tests/help-system.test.js.map +1 -0
  127. package/dist/tests/tasks.auto-pruning-decision-link.test.js +92 -78
  128. package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -1
  129. package/dist/tests/tasks.auto-pruning-partial.test.js +106 -95
  130. package/dist/tests/tasks.auto-pruning-partial.test.js.map +1 -1
  131. package/dist/tests/tasks.auto-pruning-persistence.test.js +115 -97
  132. package/dist/tests/tasks.auto-pruning-persistence.test.js.map +1 -1
  133. package/dist/tests/tasks.auto-pruning-safety.test.js +124 -103
  134. package/dist/tests/tasks.auto-pruning-safety.test.js.map +1 -1
  135. package/dist/tests/tasks.dependencies.test.js +338 -307
  136. package/dist/tests/tasks.dependencies.test.js.map +1 -1
  137. package/dist/tests/tasks.link-file-backward-compat.test.js +116 -104
  138. package/dist/tests/tasks.link-file-backward-compat.test.js.map +1 -1
  139. package/dist/tests/tasks.watch-files-action.test.js +122 -101
  140. package/dist/tests/tasks.watch-files-action.test.js.map +1 -1
  141. package/dist/tests/tasks.watch-files-parameter.test.js +105 -94
  142. package/dist/tests/tasks.watch-files-parameter.test.js.map +1 -1
  143. package/dist/tests/two-step-git-completion.test.js +176 -133
  144. package/dist/tests/two-step-git-completion.test.js.map +1 -1
  145. package/dist/tests/vcs-staging.test.js +1 -1
  146. package/dist/tests/vcs-staging.test.js.map +1 -1
  147. package/dist/tools/config.d.ts +9 -6
  148. package/dist/tools/config.d.ts.map +1 -1
  149. package/dist/tools/config.js +16 -14
  150. package/dist/tools/config.js.map +1 -1
  151. package/dist/tools/constraints.d.ts +10 -7
  152. package/dist/tools/constraints.d.ts.map +1 -1
  153. package/dist/tools/constraints.js +66 -48
  154. package/dist/tools/constraints.js.map +1 -1
  155. package/dist/tools/context.d.ts +36 -33
  156. package/dist/tools/context.d.ts.map +1 -1
  157. package/dist/tools/context.js +374 -330
  158. package/dist/tools/context.js.map +1 -1
  159. package/dist/tools/files.d.ts +12 -9
  160. package/dist/tools/files.d.ts.map +1 -1
  161. package/dist/tools/files.js +173 -95
  162. package/dist/tools/files.js.map +1 -1
  163. package/dist/tools/help-queries.d.ts +130 -0
  164. package/dist/tools/help-queries.d.ts.map +1 -0
  165. package/dist/tools/help-queries.js +393 -0
  166. package/dist/tools/help-queries.js.map +1 -0
  167. package/dist/tools/messaging.d.ts +14 -11
  168. package/dist/tools/messaging.d.ts.map +1 -1
  169. package/dist/tools/messaging.js +217 -133
  170. package/dist/tools/messaging.js.map +1 -1
  171. package/dist/tools/tasks.d.ts +18 -16
  172. package/dist/tools/tasks.d.ts.map +1 -1
  173. package/dist/tools/tasks.js +513 -439
  174. package/dist/tools/tasks.js.map +1 -1
  175. package/dist/tools/utils.d.ts +14 -11
  176. package/dist/tools/utils.d.ts.map +1 -1
  177. package/dist/tools/utils.js +86 -121
  178. package/dist/tools/utils.js.map +1 -1
  179. package/dist/utils/activity-logging.d.ts +114 -0
  180. package/dist/utils/activity-logging.d.ts.map +1 -0
  181. package/dist/utils/activity-logging.js +162 -0
  182. package/dist/utils/activity-logging.js.map +1 -0
  183. package/dist/utils/batch.d.ts +2 -2
  184. package/dist/utils/batch.d.ts.map +1 -1
  185. package/dist/utils/batch.js +8 -8
  186. package/dist/utils/batch.js.map +1 -1
  187. package/dist/utils/cleanup.d.ts +21 -13
  188. package/dist/utils/cleanup.d.ts.map +1 -1
  189. package/dist/utils/cleanup.js +31 -24
  190. package/dist/utils/cleanup.js.map +1 -1
  191. package/dist/utils/debug-logger.d.ts +44 -0
  192. package/dist/utils/debug-logger.d.ts.map +1 -0
  193. package/dist/utils/debug-logger.js +116 -0
  194. package/dist/utils/debug-logger.js.map +1 -0
  195. package/dist/utils/help-tracking.d.ts +55 -0
  196. package/dist/utils/help-tracking.d.ts.map +1 -0
  197. package/dist/utils/help-tracking.js +88 -0
  198. package/dist/utils/help-tracking.js.map +1 -0
  199. package/dist/utils/retention.d.ts +7 -7
  200. package/dist/utils/retention.d.ts.map +1 -1
  201. package/dist/utils/retention.js +12 -12
  202. package/dist/utils/retention.js.map +1 -1
  203. package/dist/utils/task-stale-detection.d.ts +15 -13
  204. package/dist/utils/task-stale-detection.d.ts.map +1 -1
  205. package/dist/utils/task-stale-detection.js +100 -302
  206. package/dist/utils/task-stale-detection.js.map +1 -1
  207. package/dist/utils/token-estimation.d.ts +72 -0
  208. package/dist/utils/token-estimation.d.ts.map +1 -0
  209. package/dist/utils/token-estimation.js +71 -0
  210. package/dist/utils/token-estimation.js.map +1 -0
  211. package/dist/utils/token-logging.d.ts +48 -0
  212. package/dist/utils/token-logging.d.ts.map +1 -0
  213. package/dist/utils/token-logging.js +112 -0
  214. package/dist/utils/token-logging.js.map +1 -0
  215. package/dist/utils/view-queries.d.ts +34 -0
  216. package/dist/utils/view-queries.d.ts.map +1 -0
  217. package/dist/utils/view-queries.js +192 -0
  218. package/dist/utils/view-queries.js.map +1 -0
  219. package/dist/watcher/file-watcher.d.ts.map +1 -1
  220. package/dist/watcher/file-watcher.js +25 -11
  221. package/dist/watcher/file-watcher.js.map +1 -1
  222. package/docs/BEST_PRACTICES.md +56 -448
  223. package/docs/MIGRATION_v3.6.0.md +170 -0
  224. package/docs/SHARED_CONCEPTS.md +63 -208
  225. package/docs/TASK_OVERVIEW.md +2 -2
  226. package/docs/TOOL_SELECTION.md +41 -248
  227. package/package.json +16 -4
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Migration Orchestrator
2
+ * Migration Orchestrator (v4.0.0 - Hybrid Support)
3
3
  *
4
4
  * Coordinates automatic sequential execution of all database migrations.
5
5
  * Supports upgrading from any previous version to the latest version in a single run.
@@ -10,8 +10,16 @@
10
10
  * - Sequential execution with transaction safety
11
11
  * - Detailed logging and error reporting
12
12
  * - Dry-run mode support
13
+ * - Hybrid support: better-sqlite3 (Database) OR Knex.js (DatabaseAdapter)
14
+ *
15
+ * Migration Strategy (v4.0.0+):
16
+ * - Knex migrations: Run automatically via initializeDatabase() → knex.migrate.latest()
17
+ * - Custom migrations: Legacy orchestrator for v1.x-v3.x upgrades (this file)
18
+ * - New deployments: Use Knex migrations only (src/migrations/knex/*)
19
+ * - Old upgrades: Use custom migrations first, then Knex migrations
13
20
  */
14
21
  import { Database } from 'better-sqlite3';
22
+ import { DatabaseAdapter } from '../adapters/index.js';
15
23
  export interface MigrationResult {
16
24
  success: boolean;
17
25
  message: string;
@@ -36,19 +44,21 @@ export interface MigrationInfo {
36
44
  * - v3.0.0: Has m_task_statuses but no t_task_dependencies
37
45
  * - v3.2.0: Has t_task_dependencies but no t_decision_context
38
46
  * - v3.2.2: Has t_decision_context but no t_task_pruned_files
39
- * - v3.5.0: Has t_task_pruned_files
47
+ * - v3.5.0: Has t_task_pruned_files but no m_help_tools
48
+ * - v3.6.0: Has m_help_tools (help system tables)
49
+ * - v4.0.0: Has knex_migrations table (Knex migration system)
40
50
  *
41
- * @param db - Database connection
51
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
42
52
  * @returns Detected version string
43
53
  */
44
- export declare function detectDatabaseVersion(db: Database): string;
54
+ export declare function detectDatabaseVersion(dbOrAdapter: Database | DatabaseAdapter): string;
45
55
  /**
46
56
  * Get migration plan for current database
47
57
  *
48
- * @param db - Database connection
58
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
49
59
  * @returns Array of migration names that need to run
50
60
  */
51
- export declare function getMigrationPlan(db: Database): string[];
61
+ export declare function getMigrationPlan(dbOrAdapter: Database | DatabaseAdapter): string[];
52
62
  /**
53
63
  * Run all pending migrations in sequence
54
64
  *
@@ -59,11 +69,14 @@ export declare function getMigrationPlan(db: Database): string[];
59
69
  * 4. Stops on first failure (rollback already handled by individual migrations)
60
70
  * 5. Returns combined results
61
71
  *
62
- * @param db - Database connection
72
+ * NOTE (v4.0.0+): This function runs custom migrations (v1.x-v3.x upgrades only).
73
+ * Knex migrations run automatically via initializeDatabase() → knex.migrate.latest().
74
+ *
75
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
63
76
  * @param dryRun - If true, only show plan without executing (default: false)
64
77
  * @returns Array of migration results
65
78
  */
66
- export declare function runAllMigrations(db: Database, dryRun?: boolean): MigrationResult[];
79
+ export declare function runAllMigrations(dbOrAdapter: Database | DatabaseAdapter, dryRun?: boolean): MigrationResult[];
67
80
  /**
68
81
  * Get detailed info about a specific migration
69
82
  *
@@ -80,17 +93,17 @@ export declare function listAllMigrations(): Omit<MigrationInfo, 'needsMigration
80
93
  /**
81
94
  * Check if database needs any migrations
82
95
  *
83
- * @param db - Database connection
96
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
84
97
  * @returns true if migrations are needed
85
98
  */
86
- export declare function needsAnyMigrations(db: Database): boolean;
99
+ export declare function needsAnyMigrations(dbOrAdapter: Database | DatabaseAdapter): boolean;
87
100
  /**
88
101
  * Get summary of migration status
89
102
  *
90
- * @param db - Database connection
103
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
91
104
  * @returns Summary object
92
105
  */
93
- export declare function getMigrationStatus(db: Database): {
106
+ export declare function getMigrationStatus(dbOrAdapter: Database | DatabaseAdapter): {
94
107
  currentVersion: string;
95
108
  upToDate: boolean;
96
109
  pendingMigrations: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAQ1C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC1C,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,eAAe,CAAC;IAChD,gBAAgB,EAAE,MAAM,MAAM,CAAC;CAChC;AAwDD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,CAuE1D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,EAAE,CAUvD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAe,GAAG,eAAe,EAAE,CAiFzF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOxE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAAC,aAAa,EAAE,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,CAAC,EAAE,CAMjH;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG;IAChD,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB,CAUA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAavD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC1C,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,eAAe,CAAC;IAChD,gBAAgB,EAAE,MAAM,MAAM,CAAC;CAChC;AA4JD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,GAAG,MAAM,CAiFrF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,GAAG,MAAM,EAAE,CAWlF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,EAAE,MAAM,GAAE,OAAe,GAAG,eAAe,EAAE,CAyFpH;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOxE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAAC,aAAa,EAAE,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,CAAC,EAAE,CAMjH;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,CAGnF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,GAAG;IAC3E,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB,CAUA"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Migration Orchestrator
2
+ * Migration Orchestrator (v4.0.0 - Hybrid Support)
3
3
  *
4
4
  * Coordinates automatic sequential execution of all database migrations.
5
5
  * Supports upgrading from any previous version to the latest version in a single run.
@@ -10,6 +10,13 @@
10
10
  * - Sequential execution with transaction safety
11
11
  * - Detailed logging and error reporting
12
12
  * - Dry-run mode support
13
+ * - Hybrid support: better-sqlite3 (Database) OR Knex.js (DatabaseAdapter)
14
+ *
15
+ * Migration Strategy (v4.0.0+):
16
+ * - Knex migrations: Run automatically via initializeDatabase() → knex.migrate.latest()
17
+ * - Custom migrations: Legacy orchestrator for v1.x-v3.x upgrades (this file)
18
+ * - New deployments: Use Knex migrations only (src/migrations/knex/*)
19
+ * - Old upgrades: Use custom migrations first, then Knex migrations
13
20
  */
14
21
  import * as tablePrefixes from './add-table-prefixes.js';
15
22
  import * as v210Features from './add-v2.1.0-features.js';
@@ -17,6 +24,42 @@ import * as taskTables from './add-task-tables.js';
17
24
  import * as taskDependencies from './add-task-dependencies.js';
18
25
  import * as decisionContext from './add-decision-context.js';
19
26
  import * as prunedFiles from './add-v3.5.0-pruned-files.js';
27
+ import * as helpSystemTables from './add-help-system-tables.js';
28
+ import * as seedToolMetadata from './seed-tool-metadata.js';
29
+ import * as seedHelpData from './seed-help-data.js';
30
+ import * as tokenTracking from './add-token-tracking.js';
31
+ /**
32
+ * Type guard to check if input is DatabaseAdapter
33
+ */
34
+ function isDatabaseAdapter(dbOrAdapter) {
35
+ return typeof dbOrAdapter.getKnex === 'function';
36
+ }
37
+ /**
38
+ * Get Database instance from either Database or DatabaseAdapter
39
+ * For Knex adapters, we need to access the underlying better-sqlite3 connection
40
+ *
41
+ * NOTE: This is a temporary bridge for backward compatibility with custom migrations.
42
+ * New code should use Knex query builder via adapter.getKnex() instead.
43
+ */
44
+ function getDatabase(dbOrAdapter) {
45
+ if (isDatabaseAdapter(dbOrAdapter)) {
46
+ // For SQLiteAdapter, access the underlying better-sqlite3 connection
47
+ // This assumes SQLiteAdapter stores it in a private property
48
+ const knex = dbOrAdapter.getKnex();
49
+ const client = knex.client;
50
+ if (client && client.driver && client.driver.name) {
51
+ // Access the better-sqlite3 connection from Knex client
52
+ const connections = client._connectionCache || {};
53
+ const connectionKey = Object.keys(connections)[0];
54
+ if (connectionKey && connections[connectionKey]) {
55
+ return connections[connectionKey];
56
+ }
57
+ }
58
+ // Fallback: throw error if we can't extract Database
59
+ throw new Error('Cannot extract Database from DatabaseAdapter for custom migrations. Please use Knex migrations instead.');
60
+ }
61
+ return dbOrAdapter;
62
+ }
20
63
  /**
21
64
  * Registry of all available migrations in execution order
22
65
  */
@@ -69,6 +112,70 @@ const MIGRATIONS = [
69
112
  runMigration: prunedFiles.migrateToPrunedFiles,
70
113
  getMigrationInfo: prunedFiles.getPrunedFilesMigrationInfo,
71
114
  },
115
+ {
116
+ name: 'add-help-system-tables',
117
+ fromVersion: '3.5.3',
118
+ toVersion: '3.6.0',
119
+ needsMigration: helpSystemTables.needsHelpSystemMigration,
120
+ runMigration: helpSystemTables.migrateToHelpSystem,
121
+ getMigrationInfo: helpSystemTables.getHelpSystemMigrationInfo,
122
+ },
123
+ {
124
+ name: 'seed-tool-metadata',
125
+ fromVersion: '3.6.0',
126
+ toVersion: '3.6.0',
127
+ needsMigration: seedToolMetadata.needsToolMetadataSeeding,
128
+ runMigration: (db) => {
129
+ try {
130
+ seedToolMetadata.seedToolMetadata(db);
131
+ return {
132
+ success: true,
133
+ message: 'Tool metadata seeded successfully',
134
+ details: [seedToolMetadata.getToolMetadataSeedingInfo()]
135
+ };
136
+ }
137
+ catch (error) {
138
+ const message = error instanceof Error ? error.message : String(error);
139
+ return {
140
+ success: false,
141
+ message: `Failed to seed tool metadata: ${message}`
142
+ };
143
+ }
144
+ },
145
+ getMigrationInfo: seedToolMetadata.getToolMetadataSeedingInfo,
146
+ },
147
+ {
148
+ name: 'seed-help-data',
149
+ fromVersion: '3.6.0',
150
+ toVersion: '3.6.0',
151
+ needsMigration: seedHelpData.needsHelpDataSeeding,
152
+ runMigration: (db) => {
153
+ try {
154
+ seedHelpData.seedHelpData(db);
155
+ return {
156
+ success: true,
157
+ message: 'Help system use-case data seeded successfully',
158
+ details: [seedHelpData.getHelpDataSeedingInfo()]
159
+ };
160
+ }
161
+ catch (error) {
162
+ const message = error instanceof Error ? error.message : String(error);
163
+ return {
164
+ success: false,
165
+ message: `Failed to seed help data: ${message}`
166
+ };
167
+ }
168
+ },
169
+ getMigrationInfo: seedHelpData.getHelpDataSeedingInfo,
170
+ },
171
+ {
172
+ name: 'add-token-tracking',
173
+ fromVersion: '3.6.0',
174
+ toVersion: '3.6.0',
175
+ needsMigration: tokenTracking.needsTokenTrackingMigration,
176
+ runMigration: tokenTracking.migrateToTokenTracking,
177
+ getMigrationInfo: tokenTracking.getTokenTrackingMigrationInfo,
178
+ },
72
179
  ];
73
180
  /**
74
181
  * Detect current database version by inspecting schema
@@ -81,13 +188,21 @@ const MIGRATIONS = [
81
188
  * - v3.0.0: Has m_task_statuses but no t_task_dependencies
82
189
  * - v3.2.0: Has t_task_dependencies but no t_decision_context
83
190
  * - v3.2.2: Has t_decision_context but no t_task_pruned_files
84
- * - v3.5.0: Has t_task_pruned_files
191
+ * - v3.5.0: Has t_task_pruned_files but no m_help_tools
192
+ * - v3.6.0: Has m_help_tools (help system tables)
193
+ * - v4.0.0: Has knex_migrations table (Knex migration system)
85
194
  *
86
- * @param db - Database connection
195
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
87
196
  * @returns Detected version string
88
197
  */
89
- export function detectDatabaseVersion(db) {
198
+ export function detectDatabaseVersion(dbOrAdapter) {
90
199
  try {
200
+ const db = getDatabase(dbOrAdapter);
201
+ // Check for help system tables (v3.6.0)
202
+ const hasHelpTables = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='m_help_tools'").get();
203
+ if (hasHelpTables) {
204
+ return '3.6.0';
205
+ }
91
206
  // Check for pruned files table (v3.5.0)
92
207
  const hasPrunedFiles = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='t_task_pruned_files'").get();
93
208
  if (hasPrunedFiles) {
@@ -134,10 +249,11 @@ export function detectDatabaseVersion(db) {
134
249
  /**
135
250
  * Get migration plan for current database
136
251
  *
137
- * @param db - Database connection
252
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
138
253
  * @returns Array of migration names that need to run
139
254
  */
140
- export function getMigrationPlan(db) {
255
+ export function getMigrationPlan(dbOrAdapter) {
256
+ const db = getDatabase(dbOrAdapter);
141
257
  const plan = [];
142
258
  for (const migration of MIGRATIONS) {
143
259
  if (migration.needsMigration(db)) {
@@ -156,27 +272,34 @@ export function getMigrationPlan(db) {
156
272
  * 4. Stops on first failure (rollback already handled by individual migrations)
157
273
  * 5. Returns combined results
158
274
  *
159
- * @param db - Database connection
275
+ * NOTE (v4.0.0+): This function runs custom migrations (v1.x-v3.x upgrades only).
276
+ * Knex migrations run automatically via initializeDatabase() → knex.migrate.latest().
277
+ *
278
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
160
279
  * @param dryRun - If true, only show plan without executing (default: false)
161
280
  * @returns Array of migration results
162
281
  */
163
- export function runAllMigrations(db, dryRun = false) {
282
+ export function runAllMigrations(dbOrAdapter, dryRun = false) {
283
+ const db = getDatabase(dbOrAdapter);
164
284
  const results = [];
165
285
  try {
166
286
  // Detect current version
167
- const currentVersion = detectDatabaseVersion(db);
287
+ const currentVersion = detectDatabaseVersion(dbOrAdapter);
168
288
  console.log(`\n📊 Current database version: ${currentVersion}`);
169
289
  // Get migration plan
170
- const plan = getMigrationPlan(db);
290
+ const plan = getMigrationPlan(dbOrAdapter);
171
291
  if (plan.length === 0) {
172
- console.log('✅ Database is up to date, no migrations needed.\n');
292
+ console.log('✅ Database is up to date, no custom migrations needed.\n');
293
+ if (isDatabaseAdapter(dbOrAdapter)) {
294
+ console.log('ℹ️ Knex migrations were run automatically via initializeDatabase().\n');
295
+ }
173
296
  return [{
174
297
  success: true,
175
298
  message: 'No migrations needed',
176
299
  details: [`Current version: ${currentVersion}`]
177
300
  }];
178
301
  }
179
- console.log(`\n📋 Migration plan (${plan.length} migration${plan.length === 1 ? '' : 's'}):`);
302
+ console.log(`\n📋 Migration plan (${plan.length} custom migration${plan.length === 1 ? '' : 's'}):`);
180
303
  plan.forEach((step, i) => {
181
304
  console.log(` ${i + 1}. ${step}`);
182
305
  });
@@ -219,8 +342,11 @@ export function runAllMigrations(db, dryRun = false) {
219
342
  }
220
343
  }
221
344
  // Detect final version
222
- const finalVersion = detectDatabaseVersion(db);
223
- console.log(`\n✅ Migration complete: ${currentVersion} → ${finalVersion}\n`);
345
+ const finalVersion = detectDatabaseVersion(dbOrAdapter);
346
+ console.log(`\n✅ Custom migrations complete: ${currentVersion} → ${finalVersion}\n`);
347
+ if (isDatabaseAdapter(dbOrAdapter)) {
348
+ console.log('ℹ️ Knex migrations were run automatically via initializeDatabase().\n');
349
+ }
224
350
  return results;
225
351
  }
226
352
  catch (error) {
@@ -259,21 +385,22 @@ export function listAllMigrations() {
259
385
  /**
260
386
  * Check if database needs any migrations
261
387
  *
262
- * @param db - Database connection
388
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
263
389
  * @returns true if migrations are needed
264
390
  */
265
- export function needsAnyMigrations(db) {
391
+ export function needsAnyMigrations(dbOrAdapter) {
392
+ const db = getDatabase(dbOrAdapter);
266
393
  return MIGRATIONS.some(m => m.needsMigration(db));
267
394
  }
268
395
  /**
269
396
  * Get summary of migration status
270
397
  *
271
- * @param db - Database connection
398
+ * @param dbOrAdapter - Database connection or DatabaseAdapter
272
399
  * @returns Summary object
273
400
  */
274
- export function getMigrationStatus(db) {
275
- const currentVersion = detectDatabaseVersion(db);
276
- const plan = getMigrationPlan(db);
401
+ export function getMigrationStatus(dbOrAdapter) {
402
+ const currentVersion = detectDatabaseVersion(dbOrAdapter);
403
+ const plan = getMigrationPlan(dbOrAdapter);
277
404
  return {
278
405
  currentVersion,
279
406
  upToDate: plan.length === 0,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Knex } from "knex";
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
4
+ //# sourceMappingURL=20251025020452_create_master_tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251025020452_create_master_tables.d.ts","sourceRoot":"","sources":["../../../src/migrations/knex/20251025020452_create_master_tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAGjC,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA4DlD;AAGD,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAapD"}
@@ -0,0 +1,65 @@
1
+ export async function up(knex) {
2
+ // ============================================================================
3
+ // Master Tables (m_ prefix) - Normalization Layer
4
+ // ============================================================================
5
+ // Agent Management
6
+ await knex.schema.createTable('m_agents', (table) => {
7
+ table.increments('id').primary();
8
+ table.string('name', 100).unique().notNullable();
9
+ });
10
+ // File Path Management
11
+ await knex.schema.createTable('m_files', (table) => {
12
+ table.increments('id').primary();
13
+ table.string('path', 1000).unique().notNullable();
14
+ });
15
+ // Context Key Management
16
+ await knex.schema.createTable('m_context_keys', (table) => {
17
+ table.increments('id').primary();
18
+ table.string('key', 200).unique().notNullable();
19
+ });
20
+ // Constraint Category Management
21
+ await knex.schema.createTable('m_constraint_categories', (table) => {
22
+ table.increments('id').primary();
23
+ table.string('name', 100).unique().notNullable();
24
+ });
25
+ // Layer Management (5 predefined layers)
26
+ await knex.schema.createTable('m_layers', (table) => {
27
+ table.increments('id').primary();
28
+ table.string('name', 50).unique().notNullable();
29
+ });
30
+ // Tag Management
31
+ await knex.schema.createTable('m_tags', (table) => {
32
+ table.increments('id').primary();
33
+ table.string('name', 100).unique().notNullable();
34
+ });
35
+ // Scope Management
36
+ await knex.schema.createTable('m_scopes', (table) => {
37
+ table.increments('id').primary();
38
+ table.string('name', 200).unique().notNullable();
39
+ });
40
+ // Configuration Management (key-value store)
41
+ await knex.schema.createTable('m_config', (table) => {
42
+ table.string('key').primary();
43
+ table.text('value').notNullable();
44
+ });
45
+ // Task Statuses (enum-like table)
46
+ await knex.schema.createTable('m_task_statuses', (table) => {
47
+ table.integer('id').primary();
48
+ table.string('name', 50).unique().notNullable();
49
+ });
50
+ console.log('✅ Master tables created successfully');
51
+ }
52
+ export async function down(knex) {
53
+ // Drop in reverse order to handle dependencies
54
+ await knex.schema.dropTableIfExists('m_task_statuses');
55
+ await knex.schema.dropTableIfExists('m_config');
56
+ await knex.schema.dropTableIfExists('m_scopes');
57
+ await knex.schema.dropTableIfExists('m_tags');
58
+ await knex.schema.dropTableIfExists('m_layers');
59
+ await knex.schema.dropTableIfExists('m_constraint_categories');
60
+ await knex.schema.dropTableIfExists('m_context_keys');
61
+ await knex.schema.dropTableIfExists('m_files');
62
+ await knex.schema.dropTableIfExists('m_agents');
63
+ console.log('✅ Master tables dropped successfully');
64
+ }
65
+ //# sourceMappingURL=20251025020452_create_master_tables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251025020452_create_master_tables.js","sourceRoot":"","sources":["../../../src/migrations/knex/20251025020452_create_master_tables.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Knex } from "knex";
2
+ export declare function up(knex: Knex): Promise<void>;
3
+ export declare function down(knex: Knex): Promise<void>;
4
+ //# sourceMappingURL=20251025021152_create_transaction_tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251025021152_create_transaction_tables.d.ts","sourceRoot":"","sources":["../../../src/migrations/knex/20251025021152_create_transaction_tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAGjC,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAsOlD;AAGD,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBpD"}