sqlew 3.7.3 → 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 (786) hide show
  1. package/CHANGELOG.md +427 -1
  2. package/README.md +71 -2
  3. package/assets/kanban-visualizer.png +0 -0
  4. package/assets/sample-agents/sqlew-scrum-master.md +4 -4
  5. package/dist/adapters/postgresql-adapter.d.ts +197 -5
  6. package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
  7. package/dist/adapters/postgresql-adapter.js +300 -36
  8. package/dist/adapters/postgresql-adapter.js.map +1 -1
  9. package/dist/cli/db-export.d.ts +29 -0
  10. package/dist/cli/db-export.d.ts.map +1 -0
  11. package/dist/cli/db-export.js +251 -0
  12. package/dist/cli/db-export.js.map +1 -0
  13. package/dist/cli/db-import.d.ts +31 -0
  14. package/dist/cli/db-import.d.ts.map +1 -0
  15. package/dist/cli/db-import.js +258 -0
  16. package/dist/cli/db-import.js.map +1 -0
  17. package/dist/cli.d.ts +1 -1
  18. package/dist/cli.js +32 -73
  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/migrations/test-all-versions-real.js +3 -2
  160. package/dist/tests/migrations/test-all-versions-real.js.map +1 -1
  161. package/dist/tests/multi-project.test.js +2 -2
  162. package/dist/tests/multi-project.test.js.map +1 -1
  163. package/dist/tests/parameter-validation.test.js +2 -16
  164. package/dist/tests/parameter-validation.test.js.map +1 -1
  165. package/dist/tests/tasks.auto-pruning-decision-link.test.js +1 -1
  166. package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -1
  167. package/dist/tests/tasks.file-actions-integration.test.d.ts +10 -0
  168. package/dist/tests/tasks.file-actions-integration.test.d.ts.map +1 -0
  169. package/dist/tests/tasks.file-actions-integration.test.js +162 -0
  170. package/dist/tests/tasks.file-actions-integration.test.js.map +1 -0
  171. package/dist/tests/tasks.file-actions-validation.test.d.ts +6 -0
  172. package/dist/tests/tasks.file-actions-validation.test.d.ts.map +1 -0
  173. package/dist/tests/tasks.file-actions-validation.test.js +221 -0
  174. package/dist/tests/tasks.file-actions-validation.test.js.map +1 -0
  175. package/dist/tools/constraints/actions/add.d.ts +15 -0
  176. package/dist/tools/constraints/actions/add.d.ts.map +1 -0
  177. package/dist/tools/constraints/actions/add.js +101 -0
  178. package/dist/tools/constraints/actions/add.js.map +1 -0
  179. package/dist/tools/constraints/actions/deactivate.d.ts +16 -0
  180. package/dist/tools/constraints/actions/deactivate.d.ts.map +1 -0
  181. package/dist/tools/constraints/actions/deactivate.js +49 -0
  182. package/dist/tools/constraints/actions/deactivate.js.map +1 -0
  183. package/dist/tools/constraints/actions/get.d.ts +16 -0
  184. package/dist/tools/constraints/actions/get.d.ts.map +1 -0
  185. package/dist/tools/constraints/actions/get.js +76 -0
  186. package/dist/tools/constraints/actions/get.js.map +1 -0
  187. package/dist/tools/constraints/help/example.d.ts +9 -0
  188. package/dist/tools/constraints/help/example.d.ts.map +1 -0
  189. package/dist/tools/constraints/help/example.js +144 -0
  190. package/dist/tools/constraints/help/example.js.map +1 -0
  191. package/dist/tools/constraints/help/help.d.ts +9 -0
  192. package/dist/tools/constraints/help/help.d.ts.map +1 -0
  193. package/dist/tools/constraints/help/help.js +31 -0
  194. package/dist/tools/constraints/help/help.js.map +1 -0
  195. package/dist/tools/constraints/index.d.ts +12 -0
  196. package/dist/tools/constraints/index.d.ts.map +1 -0
  197. package/dist/tools/constraints/index.js +13 -0
  198. package/dist/tools/constraints/index.js.map +1 -0
  199. package/dist/tools/constraints/internal/validation.d.ts +11 -0
  200. package/dist/tools/constraints/internal/validation.d.ts.map +1 -0
  201. package/dist/tools/constraints/internal/validation.js +17 -0
  202. package/dist/tools/constraints/internal/validation.js.map +1 -0
  203. package/dist/tools/constraints/types.d.ts +6 -0
  204. package/dist/tools/constraints/types.d.ts.map +1 -0
  205. package/dist/tools/constraints/types.js +6 -0
  206. package/dist/tools/constraints/types.js.map +1 -0
  207. package/dist/tools/context/actions/add-context.d.ts +14 -0
  208. package/dist/tools/context/actions/add-context.d.ts.map +1 -0
  209. package/dist/tools/context/actions/add-context.js +62 -0
  210. package/dist/tools/context/actions/add-context.js.map +1 -0
  211. package/dist/tools/context/actions/batch-set.d.ts +16 -0
  212. package/dist/tools/context/actions/batch-set.d.ts.map +1 -0
  213. package/dist/tools/context/actions/batch-set.js +126 -0
  214. package/dist/tools/context/actions/batch-set.js.map +1 -0
  215. package/dist/tools/context/actions/create-template.d.ts +15 -0
  216. package/dist/tools/context/actions/create-template.d.ts.map +1 -0
  217. package/dist/tools/context/actions/create-template.js +68 -0
  218. package/dist/tools/context/actions/create-template.js.map +1 -0
  219. package/dist/tools/context/actions/get.d.ts +18 -0
  220. package/dist/tools/context/actions/get.d.ts.map +1 -0
  221. package/dist/tools/context/actions/get.js +80 -0
  222. package/dist/tools/context/actions/get.js.map +1 -0
  223. package/dist/tools/context/actions/hard-delete.d.ts +18 -0
  224. package/dist/tools/context/actions/hard-delete.d.ts.map +1 -0
  225. package/dist/tools/context/actions/hard-delete.js +85 -0
  226. package/dist/tools/context/actions/hard-delete.js.map +1 -0
  227. package/dist/tools/context/actions/has-updates.d.ts +16 -0
  228. package/dist/tools/context/actions/has-updates.d.ts.map +1 -0
  229. package/dist/tools/context/actions/has-updates.js +83 -0
  230. package/dist/tools/context/actions/has-updates.js.map +1 -0
  231. package/dist/tools/context/actions/list-contexts.d.ts +14 -0
  232. package/dist/tools/context/actions/list-contexts.d.ts.map +1 -0
  233. package/dist/tools/context/actions/list-contexts.js +43 -0
  234. package/dist/tools/context/actions/list-contexts.js.map +1 -0
  235. package/dist/tools/context/actions/list-templates.d.ts +15 -0
  236. package/dist/tools/context/actions/list-templates.d.ts.map +1 -0
  237. package/dist/tools/context/actions/list-templates.js +47 -0
  238. package/dist/tools/context/actions/list-templates.js.map +1 -0
  239. package/dist/tools/context/actions/list.d.ts +16 -0
  240. package/dist/tools/context/actions/list.d.ts.map +1 -0
  241. package/dist/tools/context/actions/list.js +100 -0
  242. package/dist/tools/context/actions/list.js.map +1 -0
  243. package/dist/tools/context/actions/quick-set.d.ts +21 -0
  244. package/dist/tools/context/actions/quick-set.d.ts.map +1 -0
  245. package/dist/tools/context/actions/quick-set.js +104 -0
  246. package/dist/tools/context/actions/quick-set.js.map +1 -0
  247. package/dist/tools/context/actions/search-advanced.d.ts +15 -0
  248. package/dist/tools/context/actions/search-advanced.d.ts.map +1 -0
  249. package/dist/tools/context/actions/search-advanced.js +140 -0
  250. package/dist/tools/context/actions/search-advanced.js.map +1 -0
  251. package/dist/tools/context/actions/search-layer.d.ts +15 -0
  252. package/dist/tools/context/actions/search-layer.d.ts.map +1 -0
  253. package/dist/tools/context/actions/search-layer.js +106 -0
  254. package/dist/tools/context/actions/search-layer.js.map +1 -0
  255. package/dist/tools/context/actions/search-tags.d.ts +15 -0
  256. package/dist/tools/context/actions/search-tags.d.ts.map +1 -0
  257. package/dist/tools/context/actions/search-tags.js +85 -0
  258. package/dist/tools/context/actions/search-tags.js.map +1 -0
  259. package/dist/tools/context/actions/set-from-template.d.ts +16 -0
  260. package/dist/tools/context/actions/set-from-template.d.ts.map +1 -0
  261. package/dist/tools/context/actions/set-from-template.js +83 -0
  262. package/dist/tools/context/actions/set-from-template.js.map +1 -0
  263. package/dist/tools/context/actions/set.d.ts +16 -0
  264. package/dist/tools/context/actions/set.d.ts.map +1 -0
  265. package/dist/tools/context/actions/set.js +56 -0
  266. package/dist/tools/context/actions/set.js.map +1 -0
  267. package/dist/tools/context/actions/versions.d.ts +15 -0
  268. package/dist/tools/context/actions/versions.d.ts.map +1 -0
  269. package/dist/tools/context/actions/versions.js +69 -0
  270. package/dist/tools/context/actions/versions.js.map +1 -0
  271. package/dist/tools/context/help/example.d.ts +5 -0
  272. package/dist/tools/context/help/example.d.ts.map +1 -0
  273. package/dist/tools/context/help/example.js +96 -0
  274. package/dist/tools/context/help/example.js.map +1 -0
  275. package/dist/tools/context/help/help.d.ts +5 -0
  276. package/dist/tools/context/help/help.d.ts.map +1 -0
  277. package/dist/tools/context/help/help.js +65 -0
  278. package/dist/tools/context/help/help.js.map +1 -0
  279. package/dist/tools/context/index.d.ts +25 -0
  280. package/dist/tools/context/index.d.ts.map +1 -0
  281. package/dist/tools/context/index.js +26 -0
  282. package/dist/tools/context/index.js.map +1 -0
  283. package/dist/tools/context/internal/queries.d.ts +18 -0
  284. package/dist/tools/context/internal/queries.d.ts.map +1 -0
  285. package/dist/tools/context/internal/queries.js +160 -0
  286. package/dist/tools/context/internal/queries.js.map +1 -0
  287. package/dist/tools/context/internal/validation.d.ts +39 -0
  288. package/dist/tools/context/internal/validation.d.ts.map +1 -0
  289. package/dist/tools/context/internal/validation.js +125 -0
  290. package/dist/tools/context/internal/validation.js.map +1 -0
  291. package/dist/tools/context/types.d.ts +6 -0
  292. package/dist/tools/context/types.d.ts.map +1 -0
  293. package/dist/tools/context/types.js +6 -0
  294. package/dist/tools/context/types.js.map +1 -0
  295. package/dist/tools/example/actions/get.d.ts +14 -0
  296. package/dist/tools/example/actions/get.d.ts.map +1 -0
  297. package/dist/tools/example/actions/get.js +40 -0
  298. package/dist/tools/example/actions/get.js.map +1 -0
  299. package/dist/tools/example/actions/list-all.d.ts +13 -0
  300. package/dist/tools/example/actions/list-all.d.ts.map +1 -0
  301. package/dist/tools/example/actions/list-all.js +39 -0
  302. package/dist/tools/example/actions/list-all.js.map +1 -0
  303. package/dist/tools/example/actions/search.d.ts +14 -0
  304. package/dist/tools/example/actions/search.d.ts.map +1 -0
  305. package/dist/tools/example/actions/search.js +52 -0
  306. package/dist/tools/example/actions/search.js.map +1 -0
  307. package/dist/tools/example/help/example.d.ts +6 -0
  308. package/dist/tools/example/help/example.d.ts.map +1 -0
  309. package/dist/tools/example/help/example.js +69 -0
  310. package/dist/tools/example/help/example.js.map +1 -0
  311. package/dist/tools/example/help/help.d.ts +6 -0
  312. package/dist/tools/example/help/help.d.ts.map +1 -0
  313. package/dist/tools/example/help/help.js +133 -0
  314. package/dist/tools/example/help/help.js.map +1 -0
  315. package/dist/tools/example/index.d.ts +11 -0
  316. package/dist/tools/example/index.d.ts.map +1 -0
  317. package/dist/tools/example/index.js +12 -0
  318. package/dist/tools/example/index.js.map +1 -0
  319. package/dist/tools/example/types.d.ts +59 -0
  320. package/dist/tools/example/types.d.ts.map +1 -0
  321. package/dist/tools/example/types.js +6 -0
  322. package/dist/tools/example/types.js.map +1 -0
  323. package/dist/tools/files/actions/check-lock.d.ts +16 -0
  324. package/dist/tools/files/actions/check-lock.d.ts.map +1 -0
  325. package/dist/tools/files/actions/check-lock.js +70 -0
  326. package/dist/tools/files/actions/check-lock.js.map +1 -0
  327. package/dist/tools/files/actions/get.d.ts +16 -0
  328. package/dist/tools/files/actions/get.d.ts.map +1 -0
  329. package/dist/tools/files/actions/get.js +113 -0
  330. package/dist/tools/files/actions/get.js.map +1 -0
  331. package/dist/tools/files/actions/record-batch.d.ts +18 -0
  332. package/dist/tools/files/actions/record-batch.d.ts.map +1 -0
  333. package/dist/tools/files/actions/record-batch.js +114 -0
  334. package/dist/tools/files/actions/record-batch.js.map +1 -0
  335. package/dist/tools/files/actions/record.d.ts +16 -0
  336. package/dist/tools/files/actions/record.d.ts.map +1 -0
  337. package/dist/tools/files/actions/record.js +37 -0
  338. package/dist/tools/files/actions/record.js.map +1 -0
  339. package/dist/tools/files/actions/sqlite-flush.d.ts +27 -0
  340. package/dist/tools/files/actions/sqlite-flush.d.ts.map +1 -0
  341. package/dist/tools/files/actions/sqlite-flush.js +66 -0
  342. package/dist/tools/files/actions/sqlite-flush.js.map +1 -0
  343. package/dist/tools/files/help/example.d.ts +5 -0
  344. package/dist/tools/files/help/example.d.ts.map +1 -0
  345. package/dist/tools/files/help/example.js +98 -0
  346. package/dist/tools/files/help/example.js.map +1 -0
  347. package/dist/tools/files/help/help.d.ts +5 -0
  348. package/dist/tools/files/help/help.d.ts.map +1 -0
  349. package/dist/tools/files/help/help.js +29 -0
  350. package/dist/tools/files/help/help.js.map +1 -0
  351. package/dist/tools/files/index.d.ts +14 -0
  352. package/dist/tools/files/index.d.ts.map +1 -0
  353. package/dist/tools/files/index.js +15 -0
  354. package/dist/tools/files/index.js.map +1 -0
  355. package/dist/tools/files/internal/queries.d.ts +18 -0
  356. package/dist/tools/files/internal/queries.d.ts.map +1 -0
  357. package/dist/tools/files/internal/queries.js +63 -0
  358. package/dist/tools/files/internal/queries.js.map +1 -0
  359. package/dist/tools/files/internal/validation.d.ts +18 -0
  360. package/dist/tools/files/internal/validation.d.ts.map +1 -0
  361. package/dist/tools/files/internal/validation.js +40 -0
  362. package/dist/tools/files/internal/validation.js.map +1 -0
  363. package/dist/tools/files/types.d.ts +6 -0
  364. package/dist/tools/files/types.d.ts.map +1 -0
  365. package/dist/tools/files/types.js +6 -0
  366. package/dist/tools/files/types.js.map +1 -0
  367. package/dist/tools/help/actions/batch-guide.d.ts +14 -0
  368. package/dist/tools/help/actions/batch-guide.d.ts.map +1 -0
  369. package/dist/tools/help/actions/batch-guide.js +59 -0
  370. package/dist/tools/help/actions/batch-guide.js.map +1 -0
  371. package/dist/tools/help/actions/error-recovery.d.ts +12 -0
  372. package/dist/tools/help/actions/error-recovery.d.ts.map +1 -0
  373. package/dist/tools/help/actions/error-recovery.js +107 -0
  374. package/dist/tools/help/actions/error-recovery.js.map +1 -0
  375. package/dist/tools/help/actions/query-action.d.ts +15 -0
  376. package/dist/tools/help/actions/query-action.d.ts.map +1 -0
  377. package/dist/tools/help/actions/query-action.js +15 -0
  378. package/dist/tools/help/actions/query-action.js.map +1 -0
  379. package/dist/tools/help/actions/query-params.d.ts +15 -0
  380. package/dist/tools/help/actions/query-params.d.ts.map +1 -0
  381. package/dist/tools/help/actions/query-params.js +15 -0
  382. package/dist/tools/help/actions/query-params.js.map +1 -0
  383. package/dist/tools/help/actions/query-tool.d.ts +15 -0
  384. package/dist/tools/help/actions/query-tool.d.ts.map +1 -0
  385. package/dist/tools/help/actions/query-tool.js +15 -0
  386. package/dist/tools/help/actions/query-tool.js.map +1 -0
  387. package/dist/tools/help/actions/workflow-hints.d.ts +14 -0
  388. package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -0
  389. package/dist/tools/help/actions/workflow-hints.js +15 -0
  390. package/dist/tools/help/actions/workflow-hints.js.map +1 -0
  391. package/dist/tools/help/help/example.d.ts +6 -0
  392. package/dist/tools/help/help/example.d.ts.map +1 -0
  393. package/dist/tools/help/help/example.js +70 -0
  394. package/dist/tools/help/help/example.js.map +1 -0
  395. package/dist/tools/help/help/help.d.ts +6 -0
  396. package/dist/tools/help/help/help.d.ts.map +1 -0
  397. package/dist/tools/help/help/help.js +67 -0
  398. package/dist/tools/help/help/help.js.map +1 -0
  399. package/dist/tools/help/index.d.ts +14 -0
  400. package/dist/tools/help/index.d.ts.map +1 -0
  401. package/dist/tools/help/index.js +15 -0
  402. package/dist/tools/help/index.js.map +1 -0
  403. package/dist/tools/help/types.d.ts +92 -0
  404. package/dist/tools/help/types.d.ts.map +1 -0
  405. package/dist/tools/help/types.js +6 -0
  406. package/dist/tools/help/types.js.map +1 -0
  407. package/dist/tools/help-queries.d.ts.map +1 -1
  408. package/dist/tools/help-queries.js +1 -0
  409. package/dist/tools/help-queries.js.map +1 -1
  410. package/dist/tools/tasks/actions/add-dependency.d.ts +12 -0
  411. package/dist/tools/tasks/actions/add-dependency.d.ts.map +1 -0
  412. package/dist/tools/tasks/actions/add-dependency.js +124 -0
  413. package/dist/tools/tasks/actions/add-dependency.js.map +1 -0
  414. package/dist/tools/tasks/actions/archive.d.ts +11 -0
  415. package/dist/tools/tasks/actions/archive.d.ts.map +1 -0
  416. package/dist/tools/tasks/actions/archive.js +67 -0
  417. package/dist/tools/tasks/actions/archive.js.map +1 -0
  418. package/dist/tools/tasks/actions/create-batch.d.ts +19 -0
  419. package/dist/tools/tasks/actions/create-batch.d.ts.map +1 -0
  420. package/dist/tools/tasks/actions/create-batch.js +103 -0
  421. package/dist/tools/tasks/actions/create-batch.js.map +1 -0
  422. package/dist/tools/tasks/actions/create.d.ts +16 -0
  423. package/dist/tools/tasks/actions/create.d.ts.map +1 -0
  424. package/dist/tools/tasks/actions/create.js +180 -0
  425. package/dist/tools/tasks/actions/create.js.map +1 -0
  426. package/dist/tools/tasks/actions/get-dependencies.d.ts +12 -0
  427. package/dist/tools/tasks/actions/get-dependencies.d.ts.map +1 -0
  428. package/dist/tools/tasks/actions/get-dependencies.js +41 -0
  429. package/dist/tools/tasks/actions/get-dependencies.js.map +1 -0
  430. package/dist/tools/tasks/actions/get-pruned-files.d.ts +13 -0
  431. package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +1 -0
  432. package/dist/tools/tasks/actions/get-pruned-files.js +45 -0
  433. package/dist/tools/tasks/actions/get-pruned-files.js.map +1 -0
  434. package/dist/tools/tasks/actions/get.d.ts +12 -0
  435. package/dist/tools/tasks/actions/get.d.ts.map +1 -0
  436. package/dist/tools/tasks/actions/get.js +88 -0
  437. package/dist/tools/tasks/actions/get.js.map +1 -0
  438. package/dist/tools/tasks/actions/link-pruned-file.d.ts +13 -0
  439. package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +1 -0
  440. package/dist/tools/tasks/actions/link-pruned-file.js +63 -0
  441. package/dist/tools/tasks/actions/link-pruned-file.js.map +1 -0
  442. package/dist/tools/tasks/actions/link.d.ts +14 -0
  443. package/dist/tools/tasks/actions/link.d.ts.map +1 -0
  444. package/dist/tools/tasks/actions/link.js +118 -0
  445. package/dist/tools/tasks/actions/link.js.map +1 -0
  446. package/dist/tools/tasks/actions/list.d.ts +17 -0
  447. package/dist/tools/tasks/actions/list.d.ts.map +1 -0
  448. package/dist/tools/tasks/actions/list.js +98 -0
  449. package/dist/tools/tasks/actions/list.js.map +1 -0
  450. package/dist/tools/tasks/actions/move.d.ts +12 -0
  451. package/dist/tools/tasks/actions/move.d.ts.map +1 -0
  452. package/dist/tools/tasks/actions/move.js +91 -0
  453. package/dist/tools/tasks/actions/move.js.map +1 -0
  454. package/dist/tools/tasks/actions/remove-dependency.d.ts +12 -0
  455. package/dist/tools/tasks/actions/remove-dependency.d.ts.map +1 -0
  456. package/dist/tools/tasks/actions/remove-dependency.js +36 -0
  457. package/dist/tools/tasks/actions/remove-dependency.js.map +1 -0
  458. package/dist/tools/tasks/actions/update.d.ts +10 -0
  459. package/dist/tools/tasks/actions/update.d.ts.map +1 -0
  460. package/dist/tools/tasks/actions/update.js +186 -0
  461. package/dist/tools/tasks/actions/update.js.map +1 -0
  462. package/dist/tools/tasks/actions/watch-files.d.ts +14 -0
  463. package/dist/tools/tasks/actions/watch-files.d.ts.map +1 -0
  464. package/dist/tools/tasks/actions/watch-files.js +127 -0
  465. package/dist/tools/tasks/actions/watch-files.js.map +1 -0
  466. package/dist/tools/tasks/help/example.d.ts +8 -0
  467. package/dist/tools/tasks/help/example.d.ts.map +1 -0
  468. package/dist/tools/tasks/help/example.js +215 -0
  469. package/dist/tools/tasks/help/example.js.map +1 -0
  470. package/dist/tools/tasks/help/help.d.ts +8 -0
  471. package/dist/tools/tasks/help/help.d.ts.map +1 -0
  472. package/dist/tools/tasks/help/help.js +293 -0
  473. package/dist/tools/tasks/help/help.js.map +1 -0
  474. package/dist/tools/tasks/help/use-case.d.ts +11 -0
  475. package/dist/tools/tasks/help/use-case.d.ts.map +1 -0
  476. package/dist/tools/tasks/help/use-case.js +768 -0
  477. package/dist/tools/tasks/help/use-case.js.map +1 -0
  478. package/dist/tools/tasks/index.d.ts +28 -0
  479. package/dist/tools/tasks/index.d.ts.map +1 -0
  480. package/dist/tools/tasks/index.js +33 -0
  481. package/dist/tools/tasks/index.js.map +1 -0
  482. package/dist/tools/tasks/internal/state-machine.d.ts +16 -0
  483. package/dist/tools/tasks/internal/state-machine.d.ts.map +1 -0
  484. package/dist/tools/tasks/internal/state-machine.js +36 -0
  485. package/dist/tools/tasks/internal/state-machine.js.map +1 -0
  486. package/dist/tools/tasks/internal/task-queries.d.ts +12 -0
  487. package/dist/tools/tasks/internal/task-queries.d.ts.map +1 -0
  488. package/dist/tools/tasks/internal/task-queries.js +61 -0
  489. package/dist/tools/tasks/internal/task-queries.js.map +1 -0
  490. package/dist/tools/tasks/internal/validation.d.ts +47 -0
  491. package/dist/tools/tasks/internal/validation.d.ts.map +1 -0
  492. package/dist/tools/tasks/internal/validation.js +261 -0
  493. package/dist/tools/tasks/internal/validation.js.map +1 -0
  494. package/dist/tools/tasks/types.d.ts +68 -0
  495. package/dist/tools/tasks/types.d.ts.map +1 -0
  496. package/dist/tools/tasks/types.js +45 -0
  497. package/dist/tools/tasks/types.js.map +1 -0
  498. package/dist/tools/tasks/watcher/status.d.ts +9 -0
  499. package/dist/tools/tasks/watcher/status.d.ts.map +1 -0
  500. package/dist/tools/tasks/watcher/status.js +126 -0
  501. package/dist/tools/tasks/watcher/status.js.map +1 -0
  502. package/dist/tools/tasks.d.ts +12 -148
  503. package/dist/tools/tasks.d.ts.map +1 -1
  504. package/dist/tools/tasks.js +12 -2037
  505. package/dist/tools/tasks.js.map +1 -1
  506. package/dist/tools/use_case/actions/get.d.ts +14 -0
  507. package/dist/tools/use_case/actions/get.d.ts.map +1 -0
  508. package/dist/tools/use_case/actions/get.js +15 -0
  509. package/dist/tools/use_case/actions/get.js.map +1 -0
  510. package/dist/tools/use_case/actions/list-all.d.ts +15 -0
  511. package/dist/tools/use_case/actions/list-all.d.ts.map +1 -0
  512. package/dist/tools/use_case/actions/list-all.js +20 -0
  513. package/dist/tools/use_case/actions/list-all.js.map +1 -0
  514. package/dist/tools/use_case/actions/search.d.ts +14 -0
  515. package/dist/tools/use_case/actions/search.d.ts.map +1 -0
  516. package/dist/tools/use_case/actions/search.js +87 -0
  517. package/dist/tools/use_case/actions/search.js.map +1 -0
  518. package/dist/tools/use_case/help/example.d.ts +105 -0
  519. package/dist/tools/use_case/help/example.d.ts.map +1 -0
  520. package/dist/tools/use_case/help/example.js +138 -0
  521. package/dist/tools/use_case/help/example.js.map +1 -0
  522. package/dist/tools/use_case/help/help.d.ts +33 -0
  523. package/dist/tools/use_case/help/help.d.ts.map +1 -0
  524. package/dist/tools/use_case/help/help.js +109 -0
  525. package/dist/tools/use_case/help/help.js.map +1 -0
  526. package/dist/tools/use_case/index.d.ts +11 -0
  527. package/dist/tools/use_case/index.d.ts.map +1 -0
  528. package/dist/tools/use_case/index.js +12 -0
  529. package/dist/tools/use_case/index.js.map +1 -0
  530. package/dist/tools/use_case/types.d.ts +58 -0
  531. package/dist/tools/use_case/types.d.ts.map +1 -0
  532. package/dist/tools/use_case/types.js +6 -0
  533. package/dist/tools/use_case/types.js.map +1 -0
  534. package/dist/types/actions.d.ts +37 -0
  535. package/dist/types/actions.d.ts.map +1 -0
  536. package/dist/types/actions.js +6 -0
  537. package/dist/types/actions.js.map +1 -0
  538. package/dist/types/constraint/params.d.ts +2 -0
  539. package/dist/types/constraint/params.d.ts.map +1 -0
  540. package/dist/types/constraint/params.js +2 -0
  541. package/dist/types/constraint/params.js.map +1 -0
  542. package/dist/types/constraint/responses.d.ts +2 -0
  543. package/dist/types/constraint/responses.d.ts.map +1 -0
  544. package/dist/types/constraint/responses.js +2 -0
  545. package/dist/types/constraint/responses.js.map +1 -0
  546. package/dist/types/decision/batch.d.ts +24 -0
  547. package/dist/types/decision/batch.d.ts.map +1 -0
  548. package/dist/types/decision/batch.js +5 -0
  549. package/dist/types/decision/batch.js.map +1 -0
  550. package/dist/types/decision/params.d.ts +73 -0
  551. package/dist/types/decision/params.d.ts.map +1 -0
  552. package/dist/types/decision/params.js +5 -0
  553. package/dist/types/decision/params.js.map +1 -0
  554. package/dist/types/decision/responses.d.ts +79 -0
  555. package/dist/types/decision/responses.d.ts.map +1 -0
  556. package/dist/types/decision/responses.js +5 -0
  557. package/dist/types/decision/responses.js.map +1 -0
  558. package/dist/types/decision/templates.d.ts +74 -0
  559. package/dist/types/decision/templates.d.ts.map +1 -0
  560. package/dist/types/decision/templates.js +5 -0
  561. package/dist/types/decision/templates.js.map +1 -0
  562. package/dist/types/enums.d.ts +43 -0
  563. package/dist/types/enums.d.ts.map +1 -0
  564. package/dist/types/enums.js +47 -0
  565. package/dist/types/enums.js.map +1 -0
  566. package/dist/types/file/params.d.ts +40 -0
  567. package/dist/types/file/params.d.ts.map +1 -0
  568. package/dist/types/file/params.js +6 -0
  569. package/dist/types/file/params.js.map +1 -0
  570. package/dist/types/file/responses.d.ts +2 -0
  571. package/dist/types/file/responses.d.ts.map +1 -0
  572. package/dist/types/file/responses.js +2 -0
  573. package/dist/types/file/responses.js.map +1 -0
  574. package/dist/types/import-export.d.ts +126 -0
  575. package/dist/types/import-export.d.ts.map +1 -0
  576. package/dist/types/import-export.js +6 -0
  577. package/dist/types/import-export.js.map +1 -0
  578. package/dist/types/index.d.ts +25 -0
  579. package/dist/types/index.d.ts.map +1 -0
  580. package/dist/types/index.js +35 -0
  581. package/dist/types/index.js.map +1 -0
  582. package/dist/types/master-entities.d.ts +33 -0
  583. package/dist/types/master-entities.d.ts.map +1 -0
  584. package/dist/types/master-entities.js +6 -0
  585. package/dist/types/master-entities.js.map +1 -0
  586. package/dist/types/task/params.d.ts +172 -0
  587. package/dist/types/task/params.d.ts.map +1 -0
  588. package/dist/types/task/params.js +8 -0
  589. package/dist/types/task/params.js.map +1 -0
  590. package/dist/types/task/responses.d.ts +334 -0
  591. package/dist/types/task/responses.d.ts.map +1 -0
  592. package/dist/types/task/responses.js +8 -0
  593. package/dist/types/task/responses.js.map +1 -0
  594. package/dist/types/transaction-entities.d.ts +89 -0
  595. package/dist/types/transaction-entities.d.ts.map +1 -0
  596. package/dist/types/transaction-entities.js +5 -0
  597. package/dist/types/transaction-entities.js.map +1 -0
  598. package/dist/types/validation.d.ts +44 -0
  599. package/dist/types/validation.d.ts.map +1 -0
  600. package/dist/types/validation.js +6 -0
  601. package/dist/types/validation.js.map +1 -0
  602. package/dist/types/view-entities.d.ts +61 -0
  603. package/dist/types/view-entities.d.ts.map +1 -0
  604. package/dist/types/view-entities.js +5 -0
  605. package/dist/types/view-entities.js.map +1 -0
  606. package/dist/types.d.ts +133 -10
  607. package/dist/types.d.ts.map +1 -1
  608. package/dist/utils/action-specs/config-specs.d.ts +10 -0
  609. package/dist/utils/action-specs/config-specs.d.ts.map +1 -0
  610. package/dist/utils/action-specs/config-specs.js +12 -0
  611. package/dist/utils/action-specs/config-specs.js.map +1 -0
  612. package/dist/utils/action-specs/constraint-specs.d.ts +9 -0
  613. package/dist/utils/action-specs/constraint-specs.d.ts.map +1 -0
  614. package/dist/utils/action-specs/constraint-specs.js +42 -0
  615. package/dist/utils/action-specs/constraint-specs.js.map +1 -0
  616. package/dist/utils/action-specs/decision-specs.d.ts +9 -0
  617. package/dist/utils/action-specs/decision-specs.d.ts.map +1 -0
  618. package/dist/utils/action-specs/decision-specs.js +194 -0
  619. package/dist/utils/action-specs/decision-specs.js.map +1 -0
  620. package/dist/utils/action-specs/file-specs.d.ts +9 -0
  621. package/dist/utils/action-specs/file-specs.d.ts.map +1 -0
  622. package/dist/utils/action-specs/file-specs.js +56 -0
  623. package/dist/utils/action-specs/file-specs.js.map +1 -0
  624. package/dist/utils/action-specs/index.d.ts +38 -0
  625. package/dist/utils/action-specs/index.d.ts.map +1 -0
  626. package/dist/utils/action-specs/index.js +63 -0
  627. package/dist/utils/action-specs/index.js.map +1 -0
  628. package/dist/utils/action-specs/task-specs.d.ts +9 -0
  629. package/dist/utils/action-specs/task-specs.d.ts.map +1 -0
  630. package/dist/utils/action-specs/task-specs.js +143 -0
  631. package/dist/utils/action-specs/task-specs.js.map +1 -0
  632. package/dist/utils/action-specs/types.d.ts +14 -0
  633. package/dist/utils/action-specs/types.d.ts.map +1 -0
  634. package/dist/utils/action-specs/types.js +9 -0
  635. package/dist/utils/action-specs/types.js.map +1 -0
  636. package/dist/utils/batch-validation.d.ts +156 -0
  637. package/dist/utils/batch-validation.d.ts.map +1 -0
  638. package/dist/utils/batch-validation.example.d.ts +48 -0
  639. package/dist/utils/batch-validation.example.d.ts.map +1 -0
  640. package/dist/utils/batch-validation.example.js +180 -0
  641. package/dist/utils/batch-validation.example.js.map +1 -0
  642. package/dist/utils/batch-validation.js +345 -0
  643. package/dist/utils/batch-validation.js.map +1 -0
  644. package/dist/utils/exporter/export.d.ts +100 -0
  645. package/dist/utils/exporter/export.d.ts.map +1 -0
  646. package/dist/utils/exporter/export.js +363 -0
  647. package/dist/utils/exporter/export.js.map +1 -0
  648. package/dist/utils/importer/import.d.ts +29 -0
  649. package/dist/utils/importer/import.d.ts.map +1 -0
  650. package/dist/utils/importer/import.js +514 -0
  651. package/dist/utils/importer/import.js.map +1 -0
  652. package/dist/utils/importer/master-tables.d.ts +18 -0
  653. package/dist/utils/importer/master-tables.d.ts.map +1 -0
  654. package/dist/utils/importer/master-tables.js +255 -0
  655. package/dist/utils/importer/master-tables.js.map +1 -0
  656. package/dist/utils/importer/topological-sort.d.ts +61 -0
  657. package/dist/utils/importer/topological-sort.d.ts.map +1 -0
  658. package/dist/utils/importer/topological-sort.js +143 -0
  659. package/dist/utils/importer/topological-sort.js.map +1 -0
  660. package/dist/utils/levenshtein.d.ts +18 -0
  661. package/dist/utils/levenshtein.d.ts.map +1 -0
  662. package/dist/utils/levenshtein.js +46 -0
  663. package/dist/utils/levenshtein.js.map +1 -0
  664. package/dist/utils/parameter-validator.d.ts +3 -3
  665. package/dist/utils/parameter-validator.d.ts.map +1 -1
  666. package/dist/utils/parameter-validator.js +3 -39
  667. package/dist/utils/parameter-validator.js.map +1 -1
  668. package/dist/utils/sql-dump/core/dependency-sort.d.ts +16 -0
  669. package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +1 -0
  670. package/dist/utils/sql-dump/core/dependency-sort.js +105 -0
  671. package/dist/utils/sql-dump/core/dependency-sort.js.map +1 -0
  672. package/dist/utils/sql-dump/core/generate-dump.d.ts +13 -0
  673. package/dist/utils/sql-dump/core/generate-dump.d.ts.map +1 -0
  674. package/dist/utils/sql-dump/core/generate-dump.js +181 -0
  675. package/dist/utils/sql-dump/core/generate-dump.js.map +1 -0
  676. package/dist/utils/sql-dump/core/index-export.d.ts +9 -0
  677. package/dist/utils/sql-dump/core/index-export.d.ts.map +1 -0
  678. package/dist/utils/sql-dump/core/index-export.js +173 -0
  679. package/dist/utils/sql-dump/core/index-export.js.map +1 -0
  680. package/dist/utils/sql-dump/core/sequence-reset.d.ts +6 -0
  681. package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +1 -0
  682. package/dist/utils/sql-dump/core/sequence-reset.js +28 -0
  683. package/dist/utils/sql-dump/core/sequence-reset.js.map +1 -0
  684. package/dist/utils/sql-dump/core/table-export.d.ts +2 -0
  685. package/dist/utils/sql-dump/core/table-export.d.ts.map +1 -0
  686. package/dist/utils/sql-dump/core/table-export.js +4 -0
  687. package/dist/utils/sql-dump/core/table-export.js.map +1 -0
  688. package/dist/utils/sql-dump/core/view-export.d.ts +2 -0
  689. package/dist/utils/sql-dump/core/view-export.d.ts.map +1 -0
  690. package/dist/utils/sql-dump/core/view-export.js +4 -0
  691. package/dist/utils/sql-dump/core/view-export.js.map +1 -0
  692. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +14 -0
  693. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +1 -0
  694. package/dist/utils/sql-dump/formatters/bulk-insert.js +177 -0
  695. package/dist/utils/sql-dump/formatters/bulk-insert.js.map +1 -0
  696. package/dist/utils/sql-dump/formatters/identifiers.d.ts +6 -0
  697. package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +1 -0
  698. package/dist/utils/sql-dump/formatters/identifiers.js +16 -0
  699. package/dist/utils/sql-dump/formatters/identifiers.js.map +1 -0
  700. package/dist/utils/sql-dump/formatters/value-formatter.d.ts +14 -0
  701. package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +1 -0
  702. package/dist/utils/sql-dump/formatters/value-formatter.js +281 -0
  703. package/dist/utils/sql-dump/formatters/value-formatter.js.map +1 -0
  704. package/dist/utils/sql-dump/generators/controls.d.ts +10 -0
  705. package/dist/utils/sql-dump/generators/controls.d.ts.map +1 -0
  706. package/dist/utils/sql-dump/generators/controls.js +36 -0
  707. package/dist/utils/sql-dump/generators/controls.js.map +1 -0
  708. package/dist/utils/sql-dump/generators/headers.d.ts +6 -0
  709. package/dist/utils/sql-dump/generators/headers.d.ts.map +1 -0
  710. package/dist/utils/sql-dump/generators/headers.js +19 -0
  711. package/dist/utils/sql-dump/generators/headers.js.map +1 -0
  712. package/dist/utils/sql-dump/index.d.ts +14 -0
  713. package/dist/utils/sql-dump/index.d.ts.map +1 -0
  714. package/dist/utils/sql-dump/index.js +16 -0
  715. package/dist/utils/sql-dump/index.js.map +1 -0
  716. package/dist/utils/sql-dump/schema/indexes.d.ts +6 -0
  717. package/dist/utils/sql-dump/schema/indexes.d.ts.map +1 -0
  718. package/dist/utils/sql-dump/schema/indexes.js +42 -0
  719. package/dist/utils/sql-dump/schema/indexes.js.map +1 -0
  720. package/dist/utils/sql-dump/schema/primary-keys.d.ts +6 -0
  721. package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +1 -0
  722. package/dist/utils/sql-dump/schema/primary-keys.js +41 -0
  723. package/dist/utils/sql-dump/schema/primary-keys.js.map +1 -0
  724. package/dist/utils/sql-dump/schema/tables.d.ts +12 -0
  725. package/dist/utils/sql-dump/schema/tables.d.ts.map +1 -0
  726. package/dist/utils/sql-dump/schema/tables.js +370 -0
  727. package/dist/utils/sql-dump/schema/tables.js.map +1 -0
  728. package/dist/utils/sql-dump/schema/views.d.ts +11 -0
  729. package/dist/utils/sql-dump/schema/views.d.ts.map +1 -0
  730. package/dist/utils/sql-dump/schema/views.js +110 -0
  731. package/dist/utils/sql-dump/schema/views.js.map +1 -0
  732. package/dist/utils/sql-dump/types.d.ts +10 -0
  733. package/dist/utils/sql-dump/types.d.ts.map +1 -0
  734. package/dist/utils/sql-dump/types.js +3 -0
  735. package/dist/utils/sql-dump/types.js.map +1 -0
  736. package/docs/AI_AGENT_GUIDE.md +2 -2
  737. package/docs/AUTO_FILE_TRACKING.md +0 -1
  738. package/docs/BATCH_VALIDATION.md +617 -0
  739. package/docs/DATABASE_AUTH.md +1 -2
  740. package/docs/DECISION_TO_TASK_MIGRATION_GUIDE.md +2 -2
  741. package/docs/SHARED_CONCEPTS.md +2 -2
  742. package/docs/SPECIALIZED_AGENTS.md +1 -1
  743. package/docs/TASK_ACTIONS.md +7 -7
  744. package/docs/TASK_MIGRATION.md +5 -5
  745. package/docs/TASK_SYSTEM.md +5 -5
  746. package/docs/TOOL_REFERENCE.md +1 -3
  747. package/docs/WORKFLOWS.md +1 -1
  748. package/docs/{DATABASE_MIGRATION.md → cli/DATABASE_MIGRATION.md} +71 -32
  749. package/docs/cli/DATA_EXPORT_IMPORT.md +400 -0
  750. package/docs/cli/README.md +227 -0
  751. package/package.json +7 -4
  752. package/dist/tools/config.d.ts +0 -58
  753. package/dist/tools/config.d.ts.map +0 -1
  754. package/dist/tools/config.js +0 -281
  755. package/dist/tools/config.js.map +0 -1
  756. package/dist/tools/constraints.d.ts +0 -49
  757. package/dist/tools/constraints.d.ts.map +0 -1
  758. package/dist/tools/constraints.js +0 -378
  759. package/dist/tools/constraints.js.map +0 -1
  760. package/dist/tools/context.d.ts +0 -208
  761. package/dist/tools/context.d.ts.map +0 -1
  762. package/dist/tools/context.js +0 -1661
  763. package/dist/tools/context.js.map +0 -1
  764. package/dist/tools/files.d.ts +0 -54
  765. package/dist/tools/files.d.ts.map +0 -1
  766. package/dist/tools/files.js +0 -478
  767. package/dist/tools/files.js.map +0 -1
  768. package/dist/tools/messaging.d.ts +0 -71
  769. package/dist/tools/messaging.d.ts.map +0 -1
  770. package/dist/tools/messaging.js +0 -483
  771. package/dist/tools/messaging.js.map +0 -1
  772. package/dist/tools/utils.d.ts +0 -70
  773. package/dist/tools/utils.d.ts.map +0 -1
  774. package/dist/tools/utils.js +0 -483
  775. package/dist/tools/utils.js.map +0 -1
  776. package/dist/utils/action-specs.d.ts +0 -46
  777. package/dist/utils/action-specs.d.ts.map +0 -1
  778. package/dist/utils/action-specs.js +0 -527
  779. package/dist/utils/action-specs.js.map +0 -1
  780. package/docs/BASEADAPTER_IMPLEMENTATION.md +0 -399
  781. package/docs/HELP_PREVIEW_COMPARISON.md +0 -259
  782. package/docs/MIGRATION_CHAIN.md +0 -293
  783. package/docs/MIGRATION_v2.md +0 -538
  784. package/docs/MIGRATION_v3.3.md +0 -602
  785. package/docs/MIGRATION_v3.6.0.md +0 -170
  786. package/docs/MULTI_PROJECT_ARCHITECTURE.md +0 -497
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Record a file change with optional layer assignment and description
3
+ * Auto-registers the file and agent if they don't exist
4
+ */
5
+ import { DatabaseAdapter } from '../../../adapters/index.js';
6
+ import type { RecordFileChangeParams, RecordFileChangeResponse } from '../types.js';
7
+ /**
8
+ * Record a file change with optional layer assignment and description.
9
+ * Auto-registers the file and agent if they don't exist.
10
+ *
11
+ * @param params - File change parameters
12
+ * @param adapter - Optional database adapter (for testing)
13
+ * @returns Success response with change ID and timestamp
14
+ */
15
+ export declare function recordFileChange(params: RecordFileChangeParams, adapter?: DatabaseAdapter): Promise<RecordFileChangeResponse>;
16
+ //# sourceMappingURL=record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,wBAAwB,CAAC,CAoBnC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Record a file change with optional layer assignment and description
3
+ * Auto-registers the file and agent if they don't exist
4
+ */
5
+ import { getAdapter } from '../../../database.js';
6
+ import { getProjectContext } from '../../../utils/project-context.js';
7
+ import connectionManager from '../../../utils/connection-manager.js';
8
+ import { validateActionParams } from '../internal/validation.js';
9
+ import { recordFileChangeInternal } from '../internal/queries.js';
10
+ /**
11
+ * Record a file change with optional layer assignment and description.
12
+ * Auto-registers the file and agent if they don't exist.
13
+ *
14
+ * @param params - File change parameters
15
+ * @param adapter - Optional database adapter (for testing)
16
+ * @returns Success response with change ID and timestamp
17
+ */
18
+ export async function recordFileChange(params, adapter) {
19
+ const actualAdapter = adapter ?? getAdapter();
20
+ try {
21
+ // Validate parameters
22
+ validateActionParams('file', 'record', params);
23
+ // Fail-fast: Validate project context is initialized (Constraint #29)
24
+ const projectId = getProjectContext().getProjectId();
25
+ // Use transaction for atomicity with connection retry
26
+ return await connectionManager.executeWithRetry(async () => {
27
+ return await actualAdapter.transaction(async (trx) => {
28
+ return await recordFileChangeInternal(params, actualAdapter, projectId, trx);
29
+ });
30
+ });
31
+ }
32
+ catch (error) {
33
+ const message = error instanceof Error ? error.message : String(error);
34
+ throw new Error(`Failed to record file change: ${message}`);
35
+ }
36
+ }
37
+ //# sourceMappingURL=record.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGlE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA8B,EAC9B,OAAyB;IAEzB,MAAM,aAAa,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;IAE9C,IAAI,CAAC;QACH,sBAAsB;QACtB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE/C,sEAAsE;QACtE,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;QAErD,sDAAsD;QACtD,OAAO,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACzD,OAAO,MAAM,aAAa,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACnD,OAAO,MAAM,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Forces SQLite WAL (Write-Ahead Log) checkpoint to flush pending transactions
3
+ * to the main database file. Essential for Git workflow to ensure .db file is
4
+ * up-to-date before committing to version control.
5
+ *
6
+ * SQLite WAL Mode:
7
+ * - Writes go to .db-wal file, not main .db file
8
+ * - Without flush, .db file is stale, .db-wal has latest data
9
+ * - Git commits should include up-to-date .db file for clean diffs
10
+ *
11
+ * Checkpoint Modes:
12
+ * - TRUNCATE: Most aggressive, blocks until complete, ensures ALL data flushed
13
+ * - This is the correct mode for Git workflow
14
+ *
15
+ * @returns FlushWALResponse with pages flushed count
16
+ */
17
+ import { DatabaseAdapter } from '../../../adapters/index.js';
18
+ import type { FlushWALResponse } from '../../../types.js';
19
+ /**
20
+ * Forces SQLite WAL checkpoint to flush pending transactions to main database file
21
+ * SQLite-specific operation - returns error for MySQL/PostgreSQL
22
+ *
23
+ * @param adapter - Optional database adapter (for testing)
24
+ * @returns Checkpoint result with pages flushed
25
+ */
26
+ export declare function sqliteFlush(adapter?: DatabaseAdapter): Promise<FlushWALResponse>;
27
+ //# sourceMappingURL=sqlite-flush.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-flush.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/sqlite-flush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,gBAAgB,CAAC,CA0C3B"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Forces SQLite WAL (Write-Ahead Log) checkpoint to flush pending transactions
3
+ * to the main database file. Essential for Git workflow to ensure .db file is
4
+ * up-to-date before committing to version control.
5
+ *
6
+ * SQLite WAL Mode:
7
+ * - Writes go to .db-wal file, not main .db file
8
+ * - Without flush, .db file is stale, .db-wal has latest data
9
+ * - Git commits should include up-to-date .db file for clean diffs
10
+ *
11
+ * Checkpoint Modes:
12
+ * - TRUNCATE: Most aggressive, blocks until complete, ensures ALL data flushed
13
+ * - This is the correct mode for Git workflow
14
+ *
15
+ * @returns FlushWALResponse with pages flushed count
16
+ */
17
+ import { getAdapter } from '../../../database.js';
18
+ import connectionManager from '../../../utils/connection-manager.js';
19
+ import { validateActionParams } from '../../../utils/parameter-validator.js';
20
+ /**
21
+ * Forces SQLite WAL checkpoint to flush pending transactions to main database file
22
+ * SQLite-specific operation - returns error for MySQL/PostgreSQL
23
+ *
24
+ * @param adapter - Optional database adapter (for testing)
25
+ * @returns Checkpoint result with pages flushed
26
+ */
27
+ export async function sqliteFlush(adapter) {
28
+ const actualAdapter = adapter ?? getAdapter();
29
+ const knex = actualAdapter.getKnex();
30
+ try {
31
+ // Validate parameters
32
+ validateActionParams('file', 'sqlite_flush', {});
33
+ // Check if using SQLite (WAL mode is SQLite-specific)
34
+ const client = knex.client.config.client;
35
+ if (!['better-sqlite3', 'sqlite3'].includes(client)) {
36
+ return {
37
+ success: false,
38
+ mode: 'TRUNCATE',
39
+ pages_flushed: 0,
40
+ message: `WAL checkpoint is SQLite-specific. Current database: ${client}`
41
+ };
42
+ }
43
+ return await connectionManager.executeWithRetry(async () => {
44
+ // Execute TRUNCATE checkpoint - most aggressive mode
45
+ // Blocks until complete, ensures all WAL data written to main DB file
46
+ // Returns array: [[busy, log, checkpointed]]
47
+ // - busy: number of frames not checkpointed due to locks
48
+ // - log: total number of frames in WAL file
49
+ // - checkpointed: number of frames checkpointed
50
+ const result = await knex.raw('PRAGMA wal_checkpoint(TRUNCATE)');
51
+ // Parse result array format from Knex
52
+ const pagesFlushed = result?.[0]?.[0]?.[2] || 0;
53
+ return {
54
+ success: true,
55
+ mode: 'TRUNCATE',
56
+ pages_flushed: pagesFlushed,
57
+ message: `WAL checkpoint completed successfully. ${pagesFlushed} pages flushed to main database file.`
58
+ };
59
+ });
60
+ }
61
+ catch (error) {
62
+ const message = error instanceof Error ? error.message : String(error);
63
+ throw new Error(`Failed to flush WAL: ${message}`);
64
+ }
65
+ }
66
+ //# sourceMappingURL=sqlite-flush.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-flush.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/sqlite-flush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAG7E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAyB;IAEzB,MAAM,aAAa,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;IAC9C,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,CAAC;IAErC,IAAI,CAAC;QACH,sBAAsB;QACtB,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;QAEjD,sDAAsD;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,CAAC;gBAChB,OAAO,EAAE,wDAAwD,MAAM,EAAE;aAC1E,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACzD,qDAAqD;YACrD,sEAAsE;YACtE,6CAA6C;YAC7C,yDAAyD;YACzD,4CAA4C;YAC5C,gDAAgD;YAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iCAAiC,CAAQ,CAAC;YAExE,sCAAsC;YACtC,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAEhD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,UAAU;gBAChB,aAAa,EAAE,YAAY;gBAC3B,OAAO,EAAE,0CAA0C,YAAY,uCAAuC;aACvG,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Example action for file tool
3
+ */
4
+ export declare function fileExample(): any;
5
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,WAAW,IAAI,GAAG,CA6FjC"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Example action for file tool
3
+ */
4
+ export function fileExample() {
5
+ return {
6
+ tool: 'file',
7
+ description: 'Comprehensive file tracking examples for multi-agent coordination',
8
+ scenarios: {
9
+ basic_tracking: {
10
+ title: 'Basic File Change Tracking',
11
+ examples: [
12
+ {
13
+ scenario: 'Record file modification',
14
+ request: '{ action: "record", file_path: "src/api/users.ts", agent_name: "refactor-agent", change_type: "modified", layer: "business", description: "Added email validation" }',
15
+ explanation: 'Track changes with layer and description'
16
+ },
17
+ {
18
+ scenario: 'Get recent changes by agent',
19
+ request: '{ action: "get", agent_name: "refactor-agent", limit: 10 }',
20
+ explanation: 'View what an agent has been working on'
21
+ },
22
+ {
23
+ scenario: 'Track changes to specific file',
24
+ request: '{ action: "get", file_path: "src/api/users.ts" }',
25
+ explanation: 'See all modifications to a particular file'
26
+ }
27
+ ]
28
+ },
29
+ file_locking: {
30
+ title: 'Concurrent Access Prevention',
31
+ workflow: [
32
+ {
33
+ step: 1,
34
+ action: 'Check if file is locked',
35
+ request: '{ action: "check_lock", file_path: "src/database/schema.sql", lock_duration: 300 }',
36
+ result: '{ locked: false } or { locked: true, locked_by: "agent-name", locked_at: "timestamp" }'
37
+ },
38
+ {
39
+ step: 2,
40
+ action: 'If not locked, record change (creates lock)',
41
+ request: '{ action: "record", file_path: "src/database/schema.sql", agent_name: "migration-agent", change_type: "modified" }'
42
+ },
43
+ {
44
+ step: 3,
45
+ action: 'Lock expires after 5 minutes (default) or specified duration'
46
+ }
47
+ ]
48
+ },
49
+ layer_organization: {
50
+ title: 'Tracking by Architecture Layer',
51
+ examples: [
52
+ {
53
+ scenario: 'Get all presentation layer changes',
54
+ request: '{ action: "get", layer: "presentation", limit: 20 }',
55
+ explanation: 'View frontend/UI changes across agents'
56
+ },
57
+ {
58
+ scenario: 'Track infrastructure changes',
59
+ request: '{ action: "get", layer: "infrastructure", change_type: "modified" }',
60
+ explanation: 'Monitor config and deployment file changes'
61
+ }
62
+ ]
63
+ },
64
+ batch_tracking: {
65
+ title: 'Batch File Operations',
66
+ examples: [
67
+ {
68
+ scenario: 'Record multiple file changes atomically',
69
+ request: '{ action: "record_batch", file_changes: [{"file_path": "src/api.ts", "agent_name": "bot1", "change_type": "modified", "layer": "presentation"}, {"file_path": "src/types.ts", "agent_name": "bot1", "change_type": "modified", "layer": "data"}], atomic: true }',
70
+ explanation: 'All changes recorded or none (transaction)'
71
+ }
72
+ ]
73
+ }
74
+ },
75
+ best_practices: {
76
+ change_tracking: [
77
+ 'Always specify layer for better organization',
78
+ 'Include description for non-obvious changes',
79
+ 'Use check_lock before modifying shared files',
80
+ 'Track both creation and deletion of files'
81
+ ],
82
+ lock_management: [
83
+ 'Default lock duration is 300 seconds (5 minutes)',
84
+ 'Locks prevent concurrent modifications',
85
+ 'Locks auto-expire - no manual unlock needed',
86
+ 'Use appropriate lock_duration for operation complexity'
87
+ ],
88
+ layer_assignment: [
89
+ 'presentation: UI components, API controllers',
90
+ 'business: Services, domain logic',
91
+ 'data: Models, repositories, migrations',
92
+ 'infrastructure: Config, deployment, CI/CD',
93
+ 'cross-cutting: Utilities used across layers'
94
+ ]
95
+ }
96
+ };
97
+ }
98
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,mEAAmE;QAChF,SAAS,EAAE;YACT,cAAc,EAAE;gBACd,KAAK,EAAE,4BAA4B;gBACnC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,0BAA0B;wBACpC,OAAO,EAAE,sKAAsK;wBAC/K,WAAW,EAAE,0CAA0C;qBACxD;oBACD;wBACE,QAAQ,EAAE,6BAA6B;wBACvC,OAAO,EAAE,4DAA4D;wBACrE,WAAW,EAAE,wCAAwC;qBACtD;oBACD;wBACE,QAAQ,EAAE,gCAAgC;wBAC1C,OAAO,EAAE,kDAAkD;wBAC3D,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,8BAA8B;gBACrC,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,yBAAyB;wBACjC,OAAO,EAAE,oFAAoF;wBAC7F,MAAM,EAAE,wFAAwF;qBACjG;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,6CAA6C;wBACrD,OAAO,EAAE,oHAAoH;qBAC9H;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,8DAA8D;qBACvE;iBACF;aACF;YACD,kBAAkB,EAAE;gBAClB,KAAK,EAAE,gCAAgC;gBACvC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,oCAAoC;wBAC9C,OAAO,EAAE,qDAAqD;wBAC9D,WAAW,EAAE,wCAAwC;qBACtD;oBACD;wBACE,QAAQ,EAAE,8BAA8B;wBACxC,OAAO,EAAE,qEAAqE;wBAC9E,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,uBAAuB;gBAC9B,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,yCAAyC;wBACnD,OAAO,EAAE,kQAAkQ;wBAC3Q,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;SACF;QACD,cAAc,EAAE;YACd,eAAe,EAAE;gBACf,8CAA8C;gBAC9C,6CAA6C;gBAC7C,8CAA8C;gBAC9C,2CAA2C;aAC5C;YACD,eAAe,EAAE;gBACf,kDAAkD;gBAClD,wCAAwC;gBACxC,6CAA6C;gBAC7C,wDAAwD;aACzD;YACD,gBAAgB,EAAE;gBAChB,8CAA8C;gBAC9C,kCAAkC;gBAClC,wCAAwC;gBACxC,2CAA2C;gBAC3C,6CAA6C;aAC9C;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Help action for file tool
3
+ */
4
+ export declare function fileHelp(): any;
5
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/help.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,GAAG,CAwB9B"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Help action for file tool
3
+ */
4
+ export function fileHelp() {
5
+ return {
6
+ tool: 'file',
7
+ description: 'Track file changes across agents with layer classification',
8
+ note: '💡 TIP: Use action: "example" to see comprehensive usage scenarios and real-world examples for all file tracking actions.',
9
+ actions: {
10
+ record: 'Record file change. Params: file_path (required), agent_name (required), change_type (required), layer, description',
11
+ get: 'Get file changes. Params: file_path, agent_name, layer, change_type, since, limit',
12
+ check_lock: 'Check if file locked. Params: file_path (required), lock_duration',
13
+ record_batch: 'Batch record file changes (FR-005). Params: file_changes (required, array of RecordFileChangeParams, max: 50), atomic (optional, boolean, default: true). Returns: {success, inserted, failed, results}. ATOMIC MODE (atomic: true): All file changes succeed or all fail as a single transaction. IF ANY record fails, entire batch is rolled back and error is thrown. NON-ATOMIC MODE (atomic: false): Each file change is processed independently. If some fail, others still succeed. Returns partial results with per-item success/error status. RECOMMENDATION FOR AI AGENTS: Use atomic:false by default for best-effort recording. Use atomic:true only when all-or-nothing guarantee is required. 52% token reduction vs individual calls.'
14
+ },
15
+ examples: {
16
+ record: '{ action: "record", file_path: "src/index.ts", agent_name: "refactor-bot", change_type: "modified", layer: "infrastructure" }',
17
+ get: '{ action: "get", agent_name: "refactor-bot", layer: "infrastructure", limit: 10 }',
18
+ check_lock: '{ action: "check_lock", file_path: "src/index.ts", lock_duration: 300 }',
19
+ record_batch: '{ action: "record_batch", file_changes: [{"file_path": "src/types.ts", "agent_name": "bot1", "change_type": "modified", "layer": "data"}, {"file_path": "src/index.ts", "agent_name": "bot1", "change_type": "modified", "layer": "infrastructure"}], atomic: true }'
20
+ },
21
+ documentation: {
22
+ workflows: 'docs/WORKFLOWS.md - File locking patterns, concurrent file access workflows (602 lines, ~30k tokens)',
23
+ tool_reference: 'docs/TOOL_REFERENCE.md - File tool parameters, batch operations (471 lines, ~24k tokens)',
24
+ shared_concepts: 'docs/SHARED_CONCEPTS.md - Layer definitions, enum values (change_type), atomic mode (339 lines, ~17k tokens)',
25
+ best_practices: 'docs/BEST_PRACTICES.md - File tracking best practices (345 lines, ~17k tokens)'
26
+ }
27
+ };
28
+ }
29
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../../src/tools/files/help/help.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,QAAQ;IACtB,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,4DAA4D;QACzE,IAAI,EAAE,2HAA2H;QACjI,OAAO,EAAE;YACP,MAAM,EAAE,qHAAqH;YAC7H,GAAG,EAAE,mFAAmF;YACxF,UAAU,EAAE,mEAAmE;YAC/E,YAAY,EAAE,stBAAstB;SACruB;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,+HAA+H;YACvI,GAAG,EAAE,mFAAmF;YACxF,UAAU,EAAE,yEAAyE;YACrF,YAAY,EAAE,sQAAsQ;SACrR;QACD,aAAa,EAAE;YACb,SAAS,EAAE,sGAAsG;YACjH,cAAc,EAAE,0FAA0F;YAC1G,eAAe,EAAE,8GAA8G;YAC/H,cAAc,EAAE,gFAAgF;SACjG;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * File tool - Barrel export
3
+ *
4
+ * Exports all file-related actions from modular structure
5
+ */
6
+ export { recordFileChange } from './actions/record.js';
7
+ export { getFileChanges } from './actions/get.js';
8
+ export { checkFileLock } from './actions/check-lock.js';
9
+ export { recordFileChangeBatch } from './actions/record-batch.js';
10
+ export { sqliteFlush } from './actions/sqlite-flush.js';
11
+ export { fileHelp } from './help/help.js';
12
+ export { fileExample } from './help/example.js';
13
+ export type { RecordFileChangeParams, GetFileChangesParams, CheckFileLockParams, RecordFileChangeBatchParams, RecordFileChangeResponse, GetFileChangesResponse, CheckFileLockResponse, RecordFileChangeBatchResponse, RecentFileChange } from './types.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/files/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,YAAY,EACV,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,EAC7B,gBAAgB,EACjB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * File tool - Barrel export
3
+ *
4
+ * Exports all file-related actions from modular structure
5
+ */
6
+ // Action exports
7
+ export { recordFileChange } from './actions/record.js';
8
+ export { getFileChanges } from './actions/get.js';
9
+ export { checkFileLock } from './actions/check-lock.js';
10
+ export { recordFileChangeBatch } from './actions/record-batch.js';
11
+ export { sqliteFlush } from './actions/sqlite-flush.js';
12
+ // Help exports
13
+ export { fileHelp } from './help/help.js';
14
+ export { fileExample } from './help/example.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/files/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,iBAAiB;AACjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Shared database queries for file operations
3
+ */
4
+ import { DatabaseAdapter } from '../../../adapters/index.js';
5
+ import { Knex } from 'knex';
6
+ import type { RecordFileChangeParams, RecordFileChangeResponse } from '../types.js';
7
+ /**
8
+ * Internal helper: Record file change without transaction wrapper
9
+ * Used by recordFileChange (with transaction) and recordFileChangeBatch (manages its own transaction)
10
+ *
11
+ * @param params - File change parameters
12
+ * @param adapter - Database adapter instance
13
+ * @param projectId - Project ID
14
+ * @param trx - Optional transaction
15
+ * @returns Success response with change ID and timestamp
16
+ */
17
+ export declare function recordFileChangeInternal(params: RecordFileChangeParams, adapter: DatabaseAdapter, projectId: number, trx?: Knex.Transaction): Promise<RecordFileChangeResponse>;
18
+ //# sourceMappingURL=queries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/internal/queries.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAY5B,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;;;;;GASG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAsDnC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Shared database queries for file operations
3
+ */
4
+ import { getOrCreateFile, getOrCreateAgent, getLayerId } from '../../../database.js';
5
+ import { STRING_TO_CHANGE_TYPE, STANDARD_LAYERS } from '../../../constants.js';
6
+ import { validateChangeType } from '../../../utils/validators.js';
7
+ import { logFileRecord } from '../../../utils/activity-logging.js';
8
+ /**
9
+ * Internal helper: Record file change without transaction wrapper
10
+ * Used by recordFileChange (with transaction) and recordFileChangeBatch (manages its own transaction)
11
+ *
12
+ * @param params - File change parameters
13
+ * @param adapter - Database adapter instance
14
+ * @param projectId - Project ID
15
+ * @param trx - Optional transaction
16
+ * @returns Success response with change ID and timestamp
17
+ */
18
+ export async function recordFileChangeInternal(params, adapter, projectId, trx) {
19
+ const knex = trx || adapter.getKnex();
20
+ // Validate change_type
21
+ validateChangeType(params.change_type);
22
+ const changeTypeInt = STRING_TO_CHANGE_TYPE[params.change_type];
23
+ // Validate layer if provided
24
+ let layerId = null;
25
+ if (params.layer) {
26
+ if (!STANDARD_LAYERS.includes(params.layer)) {
27
+ throw new Error(`Invalid layer: ${params.layer}. Must be one of: ${STANDARD_LAYERS.join(', ')}`);
28
+ }
29
+ layerId = await getLayerId(adapter, params.layer, trx);
30
+ if (layerId === null) {
31
+ throw new Error(`Layer not found: ${params.layer}`);
32
+ }
33
+ }
34
+ // Auto-register file and agent (v3.7.3: pass projectId)
35
+ const fileId = await getOrCreateFile(adapter, projectId, params.file_path, trx);
36
+ const agentId = await getOrCreateAgent(adapter, params.agent_name, trx);
37
+ // Current timestamp
38
+ const ts = Math.floor(Date.now() / 1000);
39
+ // Insert file change record with project_id
40
+ const [changeId] = await knex('t_file_changes').insert({
41
+ file_id: fileId,
42
+ agent_id: agentId,
43
+ layer_id: layerId,
44
+ change_type: changeTypeInt,
45
+ description: params.description || null,
46
+ project_id: projectId,
47
+ ts: ts
48
+ });
49
+ // Activity logging (replaces trigger)
50
+ await logFileRecord(knex, {
51
+ file_path: params.file_path,
52
+ change_type: changeTypeInt,
53
+ agent_id: agentId,
54
+ layer_id: layerId || undefined
55
+ });
56
+ const timestamp = new Date(ts * 1000).toISOString();
57
+ return {
58
+ success: true,
59
+ change_id: Number(changeId),
60
+ timestamp: timestamp,
61
+ };
62
+ }
63
+ //# sourceMappingURL=queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../../src/tools/files/internal/queries.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,UAAU,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAGnE;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAA8B,EAC9B,OAAwB,EACxB,SAAiB,EACjB,GAAsB;IAEtB,MAAM,IAAI,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAEtC,uBAAuB;IACvB,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEhE,6BAA6B;IAC7B,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAY,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,kBAAkB,MAAM,CAAC,KAAK,qBAAqB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChF,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAExE,oBAAoB;IACpB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAEzC,4CAA4C;IAC5C,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC;QACrD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,OAAO;QACjB,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;QACvC,UAAU,EAAE,SAAS;QACrB,EAAE,EAAE,EAAE;KACP,CAAC,CAAC;IAEH,sCAAsC;IACtC,MAAM,aAAa,CAAC,IAAI,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,WAAW,EAAE,aAAa;QAC1B,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,OAAO,IAAI,SAAS;KAC/B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAEpD,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC3B,SAAS,EAAE,SAAS;KACrB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Parameter validation utilities for file operations
3
+ */
4
+ import { validateChangeType } from '../../../utils/validators.js';
5
+ import { validateActionParams, validateBatchParams } from '../../../utils/parameter-validator.js';
6
+ import type { DatabaseAdapter } from '../../../adapters/types.js';
7
+ import { BatchValidationError } from '../../../utils/batch-validation.js';
8
+ /**
9
+ * Validate layer parameter
10
+ */
11
+ export declare function validateLayerParam(layer?: string): void;
12
+ export { validateChangeType, validateActionParams, validateBatchParams };
13
+ /**
14
+ * Validate single file change item in batch operation
15
+ * Accumulates all validation errors for the item
16
+ */
17
+ export declare function validateFileChangeItem(item: any, index: number, adapter: DatabaseAdapter, errors: BatchValidationError[]): Promise<void>;
18
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/internal/validation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAElG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EACL,oBAAoB,EAGrB,MAAM,oCAAoC,CAAC;AAE5C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvD;AAGD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;AAOzE;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,oBAAoB,EAAE,GAC7B,OAAO,CAAC,IAAI,CAAC,CAiBf"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Parameter validation utilities for file operations
3
+ */
4
+ import { validateChangeType } from '../../../utils/validators.js';
5
+ import { validateActionParams, validateBatchParams } from '../../../utils/parameter-validator.js';
6
+ import { STANDARD_LAYERS } from '../../../constants.js';
7
+ import { validateRequiredField, validateEnum, } from '../../../utils/batch-validation.js';
8
+ /**
9
+ * Validate layer parameter
10
+ */
11
+ export function validateLayerParam(layer) {
12
+ if (layer && !STANDARD_LAYERS.includes(layer)) {
13
+ throw new Error(`Invalid layer: ${layer}. Must be one of: ${STANDARD_LAYERS.join(', ')}`);
14
+ }
15
+ }
16
+ // Re-export common validators
17
+ export { validateChangeType, validateActionParams, validateBatchParams };
18
+ /**
19
+ * Valid change types for file operations
20
+ */
21
+ const VALID_CHANGE_TYPES = ['created', 'modified', 'deleted'];
22
+ /**
23
+ * Validate single file change item in batch operation
24
+ * Accumulates all validation errors for the item
25
+ */
26
+ export async function validateFileChangeItem(item, index, adapter, errors) {
27
+ const identifier = item.file_path || `Item ${index + 1}`;
28
+ // Required: file_path
29
+ validateRequiredField(item.file_path, 'file_path', index, identifier, errors);
30
+ // Required: agent_name
31
+ validateRequiredField(item.agent_name, 'agent_name', index, identifier, errors);
32
+ // Required: change_type
33
+ validateRequiredField(item.change_type, 'change_type', index, identifier, errors);
34
+ validateEnum(item.change_type, 'change_type', VALID_CHANGE_TYPES, index, identifier, errors);
35
+ // Optional but must be valid: layer
36
+ if (item.layer !== undefined) {
37
+ validateEnum(item.layer, 'layer', STANDARD_LAYERS, index, identifier, errors);
38
+ }
39
+ }
40
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../src/tools/files/internal/validation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAEL,qBAAqB,EACrB,YAAY,GACb,MAAM,oCAAoC,CAAC;AAE5C;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAY,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CACb,kBAAkB,KAAK,qBAAqB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8BAA8B;AAC9B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;AAEzE;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;AAEvE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAS,EACT,KAAa,EACb,OAAwB,EACxB,MAA8B;IAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,KAAK,GAAG,CAAC,EAAE,CAAC;IAEzD,sBAAsB;IACtB,qBAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAE9E,uBAAuB;IACvB,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAEhF,wBAAwB;IACxB,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAClF,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAE7F,oCAAoC;IACpC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * File-specific types
3
+ * Re-exports from main types module
4
+ */
5
+ export type { RecordFileChangeParams, GetFileChangesParams, CheckFileLockParams, RecordFileChangeBatchParams, RecordFileChangeResponse, GetFileChangesResponse, CheckFileLockResponse, RecordFileChangeBatchResponse, RecentFileChange } from '../../types.js';
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/files/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EACV,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,EAC7B,gBAAgB,EACjB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * File-specific types
3
+ * Re-exports from main types module
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tools/files/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Help Tool - batch_guide Action
3
+ * Get guidance for batch operations
4
+ */
5
+ import { DatabaseAdapter } from '../../../adapters/index.js';
6
+ import { HelpBatchGuideParams, HelpBatchGuideResult } from '../types.js';
7
+ /**
8
+ * Get batch operation guide
9
+ * Queries database for batch-specific examples and adds best practices
10
+ */
11
+ export declare function batchGuide(params: HelpBatchGuideParams, adapter?: DatabaseAdapter): Promise<HelpBatchGuideResult | {
12
+ error: string;
13
+ }>;
14
+ //# sourceMappingURL=batch-guide.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-guide.d.ts","sourceRoot":"","sources":["../../../../src/tools/help/actions/batch-guide.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAe,MAAM,aAAa,CAAC;AAEtF;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA2DnD"}