sqlew 3.6.10 → 3.7.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 (370) hide show
  1. package/CHANGELOG.md +318 -0
  2. package/README.md +54 -39
  3. package/assets/config.example.toml +93 -0
  4. package/assets/kanban-visualizer.png +0 -0
  5. package/assets/sample-agents/sqlew-architect.md +32 -13
  6. package/assets/sample-agents/sqlew-researcher.md +70 -17
  7. package/assets/sample-agents/sqlew-scrum-master.md +60 -25
  8. package/assets/schema.sql +2 -2
  9. package/dist/adapters/auth/auth-factory.d.ts +86 -0
  10. package/dist/adapters/auth/auth-factory.d.ts.map +1 -0
  11. package/dist/adapters/auth/auth-factory.js +103 -0
  12. package/dist/adapters/auth/auth-factory.js.map +1 -0
  13. package/dist/adapters/auth/auth-types.d.ts +30 -0
  14. package/dist/adapters/auth/auth-types.d.ts.map +1 -0
  15. package/dist/adapters/auth/auth-types.js +30 -0
  16. package/dist/adapters/auth/auth-types.js.map +1 -0
  17. package/dist/adapters/auth/base-auth-provider.d.ts +327 -0
  18. package/dist/adapters/auth/base-auth-provider.d.ts.map +1 -0
  19. package/dist/adapters/auth/base-auth-provider.js +111 -0
  20. package/dist/adapters/auth/base-auth-provider.js.map +1 -0
  21. package/dist/adapters/auth/direct-auth-provider.d.ts +356 -0
  22. package/dist/adapters/auth/direct-auth-provider.d.ts.map +1 -0
  23. package/dist/adapters/auth/direct-auth-provider.js +406 -0
  24. package/dist/adapters/auth/direct-auth-provider.js.map +1 -0
  25. package/dist/adapters/base-adapter.d.ts +638 -0
  26. package/dist/adapters/base-adapter.d.ts.map +1 -0
  27. package/dist/adapters/base-adapter.js +557 -0
  28. package/dist/adapters/base-adapter.js.map +1 -0
  29. package/dist/adapters/index.d.ts +13 -2
  30. package/dist/adapters/index.d.ts.map +1 -1
  31. package/dist/adapters/index.js +27 -5
  32. package/dist/adapters/index.js.map +1 -1
  33. package/dist/adapters/mysql-adapter.d.ts +547 -6
  34. package/dist/adapters/mysql-adapter.d.ts.map +1 -1
  35. package/dist/adapters/mysql-adapter.js +651 -32
  36. package/dist/adapters/mysql-adapter.js.map +1 -1
  37. package/dist/adapters/postgresql-adapter.d.ts +15 -4
  38. package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
  39. package/dist/adapters/postgresql-adapter.js +19 -2
  40. package/dist/adapters/postgresql-adapter.js.map +1 -1
  41. package/dist/adapters/sqlite-adapter.d.ts +35 -5
  42. package/dist/adapters/sqlite-adapter.d.ts.map +1 -1
  43. package/dist/adapters/sqlite-adapter.js +57 -18
  44. package/dist/adapters/sqlite-adapter.js.map +1 -1
  45. package/dist/cli/db-dump.d.ts +32 -0
  46. package/dist/cli/db-dump.d.ts.map +1 -0
  47. package/dist/cli/db-dump.js +409 -0
  48. package/dist/cli/db-dump.js.map +1 -0
  49. package/dist/cli.js +24 -14
  50. package/dist/cli.js.map +1 -1
  51. package/dist/config/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +1 -0
  52. package/dist/{migrations → config}/knex/bootstrap/20251025020452_create_master_tables.js +7 -2
  53. package/dist/config/knex/bootstrap/20251025020452_create_master_tables.js.map +1 -0
  54. package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +1 -0
  55. package/dist/{migrations → config}/knex/bootstrap/20251025021152_create_transaction_tables.js +49 -50
  56. package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.js.map +1 -0
  57. package/dist/config/knex/bootstrap/20251025021351_create_indexes.d.ts.map +1 -0
  58. package/dist/config/knex/bootstrap/20251025021351_create_indexes.js.map +1 -0
  59. package/dist/config/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +1 -0
  60. package/dist/{migrations → config}/knex/bootstrap/20251025021416_seed_master_data.js +11 -6
  61. package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js.map +1 -0
  62. package/dist/config/knex/bootstrap/20251025070349_create_views.d.ts.map +1 -0
  63. package/dist/{migrations → config}/knex/bootstrap/20251025070349_create_views.js +66 -14
  64. package/dist/config/knex/bootstrap/20251025070349_create_views.js.map +1 -0
  65. package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
  66. package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js +22 -0
  67. package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
  68. package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
  69. package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.js.map +1 -0
  70. package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.d.ts.map +1 -0
  71. package/dist/{migrations → config}/knex/enhancements/20251025090000_create_help_system_tables.js +6 -0
  72. package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.js.map +1 -0
  73. package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
  74. package/dist/{migrations → config}/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js +6 -0
  75. package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
  76. package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.d.ts.map +1 -0
  77. package/dist/{migrations → config}/knex/enhancements/20251025100000_seed_help_metadata.js +6 -0
  78. package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.js.map +1 -0
  79. package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
  80. package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.js.map +1 -0
  81. package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
  82. package/dist/{migrations → config}/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js +7 -0
  83. package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
  84. package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts.map +1 -0
  85. package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.js +62 -0
  86. package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.js.map +1 -0
  87. package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts.map +1 -0
  88. package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js.map +1 -0
  89. package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.d.ts.map +1 -0
  90. package/dist/{migrations → config}/knex/enhancements/20251027020000_update_agent_reusability.js +6 -0
  91. package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.js.map +1 -0
  92. package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +1 -0
  93. package/dist/{migrations → config}/knex/enhancements/20251028000000_simplify_agent_system.js +6 -0
  94. package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js.map +1 -0
  95. package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.d.ts +13 -0
  96. package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.d.ts.map +1 -0
  97. package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.js +48 -0
  98. package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.js.map +1 -0
  99. package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.d.ts +24 -0
  100. package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.d.ts.map +1 -0
  101. package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.js +189 -0
  102. package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.js.map +1 -0
  103. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts +16 -0
  104. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts.map +1 -0
  105. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js +65 -0
  106. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js.map +1 -0
  107. package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts +23 -0
  108. package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts.map +1 -0
  109. package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.js +118 -0
  110. package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.js.map +1 -0
  111. package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +1 -0
  112. package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js.map +1 -0
  113. package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +1 -0
  114. package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js.map +1 -0
  115. package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +1 -0
  116. package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js.map +1 -0
  117. package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +1 -0
  118. package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js.map +1 -0
  119. package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +1 -0
  120. package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +1 -0
  121. package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +1 -0
  122. package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js.map +1 -0
  123. package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +1 -0
  124. package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js.map +1 -0
  125. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts +49 -0
  126. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts.map +1 -0
  127. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js +864 -0
  128. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js.map +1 -0
  129. package/dist/config/loader.d.ts +19 -1
  130. package/dist/config/loader.d.ts.map +1 -1
  131. package/dist/config/loader.js +149 -4
  132. package/dist/config/loader.js.map +1 -1
  133. package/dist/config/types.d.ts +261 -2
  134. package/dist/config/types.d.ts.map +1 -1
  135. package/dist/config/types.js.map +1 -1
  136. package/dist/config/writer.d.ts +65 -0
  137. package/dist/config/writer.d.ts.map +1 -0
  138. package/dist/config/writer.js +139 -0
  139. package/dist/config/writer.js.map +1 -0
  140. package/dist/database.d.ts +11 -2
  141. package/dist/database.d.ts.map +1 -1
  142. package/dist/database.js +62 -6
  143. package/dist/database.js.map +1 -1
  144. package/dist/index.js +165 -35
  145. package/dist/index.js.map +1 -1
  146. package/dist/knexfile.d.ts.map +1 -1
  147. package/dist/knexfile.js +88 -12
  148. package/dist/knexfile.js.map +1 -1
  149. package/dist/tests/all-features.test.js +15 -3
  150. package/dist/tests/all-features.test.js.map +1 -1
  151. package/dist/tests/config-loader.test.d.ts +6 -0
  152. package/dist/tests/config-loader.test.d.ts.map +1 -0
  153. package/dist/tests/config-loader.test.js +201 -0
  154. package/dist/tests/config-loader.test.js.map +1 -0
  155. package/dist/tests/connection-manager-integration.test.d.ts +2 -0
  156. package/dist/tests/connection-manager-integration.test.d.ts.map +1 -0
  157. package/dist/tests/connection-manager-integration.test.js +431 -0
  158. package/dist/tests/connection-manager-integration.test.js.map +1 -0
  159. package/dist/tests/connection-manager.test.d.ts +2 -0
  160. package/dist/tests/connection-manager.test.d.ts.map +1 -0
  161. package/dist/tests/connection-manager.test.js +361 -0
  162. package/dist/tests/connection-manager.test.js.map +1 -0
  163. package/dist/tests/dump-import.test.d.ts +15 -0
  164. package/dist/tests/dump-import.test.d.ts.map +1 -0
  165. package/dist/tests/dump-import.test.js +430 -0
  166. package/dist/tests/dump-import.test.js.map +1 -0
  167. package/dist/tests/migration-idempotency.test.d.ts +2 -0
  168. package/dist/tests/migration-idempotency.test.d.ts.map +1 -0
  169. package/dist/tests/migration-idempotency.test.js +330 -0
  170. package/dist/tests/migration-idempotency.test.js.map +1 -0
  171. package/dist/tests/migration-upgrade-paths.test.d.ts +2 -0
  172. package/dist/tests/migration-upgrade-paths.test.d.ts.map +1 -0
  173. package/dist/tests/migration-upgrade-paths.test.js +248 -0
  174. package/dist/tests/migration-upgrade-paths.test.js.map +1 -0
  175. package/dist/tests/multi-project-migration.test.d.ts +17 -0
  176. package/dist/tests/multi-project-migration.test.d.ts.map +1 -0
  177. package/dist/tests/multi-project-migration.test.js +399 -0
  178. package/dist/tests/multi-project-migration.test.js.map +1 -0
  179. package/dist/tests/multi-project.test.d.ts +5 -0
  180. package/dist/tests/multi-project.test.d.ts.map +1 -0
  181. package/dist/tests/multi-project.test.js +238 -0
  182. package/dist/tests/multi-project.test.js.map +1 -0
  183. package/dist/tests/schema-migration.test.d.ts +8 -0
  184. package/dist/tests/schema-migration.test.d.ts.map +1 -0
  185. package/dist/tests/schema-migration.test.js +108 -0
  186. package/dist/tests/schema-migration.test.js.map +1 -0
  187. package/dist/tests/sql-dump-converters.test.d.ts +7 -0
  188. package/dist/tests/sql-dump-converters.test.d.ts.map +1 -0
  189. package/dist/tests/sql-dump-converters.test.js +314 -0
  190. package/dist/tests/sql-dump-converters.test.js.map +1 -0
  191. package/dist/tests/sql-dump-cross-database.test.d.ts +21 -0
  192. package/dist/tests/sql-dump-cross-database.test.d.ts.map +1 -0
  193. package/dist/tests/sql-dump-cross-database.test.js +314 -0
  194. package/dist/tests/sql-dump-cross-database.test.js.map +1 -0
  195. package/dist/tests/sql-dump-default-conversions.test.d.ts +8 -0
  196. package/dist/tests/sql-dump-default-conversions.test.d.ts.map +1 -0
  197. package/dist/tests/sql-dump-default-conversions.test.js +141 -0
  198. package/dist/tests/sql-dump-default-conversions.test.js.map +1 -0
  199. package/dist/tests/sql-dump-fk-constraints.test.d.ts +13 -0
  200. package/dist/tests/sql-dump-fk-constraints.test.d.ts.map +1 -0
  201. package/dist/tests/sql-dump-fk-constraints.test.js +381 -0
  202. package/dist/tests/sql-dump-fk-constraints.test.js.map +1 -0
  203. package/dist/tests/sql-dump-indexes.test.d.ts +12 -0
  204. package/dist/tests/sql-dump-indexes.test.d.ts.map +1 -0
  205. package/dist/tests/sql-dump-indexes.test.js +269 -0
  206. package/dist/tests/sql-dump-indexes.test.js.map +1 -0
  207. package/dist/tests/sql-dump-integration.test.d.ts +16 -0
  208. package/dist/tests/sql-dump-integration.test.d.ts.map +1 -0
  209. package/dist/tests/sql-dump-integration.test.js +342 -0
  210. package/dist/tests/sql-dump-integration.test.js.map +1 -0
  211. package/dist/tests/sql-dump-table-ordering.test.d.ts +8 -0
  212. package/dist/tests/sql-dump-table-ordering.test.d.ts.map +1 -0
  213. package/dist/tests/sql-dump-table-ordering.test.js +253 -0
  214. package/dist/tests/sql-dump-table-ordering.test.js.map +1 -0
  215. package/dist/tests/tasks.link-file-backward-compat.test.js +11 -1
  216. package/dist/tests/tasks.link-file-backward-compat.test.js.map +1 -1
  217. package/dist/tests/tasks.watch-files-action.test.js +11 -1
  218. package/dist/tests/tasks.watch-files-action.test.js.map +1 -1
  219. package/dist/tests/type-conversion.test.d.ts +8 -0
  220. package/dist/tests/type-conversion.test.d.ts.map +1 -0
  221. package/dist/tests/type-conversion.test.js +312 -0
  222. package/dist/tests/type-conversion.test.js.map +1 -0
  223. package/dist/tests/utils/test-helpers.d.ts +93 -0
  224. package/dist/tests/utils/test-helpers.d.ts.map +1 -0
  225. package/dist/tests/utils/test-helpers.js +407 -0
  226. package/dist/tests/utils/test-helpers.js.map +1 -0
  227. package/dist/tools/config.d.ts +58 -0
  228. package/dist/tools/config.d.ts.map +1 -0
  229. package/dist/tools/config.js +281 -0
  230. package/dist/tools/config.js.map +1 -0
  231. package/dist/tools/constraints.d.ts.map +1 -1
  232. package/dist/tools/constraints.js +138 -122
  233. package/dist/tools/constraints.js.map +1 -1
  234. package/dist/tools/context.d.ts.map +1 -1
  235. package/dist/tools/context.js +216 -109
  236. package/dist/tools/context.js.map +1 -1
  237. package/dist/tools/files.d.ts.map +1 -1
  238. package/dist/tools/files.js +123 -102
  239. package/dist/tools/files.js.map +1 -1
  240. package/dist/tools/tasks.d.ts.map +1 -1
  241. package/dist/tools/tasks.js +581 -518
  242. package/dist/tools/tasks.js.map +1 -1
  243. package/dist/tools/utils.d.ts +5 -0
  244. package/dist/tools/utils.d.ts.map +1 -1
  245. package/dist/tools/utils.js +176 -122
  246. package/dist/tools/utils.js.map +1 -1
  247. package/dist/types.d.ts +9 -26
  248. package/dist/types.d.ts.map +1 -1
  249. package/dist/utils/cleanup.d.ts +3 -0
  250. package/dist/utils/cleanup.d.ts.map +1 -1
  251. package/dist/utils/cleanup.js +14 -2
  252. package/dist/utils/cleanup.js.map +1 -1
  253. package/dist/utils/connection-manager.d.ts +59 -0
  254. package/dist/utils/connection-manager.d.ts.map +1 -0
  255. package/dist/utils/connection-manager.js +178 -0
  256. package/dist/utils/connection-manager.js.map +1 -0
  257. package/dist/utils/debug-logger.d.ts +8 -4
  258. package/dist/utils/debug-logger.d.ts.map +1 -1
  259. package/dist/utils/debug-logger.js +27 -7
  260. package/dist/utils/debug-logger.js.map +1 -1
  261. package/dist/utils/error-handler.d.ts +2 -2
  262. package/dist/utils/error-handler.d.ts.map +1 -1
  263. package/dist/utils/error-handler.js +10 -7
  264. package/dist/utils/error-handler.js.map +1 -1
  265. package/dist/utils/parameter-validator.d.ts.map +1 -1
  266. package/dist/utils/parameter-validator.js +36 -15
  267. package/dist/utils/parameter-validator.js.map +1 -1
  268. package/dist/utils/project-context.d.ts +111 -0
  269. package/dist/utils/project-context.d.ts.map +1 -0
  270. package/dist/utils/project-context.js +187 -0
  271. package/dist/utils/project-context.js.map +1 -0
  272. package/dist/utils/sql-dump-converters.d.ts +188 -0
  273. package/dist/utils/sql-dump-converters.d.ts.map +1 -0
  274. package/dist/utils/sql-dump-converters.js +311 -0
  275. package/dist/utils/sql-dump-converters.js.map +1 -0
  276. package/dist/utils/sql-dump.d.ts +102 -0
  277. package/dist/utils/sql-dump.d.ts.map +1 -0
  278. package/dist/utils/sql-dump.js +1550 -0
  279. package/dist/utils/sql-dump.js.map +1 -0
  280. package/dist/utils/vcs-adapter.d.ts +42 -0
  281. package/dist/utils/vcs-adapter.d.ts.map +1 -1
  282. package/dist/utils/vcs-adapter.js +154 -0
  283. package/dist/utils/vcs-adapter.js.map +1 -1
  284. package/docs/BASEADAPTER_IMPLEMENTATION.md +399 -0
  285. package/docs/DATABASE_AUTH.md +445 -0
  286. package/docs/DATABASE_MIGRATION.md +247 -0
  287. package/docs/MULTI_PROJECT_ARCHITECTURE.md +497 -0
  288. package/package.json +12 -4
  289. package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +0 -1
  290. package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.js.map +0 -1
  291. package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +0 -1
  292. package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.js.map +0 -1
  293. package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.d.ts.map +0 -1
  294. package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.js.map +0 -1
  295. package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +0 -1
  296. package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.js.map +0 -1
  297. package/dist/migrations/knex/bootstrap/20251025070349_create_views.d.ts.map +0 -1
  298. package/dist/migrations/knex/bootstrap/20251025070349_create_views.js.map +0 -1
  299. package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts.map +0 -1
  300. package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js +0 -15
  301. package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js.map +0 -1
  302. package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts.map +0 -1
  303. package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.js.map +0 -1
  304. package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.d.ts.map +0 -1
  305. package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.js.map +0 -1
  306. package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts.map +0 -1
  307. package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js.map +0 -1
  308. package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.d.ts.map +0 -1
  309. package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.js.map +0 -1
  310. package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts.map +0 -1
  311. package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.js.map +0 -1
  312. package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts.map +0 -1
  313. package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js.map +0 -1
  314. package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts.map +0 -1
  315. package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.js +0 -34
  316. package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.js.map +0 -1
  317. package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts.map +0 -1
  318. package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js.map +0 -1
  319. package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.d.ts.map +0 -1
  320. package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.js.map +0 -1
  321. package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +0 -1
  322. package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.js.map +0 -1
  323. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +0 -1
  324. package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js.map +0 -1
  325. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +0 -1
  326. package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js.map +0 -1
  327. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +0 -1
  328. package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js.map +0 -1
  329. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +0 -1
  330. package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js.map +0 -1
  331. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +0 -1
  332. package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +0 -1
  333. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +0 -1
  334. package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js.map +0 -1
  335. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +0 -1
  336. package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js.map +0 -1
  337. /package/dist/{migrations → config}/knex/bootstrap/20251025020452_create_master_tables.d.ts +0 -0
  338. /package/dist/{migrations → config}/knex/bootstrap/20251025021152_create_transaction_tables.d.ts +0 -0
  339. /package/dist/{migrations → config}/knex/bootstrap/20251025021351_create_indexes.d.ts +0 -0
  340. /package/dist/{migrations → config}/knex/bootstrap/20251025021351_create_indexes.js +0 -0
  341. /package/dist/{migrations → config}/knex/bootstrap/20251025021416_seed_master_data.d.ts +0 -0
  342. /package/dist/{migrations → config}/knex/bootstrap/20251025070349_create_views.d.ts +0 -0
  343. /package/dist/{migrations → config}/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts +0 -0
  344. /package/dist/{migrations → config}/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts +0 -0
  345. /package/dist/{migrations → config}/knex/enhancements/20251025082220_fix_task_dependencies_columns.js +0 -0
  346. /package/dist/{migrations → config}/knex/enhancements/20251025090000_create_help_system_tables.d.ts +0 -0
  347. /package/dist/{migrations → config}/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts +0 -0
  348. /package/dist/{migrations → config}/knex/enhancements/20251025100000_seed_help_metadata.d.ts +0 -0
  349. /package/dist/{migrations → config}/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts +0 -0
  350. /package/dist/{migrations → config}/knex/enhancements/20251025100100_seed_remaining_use_cases.js +0 -0
  351. /package/dist/{migrations → config}/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts +0 -0
  352. /package/dist/{migrations → config}/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts +0 -0
  353. /package/dist/{migrations → config}/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts +0 -0
  354. /package/dist/{migrations → config}/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js +0 -0
  355. /package/dist/{migrations → config}/knex/enhancements/20251027020000_update_agent_reusability.d.ts +0 -0
  356. /package/dist/{migrations → config}/knex/enhancements/20251028000000_simplify_agent_system.d.ts +0 -0
  357. /package/dist/{migrations → config}/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts +0 -0
  358. /package/dist/{migrations → config}/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js +0 -0
  359. /package/dist/{migrations → config}/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts +0 -0
  360. /package/dist/{migrations → config}/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js +0 -0
  361. /package/dist/{migrations → config}/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts +0 -0
  362. /package/dist/{migrations → config}/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js +0 -0
  363. /package/dist/{migrations → config}/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts +0 -0
  364. /package/dist/{migrations → config}/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js +0 -0
  365. /package/dist/{migrations → config}/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts +0 -0
  366. /package/dist/{migrations → config}/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js +0 -0
  367. /package/dist/{migrations → config}/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts +0 -0
  368. /package/dist/{migrations → config}/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js +0 -0
  369. /package/dist/{migrations → config}/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts +0 -0
  370. /package/dist/{migrations → config}/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js +0 -0
package/dist/index.js CHANGED
@@ -8,7 +8,10 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
8
8
  import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
9
9
  import { initializeDatabase, closeDatabase, setConfigValue, getAllConfig, getAdapter } from './database.js';
10
10
  import { CONFIG_KEYS } from './constants.js';
11
- import { loadConfigFile } from './config/loader.js';
11
+ import { loadConfigFile, DEFAULT_CONFIG_PATH } from './config/loader.js';
12
+ import { ensureProjectConfig } from './config/writer.js';
13
+ import { ProjectContext } from './utils/project-context.js';
14
+ import { detectVCS } from './utils/vcs-adapter.js';
12
15
  import { setDecision, getContext, getDecision, searchByTags, getVersions, searchByLayer, quickSetDecision, searchAdvanced, setDecisionBatch, hasUpdates, setFromTemplate, createTemplate, listTemplates, hardDeleteDecision, addDecisionContextAction, listDecisionContextsAction, decisionHelp, decisionExample } from './tools/context.js';
13
16
  import { sendMessage, getMessages, markRead, sendMessageBatch, messageHelp, messageExample } from './tools/messaging.js';
14
17
  import { recordFileChange, getFileChanges, checkFileLock, recordFileChangeBatch, fileHelp, fileExample } from './tools/files.js';
@@ -27,7 +30,13 @@ const args = process.argv.slice(2);
27
30
  const parsedArgs = {};
28
31
  for (let i = 0; i < args.length; i++) {
29
32
  const arg = args[i];
30
- if (arg.startsWith('--db-path=')) {
33
+ if (arg.startsWith('--config=')) {
34
+ parsedArgs.configPath = arg.split('=')[1];
35
+ }
36
+ else if (arg === '--config' && i + 1 < args.length) {
37
+ parsedArgs.configPath = args[++i];
38
+ }
39
+ else if (arg.startsWith('--db-path=')) {
31
40
  parsedArgs.dbPath = arg.split('=')[1];
32
41
  }
33
42
  else if (arg === '--db-path' && i + 1 < args.length) {
@@ -64,6 +73,12 @@ for (let i = 0; i < args.length; i++) {
64
73
  else if (arg === '--debug-log' && i + 1 < args.length) {
65
74
  parsedArgs.debugLogPath = args[++i];
66
75
  }
76
+ else if (arg.startsWith('--project-name=')) {
77
+ parsedArgs.projectName = arg.split('=')[1];
78
+ }
79
+ else if (arg === '--project-name' && i + 1 < args.length) {
80
+ parsedArgs.projectName = args[++i];
81
+ }
67
82
  else if (!arg.startsWith('--')) {
68
83
  // Backward compatibility: first non-flag argument is dbPath
69
84
  if (!parsedArgs.dbPath) {
@@ -71,29 +86,9 @@ for (let i = 0; i < args.length; i++) {
71
86
  }
72
87
  }
73
88
  }
74
- // Determine project root with correct priority order
75
- // Phase 1: Try to determine from CLI arguments only (absolute paths)
76
- const initialProjectRoot = determineProjectRoot({
77
- cliDbPath: parsedArgs.dbPath,
78
- cliConfigPath: parsedArgs.configPath,
79
- });
80
- // Phase 2: Load config file from determined project root
81
- const fileConfig = loadConfigFile(initialProjectRoot, parsedArgs.configPath);
82
- // Phase 3: Refine project root if config has absolute database.path
83
- const finalProjectRoot = determineProjectRoot({
84
- cliDbPath: parsedArgs.dbPath,
85
- cliConfigPath: parsedArgs.configPath,
86
- configDbPath: fileConfig.database?.path,
87
- });
88
- // Ensure .sqlew directory exists in the correct project root
89
- // This must happen BEFORE database initialization to prevent System32 errors
90
- ensureSqlewDirectory(finalProjectRoot);
91
- // Determine final database path
92
- // Priority: CLI --db-path > config file database.path > default
93
- const dbPath = parsedArgs.dbPath || fileConfig.database?.path;
94
89
  // Initialize database (will be set after async init completes)
95
90
  let db;
96
- // Create MCP server
91
+ // Create MCP server (will be initialized in main())
97
92
  const server = new Server({
98
93
  name: 'mcp-sqlew',
99
94
  version: '3.6.6',
@@ -641,12 +636,73 @@ setupGlobalErrorHandlers(() => {
641
636
  });
642
637
  // Start server with stdio transport
643
638
  async function main() {
639
+ let debugLoggerInitialized = false;
644
640
  try {
645
- // 1. Initialize database (SILENT - no stderr writes yet)
641
+ // 0. Determine project root and load config (BEFORE logger init)
642
+ // This must happen first to get debug log path from config
643
+ const initialProjectRoot = determineProjectRoot({
644
+ cliDbPath: parsedArgs.dbPath,
645
+ cliConfigPath: parsedArgs.configPath,
646
+ });
647
+ const fileConfig = loadConfigFile(initialProjectRoot, parsedArgs.configPath);
648
+ const finalProjectRoot = determineProjectRoot({
649
+ cliDbPath: parsedArgs.dbPath,
650
+ cliConfigPath: parsedArgs.configPath,
651
+ configDbPath: fileConfig.database?.path,
652
+ });
653
+ ensureSqlewDirectory(finalProjectRoot);
654
+ // Determine final database path
655
+ // Priority: CLI --db-path > config file database.path > default
656
+ const dbPath = parsedArgs.dbPath || fileConfig.database?.path;
657
+ // 1. Initialize debug logger (file-based logging, after config loaded)
658
+ // Priority: CLI arg > environment variable > config file
659
+ const debugLogPath = parsedArgs.debugLogPath || process.env.SQLEW_DEBUG || fileConfig.debug?.log_path;
660
+ const debugLogLevel = fileConfig.debug?.log_level || 'info';
661
+ initDebugLogger(debugLogPath, debugLogLevel);
662
+ debugLoggerInitialized = true;
663
+ debugLog('INFO', 'Project root determined', { finalProjectRoot });
664
+ debugLog('INFO', 'Config loaded', { dbPath });
665
+ // 2. Initialize database (SILENT - no stderr writes yet)
646
666
  // Note: .sqlew directory already created above with correct project root
647
- const config = dbPath ? { connection: { filename: dbPath } } : undefined;
648
- db = await initializeDatabase(config);
649
- // 2. Apply CLI config overrides (SILENT)
667
+ // Build config from fileConfig (which includes database type and auth for multi-RDBMS)
668
+ const isExplicitRDBMS = fileConfig.database?.type === 'mysql'
669
+ || fileConfig.database?.type === 'postgres';
670
+ if (isExplicitRDBMS) {
671
+ // User explicitly configured MySQL/PostgreSQL
672
+ // Note: Config uses 'postgres' but initializeDatabase expects 'postgresql'
673
+ const dbType = fileConfig.database.type === 'postgres' ? 'postgresql' : fileConfig.database.type;
674
+ const config = {
675
+ databaseType: dbType,
676
+ connection: {
677
+ ...fileConfig.database.connection,
678
+ user: fileConfig.database.auth?.user,
679
+ password: fileConfig.database.auth?.password,
680
+ },
681
+ };
682
+ try {
683
+ db = await initializeDatabase(config);
684
+ // Test connection immediately - fail fast if connection is bad
685
+ await db.getKnex().raw('SELECT 1');
686
+ debugLog('INFO', `Successfully connected to ${config.databaseType}`);
687
+ }
688
+ catch (error) {
689
+ // Connection failed - EXIT WITHOUT SQLITE FALLBACK
690
+ const errorMsg = `❌ Failed to connect to ${config.databaseType}: ${error.message}`;
691
+ debugLog('ERROR', errorMsg, { error, stack: error.stack });
692
+ console.error(errorMsg);
693
+ console.error('Please check your .sqlew/config.toml database configuration and try again.');
694
+ console.error('Connection details: host=' + config.connection.host + ', database=' + config.connection.database);
695
+ process.exit(1);
696
+ }
697
+ }
698
+ else {
699
+ // SQLite (default or explicit) - backwards compatible behavior
700
+ const config = dbPath
701
+ ? { connection: { filename: dbPath } }
702
+ : undefined;
703
+ db = await initializeDatabase(config);
704
+ }
705
+ // 3. Apply CLI config overrides (SILENT)
650
706
  if (parsedArgs.autodeleteIgnoreWeekend !== undefined) {
651
707
  await setConfigValue(db, CONFIG_KEYS.AUTODELETE_IGNORE_WEEKEND, parsedArgs.autodeleteIgnoreWeekend ? '1' : '0');
652
708
  }
@@ -656,18 +712,84 @@ async function main() {
656
712
  if (parsedArgs.autodeleteFileHistoryDays !== undefined) {
657
713
  await setConfigValue(db, CONFIG_KEYS.AUTODELETE_FILE_HISTORY_DAYS, String(parsedArgs.autodeleteFileHistoryDays));
658
714
  }
659
- // 3. Read config values for diagnostics (SILENT)
715
+ // 4. Read config values for diagnostics (SILENT)
660
716
  const configValues = await getAllConfig(db);
661
717
  const ignoreWeekend = configValues[CONFIG_KEYS.AUTODELETE_IGNORE_WEEKEND] === '1';
662
718
  const messageHours = configValues[CONFIG_KEYS.AUTODELETE_MESSAGE_HOURS];
663
719
  const fileHistoryDays = configValues[CONFIG_KEYS.AUTODELETE_FILE_HISTORY_DAYS];
664
- // 4. Initialize debug logger EARLY (file-based logging, no stderr)
665
- // Priority: CLI arg > environment variable > config file
666
- const debugLogPath = parsedArgs.debugLogPath || process.env.SQLEW_DEBUG || fileConfig.debug?.log_path;
667
- const debugLogLevel = fileConfig.debug?.log_level || 'info';
668
- initDebugLogger(debugLogPath, debugLogLevel);
720
+ // 4.5. Initialize ProjectContext (v3.7.0+ multi-project support)
721
+ // Must happen AFTER database init, BEFORE server.connect()
722
+ // Satisfies Constraints #23, #24, #41
723
+ const knex = getAdapter().getKnex();
724
+ let projectName;
725
+ let detectionSource = 'directory';
726
+ // Priority order: CLI --project-name > config.toml > git remote > directory name
727
+ if (parsedArgs.projectName) {
728
+ // CLI argument takes highest priority (for testing/override scenarios)
729
+ projectName = parsedArgs.projectName;
730
+ detectionSource = 'cli';
731
+ debugLog('INFO', 'Project name from CLI argument', { projectName });
732
+ }
733
+ else if (fileConfig.project?.name) {
734
+ // Config.toml is authoritative source (Constraint #24)
735
+ projectName = fileConfig.project.name;
736
+ detectionSource = 'config';
737
+ debugLog('INFO', 'Project name from config.toml', { projectName });
738
+ }
739
+ else {
740
+ // Detect from VCS or directory
741
+ const vcsAdapter = await detectVCS(finalProjectRoot);
742
+ if (vcsAdapter) {
743
+ const detectedName = await vcsAdapter.extractProjectName();
744
+ if (detectedName) {
745
+ projectName = detectedName;
746
+ detectionSource = 'git';
747
+ debugLog('INFO', 'Project name detected from VCS', { projectName, vcs: vcsAdapter.getVCSType() });
748
+ }
749
+ else {
750
+ // Fallback to directory name
751
+ const dirSegments = finalProjectRoot.split('/').filter(s => s.length > 0);
752
+ projectName = dirSegments[dirSegments.length - 1] || 'default';
753
+ detectionSource = 'directory';
754
+ debugLog('INFO', 'Project name from directory', { projectName });
755
+ }
756
+ }
757
+ else {
758
+ // No VCS detected, use directory name
759
+ const dirSegments = finalProjectRoot.split('/').filter(s => s.length > 0);
760
+ projectName = dirSegments[dirSegments.length - 1] || 'default';
761
+ detectionSource = 'directory';
762
+ debugLog('INFO', 'Project name from directory (no VCS)', { projectName });
763
+ }
764
+ // Write to config.toml if not present AND not CLI override (Constraint #23)
765
+ // Don't write if CLI override is used (temporary override scenario)
766
+ if (!parsedArgs.projectName) {
767
+ const configWritten = ensureProjectConfig(finalProjectRoot, projectName, {
768
+ configPath: parsedArgs.configPath,
769
+ });
770
+ if (configWritten) {
771
+ debugLog('INFO', 'Project name written to config.toml', {
772
+ projectName,
773
+ detectionSource,
774
+ configPath: parsedArgs.configPath || DEFAULT_CONFIG_PATH
775
+ });
776
+ }
777
+ }
778
+ }
779
+ // Initialize ProjectContext singleton (Constraint #41)
780
+ const projectContext = ProjectContext.getInstance();
781
+ await projectContext.ensureProject(knex, projectName, detectionSource, {
782
+ projectRootPath: finalProjectRoot,
783
+ });
784
+ debugLog('INFO', 'ProjectContext initialized', {
785
+ projectId: projectContext.getProjectId(),
786
+ projectName: projectContext.getProjectName(),
787
+ });
788
+ // Log successful initialization
669
789
  debugLog('INFO', 'MCP Shared Context Server initialized', {
670
790
  dbPath,
791
+ projectId: projectContext.getProjectId(),
792
+ projectName: projectContext.getProjectName(),
671
793
  autoDeleteConfig: { messageHours, fileHistoryDays, ignoreWeekend },
672
794
  debugLogLevel: debugLogLevel
673
795
  });
@@ -681,6 +803,7 @@ async function main() {
681
803
  const source = parsedArgs.dbPath ? 'CLI' : 'config file';
682
804
  safeConsoleError(` Database: ${dbPath} (from ${source})`);
683
805
  }
806
+ safeConsoleError(` Project: ${projectContext.getProjectName()} (ID: ${projectContext.getProjectId()}, source: ${detectionSource})`);
684
807
  safeConsoleError(` Auto-delete config: messages=${messageHours}h, file_history=${fileHistoryDays}d, ignore_weekend=${ignoreWeekend}`);
685
808
  // 7. Start file watcher for auto-task-tracking (after database is ready)
686
809
  try {
@@ -693,7 +816,14 @@ async function main() {
693
816
  }
694
817
  }
695
818
  catch (error) {
696
- // Use centralized initialization error handler
819
+ // If debug logger not initialized, write to stderr as fallback
820
+ if (!debugLoggerInitialized) {
821
+ console.error('\n❌ EARLY INITIALIZATION ERROR (before debug logger):', error);
822
+ if (error instanceof Error && error.stack) {
823
+ console.error('Stack:', error.stack);
824
+ }
825
+ }
826
+ // Use centralized initialization error handler (writes to log file)
697
827
  handleInitializationError(error);
698
828
  closeDatabase();
699
829
  closeDebugLogger();
@@ -701,7 +831,7 @@ async function main() {
701
831
  }
702
832
  }
703
833
  main().catch((error) => {
704
- // Use centralized initialization error handler
834
+ // Use centralized initialization error handler (writes to log file)
705
835
  safeConsoleError('\n❌ FATAL ERROR:');
706
836
  handleInitializationError(error);
707
837
  closeDatabase();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"knexfile.d.ts","sourceRoot":"","sources":["../src/knexfile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAYjC,QAAA,MAAM,MAAM,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;CAwFzC,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"knexfile.d.ts","sourceRoot":"","sources":["../src/knexfile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AA4BjC,QAAA,MAAM,MAAM,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;CAuJzC,CAAC;AAEF,eAAe,MAAM,CAAC"}
package/dist/knexfile.js CHANGED
@@ -1,11 +1,26 @@
1
1
  import * as path from 'path';
2
2
  import { fileURLToPath } from 'url';
3
3
  import { dirname } from 'path';
4
+ import { existsSync, readFileSync } from 'fs';
5
+ import { parse as parseTOML } from 'smol-toml';
4
6
  const __filename = fileURLToPath(import.meta.url);
5
7
  const __dirname = dirname(__filename);
6
- // Default database path: .sqlew/sqlew.db in project root
7
- // Can be overridden via config file (.sqlew/config.toml) or CLI args
8
- const DEFAULT_DB_PATH = process.env.SQLEW_DB_PATH || '.sqlew/sqlew.db';
8
+ // Read database path from config.toml (same as MCP server does)
9
+ // Priority: Environment variable > config.toml > default
10
+ let configDbPath;
11
+ const projectRoot = path.resolve(__dirname, '..');
12
+ const configPath = path.join(projectRoot, '.sqlew/config.toml');
13
+ if (existsSync(configPath)) {
14
+ try {
15
+ const content = readFileSync(configPath, 'utf-8');
16
+ const parsed = parseTOML(content);
17
+ configDbPath = parsed.database?.path;
18
+ }
19
+ catch (error) {
20
+ // Ignore config parsing errors, use default
21
+ }
22
+ }
23
+ const DEFAULT_DB_PATH = process.env.SQLEW_DB_PATH || configDbPath || '.sqlew/sqlew.db';
9
24
  const config = {
10
25
  development: {
11
26
  client: 'better-sqlite3',
@@ -16,9 +31,9 @@ const config = {
16
31
  useNullAsDefault: true,
17
32
  migrations: {
18
33
  directory: [
19
- path.join(__dirname, 'migrations/knex/bootstrap'),
20
- path.join(__dirname, 'migrations/knex/upgrades'),
21
- path.join(__dirname, 'migrations/knex/enhancements'),
34
+ path.join(__dirname, 'config/knex/bootstrap'),
35
+ path.join(__dirname, 'config/knex/upgrades'),
36
+ path.join(__dirname, 'config/knex/enhancements'),
22
37
  ],
23
38
  extension: 'ts',
24
39
  tableName: 'knex_migrations',
@@ -48,9 +63,9 @@ const config = {
48
63
  useNullAsDefault: true,
49
64
  migrations: {
50
65
  directory: [
51
- path.join(__dirname, 'migrations/knex/bootstrap'),
52
- path.join(__dirname, 'migrations/knex/upgrades'),
53
- path.join(__dirname, 'migrations/knex/enhancements'),
66
+ path.join(__dirname, 'config/knex/bootstrap'),
67
+ path.join(__dirname, 'config/knex/upgrades'),
68
+ path.join(__dirname, 'config/knex/enhancements'),
54
69
  ],
55
70
  extension: 'ts',
56
71
  loadExtensions: ['.ts'],
@@ -70,9 +85,9 @@ const config = {
70
85
  useNullAsDefault: true,
71
86
  migrations: {
72
87
  directory: [
73
- path.join(__dirname, 'migrations/knex/bootstrap'),
74
- path.join(__dirname, 'migrations/knex/upgrades'),
75
- path.join(__dirname, 'migrations/knex/enhancements'),
88
+ path.join(__dirname, 'config/knex/bootstrap'),
89
+ path.join(__dirname, 'config/knex/upgrades'),
90
+ path.join(__dirname, 'config/knex/enhancements'),
76
91
  ],
77
92
  extension: 'js',
78
93
  loadExtensions: ['.js'],
@@ -92,6 +107,67 @@ const config = {
92
107
  },
93
108
  },
94
109
  },
110
+ // MySQL/MariaDB configuration for data migration
111
+ mysql: {
112
+ client: 'mysql2',
113
+ connection: {
114
+ host: process.env.MYSQL_HOST || '127.0.0.1',
115
+ port: parseInt(process.env.MYSQL_PORT || '3306'),
116
+ user: process.env.MYSQL_USER || 'root',
117
+ password: process.env.MYSQL_PASSWORD || '',
118
+ database: process.env.MYSQL_DATABASE || 'mcp_context',
119
+ charset: 'utf8mb4',
120
+ },
121
+ migrations: {
122
+ directory: [
123
+ path.join(__dirname, 'config/knex/bootstrap'),
124
+ path.join(__dirname, 'config/knex/upgrades'),
125
+ path.join(__dirname, 'config/knex/enhancements'),
126
+ ],
127
+ extension: 'ts',
128
+ tableName: 'knex_migrations',
129
+ loadExtensions: ['.ts'],
130
+ },
131
+ seeds: {
132
+ directory: path.join(__dirname, 'seeds'),
133
+ extension: 'ts',
134
+ loadExtensions: ['.ts'],
135
+ },
136
+ pool: {
137
+ min: 2,
138
+ max: 10,
139
+ },
140
+ },
141
+ // PostgreSQL configuration for data migration
142
+ postgresql: {
143
+ client: 'pg',
144
+ connection: {
145
+ host: process.env.PG_HOST || 'localhost',
146
+ port: parseInt(process.env.PG_PORT || '5432'),
147
+ user: process.env.PG_USER || 'postgres',
148
+ password: process.env.PG_PASSWORD || '',
149
+ database: process.env.PG_DATABASE || 'mcp_context',
150
+ },
151
+ migrations: {
152
+ directory: [
153
+ path.join(__dirname, 'config/knex/bootstrap'),
154
+ path.join(__dirname, 'config/knex/upgrades'),
155
+ path.join(__dirname, 'config/knex/enhancements'),
156
+ ],
157
+ extension: 'ts',
158
+ tableName: 'knex_migrations',
159
+ loadExtensions: ['.ts'],
160
+ },
161
+ seeds: {
162
+ directory: path.join(__dirname, 'seeds'),
163
+ extension: 'ts',
164
+ loadExtensions: ['.ts'],
165
+ },
166
+ pool: {
167
+ min: 2,
168
+ max: 10,
169
+ },
170
+ },
95
171
  };
96
172
  export default config;
97
173
  //# sourceMappingURL=knexfile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knexfile.js","sourceRoot":"","sources":["../src/knexfile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knexfile.js","sourceRoot":"","sources":["../src/knexfile.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@
3
3
  * Comprehensive feature test for MCP Sqlew
4
4
  * Tests all tools and actions to detect crashes with proper TypeScript types
5
5
  */
6
- import { initializeDatabase, closeDatabase } from '../database.js';
6
+ import { initializeDatabase, closeDatabase, getAdapter } from '../database.js';
7
+ import { ProjectContext } from '../utils/project-context.js';
7
8
  import * as fs from 'fs';
8
9
  import * as path from 'path';
9
10
  // Import all tool functions
@@ -363,10 +364,13 @@ async function testTaskTool() {
363
364
  catch (error) {
364
365
  recordResult('task', 'remove_dependency', 'CRASH', error instanceof Error ? error.message : String(error));
365
366
  }
366
- // Test archive action
367
+ // Test archive action (must move to 'done' first)
367
368
  try {
368
369
  const start = Date.now();
369
370
  if (taskId1) {
371
+ // First move task to 'done' status (required before archiving)
372
+ await moveTask({ task_id: taskId1, new_status: 'done' });
373
+ // Now archive it
370
374
  await archiveTask({ task_id: taskId1 });
371
375
  recordResult('task', 'archive', 'PASS', undefined, Date.now() - start);
372
376
  }
@@ -392,7 +396,15 @@ async function runAllTests() {
392
396
  // Initialize test database
393
397
  try {
394
398
  await initializeDatabase({ databaseType: 'sqlite', connection: { filename: TEST_DB_PATH } });
395
- log('✅ Database initialized successfully\n');
399
+ log('✅ Database initialized successfully');
400
+ // Initialize ProjectContext (required after v3.7.0 multi-project migration)
401
+ const adapter = getAdapter();
402
+ const knex = adapter.getKnex();
403
+ const projectContext = ProjectContext.getInstance();
404
+ await projectContext.ensureProject(knex, 'test-project', 'config', {
405
+ projectRootPath: process.cwd(),
406
+ });
407
+ log('✅ ProjectContext initialized\n');
396
408
  }
397
409
  catch (error) {
398
410
  log(`❌ Failed to initialize database: ${error}`);