sqlew 3.7.4 → 3.8.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 (772) hide show
  1. package/CHANGELOG.md +243 -1
  2. package/LICENSE +0 -0
  3. package/README.md +69 -0
  4. package/assets/config.example.toml +0 -0
  5. package/assets/kanban-style.png +0 -0
  6. package/assets/kanban-visualizer.png +0 -0
  7. package/assets/sample-agents/README.md +0 -0
  8. package/assets/sample-agents/sqlew-architect.md +0 -0
  9. package/assets/sample-agents/sqlew-researcher.md +0 -0
  10. package/assets/sample-agents/sqlew-scrum-master.md +4 -4
  11. package/assets/schema.sql +0 -0
  12. package/assets/sqlew-logo.png +0 -0
  13. package/dist/adapters/postgresql-adapter.d.ts +197 -5
  14. package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
  15. package/dist/adapters/postgresql-adapter.js +300 -36
  16. package/dist/adapters/postgresql-adapter.js.map +1 -1
  17. package/dist/cli.d.ts +1 -1
  18. package/dist/cli.js +8 -71
  19. package/dist/cli.js.map +1 -1
  20. package/dist/config/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +1 -1
  21. package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js +158 -45
  22. package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js.map +1 -1
  23. package/dist/config/knex/bootstrap/20251025070349_create_views.d.ts.map +1 -1
  24. package/dist/config/knex/bootstrap/20251025070349_create_views.js +60 -8
  25. package/dist/config/knex/bootstrap/20251025070349_create_views.js.map +1 -1
  26. package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.js +1 -1
  27. package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.js +5 -5
  28. package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +1 -1
  29. package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js +9 -1
  30. package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js.map +1 -1
  31. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts.map +1 -1
  32. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js +8 -1
  33. package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js.map +1 -1
  34. package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts +21 -0
  35. package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts.map +1 -0
  36. package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js +73 -0
  37. package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js.map +1 -0
  38. package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts +19 -0
  39. package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts.map +1 -0
  40. package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js +88 -0
  41. package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js.map +1 -0
  42. package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts +24 -0
  43. package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts.map +1 -0
  44. package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js +79 -0
  45. package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js.map +1 -0
  46. package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts +27 -0
  47. package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts.map +1 -0
  48. package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js +347 -0
  49. package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js.map +1 -0
  50. package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts +30 -0
  51. package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts.map +1 -0
  52. package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js +232 -0
  53. package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js.map +1 -0
  54. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts.map +1 -1
  55. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js +9 -0
  56. package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js.map +1 -1
  57. package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts +14 -0
  58. package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts.map +1 -0
  59. package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js +97 -0
  60. package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js.map +1 -0
  61. package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts +24 -0
  62. package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts.map +1 -0
  63. package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js +303 -0
  64. package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js.map +1 -0
  65. package/dist/constants.d.ts +14 -2
  66. package/dist/constants.d.ts.map +1 -1
  67. package/dist/constants.js +28 -1
  68. package/dist/constants.js.map +1 -1
  69. package/dist/database/config/adapter-factory.d.ts +13 -0
  70. package/dist/database/config/adapter-factory.d.ts.map +1 -0
  71. package/dist/database/config/adapter-factory.js +21 -0
  72. package/dist/database/config/adapter-factory.js.map +1 -0
  73. package/dist/database/config/config-ops.d.ts +34 -0
  74. package/dist/database/config/config-ops.d.ts.map +1 -0
  75. package/dist/database/config/config-ops.js +76 -0
  76. package/dist/database/config/config-ops.js.map +1 -0
  77. package/dist/database/index.d.ts +21 -0
  78. package/dist/database/index.d.ts.map +1 -0
  79. package/dist/database/index.js +31 -0
  80. package/dist/database/index.js.map +1 -0
  81. package/dist/database/initialization/cleanup.d.ts +8 -0
  82. package/dist/database/initialization/cleanup.d.ts.map +1 -0
  83. package/dist/database/initialization/cleanup.js +17 -0
  84. package/dist/database/initialization/cleanup.js.map +1 -0
  85. package/dist/database/initialization/init.d.ts +21 -0
  86. package/dist/database/initialization/init.d.ts.map +1 -0
  87. package/dist/database/initialization/init.js +83 -0
  88. package/dist/database/initialization/init.js.map +1 -0
  89. package/dist/database/operations/deletes.d.ts +10 -0
  90. package/dist/database/operations/deletes.d.ts.map +1 -0
  91. package/dist/database/operations/deletes.js +14 -0
  92. package/dist/database/operations/deletes.js.map +1 -0
  93. package/dist/database/operations/inserts.d.ts +40 -0
  94. package/dist/database/operations/inserts.d.ts.map +1 -0
  95. package/dist/database/operations/inserts.js +202 -0
  96. package/dist/database/operations/inserts.js.map +1 -0
  97. package/dist/database/operations/queries.d.ts +57 -0
  98. package/dist/database/operations/queries.d.ts.map +1 -0
  99. package/dist/database/operations/queries.js +77 -0
  100. package/dist/database/operations/queries.js.map +1 -0
  101. package/dist/database/operations/updates.d.ts +10 -0
  102. package/dist/database/operations/updates.d.ts.map +1 -0
  103. package/dist/database/operations/updates.js +14 -0
  104. package/dist/database/operations/updates.js.map +1 -0
  105. package/dist/database/types.d.ts +5 -0
  106. package/dist/database/types.d.ts.map +1 -0
  107. package/dist/database/types.js +5 -0
  108. package/dist/database/types.js.map +1 -0
  109. package/dist/database.d.ts +4 -144
  110. package/dist/database.d.ts.map +1 -1
  111. package/dist/database.js +5 -461
  112. package/dist/database.js.map +1 -1
  113. package/dist/index.js +29 -777
  114. package/dist/index.js.map +1 -1
  115. package/dist/server/arg-parser.d.ts +40 -0
  116. package/dist/server/arg-parser.d.ts.map +1 -0
  117. package/dist/server/arg-parser.js +137 -0
  118. package/dist/server/arg-parser.js.map +1 -0
  119. package/dist/server/setup.d.ts +31 -0
  120. package/dist/server/setup.d.ts.map +1 -0
  121. package/dist/server/setup.js +186 -0
  122. package/dist/server/setup.js.map +1 -0
  123. package/dist/server/shutdown.d.ts +15 -0
  124. package/dist/server/shutdown.d.ts.map +1 -0
  125. package/dist/server/shutdown.js +42 -0
  126. package/dist/server/shutdown.js.map +1 -0
  127. package/dist/server/tool-handlers.d.ts +10 -0
  128. package/dist/server/tool-handlers.d.ts.map +1 -0
  129. package/dist/server/tool-handlers.js +478 -0
  130. package/dist/server/tool-handlers.js.map +1 -0
  131. package/dist/server/tool-registry.d.ts +11 -0
  132. package/dist/server/tool-registry.d.ts.map +1 -0
  133. package/dist/server/tool-registry.js +225 -0
  134. package/dist/server/tool-registry.js.map +1 -0
  135. package/dist/tests/all-features.test.js +6 -38
  136. package/dist/tests/all-features.test.js.map +1 -1
  137. package/dist/tests/batch-validation-comprehensive.test.d.ts +12 -0
  138. package/dist/tests/batch-validation-comprehensive.test.d.ts.map +1 -0
  139. package/dist/tests/batch-validation-comprehensive.test.js +472 -0
  140. package/dist/tests/batch-validation-comprehensive.test.js.map +1 -0
  141. package/dist/tests/batch-validation-integration.test.d.ts +6 -0
  142. package/dist/tests/batch-validation-integration.test.d.ts.map +1 -0
  143. package/dist/tests/batch-validation-integration.test.js +193 -0
  144. package/dist/tests/batch-validation-integration.test.js.map +1 -0
  145. package/dist/tests/batch-validation.test.d.ts +6 -0
  146. package/dist/tests/batch-validation.test.d.ts.map +1 -0
  147. package/dist/tests/batch-validation.test.js +298 -0
  148. package/dist/tests/batch-validation.test.js.map +1 -0
  149. package/dist/tests/context-modular.test.d.ts +7 -0
  150. package/dist/tests/context-modular.test.d.ts.map +1 -0
  151. package/dist/tests/context-modular.test.js +271 -0
  152. package/dist/tests/context-modular.test.js.map +1 -0
  153. package/dist/tests/decision-batch-validation.test.d.ts +6 -0
  154. package/dist/tests/decision-batch-validation.test.d.ts.map +1 -0
  155. package/dist/tests/decision-batch-validation.test.js +253 -0
  156. package/dist/tests/decision-batch-validation.test.js.map +1 -0
  157. package/dist/tests/help-system.test.js +1 -1
  158. package/dist/tests/help-system.test.js.map +1 -1
  159. package/dist/tests/multi-project.test.js +2 -2
  160. package/dist/tests/multi-project.test.js.map +1 -1
  161. package/dist/tests/parameter-validation.test.js +2 -16
  162. package/dist/tests/parameter-validation.test.js.map +1 -1
  163. package/dist/tests/tasks.auto-pruning-decision-link.test.js +1 -1
  164. package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -1
  165. package/dist/tests/tasks.file-actions-integration.test.d.ts +10 -0
  166. package/dist/tests/tasks.file-actions-integration.test.d.ts.map +1 -0
  167. package/dist/tests/tasks.file-actions-integration.test.js +162 -0
  168. package/dist/tests/tasks.file-actions-integration.test.js.map +1 -0
  169. package/dist/tests/tasks.file-actions-validation.test.d.ts +6 -0
  170. package/dist/tests/tasks.file-actions-validation.test.d.ts.map +1 -0
  171. package/dist/tests/tasks.file-actions-validation.test.js +221 -0
  172. package/dist/tests/tasks.file-actions-validation.test.js.map +1 -0
  173. package/dist/tools/constraints/actions/add.d.ts +15 -0
  174. package/dist/tools/constraints/actions/add.d.ts.map +1 -0
  175. package/dist/tools/constraints/actions/add.js +101 -0
  176. package/dist/tools/constraints/actions/add.js.map +1 -0
  177. package/dist/tools/constraints/actions/deactivate.d.ts +16 -0
  178. package/dist/tools/constraints/actions/deactivate.d.ts.map +1 -0
  179. package/dist/tools/constraints/actions/deactivate.js +49 -0
  180. package/dist/tools/constraints/actions/deactivate.js.map +1 -0
  181. package/dist/tools/constraints/actions/get.d.ts +16 -0
  182. package/dist/tools/constraints/actions/get.d.ts.map +1 -0
  183. package/dist/tools/constraints/actions/get.js +76 -0
  184. package/dist/tools/constraints/actions/get.js.map +1 -0
  185. package/dist/tools/constraints/help/example.d.ts +9 -0
  186. package/dist/tools/constraints/help/example.d.ts.map +1 -0
  187. package/dist/tools/constraints/help/example.js +144 -0
  188. package/dist/tools/constraints/help/example.js.map +1 -0
  189. package/dist/tools/constraints/help/help.d.ts +9 -0
  190. package/dist/tools/constraints/help/help.d.ts.map +1 -0
  191. package/dist/tools/constraints/help/help.js +31 -0
  192. package/dist/tools/constraints/help/help.js.map +1 -0
  193. package/dist/tools/constraints/index.d.ts +12 -0
  194. package/dist/tools/constraints/index.d.ts.map +1 -0
  195. package/dist/tools/constraints/index.js +13 -0
  196. package/dist/tools/constraints/index.js.map +1 -0
  197. package/dist/tools/constraints/internal/validation.d.ts +11 -0
  198. package/dist/tools/constraints/internal/validation.d.ts.map +1 -0
  199. package/dist/tools/constraints/internal/validation.js +17 -0
  200. package/dist/tools/constraints/internal/validation.js.map +1 -0
  201. package/dist/tools/constraints/types.d.ts +6 -0
  202. package/dist/tools/constraints/types.d.ts.map +1 -0
  203. package/dist/tools/constraints/types.js +6 -0
  204. package/dist/tools/constraints/types.js.map +1 -0
  205. package/dist/tools/context/actions/add-context.d.ts +14 -0
  206. package/dist/tools/context/actions/add-context.d.ts.map +1 -0
  207. package/dist/tools/context/actions/add-context.js +62 -0
  208. package/dist/tools/context/actions/add-context.js.map +1 -0
  209. package/dist/tools/context/actions/batch-set.d.ts +16 -0
  210. package/dist/tools/context/actions/batch-set.d.ts.map +1 -0
  211. package/dist/tools/context/actions/batch-set.js +126 -0
  212. package/dist/tools/context/actions/batch-set.js.map +1 -0
  213. package/dist/tools/context/actions/create-template.d.ts +15 -0
  214. package/dist/tools/context/actions/create-template.d.ts.map +1 -0
  215. package/dist/tools/context/actions/create-template.js +68 -0
  216. package/dist/tools/context/actions/create-template.js.map +1 -0
  217. package/dist/tools/context/actions/get.d.ts +18 -0
  218. package/dist/tools/context/actions/get.d.ts.map +1 -0
  219. package/dist/tools/context/actions/get.js +80 -0
  220. package/dist/tools/context/actions/get.js.map +1 -0
  221. package/dist/tools/context/actions/hard-delete.d.ts +18 -0
  222. package/dist/tools/context/actions/hard-delete.d.ts.map +1 -0
  223. package/dist/tools/context/actions/hard-delete.js +85 -0
  224. package/dist/tools/context/actions/hard-delete.js.map +1 -0
  225. package/dist/tools/context/actions/has-updates.d.ts +16 -0
  226. package/dist/tools/context/actions/has-updates.d.ts.map +1 -0
  227. package/dist/tools/context/actions/has-updates.js +83 -0
  228. package/dist/tools/context/actions/has-updates.js.map +1 -0
  229. package/dist/tools/context/actions/list-contexts.d.ts +14 -0
  230. package/dist/tools/context/actions/list-contexts.d.ts.map +1 -0
  231. package/dist/tools/context/actions/list-contexts.js +43 -0
  232. package/dist/tools/context/actions/list-contexts.js.map +1 -0
  233. package/dist/tools/context/actions/list-templates.d.ts +15 -0
  234. package/dist/tools/context/actions/list-templates.d.ts.map +1 -0
  235. package/dist/tools/context/actions/list-templates.js +47 -0
  236. package/dist/tools/context/actions/list-templates.js.map +1 -0
  237. package/dist/tools/context/actions/list.d.ts +16 -0
  238. package/dist/tools/context/actions/list.d.ts.map +1 -0
  239. package/dist/tools/context/actions/list.js +100 -0
  240. package/dist/tools/context/actions/list.js.map +1 -0
  241. package/dist/tools/context/actions/quick-set.d.ts +21 -0
  242. package/dist/tools/context/actions/quick-set.d.ts.map +1 -0
  243. package/dist/tools/context/actions/quick-set.js +104 -0
  244. package/dist/tools/context/actions/quick-set.js.map +1 -0
  245. package/dist/tools/context/actions/search-advanced.d.ts +15 -0
  246. package/dist/tools/context/actions/search-advanced.d.ts.map +1 -0
  247. package/dist/tools/context/actions/search-advanced.js +140 -0
  248. package/dist/tools/context/actions/search-advanced.js.map +1 -0
  249. package/dist/tools/context/actions/search-layer.d.ts +15 -0
  250. package/dist/tools/context/actions/search-layer.d.ts.map +1 -0
  251. package/dist/tools/context/actions/search-layer.js +106 -0
  252. package/dist/tools/context/actions/search-layer.js.map +1 -0
  253. package/dist/tools/context/actions/search-tags.d.ts +15 -0
  254. package/dist/tools/context/actions/search-tags.d.ts.map +1 -0
  255. package/dist/tools/context/actions/search-tags.js +85 -0
  256. package/dist/tools/context/actions/search-tags.js.map +1 -0
  257. package/dist/tools/context/actions/set-from-template.d.ts +16 -0
  258. package/dist/tools/context/actions/set-from-template.d.ts.map +1 -0
  259. package/dist/tools/context/actions/set-from-template.js +83 -0
  260. package/dist/tools/context/actions/set-from-template.js.map +1 -0
  261. package/dist/tools/context/actions/set.d.ts +16 -0
  262. package/dist/tools/context/actions/set.d.ts.map +1 -0
  263. package/dist/tools/context/actions/set.js +56 -0
  264. package/dist/tools/context/actions/set.js.map +1 -0
  265. package/dist/tools/context/actions/versions.d.ts +15 -0
  266. package/dist/tools/context/actions/versions.d.ts.map +1 -0
  267. package/dist/tools/context/actions/versions.js +69 -0
  268. package/dist/tools/context/actions/versions.js.map +1 -0
  269. package/dist/tools/context/help/example.d.ts +5 -0
  270. package/dist/tools/context/help/example.d.ts.map +1 -0
  271. package/dist/tools/context/help/example.js +96 -0
  272. package/dist/tools/context/help/example.js.map +1 -0
  273. package/dist/tools/context/help/help.d.ts +5 -0
  274. package/dist/tools/context/help/help.d.ts.map +1 -0
  275. package/dist/tools/context/help/help.js +65 -0
  276. package/dist/tools/context/help/help.js.map +1 -0
  277. package/dist/tools/context/index.d.ts +25 -0
  278. package/dist/tools/context/index.d.ts.map +1 -0
  279. package/dist/tools/context/index.js +26 -0
  280. package/dist/tools/context/index.js.map +1 -0
  281. package/dist/tools/context/internal/queries.d.ts +18 -0
  282. package/dist/tools/context/internal/queries.d.ts.map +1 -0
  283. package/dist/tools/context/internal/queries.js +160 -0
  284. package/dist/tools/context/internal/queries.js.map +1 -0
  285. package/dist/tools/context/internal/validation.d.ts +39 -0
  286. package/dist/tools/context/internal/validation.d.ts.map +1 -0
  287. package/dist/tools/context/internal/validation.js +125 -0
  288. package/dist/tools/context/internal/validation.js.map +1 -0
  289. package/dist/tools/context/types.d.ts +6 -0
  290. package/dist/tools/context/types.d.ts.map +1 -0
  291. package/dist/tools/context/types.js +6 -0
  292. package/dist/tools/context/types.js.map +1 -0
  293. package/dist/tools/example/actions/get.d.ts +14 -0
  294. package/dist/tools/example/actions/get.d.ts.map +1 -0
  295. package/dist/tools/example/actions/get.js +40 -0
  296. package/dist/tools/example/actions/get.js.map +1 -0
  297. package/dist/tools/example/actions/list-all.d.ts +13 -0
  298. package/dist/tools/example/actions/list-all.d.ts.map +1 -0
  299. package/dist/tools/example/actions/list-all.js +39 -0
  300. package/dist/tools/example/actions/list-all.js.map +1 -0
  301. package/dist/tools/example/actions/search.d.ts +14 -0
  302. package/dist/tools/example/actions/search.d.ts.map +1 -0
  303. package/dist/tools/example/actions/search.js +52 -0
  304. package/dist/tools/example/actions/search.js.map +1 -0
  305. package/dist/tools/example/help/example.d.ts +6 -0
  306. package/dist/tools/example/help/example.d.ts.map +1 -0
  307. package/dist/tools/example/help/example.js +69 -0
  308. package/dist/tools/example/help/example.js.map +1 -0
  309. package/dist/tools/example/help/help.d.ts +6 -0
  310. package/dist/tools/example/help/help.d.ts.map +1 -0
  311. package/dist/tools/example/help/help.js +133 -0
  312. package/dist/tools/example/help/help.js.map +1 -0
  313. package/dist/tools/example/index.d.ts +11 -0
  314. package/dist/tools/example/index.d.ts.map +1 -0
  315. package/dist/tools/example/index.js +12 -0
  316. package/dist/tools/example/index.js.map +1 -0
  317. package/dist/tools/example/types.d.ts +59 -0
  318. package/dist/tools/example/types.d.ts.map +1 -0
  319. package/dist/tools/example/types.js +6 -0
  320. package/dist/tools/example/types.js.map +1 -0
  321. package/dist/tools/files/actions/check-lock.d.ts +16 -0
  322. package/dist/tools/files/actions/check-lock.d.ts.map +1 -0
  323. package/dist/tools/files/actions/check-lock.js +70 -0
  324. package/dist/tools/files/actions/check-lock.js.map +1 -0
  325. package/dist/tools/files/actions/get.d.ts +16 -0
  326. package/dist/tools/files/actions/get.d.ts.map +1 -0
  327. package/dist/tools/files/actions/get.js +113 -0
  328. package/dist/tools/files/actions/get.js.map +1 -0
  329. package/dist/tools/files/actions/record-batch.d.ts +18 -0
  330. package/dist/tools/files/actions/record-batch.d.ts.map +1 -0
  331. package/dist/tools/files/actions/record-batch.js +114 -0
  332. package/dist/tools/files/actions/record-batch.js.map +1 -0
  333. package/dist/tools/files/actions/record.d.ts +16 -0
  334. package/dist/tools/files/actions/record.d.ts.map +1 -0
  335. package/dist/tools/files/actions/record.js +37 -0
  336. package/dist/tools/files/actions/record.js.map +1 -0
  337. package/dist/tools/files/actions/sqlite-flush.d.ts +27 -0
  338. package/dist/tools/files/actions/sqlite-flush.d.ts.map +1 -0
  339. package/dist/tools/files/actions/sqlite-flush.js +66 -0
  340. package/dist/tools/files/actions/sqlite-flush.js.map +1 -0
  341. package/dist/tools/files/help/example.d.ts +5 -0
  342. package/dist/tools/files/help/example.d.ts.map +1 -0
  343. package/dist/tools/files/help/example.js +98 -0
  344. package/dist/tools/files/help/example.js.map +1 -0
  345. package/dist/tools/files/help/help.d.ts +5 -0
  346. package/dist/tools/files/help/help.d.ts.map +1 -0
  347. package/dist/tools/files/help/help.js +29 -0
  348. package/dist/tools/files/help/help.js.map +1 -0
  349. package/dist/tools/files/index.d.ts +14 -0
  350. package/dist/tools/files/index.d.ts.map +1 -0
  351. package/dist/tools/files/index.js +15 -0
  352. package/dist/tools/files/index.js.map +1 -0
  353. package/dist/tools/files/internal/queries.d.ts +18 -0
  354. package/dist/tools/files/internal/queries.d.ts.map +1 -0
  355. package/dist/tools/files/internal/queries.js +63 -0
  356. package/dist/tools/files/internal/queries.js.map +1 -0
  357. package/dist/tools/files/internal/validation.d.ts +18 -0
  358. package/dist/tools/files/internal/validation.d.ts.map +1 -0
  359. package/dist/tools/files/internal/validation.js +40 -0
  360. package/dist/tools/files/internal/validation.js.map +1 -0
  361. package/dist/tools/files/types.d.ts +6 -0
  362. package/dist/tools/files/types.d.ts.map +1 -0
  363. package/dist/tools/files/types.js +6 -0
  364. package/dist/tools/files/types.js.map +1 -0
  365. package/dist/tools/help/actions/batch-guide.d.ts +14 -0
  366. package/dist/tools/help/actions/batch-guide.d.ts.map +1 -0
  367. package/dist/tools/help/actions/batch-guide.js +59 -0
  368. package/dist/tools/help/actions/batch-guide.js.map +1 -0
  369. package/dist/tools/help/actions/error-recovery.d.ts +12 -0
  370. package/dist/tools/help/actions/error-recovery.d.ts.map +1 -0
  371. package/dist/tools/help/actions/error-recovery.js +107 -0
  372. package/dist/tools/help/actions/error-recovery.js.map +1 -0
  373. package/dist/tools/help/actions/query-action.d.ts +15 -0
  374. package/dist/tools/help/actions/query-action.d.ts.map +1 -0
  375. package/dist/tools/help/actions/query-action.js +15 -0
  376. package/dist/tools/help/actions/query-action.js.map +1 -0
  377. package/dist/tools/help/actions/query-params.d.ts +15 -0
  378. package/dist/tools/help/actions/query-params.d.ts.map +1 -0
  379. package/dist/tools/help/actions/query-params.js +15 -0
  380. package/dist/tools/help/actions/query-params.js.map +1 -0
  381. package/dist/tools/help/actions/query-tool.d.ts +15 -0
  382. package/dist/tools/help/actions/query-tool.d.ts.map +1 -0
  383. package/dist/tools/help/actions/query-tool.js +15 -0
  384. package/dist/tools/help/actions/query-tool.js.map +1 -0
  385. package/dist/tools/help/actions/workflow-hints.d.ts +14 -0
  386. package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -0
  387. package/dist/tools/help/actions/workflow-hints.js +15 -0
  388. package/dist/tools/help/actions/workflow-hints.js.map +1 -0
  389. package/dist/tools/help/help/example.d.ts +6 -0
  390. package/dist/tools/help/help/example.d.ts.map +1 -0
  391. package/dist/tools/help/help/example.js +70 -0
  392. package/dist/tools/help/help/example.js.map +1 -0
  393. package/dist/tools/help/help/help.d.ts +6 -0
  394. package/dist/tools/help/help/help.d.ts.map +1 -0
  395. package/dist/tools/help/help/help.js +67 -0
  396. package/dist/tools/help/help/help.js.map +1 -0
  397. package/dist/tools/help/index.d.ts +14 -0
  398. package/dist/tools/help/index.d.ts.map +1 -0
  399. package/dist/tools/help/index.js +15 -0
  400. package/dist/tools/help/index.js.map +1 -0
  401. package/dist/tools/help/types.d.ts +92 -0
  402. package/dist/tools/help/types.d.ts.map +1 -0
  403. package/dist/tools/help/types.js +6 -0
  404. package/dist/tools/help/types.js.map +1 -0
  405. package/dist/tools/help-queries.d.ts.map +1 -1
  406. package/dist/tools/help-queries.js +1 -0
  407. package/dist/tools/help-queries.js.map +1 -1
  408. package/dist/tools/tasks/actions/add-dependency.d.ts +12 -0
  409. package/dist/tools/tasks/actions/add-dependency.d.ts.map +1 -0
  410. package/dist/tools/tasks/actions/add-dependency.js +124 -0
  411. package/dist/tools/tasks/actions/add-dependency.js.map +1 -0
  412. package/dist/tools/tasks/actions/archive.d.ts +11 -0
  413. package/dist/tools/tasks/actions/archive.d.ts.map +1 -0
  414. package/dist/tools/tasks/actions/archive.js +67 -0
  415. package/dist/tools/tasks/actions/archive.js.map +1 -0
  416. package/dist/tools/tasks/actions/create-batch.d.ts +19 -0
  417. package/dist/tools/tasks/actions/create-batch.d.ts.map +1 -0
  418. package/dist/tools/tasks/actions/create-batch.js +103 -0
  419. package/dist/tools/tasks/actions/create-batch.js.map +1 -0
  420. package/dist/tools/tasks/actions/create.d.ts +16 -0
  421. package/dist/tools/tasks/actions/create.d.ts.map +1 -0
  422. package/dist/tools/tasks/actions/create.js +180 -0
  423. package/dist/tools/tasks/actions/create.js.map +1 -0
  424. package/dist/tools/tasks/actions/get-dependencies.d.ts +12 -0
  425. package/dist/tools/tasks/actions/get-dependencies.d.ts.map +1 -0
  426. package/dist/tools/tasks/actions/get-dependencies.js +41 -0
  427. package/dist/tools/tasks/actions/get-dependencies.js.map +1 -0
  428. package/dist/tools/tasks/actions/get-pruned-files.d.ts +13 -0
  429. package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +1 -0
  430. package/dist/tools/tasks/actions/get-pruned-files.js +45 -0
  431. package/dist/tools/tasks/actions/get-pruned-files.js.map +1 -0
  432. package/dist/tools/tasks/actions/get.d.ts +12 -0
  433. package/dist/tools/tasks/actions/get.d.ts.map +1 -0
  434. package/dist/tools/tasks/actions/get.js +88 -0
  435. package/dist/tools/tasks/actions/get.js.map +1 -0
  436. package/dist/tools/tasks/actions/link-pruned-file.d.ts +13 -0
  437. package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +1 -0
  438. package/dist/tools/tasks/actions/link-pruned-file.js +63 -0
  439. package/dist/tools/tasks/actions/link-pruned-file.js.map +1 -0
  440. package/dist/tools/tasks/actions/link.d.ts +14 -0
  441. package/dist/tools/tasks/actions/link.d.ts.map +1 -0
  442. package/dist/tools/tasks/actions/link.js +118 -0
  443. package/dist/tools/tasks/actions/link.js.map +1 -0
  444. package/dist/tools/tasks/actions/list.d.ts +17 -0
  445. package/dist/tools/tasks/actions/list.d.ts.map +1 -0
  446. package/dist/tools/tasks/actions/list.js +98 -0
  447. package/dist/tools/tasks/actions/list.js.map +1 -0
  448. package/dist/tools/tasks/actions/move.d.ts +12 -0
  449. package/dist/tools/tasks/actions/move.d.ts.map +1 -0
  450. package/dist/tools/tasks/actions/move.js +91 -0
  451. package/dist/tools/tasks/actions/move.js.map +1 -0
  452. package/dist/tools/tasks/actions/remove-dependency.d.ts +12 -0
  453. package/dist/tools/tasks/actions/remove-dependency.d.ts.map +1 -0
  454. package/dist/tools/tasks/actions/remove-dependency.js +36 -0
  455. package/dist/tools/tasks/actions/remove-dependency.js.map +1 -0
  456. package/dist/tools/tasks/actions/update.d.ts +10 -0
  457. package/dist/tools/tasks/actions/update.d.ts.map +1 -0
  458. package/dist/tools/tasks/actions/update.js +186 -0
  459. package/dist/tools/tasks/actions/update.js.map +1 -0
  460. package/dist/tools/tasks/actions/watch-files.d.ts +14 -0
  461. package/dist/tools/tasks/actions/watch-files.d.ts.map +1 -0
  462. package/dist/tools/tasks/actions/watch-files.js +127 -0
  463. package/dist/tools/tasks/actions/watch-files.js.map +1 -0
  464. package/dist/tools/tasks/help/example.d.ts +8 -0
  465. package/dist/tools/tasks/help/example.d.ts.map +1 -0
  466. package/dist/tools/tasks/help/example.js +215 -0
  467. package/dist/tools/tasks/help/example.js.map +1 -0
  468. package/dist/tools/tasks/help/help.d.ts +8 -0
  469. package/dist/tools/tasks/help/help.d.ts.map +1 -0
  470. package/dist/tools/tasks/help/help.js +293 -0
  471. package/dist/tools/tasks/help/help.js.map +1 -0
  472. package/dist/tools/tasks/help/use-case.d.ts +11 -0
  473. package/dist/tools/tasks/help/use-case.d.ts.map +1 -0
  474. package/dist/tools/tasks/help/use-case.js +768 -0
  475. package/dist/tools/tasks/help/use-case.js.map +1 -0
  476. package/dist/tools/tasks/index.d.ts +28 -0
  477. package/dist/tools/tasks/index.d.ts.map +1 -0
  478. package/dist/tools/tasks/index.js +33 -0
  479. package/dist/tools/tasks/index.js.map +1 -0
  480. package/dist/tools/tasks/internal/state-machine.d.ts +16 -0
  481. package/dist/tools/tasks/internal/state-machine.d.ts.map +1 -0
  482. package/dist/tools/tasks/internal/state-machine.js +36 -0
  483. package/dist/tools/tasks/internal/state-machine.js.map +1 -0
  484. package/dist/tools/tasks/internal/task-queries.d.ts +12 -0
  485. package/dist/tools/tasks/internal/task-queries.d.ts.map +1 -0
  486. package/dist/tools/tasks/internal/task-queries.js +61 -0
  487. package/dist/tools/tasks/internal/task-queries.js.map +1 -0
  488. package/dist/tools/tasks/internal/validation.d.ts +47 -0
  489. package/dist/tools/tasks/internal/validation.d.ts.map +1 -0
  490. package/dist/tools/tasks/internal/validation.js +261 -0
  491. package/dist/tools/tasks/internal/validation.js.map +1 -0
  492. package/dist/tools/tasks/types.d.ts +68 -0
  493. package/dist/tools/tasks/types.d.ts.map +1 -0
  494. package/dist/tools/tasks/types.js +45 -0
  495. package/dist/tools/tasks/types.js.map +1 -0
  496. package/dist/tools/tasks/watcher/status.d.ts +9 -0
  497. package/dist/tools/tasks/watcher/status.d.ts.map +1 -0
  498. package/dist/tools/tasks/watcher/status.js +126 -0
  499. package/dist/tools/tasks/watcher/status.js.map +1 -0
  500. package/dist/tools/tasks.d.ts +12 -148
  501. package/dist/tools/tasks.d.ts.map +1 -1
  502. package/dist/tools/tasks.js +12 -2037
  503. package/dist/tools/tasks.js.map +1 -1
  504. package/dist/tools/use_case/actions/get.d.ts +14 -0
  505. package/dist/tools/use_case/actions/get.d.ts.map +1 -0
  506. package/dist/tools/use_case/actions/get.js +15 -0
  507. package/dist/tools/use_case/actions/get.js.map +1 -0
  508. package/dist/tools/use_case/actions/list-all.d.ts +15 -0
  509. package/dist/tools/use_case/actions/list-all.d.ts.map +1 -0
  510. package/dist/tools/use_case/actions/list-all.js +20 -0
  511. package/dist/tools/use_case/actions/list-all.js.map +1 -0
  512. package/dist/tools/use_case/actions/search.d.ts +14 -0
  513. package/dist/tools/use_case/actions/search.d.ts.map +1 -0
  514. package/dist/tools/use_case/actions/search.js +87 -0
  515. package/dist/tools/use_case/actions/search.js.map +1 -0
  516. package/dist/tools/use_case/help/example.d.ts +105 -0
  517. package/dist/tools/use_case/help/example.d.ts.map +1 -0
  518. package/dist/tools/use_case/help/example.js +138 -0
  519. package/dist/tools/use_case/help/example.js.map +1 -0
  520. package/dist/tools/use_case/help/help.d.ts +33 -0
  521. package/dist/tools/use_case/help/help.d.ts.map +1 -0
  522. package/dist/tools/use_case/help/help.js +109 -0
  523. package/dist/tools/use_case/help/help.js.map +1 -0
  524. package/dist/tools/use_case/index.d.ts +11 -0
  525. package/dist/tools/use_case/index.d.ts.map +1 -0
  526. package/dist/tools/use_case/index.js +12 -0
  527. package/dist/tools/use_case/index.js.map +1 -0
  528. package/dist/tools/use_case/types.d.ts +58 -0
  529. package/dist/tools/use_case/types.d.ts.map +1 -0
  530. package/dist/tools/use_case/types.js +6 -0
  531. package/dist/tools/use_case/types.js.map +1 -0
  532. package/dist/types/actions.d.ts +37 -0
  533. package/dist/types/actions.d.ts.map +1 -0
  534. package/dist/types/actions.js +6 -0
  535. package/dist/types/actions.js.map +1 -0
  536. package/dist/types/constraint/params.d.ts +2 -0
  537. package/dist/types/constraint/params.d.ts.map +1 -0
  538. package/dist/types/constraint/params.js +2 -0
  539. package/dist/types/constraint/params.js.map +1 -0
  540. package/dist/types/constraint/responses.d.ts +2 -0
  541. package/dist/types/constraint/responses.d.ts.map +1 -0
  542. package/dist/types/constraint/responses.js +2 -0
  543. package/dist/types/constraint/responses.js.map +1 -0
  544. package/dist/types/decision/batch.d.ts +24 -0
  545. package/dist/types/decision/batch.d.ts.map +1 -0
  546. package/dist/types/decision/batch.js +5 -0
  547. package/dist/types/decision/batch.js.map +1 -0
  548. package/dist/types/decision/params.d.ts +73 -0
  549. package/dist/types/decision/params.d.ts.map +1 -0
  550. package/dist/types/decision/params.js +5 -0
  551. package/dist/types/decision/params.js.map +1 -0
  552. package/dist/types/decision/responses.d.ts +79 -0
  553. package/dist/types/decision/responses.d.ts.map +1 -0
  554. package/dist/types/decision/responses.js +5 -0
  555. package/dist/types/decision/responses.js.map +1 -0
  556. package/dist/types/decision/templates.d.ts +74 -0
  557. package/dist/types/decision/templates.d.ts.map +1 -0
  558. package/dist/types/decision/templates.js +5 -0
  559. package/dist/types/decision/templates.js.map +1 -0
  560. package/dist/types/enums.d.ts +43 -0
  561. package/dist/types/enums.d.ts.map +1 -0
  562. package/dist/types/enums.js +47 -0
  563. package/dist/types/enums.js.map +1 -0
  564. package/dist/types/file/params.d.ts +40 -0
  565. package/dist/types/file/params.d.ts.map +1 -0
  566. package/dist/types/file/params.js +6 -0
  567. package/dist/types/file/params.js.map +1 -0
  568. package/dist/types/file/responses.d.ts +2 -0
  569. package/dist/types/file/responses.d.ts.map +1 -0
  570. package/dist/types/file/responses.js +2 -0
  571. package/dist/types/file/responses.js.map +1 -0
  572. package/dist/types/import-export.d.ts +126 -0
  573. package/dist/types/import-export.d.ts.map +1 -0
  574. package/dist/types/import-export.js +6 -0
  575. package/dist/types/import-export.js.map +1 -0
  576. package/dist/types/index.d.ts +25 -0
  577. package/dist/types/index.d.ts.map +1 -0
  578. package/dist/types/index.js +35 -0
  579. package/dist/types/index.js.map +1 -0
  580. package/dist/types/master-entities.d.ts +33 -0
  581. package/dist/types/master-entities.d.ts.map +1 -0
  582. package/dist/types/master-entities.js +6 -0
  583. package/dist/types/master-entities.js.map +1 -0
  584. package/dist/types/task/params.d.ts +172 -0
  585. package/dist/types/task/params.d.ts.map +1 -0
  586. package/dist/types/task/params.js +8 -0
  587. package/dist/types/task/params.js.map +1 -0
  588. package/dist/types/task/responses.d.ts +334 -0
  589. package/dist/types/task/responses.d.ts.map +1 -0
  590. package/dist/types/task/responses.js +8 -0
  591. package/dist/types/task/responses.js.map +1 -0
  592. package/dist/types/transaction-entities.d.ts +89 -0
  593. package/dist/types/transaction-entities.d.ts.map +1 -0
  594. package/dist/types/transaction-entities.js +5 -0
  595. package/dist/types/transaction-entities.js.map +1 -0
  596. package/dist/types/validation.d.ts +44 -0
  597. package/dist/types/validation.d.ts.map +1 -0
  598. package/dist/types/validation.js +6 -0
  599. package/dist/types/validation.js.map +1 -0
  600. package/dist/types/view-entities.d.ts +61 -0
  601. package/dist/types/view-entities.d.ts.map +1 -0
  602. package/dist/types/view-entities.js +5 -0
  603. package/dist/types/view-entities.js.map +1 -0
  604. package/dist/types.d.ts +12 -10
  605. package/dist/types.d.ts.map +1 -1
  606. package/dist/utils/action-specs/config-specs.d.ts +10 -0
  607. package/dist/utils/action-specs/config-specs.d.ts.map +1 -0
  608. package/dist/utils/action-specs/config-specs.js +12 -0
  609. package/dist/utils/action-specs/config-specs.js.map +1 -0
  610. package/dist/utils/action-specs/constraint-specs.d.ts +9 -0
  611. package/dist/utils/action-specs/constraint-specs.d.ts.map +1 -0
  612. package/dist/utils/action-specs/constraint-specs.js +42 -0
  613. package/dist/utils/action-specs/constraint-specs.js.map +1 -0
  614. package/dist/utils/action-specs/decision-specs.d.ts +9 -0
  615. package/dist/utils/action-specs/decision-specs.d.ts.map +1 -0
  616. package/dist/utils/action-specs/decision-specs.js +194 -0
  617. package/dist/utils/action-specs/decision-specs.js.map +1 -0
  618. package/dist/utils/action-specs/file-specs.d.ts +9 -0
  619. package/dist/utils/action-specs/file-specs.d.ts.map +1 -0
  620. package/dist/utils/action-specs/file-specs.js +56 -0
  621. package/dist/utils/action-specs/file-specs.js.map +1 -0
  622. package/dist/utils/action-specs/index.d.ts +38 -0
  623. package/dist/utils/action-specs/index.d.ts.map +1 -0
  624. package/dist/utils/action-specs/index.js +63 -0
  625. package/dist/utils/action-specs/index.js.map +1 -0
  626. package/dist/utils/action-specs/task-specs.d.ts +9 -0
  627. package/dist/utils/action-specs/task-specs.d.ts.map +1 -0
  628. package/dist/utils/action-specs/task-specs.js +143 -0
  629. package/dist/utils/action-specs/task-specs.js.map +1 -0
  630. package/dist/utils/action-specs/types.d.ts +14 -0
  631. package/dist/utils/action-specs/types.d.ts.map +1 -0
  632. package/dist/utils/action-specs/types.js +9 -0
  633. package/dist/utils/action-specs/types.js.map +1 -0
  634. package/dist/utils/batch-validation.d.ts +156 -0
  635. package/dist/utils/batch-validation.d.ts.map +1 -0
  636. package/dist/utils/batch-validation.example.d.ts +48 -0
  637. package/dist/utils/batch-validation.example.d.ts.map +1 -0
  638. package/dist/utils/batch-validation.example.js +180 -0
  639. package/dist/utils/batch-validation.example.js.map +1 -0
  640. package/dist/utils/batch-validation.js +345 -0
  641. package/dist/utils/batch-validation.js.map +1 -0
  642. package/dist/utils/levenshtein.d.ts +18 -0
  643. package/dist/utils/levenshtein.d.ts.map +1 -0
  644. package/dist/utils/levenshtein.js +46 -0
  645. package/dist/utils/levenshtein.js.map +1 -0
  646. package/dist/utils/parameter-validator.d.ts +3 -3
  647. package/dist/utils/parameter-validator.d.ts.map +1 -1
  648. package/dist/utils/parameter-validator.js +3 -39
  649. package/dist/utils/parameter-validator.js.map +1 -1
  650. package/dist/utils/sql-dump/core/dependency-sort.d.ts +16 -0
  651. package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +1 -0
  652. package/dist/utils/sql-dump/core/dependency-sort.js +105 -0
  653. package/dist/utils/sql-dump/core/dependency-sort.js.map +1 -0
  654. package/dist/utils/sql-dump/core/generate-dump.d.ts +13 -0
  655. package/dist/utils/sql-dump/core/generate-dump.d.ts.map +1 -0
  656. package/dist/utils/sql-dump/core/generate-dump.js +181 -0
  657. package/dist/utils/sql-dump/core/generate-dump.js.map +1 -0
  658. package/dist/utils/sql-dump/core/index-export.d.ts +9 -0
  659. package/dist/utils/sql-dump/core/index-export.d.ts.map +1 -0
  660. package/dist/utils/sql-dump/core/index-export.js +173 -0
  661. package/dist/utils/sql-dump/core/index-export.js.map +1 -0
  662. package/dist/utils/sql-dump/core/sequence-reset.d.ts +6 -0
  663. package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +1 -0
  664. package/dist/utils/sql-dump/core/sequence-reset.js +28 -0
  665. package/dist/utils/sql-dump/core/sequence-reset.js.map +1 -0
  666. package/dist/utils/sql-dump/core/table-export.d.ts +2 -0
  667. package/dist/utils/sql-dump/core/table-export.d.ts.map +1 -0
  668. package/dist/utils/sql-dump/core/table-export.js +4 -0
  669. package/dist/utils/sql-dump/core/table-export.js.map +1 -0
  670. package/dist/utils/sql-dump/core/view-export.d.ts +2 -0
  671. package/dist/utils/sql-dump/core/view-export.d.ts.map +1 -0
  672. package/dist/utils/sql-dump/core/view-export.js +4 -0
  673. package/dist/utils/sql-dump/core/view-export.js.map +1 -0
  674. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +14 -0
  675. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +1 -0
  676. package/dist/utils/sql-dump/formatters/bulk-insert.js +177 -0
  677. package/dist/utils/sql-dump/formatters/bulk-insert.js.map +1 -0
  678. package/dist/utils/sql-dump/formatters/identifiers.d.ts +6 -0
  679. package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +1 -0
  680. package/dist/utils/sql-dump/formatters/identifiers.js +16 -0
  681. package/dist/utils/sql-dump/formatters/identifiers.js.map +1 -0
  682. package/dist/utils/sql-dump/formatters/value-formatter.d.ts +14 -0
  683. package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +1 -0
  684. package/dist/utils/sql-dump/formatters/value-formatter.js +281 -0
  685. package/dist/utils/sql-dump/formatters/value-formatter.js.map +1 -0
  686. package/dist/utils/sql-dump/generators/controls.d.ts +10 -0
  687. package/dist/utils/sql-dump/generators/controls.d.ts.map +1 -0
  688. package/dist/utils/sql-dump/generators/controls.js +36 -0
  689. package/dist/utils/sql-dump/generators/controls.js.map +1 -0
  690. package/dist/utils/sql-dump/generators/headers.d.ts +6 -0
  691. package/dist/utils/sql-dump/generators/headers.d.ts.map +1 -0
  692. package/dist/utils/sql-dump/generators/headers.js +19 -0
  693. package/dist/utils/sql-dump/generators/headers.js.map +1 -0
  694. package/dist/utils/sql-dump/index.d.ts +14 -0
  695. package/dist/utils/sql-dump/index.d.ts.map +1 -0
  696. package/dist/utils/sql-dump/index.js +16 -0
  697. package/dist/utils/sql-dump/index.js.map +1 -0
  698. package/dist/utils/sql-dump/schema/indexes.d.ts +6 -0
  699. package/dist/utils/sql-dump/schema/indexes.d.ts.map +1 -0
  700. package/dist/utils/sql-dump/schema/indexes.js +42 -0
  701. package/dist/utils/sql-dump/schema/indexes.js.map +1 -0
  702. package/dist/utils/sql-dump/schema/primary-keys.d.ts +6 -0
  703. package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +1 -0
  704. package/dist/utils/sql-dump/schema/primary-keys.js +41 -0
  705. package/dist/utils/sql-dump/schema/primary-keys.js.map +1 -0
  706. package/dist/utils/sql-dump/schema/tables.d.ts +12 -0
  707. package/dist/utils/sql-dump/schema/tables.d.ts.map +1 -0
  708. package/dist/utils/sql-dump/schema/tables.js +370 -0
  709. package/dist/utils/sql-dump/schema/tables.js.map +1 -0
  710. package/dist/utils/sql-dump/schema/views.d.ts +11 -0
  711. package/dist/utils/sql-dump/schema/views.d.ts.map +1 -0
  712. package/dist/utils/sql-dump/schema/views.js +110 -0
  713. package/dist/utils/sql-dump/schema/views.js.map +1 -0
  714. package/dist/utils/sql-dump/types.d.ts +10 -0
  715. package/dist/utils/sql-dump/types.d.ts.map +1 -0
  716. package/dist/utils/sql-dump/types.js +3 -0
  717. package/dist/utils/sql-dump/types.js.map +1 -0
  718. package/docs/ACCEPTANCE_CRITERIA.md +0 -0
  719. package/docs/AI_AGENT_GUIDE.md +2 -2
  720. package/docs/ARCHITECTURE.md +0 -0
  721. package/docs/AUTO_FILE_TRACKING.md +0 -0
  722. package/docs/BATCH_VALIDATION.md +617 -0
  723. package/docs/BEST_PRACTICES.md +0 -0
  724. package/docs/CONFIGURATION.md +0 -0
  725. package/docs/DATABASE_AUTH.md +0 -0
  726. package/docs/DECISION_CONTEXT.md +0 -0
  727. package/docs/DECISION_TO_TASK_MIGRATION_GUIDE.md +2 -2
  728. package/docs/GIT_AWARE_AUTO_COMPLETE.md +0 -0
  729. package/docs/SHARED_CONCEPTS.md +2 -2
  730. package/docs/SPECIALIZED_AGENTS.md +1 -1
  731. package/docs/TASK_ACTIONS.md +7 -7
  732. package/docs/TASK_DEPENDENCIES.md +0 -0
  733. package/docs/TASK_LINKING.md +0 -0
  734. package/docs/TASK_MIGRATION.md +5 -5
  735. package/docs/TASK_OVERVIEW.md +0 -0
  736. package/docs/TASK_PRUNING.md +0 -0
  737. package/docs/TASK_SYSTEM.md +5 -5
  738. package/docs/TOOL_REFERENCE.md +1 -1
  739. package/docs/TOOL_SELECTION.md +0 -0
  740. package/docs/WORKFLOWS.md +1 -1
  741. package/docs/cli/DATABASE_MIGRATION.md +0 -0
  742. package/docs/cli/DATA_EXPORT_IMPORT.md +400 -400
  743. package/docs/cli/README.md +227 -227
  744. package/package.json +5 -3
  745. package/dist/tools/config.d.ts +0 -58
  746. package/dist/tools/config.d.ts.map +0 -1
  747. package/dist/tools/config.js +0 -281
  748. package/dist/tools/config.js.map +0 -1
  749. package/dist/tools/constraints.d.ts +0 -49
  750. package/dist/tools/constraints.d.ts.map +0 -1
  751. package/dist/tools/constraints.js +0 -378
  752. package/dist/tools/constraints.js.map +0 -1
  753. package/dist/tools/context.d.ts +0 -208
  754. package/dist/tools/context.d.ts.map +0 -1
  755. package/dist/tools/context.js +0 -1661
  756. package/dist/tools/context.js.map +0 -1
  757. package/dist/tools/files.d.ts +0 -54
  758. package/dist/tools/files.d.ts.map +0 -1
  759. package/dist/tools/files.js +0 -478
  760. package/dist/tools/files.js.map +0 -1
  761. package/dist/tools/messaging.d.ts +0 -71
  762. package/dist/tools/messaging.d.ts.map +0 -1
  763. package/dist/tools/messaging.js +0 -483
  764. package/dist/tools/messaging.js.map +0 -1
  765. package/dist/tools/utils.d.ts +0 -70
  766. package/dist/tools/utils.d.ts.map +0 -1
  767. package/dist/tools/utils.js +0 -483
  768. package/dist/tools/utils.js.map +0 -1
  769. package/dist/utils/action-specs.d.ts +0 -46
  770. package/dist/utils/action-specs.d.ts.map +0 -1
  771. package/dist/utils/action-specs.js +0 -527
  772. package/dist/utils/action-specs.js.map +0 -1
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Database module - Re-exports all database operations
3
+ *
4
+ * This is the main entry point for database operations.
5
+ * Import from this file instead of individual modules.
6
+ */
7
+ // Initialization
8
+ export { initializeDatabase, getAdapterInstance, setAdapterInstance, } from './initialization/init.js';
9
+ export { closeDatabase } from './initialization/cleanup.js';
10
+ // Adapter factory
11
+ export { getAdapter, getDatabase } from './config/adapter-factory.js';
12
+ // Configuration operations
13
+ export { getConfigValue, setConfigValue, getConfigBool, getConfigInt, getAllConfig, } from './config/config-ops.js';
14
+ // Query operations
15
+ export { getLayerId, getCategoryId, getDecisionWithContext, listDecisionContexts, } from './operations/queries.js';
16
+ // Insert operations
17
+ export { getOrCreateAgent, getOrCreateContextKey, getOrCreateFile, getOrCreateTag, getOrCreateScope, getOrCreateCategoryId, addDecisionContext, } from './operations/inserts.js';
18
+ // Update operations
19
+ export { updateAgentActivity } from './operations/updates.js';
20
+ // Delete operations (placeholder)
21
+ export { _placeholder } from './operations/deletes.js';
22
+ /**
23
+ * Execute a function within a database transaction
24
+ */
25
+ export async function transaction(callback) {
26
+ const { getAdapter } = await import('./config/adapter-factory.js');
27
+ const adapter = getAdapter();
28
+ const knex = adapter.getKnex();
29
+ return await knex.transaction(callback);
30
+ }
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,iBAAiB;AACjB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,kBAAkB;AAClB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAEtE,2BAA2B;AAC3B,OAAO,EACL,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,mBAAmB;AACnB,OAAO,EACL,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AAEjC,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,oBAAoB;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,kCAAkC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAA+C;IAE/C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/B,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Database cleanup and shutdown module
3
+ */
4
+ /**
5
+ * Close database connection
6
+ */
7
+ export declare function closeDatabase(): Promise<void>;
8
+ //# sourceMappingURL=cleanup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/database/initialization/cleanup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAOnD"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Database cleanup and shutdown module
3
+ */
4
+ import { debugLog } from '../../utils/debug-logger.js';
5
+ import { getAdapterInstance, setAdapterInstance } from './init.js';
6
+ /**
7
+ * Close database connection
8
+ */
9
+ export async function closeDatabase() {
10
+ const adapterInstance = getAdapterInstance();
11
+ if (adapterInstance) {
12
+ await adapterInstance.disconnect();
13
+ setAdapterInstance(null);
14
+ debugLog('INFO', 'Database connection closed');
15
+ }
16
+ }
17
+ //# sourceMappingURL=cleanup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/database/initialization/cleanup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;QACnC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,QAAQ,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Database initialization module
3
+ */
4
+ import type { DatabaseAdapter } from '../../adapters/index.js';
5
+ /**
6
+ * Initialize database with adapter pattern
7
+ */
8
+ export declare function initializeDatabase(config?: {
9
+ databaseType?: 'sqlite' | 'postgresql' | 'mysql';
10
+ connection?: any;
11
+ configPath?: string;
12
+ }): Promise<DatabaseAdapter>;
13
+ /**
14
+ * Get current database adapter instance
15
+ */
16
+ export declare function getAdapterInstance(): DatabaseAdapter | null;
17
+ /**
18
+ * Set adapter instance (for testing)
19
+ */
20
+ export declare function setAdapterInstance(adapter: DatabaseAdapter | null): void;
21
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/database/initialization/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAS/D;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,CAAC,EAAE;IACP,YAAY,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;IACjD,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,OAAO,CAAC,eAAe,CAAC,CAqE1B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,GAAG,IAAI,CAE3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI,CAExE"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Database initialization module
3
+ */
4
+ import { createDatabaseAdapter } from '../../adapters/index.js';
5
+ import { syncAgentsWithConfig } from '../../sync-agents.js';
6
+ import { debugLog } from '../../utils/debug-logger.js';
7
+ import knexConfig from '../../knexfile.js';
8
+ // Global adapter instance
9
+ let adapterInstance = null;
10
+ /**
11
+ * Initialize database with adapter pattern
12
+ */
13
+ export async function initializeDatabase(config) {
14
+ if (adapterInstance) {
15
+ return adapterInstance;
16
+ }
17
+ const dbType = config?.databaseType || 'sqlite';
18
+ // Build DatabaseConfig for adapter
19
+ // For MySQL/PostgreSQL, use provided connection config with auth
20
+ // For SQLite, use traditional file path
21
+ const databaseConfig = config?.connection
22
+ ? {
23
+ type: (dbType === 'postgresql' ? 'postgres' : dbType),
24
+ connection: config.connection,
25
+ auth: config.connection.user
26
+ ? {
27
+ type: 'direct',
28
+ user: config.connection.user,
29
+ password: config.connection.password,
30
+ }
31
+ : undefined,
32
+ }
33
+ : undefined;
34
+ const adapter = createDatabaseAdapter(dbType, databaseConfig);
35
+ // Determine if running from compiled code (dist/) or source (src/)
36
+ const isCompiledCode = import.meta.url.includes('/dist/');
37
+ const environment = isCompiledCode ? 'production' : 'development';
38
+ // Use config from knexfile or provided config
39
+ const baseConfig = knexConfig[environment] || knexConfig.development;
40
+ const knexConnConfig = config?.connection
41
+ ? { ...baseConfig, connection: config.connection }
42
+ : baseConfig;
43
+ // Note: adapter.connect() uses this.config internally (set in constructor)
44
+ // The knexConnConfig here is primarily for TypeScript and backward compatibility
45
+ await adapter.connect(knexConnConfig);
46
+ // Run migrations if needed
47
+ const knex = adapter.getKnex();
48
+ // Extract migrations config from baseConfig and pass to migrate()
49
+ const migrationsConfig = baseConfig.migrations || {};
50
+ try {
51
+ await knex.migrate.latest(migrationsConfig);
52
+ }
53
+ catch (migrationError) {
54
+ // Log migration error to debug log (if initialized) and stderr
55
+ const errorMessage = `Migration failed: ${migrationError.message || String(migrationError)}`;
56
+ debugLog('ERROR', errorMessage, {
57
+ error: migrationError,
58
+ stack: migrationError.stack
59
+ });
60
+ // Re-throw with more context
61
+ const enhancedError = new Error(errorMessage);
62
+ enhancedError.cause = migrationError;
63
+ throw enhancedError;
64
+ }
65
+ debugLog('INFO', `Database initialized with Knex adapter (${environment})`);
66
+ // Sync agents with config.toml
67
+ syncAgentsWithConfig();
68
+ adapterInstance = adapter;
69
+ return adapter;
70
+ }
71
+ /**
72
+ * Get current database adapter instance
73
+ */
74
+ export function getAdapterInstance() {
75
+ return adapterInstance;
76
+ }
77
+ /**
78
+ * Set adapter instance (for testing)
79
+ */
80
+ export function setAdapterInstance(adapter) {
81
+ adapterInstance = adapter;
82
+ }
83
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/database/initialization/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Database delete operations module
3
+ */
4
+ import type { DatabaseAdapter } from '../../adapters/index.js';
5
+ /**
6
+ * Placeholder function for delete operations
7
+ * Add delete functions here as needed
8
+ */
9
+ export declare function _placeholder(adapter: DatabaseAdapter): void;
10
+ //# sourceMappingURL=deletes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deletes.d.ts","sourceRoot":"","sources":["../../../src/database/operations/deletes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAK/D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAG3D"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Database delete operations module
3
+ */
4
+ // Placeholder for future delete operations
5
+ // Currently no delete operations are exported from database.ts
6
+ /**
7
+ * Placeholder function for delete operations
8
+ * Add delete functions here as needed
9
+ */
10
+ export function _placeholder(adapter) {
11
+ // This function exists to prevent empty module errors
12
+ // Remove when actual delete operations are added
13
+ }
14
+ //# sourceMappingURL=deletes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deletes.js","sourceRoot":"","sources":["../../../src/database/operations/deletes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,2CAA2C;AAC3C,+DAA+D;AAE/D;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,OAAwB;IACnD,sDAAsD;IACtD,iDAAiD;AACnD,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Database insert operations module
3
+ */
4
+ import { Knex } from 'knex';
5
+ import type { DatabaseAdapter } from '../../adapters/index.js';
6
+ /**
7
+ * Get or create agent by name (simplified registry pattern)
8
+ *
9
+ * Creates a simple registry of agent names for attribution purposes.
10
+ * No pooling, no reuse logic - each unique name gets exactly one record.
11
+ *
12
+ * - Empty/whitespace names: Generate unique generic-N name
13
+ * - Named agents: Use exact name provided
14
+ */
15
+ export declare function getOrCreateAgent(adapter: DatabaseAdapter, name: string, trx?: Knex.Transaction): Promise<number>;
16
+ /**
17
+ * Get or create context key by name
18
+ */
19
+ export declare function getOrCreateContextKey(adapter: DatabaseAdapter, key: string, trx?: Knex.Transaction): Promise<number>;
20
+ /**
21
+ * Get or create file by path
22
+ */
23
+ export declare function getOrCreateFile(adapter: DatabaseAdapter, projectId: number, path: string, trx?: Knex.Transaction): Promise<number>;
24
+ /**
25
+ * Get or create tag by name
26
+ */
27
+ export declare function getOrCreateTag(adapter: DatabaseAdapter, projectId: number, name: string, trx?: Knex.Transaction): Promise<number>;
28
+ /**
29
+ * Get or create scope by name
30
+ */
31
+ export declare function getOrCreateScope(adapter: DatabaseAdapter, projectId: number, name: string, trx?: Knex.Transaction): Promise<number>;
32
+ /**
33
+ * Get or create category ID
34
+ */
35
+ export declare function getOrCreateCategoryId(adapter: DatabaseAdapter, category: string, trx?: Knex.Transaction): Promise<number>;
36
+ /**
37
+ * Add decision context to a decision
38
+ */
39
+ export declare function addDecisionContext(adapter: DatabaseAdapter, decisionKey: string, rationale: string, alternatives?: string | null, tradeoffs?: string | null, decidedBy?: string | null, relatedTaskId?: number | null, relatedConstraintId?: number | null): Promise<number>;
40
+ //# sourceMappingURL=inserts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inserts.d.ts","sourceRoot":"","sources":["../../../src/database/operations/inserts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA8C/D;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CA4CjB;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,EACxB,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,YAAY,GAAE,MAAM,GAAG,IAAW,EAClC,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,aAAa,GAAE,MAAM,GAAG,IAAW,EACnC,mBAAmB,GAAE,MAAM,GAAG,IAAW,GACxC,OAAO,CAAC,MAAM,CAAC,CA8BjB"}
@@ -0,0 +1,202 @@
1
+ /**
2
+ * Database insert operations module
3
+ */
4
+ /**
5
+ * Validate JSON structure for alternatives array
6
+ */
7
+ function validateAlternativesJson(alternatives) {
8
+ if (alternatives === null || alternatives === undefined)
9
+ return;
10
+ try {
11
+ const parsed = JSON.parse(alternatives);
12
+ if (!Array.isArray(parsed)) {
13
+ throw new Error('alternatives_considered must be a JSON array');
14
+ }
15
+ }
16
+ catch (error) {
17
+ if (error instanceof SyntaxError) {
18
+ throw new Error('alternatives_considered contains invalid JSON');
19
+ }
20
+ throw error;
21
+ }
22
+ }
23
+ /**
24
+ * Validate JSON structure for tradeoffs object
25
+ */
26
+ function validateTradeoffsJson(tradeoffs) {
27
+ if (tradeoffs === null || tradeoffs === undefined)
28
+ return;
29
+ try {
30
+ const parsed = JSON.parse(tradeoffs);
31
+ if (typeof parsed !== 'object' || parsed === null) {
32
+ throw new Error('tradeoffs must be a JSON object');
33
+ }
34
+ if (parsed.pros !== undefined && !Array.isArray(parsed.pros)) {
35
+ throw new Error('tradeoffs.pros must be an array');
36
+ }
37
+ if (parsed.cons !== undefined && !Array.isArray(parsed.cons)) {
38
+ throw new Error('tradeoffs.cons must be an array');
39
+ }
40
+ }
41
+ catch (error) {
42
+ if (error instanceof SyntaxError) {
43
+ throw new Error('tradeoffs contains invalid JSON');
44
+ }
45
+ throw error;
46
+ }
47
+ }
48
+ /**
49
+ * Get or create agent by name (simplified registry pattern)
50
+ *
51
+ * Creates a simple registry of agent names for attribution purposes.
52
+ * No pooling, no reuse logic - each unique name gets exactly one record.
53
+ *
54
+ * - Empty/whitespace names: Generate unique generic-N name
55
+ * - Named agents: Use exact name provided
56
+ */
57
+ export async function getOrCreateAgent(adapter, name, trx) {
58
+ const knex = trx || adapter.getKnex();
59
+ const now = Math.floor(Date.now() / 1000);
60
+ // Handle empty names by generating unique generic-N identifier
61
+ let agentName = name;
62
+ if (!name || name.trim().length === 0) {
63
+ // Find highest generic-N number and increment
64
+ const maxGeneric = await knex('m_agents')
65
+ .where('name', 'like', 'generic-%')
66
+ .orderBy('name', 'desc')
67
+ .first('name');
68
+ let nextNumber = 1;
69
+ if (maxGeneric && maxGeneric.name) {
70
+ const match = maxGeneric.name.match(/^generic-(\d+)$/);
71
+ if (match) {
72
+ nextNumber = parseInt(match[1], 10) + 1;
73
+ }
74
+ }
75
+ agentName = `generic-${nextNumber}`;
76
+ }
77
+ // Insert or update agent with upsert pattern
78
+ // This handles both new agents and existing agents
79
+ await knex('m_agents')
80
+ .insert({
81
+ name: agentName,
82
+ last_active_ts: now
83
+ })
84
+ .onConflict('name')
85
+ .merge({ last_active_ts: now });
86
+ // Get the agent ID
87
+ const result = await knex('m_agents')
88
+ .where({ name: agentName })
89
+ .first('id');
90
+ if (!result) {
91
+ throw new Error(`Failed to get or create agent: ${agentName}`);
92
+ }
93
+ return result.id;
94
+ }
95
+ /**
96
+ * Get or create context key by name
97
+ */
98
+ export async function getOrCreateContextKey(adapter, key, trx) {
99
+ const knex = trx || adapter.getKnex();
100
+ await knex('m_context_keys').insert({ key }).onConflict('key').ignore();
101
+ const result = await knex('m_context_keys').where({ key }).first('id');
102
+ if (!result) {
103
+ throw new Error(`Failed to get or create context key: ${key}`);
104
+ }
105
+ return result.id;
106
+ }
107
+ /**
108
+ * Get or create file by path
109
+ */
110
+ export async function getOrCreateFile(adapter, projectId, path, trx) {
111
+ const knex = trx || adapter.getKnex();
112
+ // Insert with composite key (project_id, path)
113
+ await knex('m_files')
114
+ .insert({ project_id: projectId, path })
115
+ .onConflict(['project_id', 'path']) // Composite conflict resolution (v3.7.3)
116
+ .ignore();
117
+ const result = await knex('m_files')
118
+ .where({ project_id: projectId, path }) // Filter by both columns (v3.7.3)
119
+ .first('id');
120
+ if (!result) {
121
+ throw new Error(`Failed to get or create file: ${path} (project: ${projectId})`);
122
+ }
123
+ return result.id;
124
+ }
125
+ /**
126
+ * Get or create tag by name
127
+ */
128
+ export async function getOrCreateTag(adapter, projectId, name, trx) {
129
+ const knex = trx || adapter.getKnex();
130
+ // Insert with composite key (project_id, name)
131
+ await knex('m_tags')
132
+ .insert({ project_id: projectId, name })
133
+ .onConflict(['project_id', 'name']) // Composite conflict resolution (v3.7.3)
134
+ .ignore();
135
+ const result = await knex('m_tags')
136
+ .where({ project_id: projectId, name }) // Filter by both columns (v3.7.3)
137
+ .first('id');
138
+ if (!result) {
139
+ throw new Error(`Failed to get or create tag: ${name} (project: ${projectId})`);
140
+ }
141
+ return result.id;
142
+ }
143
+ /**
144
+ * Get or create scope by name
145
+ */
146
+ export async function getOrCreateScope(adapter, projectId, name, trx) {
147
+ const knex = trx || adapter.getKnex();
148
+ // Insert with composite key (project_id, name)
149
+ await knex('m_scopes')
150
+ .insert({ project_id: projectId, name })
151
+ .onConflict(['project_id', 'name']) // Composite conflict resolution (v3.7.3)
152
+ .ignore();
153
+ const result = await knex('m_scopes')
154
+ .where({ project_id: projectId, name }) // Filter by both columns (v3.7.3)
155
+ .first('id');
156
+ if (!result) {
157
+ throw new Error(`Failed to get or create scope: ${name} (project: ${projectId})`);
158
+ }
159
+ return result.id;
160
+ }
161
+ /**
162
+ * Get or create category ID
163
+ */
164
+ export async function getOrCreateCategoryId(adapter, category, trx) {
165
+ const knex = trx || adapter.getKnex();
166
+ await knex('m_constraint_categories').insert({ name: category }).onConflict('name').ignore();
167
+ const result = await knex('m_constraint_categories').where({ name: category }).first('id');
168
+ if (!result) {
169
+ throw new Error(`Failed to get or create category: ${category}`);
170
+ }
171
+ return result.id;
172
+ }
173
+ /**
174
+ * Add decision context to a decision
175
+ */
176
+ export async function addDecisionContext(adapter, decisionKey, rationale, alternatives = null, tradeoffs = null, decidedBy = null, relatedTaskId = null, relatedConstraintId = null) {
177
+ // Validate JSON inputs
178
+ validateAlternativesJson(alternatives);
179
+ validateTradeoffsJson(tradeoffs);
180
+ const knex = adapter.getKnex();
181
+ // Get decision key ID
182
+ const keyId = await getOrCreateContextKey(adapter, decisionKey);
183
+ // Get agent ID if provided
184
+ let agentId = null;
185
+ if (decidedBy) {
186
+ agentId = await getOrCreateAgent(adapter, decidedBy);
187
+ }
188
+ // Insert context
189
+ const [id] = await knex('t_decision_context').insert({
190
+ decision_key_id: keyId,
191
+ rationale,
192
+ alternatives_considered: alternatives,
193
+ tradeoffs,
194
+ agent_id: agentId,
195
+ related_task_id: relatedTaskId,
196
+ related_constraint_id: relatedConstraintId,
197
+ decision_date: Math.floor(Date.now() / 1000),
198
+ ts: Math.floor(Date.now() / 1000),
199
+ });
200
+ return id;
201
+ }
202
+ //# sourceMappingURL=inserts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inserts.js","sourceRoot":"","sources":["../../../src/database/operations/inserts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Database query operations module
3
+ */
4
+ import { Knex } from 'knex';
5
+ import type { DatabaseAdapter } from '../../adapters/index.js';
6
+ /**
7
+ * Get layer ID by name
8
+ */
9
+ export declare function getLayerId(adapter: DatabaseAdapter, name: string, trx?: Knex.Transaction): Promise<number | null>;
10
+ /**
11
+ * Get constraint category ID by name
12
+ */
13
+ export declare function getCategoryId(adapter: DatabaseAdapter, name: string, trx?: Knex.Transaction): Promise<number | null>;
14
+ /**
15
+ * Get decision with context
16
+ */
17
+ export declare function getDecisionWithContext(adapter: DatabaseAdapter, decisionKey: string): Promise<{
18
+ key: string;
19
+ value: string;
20
+ version: string;
21
+ status: string;
22
+ layer: string | null;
23
+ decided_by: string | null;
24
+ updated: string;
25
+ context: Array<{
26
+ id: number;
27
+ rationale: string;
28
+ alternatives_considered: string | null;
29
+ tradeoffs: string | null;
30
+ decided_by: string | null;
31
+ decision_date: string;
32
+ related_task_id: number | null;
33
+ related_constraint_id: number | null;
34
+ }>;
35
+ } | null>;
36
+ /**
37
+ * List decision contexts with optional filters
38
+ */
39
+ export declare function listDecisionContexts(adapter: DatabaseAdapter, filters?: {
40
+ decisionKey?: string;
41
+ relatedTaskId?: number;
42
+ relatedConstraintId?: number;
43
+ decidedBy?: string;
44
+ limit?: number;
45
+ offset?: number;
46
+ }): Promise<Array<{
47
+ id: number;
48
+ decision_key: string;
49
+ rationale: string;
50
+ alternatives_considered: string | null;
51
+ tradeoffs: string | null;
52
+ decided_by: string | null;
53
+ decision_date: string;
54
+ related_task_id: number | null;
55
+ related_constraint_id: number | null;
56
+ }>>;
57
+ //# sourceMappingURL=queries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/database/operations/queries.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;QACvC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;KACtC,CAAC,CAAC;CACJ,GAAG,IAAI,CAAC,CA2CR;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE;IACR,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACA,OAAO,CAAC,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC,CAAC,CAAC,CA6CF"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Database query operations module
3
+ */
4
+ /**
5
+ * Get layer ID by name
6
+ */
7
+ export async function getLayerId(adapter, name, trx) {
8
+ const knex = trx || adapter.getKnex();
9
+ const result = await knex('m_layers').where({ name }).first('id');
10
+ return result ? result.id : null;
11
+ }
12
+ /**
13
+ * Get constraint category ID by name
14
+ */
15
+ export async function getCategoryId(adapter, name, trx) {
16
+ const knex = trx || adapter.getKnex();
17
+ const result = await knex('m_constraint_categories').where({ name }).first('id');
18
+ return result ? result.id : null;
19
+ }
20
+ /**
21
+ * Get decision with context
22
+ */
23
+ export async function getDecisionWithContext(adapter, decisionKey) {
24
+ const knex = adapter.getKnex();
25
+ // First get the decision
26
+ const decision = await knex('t_decisions as d')
27
+ .join('m_context_keys as k', 'd.key_id', 'k.id')
28
+ .leftJoin('m_layers as l', 'd.layer_id', 'l.id')
29
+ .leftJoin('m_agents as a', 'd.agent_id', 'a.id')
30
+ .where('k.key', decisionKey)
31
+ .select('k.key', 'd.value', 'd.version', knex.raw(`CASE d.status WHEN 1 THEN 'active' WHEN 2 THEN 'deprecated' ELSE 'draft' END as status`), 'l.name as layer', 'a.name as decided_by', knex.raw(`datetime(d.ts, 'unixepoch') as updated`))
32
+ .first();
33
+ if (!decision)
34
+ return null;
35
+ // Get all contexts for this decision
36
+ const contexts = await knex('t_decision_context as dc')
37
+ .join('m_context_keys as k', 'dc.decision_key_id', 'k.id')
38
+ .leftJoin('m_agents as a', 'dc.agent_id', 'a.id')
39
+ .where('k.key', decisionKey)
40
+ .select('dc.id', 'dc.rationale', 'dc.alternatives_considered', 'dc.tradeoffs', 'a.name as decided_by', knex.raw(`datetime(dc.decision_date, 'unixepoch') as decision_date`), 'dc.related_task_id', 'dc.related_constraint_id')
41
+ .orderBy('dc.decision_date', 'desc');
42
+ return {
43
+ ...decision,
44
+ context: contexts,
45
+ };
46
+ }
47
+ /**
48
+ * List decision contexts with optional filters
49
+ */
50
+ export async function listDecisionContexts(adapter, filters) {
51
+ const knex = adapter.getKnex();
52
+ let query = knex('t_decision_context as dc')
53
+ .join('m_context_keys as k', 'dc.decision_key_id', 'k.id')
54
+ .leftJoin('m_agents as a', 'dc.agent_id', 'a.id')
55
+ .select('dc.id', 'k.key as decision_key', 'dc.rationale', 'dc.alternatives_considered', 'dc.tradeoffs', 'a.name as decided_by', knex.raw(`datetime(dc.decision_date, 'unixepoch') as decision_date`), 'dc.related_task_id', 'dc.related_constraint_id');
56
+ if (filters?.decisionKey) {
57
+ query = query.where('k.key', filters.decisionKey);
58
+ }
59
+ if (filters?.relatedTaskId !== undefined) {
60
+ query = query.where('dc.related_task_id', filters.relatedTaskId);
61
+ }
62
+ if (filters?.relatedConstraintId !== undefined) {
63
+ query = query.where('dc.related_constraint_id', filters.relatedConstraintId);
64
+ }
65
+ if (filters?.decidedBy) {
66
+ query = query.where('a.name', filters.decidedBy);
67
+ }
68
+ query = query.orderBy('dc.decision_date', 'desc');
69
+ if (filters?.limit) {
70
+ query = query.limit(filters.limit);
71
+ }
72
+ if (filters?.offset) {
73
+ query = query.offset(filters.offset);
74
+ }
75
+ return await query;
76
+ }
77
+ //# sourceMappingURL=queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../src/database/operations/queries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Database update operations module
3
+ */
4
+ import { Knex } from 'knex';
5
+ import type { DatabaseAdapter } from '../../adapters/index.js';
6
+ /**
7
+ * Update agent activity timestamp
8
+ */
9
+ export declare function updateAgentActivity(adapter: DatabaseAdapter, agentId: number, trx?: Knex.Transaction): Promise<void>;
10
+ //# sourceMappingURL=updates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updates.d.ts","sourceRoot":"","sources":["../../../src/database/operations/updates.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,MAAM,EACf,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf"}