sqlew 3.6.1 → 3.6.3

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 (196) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/assets/config.example.toml +28 -0
  3. package/dist/knexfile.d.ts.map +1 -1
  4. package/dist/knexfile.js +15 -3
  5. package/dist/knexfile.js.map +1 -1
  6. package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +1 -0
  7. package/dist/migrations/knex/{20251025020452_create_master_tables.js → bootstrap/20251025020452_create_master_tables.js} +15 -12
  8. package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.js.map +1 -0
  9. package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +1 -0
  10. package/dist/migrations/knex/{20251025021152_create_transaction_tables.js → bootstrap/20251025021152_create_transaction_tables.js} +19 -19
  11. package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.js.map +1 -0
  12. package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.d.ts.map +1 -0
  13. package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.js +93 -0
  14. package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.js.map +1 -0
  15. package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +1 -0
  16. package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.js +64 -0
  17. package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.js.map +1 -0
  18. package/dist/migrations/knex/bootstrap/20251025070349_create_views.d.ts.map +1 -0
  19. package/dist/migrations/knex/bootstrap/20251025070349_create_views.js.map +1 -0
  20. package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
  21. package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
  22. package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
  23. package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.js.map +1 -0
  24. package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.d.ts.map +1 -0
  25. package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.js.map +1 -0
  26. package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
  27. package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
  28. package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.d.ts.map +1 -0
  29. package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.js.map +1 -0
  30. package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
  31. package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.js.map +1 -0
  32. package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
  33. package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
  34. package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts.map +1 -0
  35. package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.js.map +1 -0
  36. package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts.map +1 -0
  37. package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js.map +1 -0
  38. package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.d.ts.map +1 -0
  39. package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.js.map +1 -0
  40. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts +13 -0
  41. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +1 -0
  42. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js +70 -0
  43. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js.map +1 -0
  44. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts +11 -0
  45. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +1 -0
  46. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js +36 -0
  47. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js.map +1 -0
  48. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts +14 -0
  49. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +1 -0
  50. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js +84 -0
  51. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js.map +1 -0
  52. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts +9 -0
  53. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +1 -0
  54. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js +37 -0
  55. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js.map +1 -0
  56. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts +9 -0
  57. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +1 -0
  58. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js +41 -0
  59. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +1 -0
  60. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts +9 -0
  61. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +1 -0
  62. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js +36 -0
  63. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js.map +1 -0
  64. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts +10 -0
  65. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +1 -0
  66. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js +28 -0
  67. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js.map +1 -0
  68. package/dist/tests/migrations/test-all-versions-real.d.ts +8 -0
  69. package/dist/tests/migrations/test-all-versions-real.d.ts.map +1 -0
  70. package/dist/tests/migrations/test-all-versions-real.js +234 -0
  71. package/dist/tests/migrations/test-all-versions-real.js.map +1 -0
  72. package/dist/tests/migrations/test-all-versions.d.ts +14 -0
  73. package/dist/tests/migrations/test-all-versions.d.ts.map +1 -0
  74. package/dist/tests/migrations/test-all-versions.js +521 -0
  75. package/dist/tests/migrations/test-all-versions.js.map +1 -0
  76. package/dist/tools/tasks.js +2 -2
  77. package/dist/tools/tasks.js.map +1 -1
  78. package/dist/utils/task-stale-detection.d.ts.map +1 -1
  79. package/dist/utils/task-stale-detection.js +79 -4
  80. package/dist/utils/task-stale-detection.js.map +1 -1
  81. package/docs/MIGRATION_CHAIN.md +13 -0
  82. package/package.json +4 -1
  83. package/dist/migrations/add-decision-context.d.ts +0 -28
  84. package/dist/migrations/add-decision-context.d.ts.map +0 -1
  85. package/dist/migrations/add-decision-context.js +0 -125
  86. package/dist/migrations/add-decision-context.js.map +0 -1
  87. package/dist/migrations/add-help-system-tables.d.ts +0 -35
  88. package/dist/migrations/add-help-system-tables.d.ts.map +0 -1
  89. package/dist/migrations/add-help-system-tables.js +0 -206
  90. package/dist/migrations/add-help-system-tables.js.map +0 -1
  91. package/dist/migrations/add-table-prefixes.d.ts +0 -29
  92. package/dist/migrations/add-table-prefixes.d.ts.map +0 -1
  93. package/dist/migrations/add-table-prefixes.js +0 -150
  94. package/dist/migrations/add-table-prefixes.js.map +0 -1
  95. package/dist/migrations/add-task-dependencies.d.ts +0 -26
  96. package/dist/migrations/add-task-dependencies.d.ts.map +0 -1
  97. package/dist/migrations/add-task-dependencies.js +0 -94
  98. package/dist/migrations/add-task-dependencies.js.map +0 -1
  99. package/dist/migrations/add-task-tables.d.ts +0 -47
  100. package/dist/migrations/add-task-tables.d.ts.map +0 -1
  101. package/dist/migrations/add-task-tables.js +0 -285
  102. package/dist/migrations/add-task-tables.js.map +0 -1
  103. package/dist/migrations/add-token-tracking.d.ts +0 -28
  104. package/dist/migrations/add-token-tracking.d.ts.map +0 -1
  105. package/dist/migrations/add-token-tracking.js +0 -108
  106. package/dist/migrations/add-token-tracking.js.map +0 -1
  107. package/dist/migrations/add-v2.1.0-features.d.ts +0 -29
  108. package/dist/migrations/add-v2.1.0-features.d.ts.map +0 -1
  109. package/dist/migrations/add-v2.1.0-features.js +0 -198
  110. package/dist/migrations/add-v2.1.0-features.js.map +0 -1
  111. package/dist/migrations/add-v3.5.0-pruned-files.d.ts +0 -26
  112. package/dist/migrations/add-v3.5.0-pruned-files.d.ts.map +0 -1
  113. package/dist/migrations/add-v3.5.0-pruned-files.js +0 -107
  114. package/dist/migrations/add-v3.5.0-pruned-files.js.map +0 -1
  115. package/dist/migrations/index.d.ts +0 -112
  116. package/dist/migrations/index.d.ts.map +0 -1
  117. package/dist/migrations/index.js +0 -411
  118. package/dist/migrations/index.js.map +0 -1
  119. package/dist/migrations/knex/20251025020452_create_master_tables.d.ts.map +0 -1
  120. package/dist/migrations/knex/20251025020452_create_master_tables.js.map +0 -1
  121. package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts.map +0 -1
  122. package/dist/migrations/knex/20251025021152_create_transaction_tables.js.map +0 -1
  123. package/dist/migrations/knex/20251025021351_create_indexes.d.ts.map +0 -1
  124. package/dist/migrations/knex/20251025021351_create_indexes.js +0 -62
  125. package/dist/migrations/knex/20251025021351_create_indexes.js.map +0 -1
  126. package/dist/migrations/knex/20251025021416_seed_master_data.d.ts.map +0 -1
  127. package/dist/migrations/knex/20251025021416_seed_master_data.js +0 -58
  128. package/dist/migrations/knex/20251025021416_seed_master_data.js.map +0 -1
  129. package/dist/migrations/knex/20251025070349_create_views.d.ts.map +0 -1
  130. package/dist/migrations/knex/20251025070349_create_views.js.map +0 -1
  131. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts.map +0 -1
  132. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js.map +0 -1
  133. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts.map +0 -1
  134. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js.map +0 -1
  135. package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts.map +0 -1
  136. package/dist/migrations/knex/20251025090000_create_help_system_tables.js.map +0 -1
  137. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts.map +0 -1
  138. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js.map +0 -1
  139. package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts.map +0 -1
  140. package/dist/migrations/knex/20251025100000_seed_help_metadata.js.map +0 -1
  141. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts.map +0 -1
  142. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js.map +0 -1
  143. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts.map +0 -1
  144. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js.map +0 -1
  145. package/dist/migrations/knex/20251027000000_add_agent_reuse_system.d.ts.map +0 -1
  146. package/dist/migrations/knex/20251027000000_add_agent_reuse_system.js.map +0 -1
  147. package/dist/migrations/knex/20251027010000_add_task_constraint_to_decision_context.d.ts.map +0 -1
  148. package/dist/migrations/knex/20251027010000_add_task_constraint_to_decision_context.js.map +0 -1
  149. package/dist/migrations/knex/20251027020000_update_agent_reusability.d.ts.map +0 -1
  150. package/dist/migrations/knex/20251027020000_update_agent_reusability.js.map +0 -1
  151. package/dist/migrations/migrate-decisions-to-tasks.d.ts +0 -61
  152. package/dist/migrations/migrate-decisions-to-tasks.d.ts.map +0 -1
  153. package/dist/migrations/migrate-decisions-to-tasks.js +0 -442
  154. package/dist/migrations/migrate-decisions-to-tasks.js.map +0 -1
  155. package/dist/migrations/seed-help-data.d.ts +0 -48
  156. package/dist/migrations/seed-help-data.d.ts.map +0 -1
  157. package/dist/migrations/seed-help-data.js +0 -1466
  158. package/dist/migrations/seed-help-data.js.map +0 -1
  159. package/dist/migrations/seed-tool-metadata.d.ts +0 -24
  160. package/dist/migrations/seed-tool-metadata.d.ts.map +0 -1
  161. package/dist/migrations/seed-tool-metadata.js +0 -392
  162. package/dist/migrations/seed-tool-metadata.js.map +0 -1
  163. package/dist/migrations/v3.6.0-help-system-refactor.d.ts +0 -46
  164. package/dist/migrations/v3.6.0-help-system-refactor.d.ts.map +0 -1
  165. package/dist/migrations/v3.6.0-help-system-refactor.js +0 -223
  166. package/dist/migrations/v3.6.0-help-system-refactor.js.map +0 -1
  167. package/dist/tests/migrations/test-v3.2-migration.d.ts +0 -6
  168. package/dist/tests/migrations/test-v3.2-migration.d.ts.map +0 -1
  169. package/dist/tests/migrations/test-v3.2-migration.js +0 -191
  170. package/dist/tests/migrations/test-v3.2-migration.js.map +0 -1
  171. /package/dist/migrations/knex/{20251025020452_create_master_tables.d.ts → bootstrap/20251025020452_create_master_tables.d.ts} +0 -0
  172. /package/dist/migrations/knex/{20251025021152_create_transaction_tables.d.ts → bootstrap/20251025021152_create_transaction_tables.d.ts} +0 -0
  173. /package/dist/migrations/knex/{20251025021351_create_indexes.d.ts → bootstrap/20251025021351_create_indexes.d.ts} +0 -0
  174. /package/dist/migrations/knex/{20251025021416_seed_master_data.d.ts → bootstrap/20251025021416_seed_master_data.d.ts} +0 -0
  175. /package/dist/migrations/knex/{20251025070349_create_views.d.ts → bootstrap/20251025070349_create_views.d.ts} +0 -0
  176. /package/dist/migrations/knex/{20251025070349_create_views.js → bootstrap/20251025070349_create_views.js} +0 -0
  177. /package/dist/migrations/knex/{20251025081221_add_link_type_to_task_decision_links.d.ts → enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts} +0 -0
  178. /package/dist/migrations/knex/{20251025081221_add_link_type_to_task_decision_links.js → enhancements/20251025081221_add_link_type_to_task_decision_links.js} +0 -0
  179. /package/dist/migrations/knex/{20251025082220_fix_task_dependencies_columns.d.ts → enhancements/20251025082220_fix_task_dependencies_columns.d.ts} +0 -0
  180. /package/dist/migrations/knex/{20251025082220_fix_task_dependencies_columns.js → enhancements/20251025082220_fix_task_dependencies_columns.js} +0 -0
  181. /package/dist/migrations/knex/{20251025090000_create_help_system_tables.d.ts → enhancements/20251025090000_create_help_system_tables.d.ts} +0 -0
  182. /package/dist/migrations/knex/{20251025090000_create_help_system_tables.js → enhancements/20251025090000_create_help_system_tables.js} +0 -0
  183. /package/dist/migrations/knex/{20251025090100_seed_help_categories_and_use_cases.d.ts → enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts} +0 -0
  184. /package/dist/migrations/knex/{20251025090100_seed_help_categories_and_use_cases.js → enhancements/20251025090100_seed_help_categories_and_use_cases.js} +0 -0
  185. /package/dist/migrations/knex/{20251025100000_seed_help_metadata.d.ts → enhancements/20251025100000_seed_help_metadata.d.ts} +0 -0
  186. /package/dist/migrations/knex/{20251025100000_seed_help_metadata.js → enhancements/20251025100000_seed_help_metadata.js} +0 -0
  187. /package/dist/migrations/knex/{20251025100100_seed_remaining_use_cases.d.ts → enhancements/20251025100100_seed_remaining_use_cases.d.ts} +0 -0
  188. /package/dist/migrations/knex/{20251025100100_seed_remaining_use_cases.js → enhancements/20251025100100_seed_remaining_use_cases.js} +0 -0
  189. /package/dist/migrations/knex/{20251025120000_add_cascade_to_task_dependencies.d.ts → enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts} +0 -0
  190. /package/dist/migrations/knex/{20251025120000_add_cascade_to_task_dependencies.js → enhancements/20251025120000_add_cascade_to_task_dependencies.js} +0 -0
  191. /package/dist/migrations/knex/{20251027000000_add_agent_reuse_system.d.ts → enhancements/20251027000000_add_agent_reuse_system.d.ts} +0 -0
  192. /package/dist/migrations/knex/{20251027000000_add_agent_reuse_system.js → enhancements/20251027000000_add_agent_reuse_system.js} +0 -0
  193. /package/dist/migrations/knex/{20251027010000_add_task_constraint_to_decision_context.d.ts → enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts} +0 -0
  194. /package/dist/migrations/knex/{20251027010000_add_task_constraint_to_decision_context.js → enhancements/20251027010000_add_task_constraint_to_decision_context.js} +0 -0
  195. /package/dist/migrations/knex/{20251027020000_update_agent_reusability.d.ts → enhancements/20251027020000_update_agent_reusability.d.ts} +0 -0
  196. /package/dist/migrations/knex/{20251027020000_update_agent_reusability.js → enhancements/20251027020000_update_agent_reusability.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251024060000_upgrade_v3_4_to_v3_5.d.ts","sourceRoot":"","sources":["../../../../src/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAgClD;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Knex Migration: v3.4.x → v3.5.0 (Add Pruned Files Tracking)
3
+ *
4
+ * Adds tracking for pruned files in tasks.
5
+ */
6
+ export async function up(knex) {
7
+ // Check if we need this migration
8
+ const hasPrunedFiles = await knex.schema.hasTable('t_task_pruned_files');
9
+ if (hasPrunedFiles) {
10
+ console.log('✓ t_task_pruned_files already exists, skipping v3.5.0 migration');
11
+ return;
12
+ }
13
+ // Check if we have decision context (v3.2.2+)
14
+ const hasDecisionContext = await knex.schema.hasTable('t_decision_context');
15
+ if (!hasDecisionContext) {
16
+ console.log('✓ No v3.4.x schema detected, skipping v3.5.0 migration');
17
+ return;
18
+ }
19
+ console.log('🔄 Migrating v3.4.x → v3.5.0 (adding pruned files tracking)...');
20
+ // Create pruned files table
21
+ await knex.schema.createTable('t_task_pruned_files', (table) => {
22
+ table.increments('id').primary();
23
+ table.integer('task_id').notNullable()
24
+ .references('id').inTable('t_tasks').onDelete('CASCADE');
25
+ table.string('file_path', 500).notNullable();
26
+ table.bigInteger('pruned_ts').notNullable()
27
+ .defaultTo(knex.raw("(strftime('%s', 'now'))"));
28
+ table.index('task_id', 'idx_task_pruned_files_task_id');
29
+ });
30
+ console.log(' ✓ Created t_task_pruned_files');
31
+ console.log('✅ v3.4.x → v3.5.0 migration complete');
32
+ }
33
+ export async function down(knex) {
34
+ await knex.schema.dropTableIfExists('t_task_pruned_files');
35
+ }
36
+ //# sourceMappingURL=20251024060000_upgrade_v3_4_to_v3_5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251024060000_upgrade_v3_4_to_v3_5.js","sourceRoot":"","sources":["../../../../src/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,kCAAkC;IAClC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAEzE,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IAED,8CAA8C;IAC9C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAC5E,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAE9E,4BAA4B;IAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7D,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QACjC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;aACnC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3D,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7C,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;aACxC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAClD,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAE/C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Knex Migration: v3.5.x → v3.6.0 (Add Help System)
3
+ *
4
+ * Adds comprehensive help system tables and metadata.
5
+ * This migration checks if help tables already exist and skips if so.
6
+ */
7
+ import { Knex } from 'knex';
8
+ export declare function up(knex: Knex): Promise<void>;
9
+ export declare function down(knex: Knex): Promise<void>;
10
+ //# sourceMappingURL=20251024070000_upgrade_v3_5_to_v3_6.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251024070000_upgrade_v3_5_to_v3_6.d.ts","sourceRoot":"","sources":["../../../../src/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBlD;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Knex Migration: v3.5.x → v3.6.0 (Add Help System)
3
+ *
4
+ * Adds comprehensive help system tables and metadata.
5
+ * This migration checks if help tables already exist and skips if so.
6
+ */
7
+ export async function up(knex) {
8
+ // Check if we need this migration
9
+ const hasHelpSystem = await knex.schema.hasTable('m_help_tools');
10
+ if (hasHelpSystem) {
11
+ console.log('✓ Help system tables already exist, skipping v3.6.0 migration');
12
+ return;
13
+ }
14
+ // Check if we have pruned files (v3.5.x)
15
+ const hasPrunedFiles = await knex.schema.hasTable('t_task_pruned_files');
16
+ if (!hasPrunedFiles) {
17
+ console.log('✓ No v3.5.x schema detected, skipping v3.6.0 migration');
18
+ return;
19
+ }
20
+ console.log('🔄 Migrating v3.5.x → v3.6.0 (adding help system)...');
21
+ console.log(' ℹ️ Help system tables will be created by migration 20251025090000');
22
+ console.log(' ℹ️ This is just a version marker migration');
23
+ console.log('✅ v3.5.x → v3.6.0 migration marker complete');
24
+ }
25
+ export async function down(knex) {
26
+ // No action needed - actual help tables are managed by later migrations
27
+ }
28
+ //# sourceMappingURL=20251024070000_upgrade_v3_5_to_v3_6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"20251024070000_upgrade_v3_5_to_v3_6.js","sourceRoot":"","sources":["../../../../src/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,IAAU;IACjC,kCAAkC;IAClC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAEjE,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACzE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAE7D,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU;IACnC,wEAAwE;AAC1E,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Comprehensive Migration Test: All Versions → v3.6.1 (Using Real Schemas)
3
+ *
4
+ * Tests migration paths from all released versions using actual schema.sql files
5
+ * from git history. This ensures backward compatibility for all users.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=test-all-versions-real.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-all-versions-real.d.ts","sourceRoot":"","sources":["../../../src/tests/migrations/test-all-versions-real.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,234 @@
1
+ /**
2
+ * Comprehensive Migration Test: All Versions → v3.6.1 (Using Real Schemas)
3
+ *
4
+ * Tests migration paths from all released versions using actual schema.sql files
5
+ * from git history. This ensures backward compatibility for all users.
6
+ */
7
+ import Database from 'better-sqlite3';
8
+ import { execSync } from 'child_process';
9
+ import { writeFileSync, existsSync, mkdirSync } from 'fs';
10
+ import { join } from 'path';
11
+ import { initializeDatabase } from '../../database.js';
12
+ // Colors for console output
13
+ const GREEN = '\x1b[32m';
14
+ const RED = '\x1b[31m';
15
+ const BLUE = '\x1b[34m';
16
+ const YELLOW = '\x1b[33m';
17
+ const CYAN = '\x1b[36m';
18
+ const RESET = '\x1b[0m';
19
+ function log(message, color = RESET) {
20
+ console.log(`${color}${message}${RESET}`);
21
+ }
22
+ /**
23
+ * Versions to test (focusing on major versions and critical patches)
24
+ */
25
+ const TEST_VERSIONS = [
26
+ '1.0.0', // Original unprefixed schema
27
+ '1.1.0', // Table prefixes added
28
+ '2.0.0', // Major refactor
29
+ '2.1.4', // Last v2.1.x
30
+ '3.0.2', // Task system introduced
31
+ '3.1.2', // Task refinements
32
+ '3.2.5', // Decision context
33
+ '3.5.3', // VCS-aware features
34
+ '3.6.0', // Help system
35
+ ];
36
+ /**
37
+ * Versions to skip (known schema.sql bugs - migrations work fine in practice)
38
+ */
39
+ const SKIP_VERSIONS = [
40
+ '3.0.2', // Historical schema.sql has malformed INSERT (extra NULL in t_decision_templates)
41
+ // Real users got v3.0.2 via migrations (not schema.sql), so upgrade path works fine
42
+ ];
43
+ const CURRENT_VERSION = '3.6.2';
44
+ /**
45
+ * Extract schema SQL from a git tag
46
+ */
47
+ function getSchemaFromGit(version) {
48
+ try {
49
+ const schema = execSync(`git show v${version}:assets/schema.sql`, { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] });
50
+ return schema;
51
+ }
52
+ catch (error) {
53
+ log(` ⚠️ Could not extract schema.sql for v${version}`, YELLOW);
54
+ return null;
55
+ }
56
+ }
57
+ /**
58
+ * Create a temporary database file with old schema
59
+ */
60
+ function createDatabaseWithOldSchema(version, schema) {
61
+ const tmpDir = join(process.cwd(), '.sqlew', 'tmp', 'migration-tests');
62
+ const dbPath = join(tmpDir, `test-v${version}.db`);
63
+ try {
64
+ // Create temp directory
65
+ if (!existsSync(tmpDir)) {
66
+ mkdirSync(tmpDir, { recursive: true });
67
+ }
68
+ // Create database
69
+ const db = new Database(dbPath);
70
+ db.exec('PRAGMA foreign_keys = ON');
71
+ // Execute schema SQL
72
+ db.exec(schema);
73
+ db.close();
74
+ log(` ✓ Created test database: ${dbPath}`, GREEN);
75
+ return dbPath;
76
+ }
77
+ catch (error) {
78
+ const message = error instanceof Error ? error.message : String(error);
79
+ log(` ❌ Failed to create database: ${message}`, RED);
80
+ return null;
81
+ }
82
+ }
83
+ /**
84
+ * Test migration from a specific version
85
+ */
86
+ async function testMigrationFromVersion(version) {
87
+ log(`\n${'='.repeat(70)}`, BLUE);
88
+ log(`Testing migration: v${version} → v${CURRENT_VERSION}`, BLUE);
89
+ log(`${'='.repeat(70)}`, BLUE);
90
+ // Check if this version should be skipped
91
+ if (SKIP_VERSIONS.includes(version)) {
92
+ log(`\n ⏭️ Skipping v${version} (known schema.sql bug - see SKIP_VERSIONS)`, YELLOW);
93
+ return {
94
+ version,
95
+ success: true, // Mark as success - this is intentional skip
96
+ canExtractSchema: true,
97
+ error: 'Skipped (known schema.sql bug)'
98
+ };
99
+ }
100
+ // Step 1: Extract schema from git
101
+ log(`\n 📦 Extracting schema from git tag v${version}...`, CYAN);
102
+ const schema = getSchemaFromGit(version);
103
+ if (!schema) {
104
+ return {
105
+ version,
106
+ success: false,
107
+ canExtractSchema: false,
108
+ error: 'Could not extract schema from git'
109
+ };
110
+ }
111
+ log(` ✓ Schema extracted (${schema.length} bytes)`, GREEN);
112
+ // Step 2: Create database with old schema
113
+ log(`\n 🔧 Creating database with v${version} schema...`, CYAN);
114
+ const dbPath = createDatabaseWithOldSchema(version, schema);
115
+ if (!dbPath) {
116
+ return {
117
+ version,
118
+ success: false,
119
+ canExtractSchema: true,
120
+ error: 'Failed to create database'
121
+ };
122
+ }
123
+ // Step 3: Run migration by reinitializing
124
+ log(`\n 🔄 Running migrations via initializeDatabase()...`, CYAN);
125
+ try {
126
+ // initializeDatabase with SQLite config pointing to our test database
127
+ await initializeDatabase({
128
+ databaseType: 'sqlite',
129
+ connection: {
130
+ filename: dbPath
131
+ }
132
+ });
133
+ log(` ✅ Migration successful!`, GREEN);
134
+ return {
135
+ version,
136
+ success: true,
137
+ canExtractSchema: true,
138
+ migrationPath: dbPath
139
+ };
140
+ }
141
+ catch (error) {
142
+ const message = error instanceof Error ? error.message : String(error);
143
+ log(` ❌ Migration failed: ${message}`, RED);
144
+ return {
145
+ version,
146
+ success: false,
147
+ canExtractSchema: true,
148
+ error: `Migration failed: ${message}`
149
+ };
150
+ }
151
+ }
152
+ /**
153
+ * Run all migration tests
154
+ */
155
+ async function runAllTests() {
156
+ log('\n' + '='.repeat(70), BLUE);
157
+ log('🧪 COMPREHENSIVE MIGRATION TEST (Real Schemas)', BLUE);
158
+ log(`Testing ${TEST_VERSIONS.length} versions → v${CURRENT_VERSION}`, BLUE);
159
+ log('='.repeat(70) + '\n', BLUE);
160
+ const results = [];
161
+ for (const version of TEST_VERSIONS) {
162
+ const result = await testMigrationFromVersion(version);
163
+ results.push(result);
164
+ // Brief pause between tests
165
+ await new Promise(resolve => setTimeout(resolve, 200));
166
+ }
167
+ // Generate report
168
+ log('\n\n' + '='.repeat(70), BLUE);
169
+ log('📊 TEST RESULTS SUMMARY', BLUE);
170
+ log('='.repeat(70) + '\n', BLUE);
171
+ const successful = results.filter(r => r.success && r.error !== 'Skipped (known schema.sql bug)');
172
+ const skipped = results.filter(r => r.success && r.error === 'Skipped (known schema.sql bug)');
173
+ const failed = results.filter(r => !r.success);
174
+ const noSchema = results.filter(r => !r.canExtractSchema);
175
+ log(`Total tests: ${results.length}`, CYAN);
176
+ log(`✅ Successful migrations: ${successful.length}`, GREEN);
177
+ log(`⏭️ Skipped (known bugs): ${skipped.length}`, skipped.length > 0 ? YELLOW : GREEN);
178
+ log(`❌ Failed migrations: ${failed.filter(r => r.canExtractSchema).length}`, failed.filter(r => r.canExtractSchema).length > 0 ? RED : GREEN);
179
+ log(`⚠️ No schema available: ${noSchema.length}`, noSchema.length > 0 ? YELLOW : GREEN);
180
+ if (failed.filter(r => r.canExtractSchema).length > 0) {
181
+ log('\n❌ Failed migrations:', RED);
182
+ failed.filter(r => r.canExtractSchema).forEach(r => {
183
+ log(` - v${r.version}: ${r.error}`, RED);
184
+ });
185
+ }
186
+ if (noSchema.length > 0) {
187
+ log('\n⚠️ Versions without schema.sql:', YELLOW);
188
+ noSchema.forEach(r => {
189
+ log(` - v${r.version}`, YELLOW);
190
+ });
191
+ }
192
+ if (skipped.length > 0) {
193
+ log('\n⏭️ Skipped versions (known schema.sql bugs):', YELLOW);
194
+ skipped.forEach(r => {
195
+ log(` - v${r.version} (${r.error})`, YELLOW);
196
+ });
197
+ }
198
+ log('\n✅ Successful migrations:', GREEN);
199
+ successful.forEach(r => {
200
+ log(` - v${r.version}`, GREEN);
201
+ });
202
+ // Save detailed results
203
+ const reportPath = join(process.cwd(), '.sqlew', 'tmp', 'real-migration-test-report.json');
204
+ try {
205
+ const reportDir = join(process.cwd(), '.sqlew', 'tmp');
206
+ if (!existsSync(reportDir)) {
207
+ mkdirSync(reportDir, { recursive: true });
208
+ }
209
+ writeFileSync(reportPath, JSON.stringify(results, null, 2));
210
+ log(`\n📄 Detailed report saved to: ${reportPath}`, CYAN);
211
+ }
212
+ catch (error) {
213
+ log(`\n⚠️ Could not save report: ${error}`, YELLOW);
214
+ }
215
+ log('\n' + '='.repeat(70) + '\n', BLUE);
216
+ return failed.filter(r => r.canExtractSchema).length === 0;
217
+ }
218
+ // Run tests
219
+ runAllTests().then(success => {
220
+ if (success) {
221
+ log('🎉 ALL MIGRATION TESTS PASSED!', GREEN);
222
+ log('(Versions without schema.sql are expected and not counted as failures)', CYAN);
223
+ process.exit(0);
224
+ }
225
+ else {
226
+ log('❌ SOME MIGRATION TESTS FAILED!', RED);
227
+ process.exit(1);
228
+ }
229
+ }).catch(error => {
230
+ log(`\n❌ Fatal error: ${error}`, RED);
231
+ console.error(error);
232
+ process.exit(1);
233
+ });
234
+ //# sourceMappingURL=test-all-versions-real.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-all-versions-real.js","sourceRoot":"","sources":["../../../src/tests/migrations/test-all-versions-real.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Comprehensive Migration Test: All Versions → v3.6.1
3
+ *
4
+ * Tests migration paths from all released versions to the current version.
5
+ * This ensures backward compatibility and safe upgrade paths for all users.
6
+ *
7
+ * Released versions tested:
8
+ * - v1.x: 1.0.0, 1.1.0, 1.1.1, 1.1.2
9
+ * - v2.x: 2.0.0, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4
10
+ * - v3.0-v3.2: 3.0.2, 3.1.0, 3.1.1, 3.1.2, 3.2.2, 3.2.4, 3.2.5
11
+ * - v3.5-v3.6: 3.5.3, 3.6.0
12
+ */
13
+ export {};
14
+ //# sourceMappingURL=test-all-versions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-all-versions.d.ts","sourceRoot":"","sources":["../../../src/tests/migrations/test-all-versions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}