sqlew 3.7.4 → 3.8.1

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 +339 -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 +133 -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 +7 -5
  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
@@ -4,8 +4,30 @@ import type { DatabaseConfig } from '../config/types.js';
4
4
  /**
5
5
  * PostgreSQL adapter implementation with authentication support.
6
6
  *
7
- * This adapter will be fully implemented in Phase 3 of the multi-RDBMS migration.
8
- * Currently throws "not implemented" errors for all operations.
7
+ * This adapter provides PostgreSQL-specific implementations for database operations,
8
+ * integrating with the authentication layer for secure connections via SSH tunnels,
9
+ * direct connections, or cloud IAM (AWS RDS, GCP Cloud SQL).
10
+ *
11
+ * **PostgreSQL-Specific Features:**
12
+ * - RETURNING clause for insert/update/delete
13
+ * - ON CONFLICT ... DO UPDATE for upserts
14
+ * - jsonb_extract_path() and jsonb_build_object() for JSON operations
15
+ * - string_agg() for string aggregation
16
+ * - EXTRACT(EPOCH FROM ...) for Unix timestamp conversions
17
+ * - SERIAL/BIGSERIAL for auto-increment columns
18
+ * - Full transaction support with savepoints
19
+ * - Common Table Expressions (CTEs) and window functions
20
+ *
21
+ * **Supported PostgreSQL Versions:**
22
+ * - PostgreSQL 16+ (full feature support)
23
+ * - PostgreSQL 12-15 (full feature support)
24
+ * - PostgreSQL 9.5+ (basic feature support)
25
+ *
26
+ * **Authentication Methods:**
27
+ * - Direct: Standard username/password authentication
28
+ * - SSH Tunnel: Connect via SSH bastion host
29
+ * - AWS RDS IAM: Token-based authentication for AWS RDS
30
+ * - GCP Cloud SQL IAM: Token-based authentication for Cloud SQL
9
31
  *
10
32
  * @extends BaseAdapter
11
33
  */
@@ -18,25 +40,195 @@ export declare class PostgreSQLAdapter extends BaseAdapter {
18
40
  readonly supportsSavepoints = true;
19
41
  readonly databaseName: "postgresql";
20
42
  constructor(config: DatabaseConfig);
43
+ /**
44
+ * Returns the Knex dialect for PostgreSQL.
45
+ *
46
+ * Uses 'pg' driver which supports:
47
+ * - Prepared statements
48
+ * - Promise-based API
49
+ * - Connection pooling
50
+ * - Full Unicode support
51
+ *
52
+ * @returns {string} 'pg' dialect identifier
53
+ */
21
54
  getDialect(): string;
55
+ /**
56
+ * Initializes PostgreSQL-specific session settings.
57
+ *
58
+ * **Configuration Applied:**
59
+ * - Timezone: UTC for consistent timestamp handling
60
+ * - Statement timeout: 30 seconds (prevents long-running queries)
61
+ * - Client encoding: UTF8 for full Unicode support
62
+ * - Default transaction isolation: READ COMMITTED
63
+ *
64
+ * @returns {Promise<void>}
65
+ * @throws {Error} If database does not exist or cannot be accessed
66
+ */
22
67
  initialize(): Promise<void>;
23
- connect(config?: Knex.Config): Promise<Knex>;
24
- disconnect(): Promise<void>;
25
- getKnex(): Knex;
68
+ /**
69
+ * Inserts a row and returns the inserted record using RETURNING clause.
70
+ *
71
+ * PostgreSQL supports RETURNING clause natively, making this more efficient
72
+ * than MySQL's approach (insert + select).
73
+ *
74
+ * @template T - Record type
75
+ * @param {string} table - Table name
76
+ * @param {Partial<T>} data - Data to insert
77
+ * @returns {Promise<T>} Inserted record
78
+ * @throws {Error} If insert fails
79
+ */
26
80
  insertReturning<T extends Record<string, any>>(table: string, data: Partial<T>): Promise<T>;
81
+ /**
82
+ * Upserts a row using PostgreSQL's ON CONFLICT ... DO UPDATE syntax.
83
+ *
84
+ * **Behavior:**
85
+ * - If row with conflicting key exists: UPDATE specified columns
86
+ * - If no conflict: INSERT new row
87
+ * - Returns number of affected rows
88
+ *
89
+ * @template T - Record type
90
+ * @param {string} table - Table name
91
+ * @param {Partial<T>} data - Data to insert/update
92
+ * @param {string[]} conflictColumns - Columns that define uniqueness (must have UNIQUE index)
93
+ * @param {string[]} [updateColumns] - Columns to update on conflict (default: all except conflict columns)
94
+ * @returns {Promise<number>} Affected rows (1 = insert or update)
95
+ * @throws {Error} If conflictColumns don't have UNIQUE constraint
96
+ */
27
97
  upsert<T extends Record<string, any>>(table: string, data: Partial<T>, conflictColumns: string[], updateColumns?: string[]): Promise<number>;
98
+ /**
99
+ * Extracts a value from a JSONB column using jsonb_extract_path_text().
100
+ *
101
+ * **PostgreSQL JSON Path Syntax:**
102
+ * - Nested objects: 'address', 'city' (separate arguments)
103
+ * - Array access: Use jsonb_array_element() separately
104
+ *
105
+ * @param {string} column - JSONB column name
106
+ * @param {string} path - JSON path (e.g., 'address.city')
107
+ * @returns {Knex.Raw} Raw SQL expression for JSON extraction
108
+ */
28
109
  jsonExtract(column: string, path: string): Knex.Raw;
110
+ /**
111
+ * Builds a JSON object from field values using jsonb_build_object().
112
+ *
113
+ * @param {Record<string, any>} fields - Object with key-value pairs
114
+ * @returns {Knex.Raw} Raw SQL expression for JSON object construction
115
+ */
29
116
  jsonBuildObject(fields: Record<string, any>): Knex.Raw;
117
+ /**
118
+ * Returns current Unix timestamp using EXTRACT(EPOCH FROM NOW()).
119
+ *
120
+ * **Behavior:**
121
+ * - Returns seconds since Unix epoch (1970-01-01 00:00:00 UTC)
122
+ * - Always returns UTC timestamp
123
+ * - Returns numeric value (may have fractional seconds)
124
+ *
125
+ * @returns {Knex.Raw} Raw SQL expression for current timestamp
126
+ */
30
127
  currentTimestamp(): Knex.Raw;
128
+ /**
129
+ * Converts Unix epoch timestamp to PostgreSQL timestamp using TO_TIMESTAMP().
130
+ *
131
+ * **Behavior:**
132
+ * - Converts integer epoch to TIMESTAMP WITH TIME ZONE
133
+ * - Returns UTC timestamp
134
+ * - Handles NULL values
135
+ *
136
+ * @param {string} epochColumn - Column containing Unix epoch timestamp
137
+ * @returns {Knex.Raw} Raw SQL expression for epoch conversion
138
+ */
31
139
  fromUnixEpoch(epochColumn: string): Knex.Raw;
140
+ /**
141
+ * Converts PostgreSQL timestamp to Unix epoch using EXTRACT(EPOCH FROM ...).
142
+ *
143
+ * **Behavior:**
144
+ * - Converts TIMESTAMP to integer epoch
145
+ * - Assumes input is UTC
146
+ * - Handles NULL values
147
+ *
148
+ * @param {string} timestampColumn - Column containing timestamp value
149
+ * @returns {Knex.Raw} Raw SQL expression for timestamp conversion
150
+ */
32
151
  toUnixEpoch(timestampColumn: string): Knex.Raw;
152
+ /**
153
+ * Concatenates string values using || operator.
154
+ *
155
+ * **Behavior:**
156
+ * - PostgreSQL uses || for concatenation
157
+ * - Returns NULL if any argument is NULL (use COALESCE to handle)
158
+ * - Empty strings are preserved
159
+ *
160
+ * @param {...(string | Knex.Raw)[]} values - Values to concatenate
161
+ * @returns {Knex.Raw} Raw SQL expression for concatenation
162
+ */
33
163
  concat(...values: Array<string | Knex.Raw>): Knex.Raw;
164
+ /**
165
+ * Aggregates strings with separator using string_agg().
166
+ *
167
+ * **Behavior:**
168
+ * - Concatenates values from multiple rows into single string
169
+ * - NULL values are skipped
170
+ * - No result length limit (unlike MySQL's GROUP_CONCAT)
171
+ *
172
+ * @param {string} column - Column to aggregate
173
+ * @param {string} [separator=','] - Separator between values
174
+ * @returns {Knex.Raw} Raw SQL expression for string aggregation
175
+ */
34
176
  stringAgg(column: string, separator?: string): Knex.Raw;
177
+ /**
178
+ * Executes a callback within a database transaction.
179
+ *
180
+ * **PostgreSQL Transaction Characteristics:**
181
+ * - Default isolation level: READ COMMITTED
182
+ * - Supports nested transactions via savepoints
183
+ * - Automatic rollback on error
184
+ * - MVCC (Multi-Version Concurrency Control)
185
+ *
186
+ * @template T - Return type
187
+ * @param {Function} callback - Transaction callback
188
+ * @param {Object} [options] - Transaction options
189
+ * @param {string} [options.isolationLevel] - Isolation level
190
+ * @returns {Promise<T>} Transaction result
191
+ */
35
192
  transaction<T>(callback: (trx: Knex.Transaction) => Promise<T>, options?: {
36
193
  isolationLevel?: 'serializable' | 'read committed' | 'repeatable read';
37
194
  }): Promise<T>;
195
+ /**
196
+ * Creates a savepoint within a transaction.
197
+ *
198
+ * **PostgreSQL Savepoint Behavior:**
199
+ * - Allows partial rollback within transaction
200
+ * - Savepoint names are case-sensitive
201
+ * - Automatically released on transaction commit
202
+ * - Rolled back on transaction rollback
203
+ *
204
+ * @template T - Return type
205
+ * @param {Knex.Transaction} trx - Parent transaction
206
+ * @param {Function} callback - Savepoint callback
207
+ * @returns {Promise<T>} Savepoint result
208
+ */
38
209
  savepoint<T>(trx: Knex.Transaction, callback: (sp: Knex.Transaction) => Promise<T>): Promise<T>;
210
+ /**
211
+ * Checks if a table exists in the database.
212
+ *
213
+ * Queries information_schema.tables which is the standard PostgreSQL approach
214
+ * for table existence checking.
215
+ *
216
+ * @param {string} tableName - Table name to check
217
+ * @returns {Promise<boolean>} True if table exists, false otherwise
218
+ */
39
219
  tableExists(tableName: string): Promise<boolean>;
220
+ /**
221
+ * Adds a serial auto-increment primary key column to a table.
222
+ *
223
+ * **PostgreSQL SERIAL Behavior:**
224
+ * - SERIAL = INTEGER with auto-increment (sequence)
225
+ * - BIGSERIAL = BIGINT with auto-increment (recommended for large tables)
226
+ * - Automatically creates a sequence (tablename_columnname_seq)
227
+ * - Primary key constraint added automatically
228
+ *
229
+ * @param {Knex.CreateTableBuilder} table - Knex table builder
230
+ * @param {string} [columnName='id'] - Column name (default: 'id')
231
+ */
40
232
  autoIncrementColumn(table: Knex.CreateTableBuilder, columnName?: string): void;
41
233
  }
42
234
  //# sourceMappingURL=postgresql-adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postgresql-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIzD;;;;;;;GAOG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAEhD,QAAQ,CAAC,iBAAiB,QAAQ;IAClC,QAAQ,CAAC,YAAY,QAAQ;IAC7B,QAAQ,CAAC,cAAc,QAAQ;IAC/B,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,uBAAuB,QAAQ;IACxC,QAAQ,CAAC,kBAAkB,QAAQ;IACnC,QAAQ,CAAC,YAAY,EAAG,YAAY,CAAU;gBAElC,MAAM,EAAE,cAAc;IAIlC,UAAU,IAAI,MAAM;IAId,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,OAAO,IAAI,IAAI;IAIT,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjD,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GACf,OAAO,CAAC,CAAC,CAAC;IAIP,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAChB,eAAe,EAAE,MAAM,EAAE,EACzB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,MAAM,CAAC;IAIlB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAInD,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG;IAItD,gBAAgB,IAAI,IAAI,CAAC,GAAG;IAI5B,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAI5C,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAI9C,MAAM,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG;IAIrD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAIjD,WAAW,CAAC,CAAC,EACjB,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EAC/C,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,CAAA;KAAE,GACnF,OAAO,CAAC,CAAC,CAAC;IAIP,SAAS,CAAC,CAAC,EACf,GAAG,EAAE,IAAI,CAAC,WAAW,EACrB,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,CAAC;IAIP,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItD,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CAG/E"}
1
+ {"version":3,"file":"postgresql-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,80 +1,344 @@
1
- // src/adapters/postgresql-adapter.ts
2
- import knexLib from 'knex';
3
1
  import { BaseAdapter } from './base-adapter.js';
4
- const { knex } = knexLib;
5
2
  /**
6
3
  * PostgreSQL adapter implementation with authentication support.
7
4
  *
8
- * This adapter will be fully implemented in Phase 3 of the multi-RDBMS migration.
9
- * Currently throws "not implemented" errors for all operations.
5
+ * This adapter provides PostgreSQL-specific implementations for database operations,
6
+ * integrating with the authentication layer for secure connections via SSH tunnels,
7
+ * direct connections, or cloud IAM (AWS RDS, GCP Cloud SQL).
8
+ *
9
+ * **PostgreSQL-Specific Features:**
10
+ * - RETURNING clause for insert/update/delete
11
+ * - ON CONFLICT ... DO UPDATE for upserts
12
+ * - jsonb_extract_path() and jsonb_build_object() for JSON operations
13
+ * - string_agg() for string aggregation
14
+ * - EXTRACT(EPOCH FROM ...) for Unix timestamp conversions
15
+ * - SERIAL/BIGSERIAL for auto-increment columns
16
+ * - Full transaction support with savepoints
17
+ * - Common Table Expressions (CTEs) and window functions
18
+ *
19
+ * **Supported PostgreSQL Versions:**
20
+ * - PostgreSQL 16+ (full feature support)
21
+ * - PostgreSQL 12-15 (full feature support)
22
+ * - PostgreSQL 9.5+ (basic feature support)
23
+ *
24
+ * **Authentication Methods:**
25
+ * - Direct: Standard username/password authentication
26
+ * - SSH Tunnel: Connect via SSH bastion host
27
+ * - AWS RDS IAM: Token-based authentication for AWS RDS
28
+ * - GCP Cloud SQL IAM: Token-based authentication for Cloud SQL
10
29
  *
11
30
  * @extends BaseAdapter
12
31
  */
13
32
  export class PostgreSQLAdapter extends BaseAdapter {
14
33
  // Feature detection
15
- supportsReturning = true;
16
- supportsJSON = true;
17
- supportsUpsert = true;
18
- supportsCTE = true;
19
- supportsWindowFunctions = true;
20
- supportsSavepoints = true;
34
+ supportsReturning = true; // RETURNING clause support
35
+ supportsJSON = true; // Native JSON/JSONB support
36
+ supportsUpsert = true; // ON CONFLICT support (9.5+)
37
+ supportsCTE = true; // WITH clause support
38
+ supportsWindowFunctions = true; // Window functions support
39
+ supportsSavepoints = true; // Full savepoint support
21
40
  databaseName = 'postgresql';
22
41
  constructor(config) {
23
42
  super(config);
24
43
  }
44
+ /**
45
+ * Returns the Knex dialect for PostgreSQL.
46
+ *
47
+ * Uses 'pg' driver which supports:
48
+ * - Prepared statements
49
+ * - Promise-based API
50
+ * - Connection pooling
51
+ * - Full Unicode support
52
+ *
53
+ * @returns {string} 'pg' dialect identifier
54
+ */
25
55
  getDialect() {
26
56
  return 'pg';
27
57
  }
58
+ /**
59
+ * Initializes PostgreSQL-specific session settings.
60
+ *
61
+ * **Configuration Applied:**
62
+ * - Timezone: UTC for consistent timestamp handling
63
+ * - Statement timeout: 30 seconds (prevents long-running queries)
64
+ * - Client encoding: UTF8 for full Unicode support
65
+ * - Default transaction isolation: READ COMMITTED
66
+ *
67
+ * @returns {Promise<void>}
68
+ * @throws {Error} If database does not exist or cannot be accessed
69
+ */
28
70
  async initialize() {
29
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
30
- }
31
- async connect(config) {
32
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
33
- }
34
- async disconnect() {
35
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
36
- }
37
- getKnex() {
38
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
71
+ const knex = this.getKnex();
72
+ // Validate database exists
73
+ const dbName = this.config.connection?.database;
74
+ if (!dbName) {
75
+ throw new Error('PostgreSQL adapter requires database name in configuration');
76
+ }
77
+ try {
78
+ // Check if we can access the database
79
+ const result = await knex.raw('SELECT current_database() as db');
80
+ const currentDb = result.rows?.[0]?.db;
81
+ if (!currentDb || currentDb !== dbName) {
82
+ throw new Error(`Database '${dbName}' does not exist or cannot be accessed. ` +
83
+ `Please create it manually: CREATE DATABASE ${dbName} ENCODING 'UTF8';`);
84
+ }
85
+ }
86
+ catch (error) {
87
+ if (error.code === '3D000') {
88
+ // INVALID CATALOG NAME
89
+ throw new Error(`Database '${dbName}' does not exist. ` +
90
+ `Please create it manually before connecting.`);
91
+ }
92
+ throw error;
93
+ }
94
+ // Set timezone to UTC for consistent timestamp handling
95
+ await knex.raw("SET timezone = 'UTC'");
96
+ // Set statement timeout to prevent long-running queries
97
+ await knex.raw('SET statement_timeout = 30000'); // 30 seconds
98
+ // Ensure UTF8 encoding
99
+ await knex.raw("SET client_encoding = 'UTF8'");
39
100
  }
101
+ // ============================================================================
102
+ // Query Adaptations - PostgreSQL-specific implementations
103
+ // ============================================================================
104
+ /**
105
+ * Inserts a row and returns the inserted record using RETURNING clause.
106
+ *
107
+ * PostgreSQL supports RETURNING clause natively, making this more efficient
108
+ * than MySQL's approach (insert + select).
109
+ *
110
+ * @template T - Record type
111
+ * @param {string} table - Table name
112
+ * @param {Partial<T>} data - Data to insert
113
+ * @returns {Promise<T>} Inserted record
114
+ * @throws {Error} If insert fails
115
+ */
40
116
  async insertReturning(table, data) {
41
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
117
+ const knex = this.getKnex();
118
+ // Use RETURNING * to get the complete inserted row
119
+ const [result] = await knex(table).insert(data).returning('*');
120
+ if (!result) {
121
+ throw new Error(`Failed to insert row into ${table}`);
122
+ }
123
+ return result;
42
124
  }
125
+ /**
126
+ * Upserts a row using PostgreSQL's ON CONFLICT ... DO UPDATE syntax.
127
+ *
128
+ * **Behavior:**
129
+ * - If row with conflicting key exists: UPDATE specified columns
130
+ * - If no conflict: INSERT new row
131
+ * - Returns number of affected rows
132
+ *
133
+ * @template T - Record type
134
+ * @param {string} table - Table name
135
+ * @param {Partial<T>} data - Data to insert/update
136
+ * @param {string[]} conflictColumns - Columns that define uniqueness (must have UNIQUE index)
137
+ * @param {string[]} [updateColumns] - Columns to update on conflict (default: all except conflict columns)
138
+ * @returns {Promise<number>} Affected rows (1 = insert or update)
139
+ * @throws {Error} If conflictColumns don't have UNIQUE constraint
140
+ */
43
141
  async upsert(table, data, conflictColumns, updateColumns) {
44
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
142
+ const knex = this.getKnex();
143
+ // Determine which columns to update on conflict
144
+ const columnsToUpdate = updateColumns || Object.keys(data).filter(key => !conflictColumns.includes(key));
145
+ // Build update data for DO UPDATE SET clause
146
+ const updateData = columnsToUpdate.reduce((acc, col) => {
147
+ acc[col] = data[col];
148
+ return acc;
149
+ }, {});
150
+ // Use Knex's onConflict() which generates ON CONFLICT ... DO UPDATE for PostgreSQL
151
+ const result = await knex(table)
152
+ .insert(data)
153
+ .onConflict(conflictColumns)
154
+ .merge(updateData);
155
+ return result.length;
45
156
  }
157
+ /**
158
+ * Extracts a value from a JSONB column using jsonb_extract_path_text().
159
+ *
160
+ * **PostgreSQL JSON Path Syntax:**
161
+ * - Nested objects: 'address', 'city' (separate arguments)
162
+ * - Array access: Use jsonb_array_element() separately
163
+ *
164
+ * @param {string} column - JSONB column name
165
+ * @param {string} path - JSON path (e.g., 'address.city')
166
+ * @returns {Knex.Raw} Raw SQL expression for JSON extraction
167
+ */
46
168
  jsonExtract(column, path) {
47
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
169
+ const knex = this.getKnex();
170
+ // Split path by '.' and use as separate arguments
171
+ const pathParts = path.replace(/^\$\.?/, '').split('.');
172
+ const placeholders = ['??', ...pathParts.map(() => '?')].join(', ');
173
+ return knex.raw(`jsonb_extract_path_text(${placeholders})`, [column, ...pathParts]);
48
174
  }
175
+ /**
176
+ * Builds a JSON object from field values using jsonb_build_object().
177
+ *
178
+ * @param {Record<string, any>} fields - Object with key-value pairs
179
+ * @returns {Knex.Raw} Raw SQL expression for JSON object construction
180
+ */
49
181
  jsonBuildObject(fields) {
50
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
182
+ const knex = this.getKnex();
183
+ const keys = Object.keys(fields);
184
+ const values = Object.values(fields);
185
+ // Build arguments array: [key1, value1, key2, value2, ...]
186
+ const args = [];
187
+ keys.forEach((key, i) => {
188
+ args.push(key);
189
+ args.push(values[i]);
190
+ });
191
+ // Create placeholders for jsonb_build_object(?, ?, ?, ?, ...)
192
+ const placeholders = args.map(() => '?').join(', ');
193
+ return knex.raw(`jsonb_build_object(${placeholders})`, args);
51
194
  }
195
+ /**
196
+ * Returns current Unix timestamp using EXTRACT(EPOCH FROM NOW()).
197
+ *
198
+ * **Behavior:**
199
+ * - Returns seconds since Unix epoch (1970-01-01 00:00:00 UTC)
200
+ * - Always returns UTC timestamp
201
+ * - Returns numeric value (may have fractional seconds)
202
+ *
203
+ * @returns {Knex.Raw} Raw SQL expression for current timestamp
204
+ */
52
205
  currentTimestamp() {
53
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
206
+ return this.getKnex().raw('EXTRACT(EPOCH FROM NOW())::INTEGER');
54
207
  }
208
+ /**
209
+ * Converts Unix epoch timestamp to PostgreSQL timestamp using TO_TIMESTAMP().
210
+ *
211
+ * **Behavior:**
212
+ * - Converts integer epoch to TIMESTAMP WITH TIME ZONE
213
+ * - Returns UTC timestamp
214
+ * - Handles NULL values
215
+ *
216
+ * @param {string} epochColumn - Column containing Unix epoch timestamp
217
+ * @returns {Knex.Raw} Raw SQL expression for epoch conversion
218
+ */
55
219
  fromUnixEpoch(epochColumn) {
56
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
220
+ return this.getKnex().raw('TO_TIMESTAMP(??)', [epochColumn]);
57
221
  }
222
+ /**
223
+ * Converts PostgreSQL timestamp to Unix epoch using EXTRACT(EPOCH FROM ...).
224
+ *
225
+ * **Behavior:**
226
+ * - Converts TIMESTAMP to integer epoch
227
+ * - Assumes input is UTC
228
+ * - Handles NULL values
229
+ *
230
+ * @param {string} timestampColumn - Column containing timestamp value
231
+ * @returns {Knex.Raw} Raw SQL expression for timestamp conversion
232
+ */
58
233
  toUnixEpoch(timestampColumn) {
59
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
234
+ return this.getKnex().raw('EXTRACT(EPOCH FROM ??)::INTEGER', [timestampColumn]);
60
235
  }
236
+ /**
237
+ * Concatenates string values using || operator.
238
+ *
239
+ * **Behavior:**
240
+ * - PostgreSQL uses || for concatenation
241
+ * - Returns NULL if any argument is NULL (use COALESCE to handle)
242
+ * - Empty strings are preserved
243
+ *
244
+ * @param {...(string | Knex.Raw)[]} values - Values to concatenate
245
+ * @returns {Knex.Raw} Raw SQL expression for concatenation
246
+ */
61
247
  concat(...values) {
62
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
248
+ const knex = this.getKnex();
249
+ const placeholders = values.map(() => '?').join(' || ');
250
+ return knex.raw(`(${placeholders})`, values);
63
251
  }
64
- stringAgg(column, separator) {
65
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
252
+ /**
253
+ * Aggregates strings with separator using string_agg().
254
+ *
255
+ * **Behavior:**
256
+ * - Concatenates values from multiple rows into single string
257
+ * - NULL values are skipped
258
+ * - No result length limit (unlike MySQL's GROUP_CONCAT)
259
+ *
260
+ * @param {string} column - Column to aggregate
261
+ * @param {string} [separator=','] - Separator between values
262
+ * @returns {Knex.Raw} Raw SQL expression for string aggregation
263
+ */
264
+ stringAgg(column, separator = ',') {
265
+ return this.getKnex().raw('string_agg(??, ?)', [column, separator]);
66
266
  }
267
+ // ============================================================================
268
+ // Transaction Support
269
+ // ============================================================================
270
+ /**
271
+ * Executes a callback within a database transaction.
272
+ *
273
+ * **PostgreSQL Transaction Characteristics:**
274
+ * - Default isolation level: READ COMMITTED
275
+ * - Supports nested transactions via savepoints
276
+ * - Automatic rollback on error
277
+ * - MVCC (Multi-Version Concurrency Control)
278
+ *
279
+ * @template T - Return type
280
+ * @param {Function} callback - Transaction callback
281
+ * @param {Object} [options] - Transaction options
282
+ * @param {string} [options.isolationLevel] - Isolation level
283
+ * @returns {Promise<T>} Transaction result
284
+ */
67
285
  async transaction(callback, options) {
68
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
286
+ // Delegate to BaseAdapter's implementation
287
+ return super.transaction(callback, options);
69
288
  }
289
+ /**
290
+ * Creates a savepoint within a transaction.
291
+ *
292
+ * **PostgreSQL Savepoint Behavior:**
293
+ * - Allows partial rollback within transaction
294
+ * - Savepoint names are case-sensitive
295
+ * - Automatically released on transaction commit
296
+ * - Rolled back on transaction rollback
297
+ *
298
+ * @template T - Return type
299
+ * @param {Knex.Transaction} trx - Parent transaction
300
+ * @param {Function} callback - Savepoint callback
301
+ * @returns {Promise<T>} Savepoint result
302
+ */
70
303
  async savepoint(trx, callback) {
71
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
304
+ return trx.savepoint(callback);
72
305
  }
306
+ // ============================================================================
307
+ // Schema Management
308
+ // ============================================================================
309
+ /**
310
+ * Checks if a table exists in the database.
311
+ *
312
+ * Queries information_schema.tables which is the standard PostgreSQL approach
313
+ * for table existence checking.
314
+ *
315
+ * @param {string} tableName - Table name to check
316
+ * @returns {Promise<boolean>} True if table exists, false otherwise
317
+ */
73
318
  async tableExists(tableName) {
74
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
319
+ const knex = this.getKnex();
320
+ const database = this.config.connection.database;
321
+ const result = await knex.raw(`SELECT table_name
322
+ FROM information_schema.tables
323
+ WHERE table_catalog = ?
324
+ AND table_name = ?`, [database, tableName]);
325
+ return result.rows.length > 0;
75
326
  }
76
- autoIncrementColumn(table, columnName) {
77
- throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
327
+ /**
328
+ * Adds a serial auto-increment primary key column to a table.
329
+ *
330
+ * **PostgreSQL SERIAL Behavior:**
331
+ * - SERIAL = INTEGER with auto-increment (sequence)
332
+ * - BIGSERIAL = BIGINT with auto-increment (recommended for large tables)
333
+ * - Automatically creates a sequence (tablename_columnname_seq)
334
+ * - Primary key constraint added automatically
335
+ *
336
+ * @param {Knex.CreateTableBuilder} table - Knex table builder
337
+ * @param {string} [columnName='id'] - Column name (default: 'id')
338
+ */
339
+ autoIncrementColumn(table, columnName = 'id') {
340
+ // Use increments() which creates SERIAL PRIMARY KEY for PostgreSQL
341
+ table.increments(columnName);
78
342
  }
79
343
  }
80
344
  //# sourceMappingURL=postgresql-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postgresql-adapter.js","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,OAAO,MAAM,MAAM,CAAC;AAE3B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;AAEzB;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,WAAW;IAChD,oBAAoB;IACX,iBAAiB,GAAG,IAAI,CAAC;IACzB,YAAY,GAAG,IAAI,CAAC;IACpB,cAAc,GAAG,IAAI,CAAC;IACtB,WAAW,GAAG,IAAI,CAAC;IACnB,uBAAuB,GAAG,IAAI,CAAC;IAC/B,kBAAkB,GAAG,IAAI,CAAC;IAC1B,YAAY,GAAG,YAAqB,CAAC;IAE9C,YAAY,MAAsB;QAChC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAoB;QAChC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,IAAgB;QAEhB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,MAAM,CACV,KAAa,EACb,IAAgB,EAChB,eAAyB,EACzB,aAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,IAAY;QACtC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,eAAe,CAAC,MAA2B;QACzC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,gBAAgB;QACd,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,aAAa,CAAC,WAAmB;QAC/B,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,WAAW,CAAC,eAAuB;QACjC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,GAAG,MAAgC;QACxC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,SAAkB;QAC1C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAA+C,EAC/C,OAAoF;QAEpF,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,SAAS,CACb,GAAqB,EACrB,QAA8C;QAE9C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,mBAAmB,CAAC,KAA8B,EAAE,UAAmB;QACrE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;CACF"}
1
+ {"version":3,"file":"postgresql-adapter.js","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * CLI for sqlew - Standalone query commands for mcp-sqlew
4
- * Provides quick terminal access to decisions, messages, files, and activity logs
4
+ * Provides quick terminal access to decisions, messages, and files
5
5
  */
6
6
  export {};
7
7
  //# sourceMappingURL=cli.d.ts.map