sqlew 3.2.5 → 3.6.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 (291) hide show
  1. package/CHANGELOG.md +288 -1011
  2. package/README.md +80 -263
  3. package/assets/config.example.toml +97 -0
  4. package/assets/schema.sql +6 -1
  5. package/dist/adapters/index.d.ts +11 -0
  6. package/dist/adapters/index.d.ts.map +1 -0
  7. package/dist/adapters/index.js +21 -0
  8. package/dist/adapters/index.js.map +1 -0
  9. package/dist/adapters/mysql-adapter.d.ts +31 -0
  10. package/dist/adapters/mysql-adapter.d.ts.map +1 -0
  11. package/dist/adapters/mysql-adapter.js +63 -0
  12. package/dist/adapters/mysql-adapter.js.map +1 -0
  13. package/dist/adapters/postgresql-adapter.d.ts +31 -0
  14. package/dist/adapters/postgresql-adapter.d.ts.map +1 -0
  15. package/dist/adapters/postgresql-adapter.js +63 -0
  16. package/dist/adapters/postgresql-adapter.js.map +1 -0
  17. package/dist/adapters/sqlite-adapter.d.ts +37 -0
  18. package/dist/adapters/sqlite-adapter.d.ts.map +1 -0
  19. package/dist/adapters/sqlite-adapter.js +129 -0
  20. package/dist/adapters/sqlite-adapter.js.map +1 -0
  21. package/dist/adapters/types.d.ts +33 -0
  22. package/dist/adapters/types.d.ts.map +1 -0
  23. package/dist/adapters/types.js +2 -0
  24. package/dist/adapters/types.js.map +1 -0
  25. package/dist/cli.js +55 -54
  26. package/dist/cli.js.map +1 -1
  27. package/dist/config/example-generator.d.ts +11 -0
  28. package/dist/config/example-generator.d.ts.map +1 -0
  29. package/dist/config/example-generator.js +48 -0
  30. package/dist/config/example-generator.js.map +1 -0
  31. package/dist/config/loader.d.ts +46 -0
  32. package/dist/config/loader.d.ts.map +1 -0
  33. package/dist/config/loader.js +155 -0
  34. package/dist/config/loader.js.map +1 -0
  35. package/dist/config/types.d.ts +86 -0
  36. package/dist/config/types.d.ts.map +1 -0
  37. package/dist/config/types.js +28 -0
  38. package/dist/config/types.js.map +1 -0
  39. package/dist/constants.d.ts +9 -0
  40. package/dist/constants.d.ts.map +1 -1
  41. package/dist/constants.js +10 -0
  42. package/dist/constants.js.map +1 -1
  43. package/dist/database.d.ts +44 -122
  44. package/dist/database.d.ts.map +1 -1
  45. package/dist/database.js +145 -349
  46. package/dist/database.js.map +1 -1
  47. package/dist/index.js +223 -175
  48. package/dist/index.js.map +1 -1
  49. package/dist/knexfile.d.ts +6 -0
  50. package/dist/knexfile.d.ts.map +1 -0
  51. package/dist/knexfile.js +85 -0
  52. package/dist/knexfile.js.map +1 -0
  53. package/dist/migrations/add-help-system-tables.d.ts +35 -0
  54. package/dist/migrations/add-help-system-tables.d.ts.map +1 -0
  55. package/dist/migrations/add-help-system-tables.js +206 -0
  56. package/dist/migrations/add-help-system-tables.js.map +1 -0
  57. package/dist/migrations/add-token-tracking.d.ts +28 -0
  58. package/dist/migrations/add-token-tracking.d.ts.map +1 -0
  59. package/dist/migrations/add-token-tracking.js +108 -0
  60. package/dist/migrations/add-token-tracking.js.map +1 -0
  61. package/dist/migrations/add-v3.5.0-pruned-files.d.ts +26 -0
  62. package/dist/migrations/add-v3.5.0-pruned-files.d.ts.map +1 -0
  63. package/dist/migrations/add-v3.5.0-pruned-files.js +107 -0
  64. package/dist/migrations/add-v3.5.0-pruned-files.js.map +1 -0
  65. package/dist/migrations/index.d.ts +26 -12
  66. package/dist/migrations/index.d.ts.map +1 -1
  67. package/dist/migrations/index.js +162 -20
  68. package/dist/migrations/index.js.map +1 -1
  69. package/dist/migrations/knex/20251025020452_create_master_tables.d.ts +4 -0
  70. package/dist/migrations/knex/20251025020452_create_master_tables.d.ts.map +1 -0
  71. package/dist/migrations/knex/20251025020452_create_master_tables.js +65 -0
  72. package/dist/migrations/knex/20251025020452_create_master_tables.js.map +1 -0
  73. package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts +4 -0
  74. package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts.map +1 -0
  75. package/dist/migrations/knex/20251025021152_create_transaction_tables.js +235 -0
  76. package/dist/migrations/knex/20251025021152_create_transaction_tables.js.map +1 -0
  77. package/dist/migrations/knex/20251025021351_create_indexes.d.ts +4 -0
  78. package/dist/migrations/knex/20251025021351_create_indexes.d.ts.map +1 -0
  79. package/dist/migrations/knex/20251025021351_create_indexes.js +62 -0
  80. package/dist/migrations/knex/20251025021351_create_indexes.js.map +1 -0
  81. package/dist/migrations/knex/20251025021416_seed_master_data.d.ts +4 -0
  82. package/dist/migrations/knex/20251025021416_seed_master_data.d.ts.map +1 -0
  83. package/dist/migrations/knex/20251025021416_seed_master_data.js +58 -0
  84. package/dist/migrations/knex/20251025021416_seed_master_data.js.map +1 -0
  85. package/dist/migrations/knex/20251025070349_create_views.d.ts +4 -0
  86. package/dist/migrations/knex/20251025070349_create_views.d.ts.map +1 -0
  87. package/dist/migrations/knex/20251025070349_create_views.js +143 -0
  88. package/dist/migrations/knex/20251025070349_create_views.js.map +1 -0
  89. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts +4 -0
  90. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
  91. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js +15 -0
  92. package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
  93. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts +8 -0
  94. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
  95. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js +12 -0
  96. package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js.map +1 -0
  97. package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts +19 -0
  98. package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts.map +1 -0
  99. package/dist/migrations/knex/20251025090000_create_help_system_tables.js +115 -0
  100. package/dist/migrations/knex/20251025090000_create_help_system_tables.js.map +1 -0
  101. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts +13 -0
  102. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
  103. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js +377 -0
  104. package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
  105. package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts +15 -0
  106. package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts.map +1 -0
  107. package/dist/migrations/knex/20251025100000_seed_help_metadata.js +253 -0
  108. package/dist/migrations/knex/20251025100000_seed_help_metadata.js.map +1 -0
  109. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts +16 -0
  110. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
  111. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js +276 -0
  112. package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js.map +1 -0
  113. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts +8 -0
  114. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
  115. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js +64 -0
  116. package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
  117. package/dist/migrations/seed-help-data.d.ts +48 -0
  118. package/dist/migrations/seed-help-data.d.ts.map +1 -0
  119. package/dist/migrations/seed-help-data.js +1466 -0
  120. package/dist/migrations/seed-help-data.js.map +1 -0
  121. package/dist/migrations/seed-tool-metadata.d.ts +24 -0
  122. package/dist/migrations/seed-tool-metadata.d.ts.map +1 -0
  123. package/dist/migrations/seed-tool-metadata.js +392 -0
  124. package/dist/migrations/seed-tool-metadata.js.map +1 -0
  125. package/dist/migrations/v3.6.0-help-system-refactor.d.ts +46 -0
  126. package/dist/migrations/v3.6.0-help-system-refactor.d.ts.map +1 -0
  127. package/dist/migrations/v3.6.0-help-system-refactor.js +223 -0
  128. package/dist/migrations/v3.6.0-help-system-refactor.js.map +1 -0
  129. package/dist/schema.d.ts.map +1 -1
  130. package/dist/schema.js +2 -0
  131. package/dist/schema.js.map +1 -1
  132. package/dist/tests/git-aware-completion.test.d.ts +6 -0
  133. package/dist/tests/git-aware-completion.test.d.ts.map +1 -0
  134. package/dist/tests/git-aware-completion.test.js +160 -0
  135. package/dist/tests/git-aware-completion.test.js.map +1 -0
  136. package/dist/tests/help-system.test.d.ts +23 -0
  137. package/dist/tests/help-system.test.d.ts.map +1 -0
  138. package/dist/tests/help-system.test.js +374 -0
  139. package/dist/tests/help-system.test.js.map +1 -0
  140. package/dist/tests/tasks.auto-pruning-decision-link.test.d.ts +6 -0
  141. package/dist/tests/tasks.auto-pruning-decision-link.test.d.ts.map +1 -0
  142. package/dist/tests/tasks.auto-pruning-decision-link.test.js +264 -0
  143. package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -0
  144. package/dist/tests/tasks.auto-pruning-partial.test.d.ts +6 -0
  145. package/dist/tests/tasks.auto-pruning-partial.test.d.ts.map +1 -0
  146. package/dist/tests/tasks.auto-pruning-partial.test.js +285 -0
  147. package/dist/tests/tasks.auto-pruning-partial.test.js.map +1 -0
  148. package/dist/tests/tasks.auto-pruning-persistence.test.d.ts +6 -0
  149. package/dist/tests/tasks.auto-pruning-persistence.test.d.ts.map +1 -0
  150. package/dist/tests/tasks.auto-pruning-persistence.test.js +250 -0
  151. package/dist/tests/tasks.auto-pruning-persistence.test.js.map +1 -0
  152. package/dist/tests/tasks.auto-pruning-safety.test.d.ts +12 -0
  153. package/dist/tests/tasks.auto-pruning-safety.test.d.ts.map +1 -0
  154. package/dist/tests/tasks.auto-pruning-safety.test.js +217 -0
  155. package/dist/tests/tasks.auto-pruning-safety.test.js.map +1 -0
  156. package/dist/tests/tasks.dependencies.test.js +338 -307
  157. package/dist/tests/tasks.dependencies.test.js.map +1 -1
  158. package/dist/tests/tasks.link-file-backward-compat.test.d.ts +6 -0
  159. package/dist/tests/tasks.link-file-backward-compat.test.d.ts.map +1 -0
  160. package/dist/tests/tasks.link-file-backward-compat.test.js +247 -0
  161. package/dist/tests/tasks.link-file-backward-compat.test.js.map +1 -0
  162. package/dist/tests/tasks.watch-files-action.test.d.ts +6 -0
  163. package/dist/tests/tasks.watch-files-action.test.d.ts.map +1 -0
  164. package/dist/tests/tasks.watch-files-action.test.js +372 -0
  165. package/dist/tests/tasks.watch-files-action.test.js.map +1 -0
  166. package/dist/tests/tasks.watch-files-parameter.test.d.ts +6 -0
  167. package/dist/tests/tasks.watch-files-parameter.test.d.ts.map +1 -0
  168. package/dist/tests/tasks.watch-files-parameter.test.js +260 -0
  169. package/dist/tests/tasks.watch-files-parameter.test.js.map +1 -0
  170. package/dist/tests/two-step-git-completion.test.d.ts +6 -0
  171. package/dist/tests/two-step-git-completion.test.d.ts.map +1 -0
  172. package/dist/tests/two-step-git-completion.test.js +326 -0
  173. package/dist/tests/two-step-git-completion.test.js.map +1 -0
  174. package/dist/tests/vcs-staging.test.d.ts +6 -0
  175. package/dist/tests/vcs-staging.test.d.ts.map +1 -0
  176. package/dist/tests/vcs-staging.test.js +137 -0
  177. package/dist/tests/vcs-staging.test.js.map +1 -0
  178. package/dist/tools/config.d.ts +9 -4
  179. package/dist/tools/config.d.ts.map +1 -1
  180. package/dist/tools/config.js +16 -12
  181. package/dist/tools/config.js.map +1 -1
  182. package/dist/tools/constraints.d.ts +9 -3
  183. package/dist/tools/constraints.d.ts.map +1 -1
  184. package/dist/tools/constraints.js +66 -45
  185. package/dist/tools/constraints.js.map +1 -1
  186. package/dist/tools/context.d.ts +35 -16
  187. package/dist/tools/context.d.ts.map +1 -1
  188. package/dist/tools/context.js +374 -314
  189. package/dist/tools/context.js.map +1 -1
  190. package/dist/tools/files.d.ts +11 -4
  191. package/dist/tools/files.d.ts.map +1 -1
  192. package/dist/tools/files.js +173 -91
  193. package/dist/tools/files.js.map +1 -1
  194. package/dist/tools/help-queries.d.ts +130 -0
  195. package/dist/tools/help-queries.d.ts.map +1 -0
  196. package/dist/tools/help-queries.js +393 -0
  197. package/dist/tools/help-queries.js.map +1 -0
  198. package/dist/tools/messaging.d.ts +13 -6
  199. package/dist/tools/messaging.d.ts.map +1 -1
  200. package/dist/tools/messaging.js +217 -129
  201. package/dist/tools/messaging.js.map +1 -1
  202. package/dist/tools/tasks.d.ts +42 -12
  203. package/dist/tools/tasks.d.ts.map +1 -1
  204. package/dist/tools/tasks.js +809 -347
  205. package/dist/tools/tasks.js.map +1 -1
  206. package/dist/tools/utils.d.ts +13 -5
  207. package/dist/tools/utils.d.ts.map +1 -1
  208. package/dist/tools/utils.js +92 -115
  209. package/dist/tools/utils.js.map +1 -1
  210. package/dist/types.d.ts +4 -0
  211. package/dist/types.d.ts.map +1 -1
  212. package/dist/utils/activity-logging.d.ts +114 -0
  213. package/dist/utils/activity-logging.d.ts.map +1 -0
  214. package/dist/utils/activity-logging.js +162 -0
  215. package/dist/utils/activity-logging.js.map +1 -0
  216. package/dist/utils/batch.d.ts +2 -2
  217. package/dist/utils/batch.d.ts.map +1 -1
  218. package/dist/utils/batch.js +8 -8
  219. package/dist/utils/batch.js.map +1 -1
  220. package/dist/utils/cleanup.d.ts +21 -13
  221. package/dist/utils/cleanup.d.ts.map +1 -1
  222. package/dist/utils/cleanup.js +31 -24
  223. package/dist/utils/cleanup.js.map +1 -1
  224. package/dist/utils/debug-logger.d.ts +44 -0
  225. package/dist/utils/debug-logger.d.ts.map +1 -0
  226. package/dist/utils/debug-logger.js +116 -0
  227. package/dist/utils/debug-logger.js.map +1 -0
  228. package/dist/utils/file-pruning.d.ts +69 -0
  229. package/dist/utils/file-pruning.d.ts.map +1 -0
  230. package/dist/utils/file-pruning.js +185 -0
  231. package/dist/utils/file-pruning.js.map +1 -0
  232. package/dist/utils/help-tracking.d.ts +55 -0
  233. package/dist/utils/help-tracking.d.ts.map +1 -0
  234. package/dist/utils/help-tracking.js +88 -0
  235. package/dist/utils/help-tracking.js.map +1 -0
  236. package/dist/utils/quality-checks.d.ts +60 -0
  237. package/dist/utils/quality-checks.d.ts.map +1 -0
  238. package/dist/utils/quality-checks.js +228 -0
  239. package/dist/utils/quality-checks.js.map +1 -0
  240. package/dist/utils/retention.d.ts +13 -5
  241. package/dist/utils/retention.d.ts.map +1 -1
  242. package/dist/utils/retention.js +20 -8
  243. package/dist/utils/retention.js.map +1 -1
  244. package/dist/utils/task-stale-detection.d.ts +77 -7
  245. package/dist/utils/task-stale-detection.d.ts.map +1 -1
  246. package/dist/utils/task-stale-detection.js +309 -34
  247. package/dist/utils/task-stale-detection.js.map +1 -1
  248. package/dist/utils/token-estimation.d.ts +72 -0
  249. package/dist/utils/token-estimation.d.ts.map +1 -0
  250. package/dist/utils/token-estimation.js +71 -0
  251. package/dist/utils/token-estimation.js.map +1 -0
  252. package/dist/utils/token-logging.d.ts +48 -0
  253. package/dist/utils/token-logging.d.ts.map +1 -0
  254. package/dist/utils/token-logging.js +112 -0
  255. package/dist/utils/token-logging.js.map +1 -0
  256. package/dist/utils/vcs-adapter.d.ts +68 -0
  257. package/dist/utils/vcs-adapter.d.ts.map +1 -0
  258. package/dist/utils/vcs-adapter.js +187 -0
  259. package/dist/utils/vcs-adapter.js.map +1 -0
  260. package/dist/utils/view-queries.d.ts +34 -0
  261. package/dist/utils/view-queries.d.ts.map +1 -0
  262. package/dist/utils/view-queries.js +192 -0
  263. package/dist/utils/view-queries.js.map +1 -0
  264. package/dist/watcher/file-watcher.d.ts +54 -4
  265. package/dist/watcher/file-watcher.d.ts.map +1 -1
  266. package/dist/watcher/file-watcher.js +329 -33
  267. package/dist/watcher/file-watcher.js.map +1 -1
  268. package/dist/watcher/gitignore-parser.d.ts +70 -0
  269. package/dist/watcher/gitignore-parser.d.ts.map +1 -0
  270. package/dist/watcher/gitignore-parser.js +191 -0
  271. package/dist/watcher/gitignore-parser.js.map +1 -0
  272. package/dist/watcher/index.d.ts +1 -0
  273. package/dist/watcher/index.d.ts.map +1 -1
  274. package/dist/watcher/index.js +1 -0
  275. package/dist/watcher/index.js.map +1 -1
  276. package/docs/AI_AGENT_GUIDE.md +1 -1
  277. package/docs/ARCHITECTURE.md +12 -0
  278. package/docs/AUTO_FILE_TRACKING.md +486 -82
  279. package/docs/BEST_PRACTICES.md +56 -448
  280. package/docs/CONFIGURATION.md +908 -0
  281. package/docs/GIT_AWARE_AUTO_COMPLETE.md +645 -0
  282. package/docs/MIGRATION_v3.3.md +602 -0
  283. package/docs/MIGRATION_v3.6.0.md +170 -0
  284. package/docs/SHARED_CONCEPTS.md +65 -209
  285. package/docs/TASK_ACTIONS.md +12 -0
  286. package/docs/TASK_OVERVIEW.md +125 -24
  287. package/docs/TASK_PRUNING.md +589 -0
  288. package/docs/TASK_SYSTEM.md +83 -13
  289. package/docs/TOOL_REFERENCE.md +94 -6
  290. package/docs/TOOL_SELECTION.md +41 -248
  291. package/package.json +21 -7
@@ -1 +1 @@
1
- {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,OAAO,KAAK,EACV,iBAAiB,EAGjB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EAEzB,MAAM,aAAa,CAAC;AAoDrB;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,mBAAmB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAOlG;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACzD,eAAe,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,mBAAmB,CA8EtB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,gBAAgB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,CA6B9C;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,wBAAwB,CA4CzF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,GAAG,CAwBjC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,GAAG,CAsGpC"}
1
+ {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAevD,OAAO,KAAK,EACV,iBAAiB,EAGjB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAqErB;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,mBAAmB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAWtD;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACzD,eAAe,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAiF1D;AAED;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,MAAM,EAAE;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BlF;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,wBAAwB,CAAC,CAqGnC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,GAAG,CAwBjC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,GAAG,CAsGpC"}
@@ -1,47 +1,61 @@
1
1
  /**
2
2
  * Messaging Tools for MCP Shared Context Server
3
3
  * Agent-to-agent communication with priority and read tracking
4
+ *
5
+ * CONVERTED: Using Knex.js with DatabaseAdapter (async/await)
4
6
  */
5
- import { getDatabase, getOrCreateAgent } from '../database.js';
7
+ import { getAdapter, getOrCreateAgent, } from '../database.js';
6
8
  import { STRING_TO_MESSAGE_TYPE, STRING_TO_PRIORITY, MESSAGE_TYPE_TO_STRING, PRIORITY_TO_STRING, } from '../constants.js';
7
9
  import { validateMessageType, validatePriority } from '../utils/validators.js';
8
- import { performAutoCleanup } from '../utils/cleanup.js';
9
- import { processBatch } from '../utils/batch.js';
10
+ import { logMessageSend } from '../utils/activity-logging.js';
10
11
  /**
11
- * Internal helper: Send message without cleanup or transaction wrapper
12
- * Used by sendMessage (with cleanup) and sendMessageBatch (manages its own transaction)
12
+ * Internal helper: Send message without wrapping in transaction
13
+ * Used by sendMessage (with transaction) and sendMessageBatch (manages its own transaction)
13
14
  *
14
15
  * @param params - Message parameters
15
- * @param db - Database instance
16
+ * @param adapter - Database adapter instance
17
+ * @param trx - Optional transaction
16
18
  * @returns Response with message ID and timestamp
17
19
  */
18
- function sendMessageInternal(params, db) {
20
+ async function sendMessageInternal(params, adapter, trx) {
21
+ const knex = trx || adapter.getKnex();
19
22
  // Validate msg_type
20
23
  validateMessageType(params.msg_type);
21
24
  // Validate priority if provided
22
25
  const priority = params.priority || 'medium';
23
26
  validatePriority(priority);
24
27
  // Auto-register from_agent
25
- const fromAgentId = getOrCreateAgent(db, params.from_agent);
28
+ const fromAgentId = await getOrCreateAgent(adapter, params.from_agent, trx);
26
29
  // Auto-register to_agent if provided (null = broadcast)
27
- const toAgentId = params.to_agent ? getOrCreateAgent(db, params.to_agent) : null;
30
+ const toAgentId = params.to_agent ? await getOrCreateAgent(adapter, params.to_agent, trx) : null;
28
31
  // Convert enums to integers
29
32
  const msgTypeInt = STRING_TO_MESSAGE_TYPE[params.msg_type];
30
33
  const priorityInt = STRING_TO_PRIORITY[priority];
31
34
  // Serialize payload if provided
32
35
  const payloadStr = params.payload ? JSON.stringify(params.payload) : null;
36
+ // Current timestamp
37
+ const ts = Math.floor(Date.now() / 1000);
33
38
  // Insert message
34
- const stmt = db.prepare(`
35
- INSERT INTO t_agent_messages (from_agent_id, to_agent_id, msg_type, priority, payload, read)
36
- VALUES (?, ?, ?, ?, ?, 0)
37
- `);
38
- const result = stmt.run(fromAgentId, toAgentId, msgTypeInt, priorityInt, payloadStr);
39
- // Get timestamp
40
- const tsResult = db.prepare('SELECT ts FROM t_agent_messages WHERE id = ?').get(result.lastInsertRowid);
41
- const timestamp = new Date(tsResult.ts * 1000).toISOString();
39
+ const [messageId] = await knex('t_agent_messages').insert({
40
+ from_agent_id: fromAgentId,
41
+ to_agent_id: toAgentId,
42
+ msg_type: msgTypeInt,
43
+ priority: priorityInt,
44
+ payload: payloadStr,
45
+ read: 0,
46
+ ts: ts
47
+ });
48
+ // Activity logging (replaces trigger)
49
+ await logMessageSend(knex, {
50
+ from_agent_id: fromAgentId,
51
+ to_agent_id: toAgentId || 0,
52
+ msg_type: msgTypeInt,
53
+ priority: priorityInt
54
+ });
55
+ const timestamp = new Date(ts * 1000).toISOString();
42
56
  return {
43
57
  success: true,
44
- message_id: Number(result.lastInsertRowid),
58
+ message_id: Number(messageId),
45
59
  timestamp,
46
60
  };
47
61
  }
@@ -50,111 +64,123 @@ function sendMessageInternal(params, db) {
50
64
  * Supports priority levels and optional JSON payload
51
65
  *
52
66
  * @param params - Message parameters
67
+ * @param adapter - Optional database adapter (for testing)
53
68
  * @returns Response with message ID and timestamp
54
69
  */
55
- export function sendMessage(params) {
56
- const db = getDatabase();
57
- // Cleanup old messages before inserting new one
58
- performAutoCleanup(db);
59
- return sendMessageInternal(params, db);
70
+ export async function sendMessage(params, adapter) {
71
+ const actualAdapter = adapter ?? getAdapter();
72
+ try {
73
+ return await actualAdapter.transaction(async (trx) => {
74
+ return await sendMessageInternal(params, actualAdapter, trx);
75
+ });
76
+ }
77
+ catch (error) {
78
+ const message = error instanceof Error ? error.message : String(error);
79
+ throw new Error(`Failed to send message: ${message}`);
80
+ }
60
81
  }
61
82
  /**
62
83
  * Get messages for an agent with optional filtering
63
84
  * Returns messages addressed to agent or broadcast (to_agent_id IS NULL)
64
85
  *
65
86
  * @param params - Query parameters
87
+ * @param adapter - Optional database adapter (for testing)
66
88
  * @returns Array of messages with metadata
67
89
  */
68
- export function getMessages(params) {
69
- const db = getDatabase();
70
- // Get or create agent to get ID
71
- const agentId = getOrCreateAgent(db, params.agent_name);
72
- // Build query dynamically based on filters
73
- let query = `
74
- SELECT
75
- m.id,
76
- a.name as from_agent,
77
- m.msg_type,
78
- m.priority,
79
- m.payload,
80
- m.ts,
81
- m.read
82
- FROM t_agent_messages m
83
- JOIN m_agents a ON m.from_agent_id = a.id
84
- WHERE (m.to_agent_id = ? OR m.to_agent_id IS NULL)
85
- `;
86
- const queryParams = [agentId];
87
- // Filter by read status
88
- if (params.unread_only) {
89
- query += ' AND m.read = 0';
90
- }
91
- // Filter by priority
92
- if (params.priority_filter) {
93
- validatePriority(params.priority_filter);
94
- const priorityInt = STRING_TO_PRIORITY[params.priority_filter];
95
- query += ' AND m.priority = ?';
96
- queryParams.push(priorityInt);
90
+ export async function getMessages(params, adapter) {
91
+ const actualAdapter = adapter ?? getAdapter();
92
+ const knex = actualAdapter.getKnex();
93
+ try {
94
+ // Get or create agent to get ID
95
+ const agentId = await getOrCreateAgent(actualAdapter, params.agent_name);
96
+ // Build query dynamically based on filters
97
+ let query = knex('t_agent_messages as m')
98
+ .join('m_agents as a', 'm.from_agent_id', 'a.id')
99
+ .where((builder) => {
100
+ builder.where('m.to_agent_id', agentId)
101
+ .orWhereNull('m.to_agent_id');
102
+ })
103
+ .select('m.id', 'a.name as from_agent', 'm.msg_type', 'm.priority', 'm.payload', 'm.ts', 'm.read');
104
+ // Filter by read status
105
+ if (params.unread_only) {
106
+ query = query.where('m.read', 0);
107
+ }
108
+ // Filter by priority
109
+ if (params.priority_filter) {
110
+ validatePriority(params.priority_filter);
111
+ const priorityInt = STRING_TO_PRIORITY[params.priority_filter];
112
+ query = query.where('m.priority', priorityInt);
113
+ }
114
+ // Filter by msg_type
115
+ if (params.msg_type_filter) {
116
+ validateMessageType(params.msg_type_filter);
117
+ const msgTypeInt = STRING_TO_MESSAGE_TYPE[params.msg_type_filter];
118
+ query = query.where('m.msg_type', msgTypeInt);
119
+ }
120
+ // Order by priority DESC, then timestamp DESC
121
+ const limit = params.limit || 50;
122
+ query = query.orderBy([
123
+ { column: 'm.priority', order: 'desc' },
124
+ { column: 'm.ts', order: 'desc' }
125
+ ]).limit(limit);
126
+ // Execute query
127
+ const rows = await query;
128
+ // Transform results
129
+ const messages = rows.map(row => ({
130
+ id: row.id,
131
+ from_agent: row.from_agent,
132
+ msg_type: MESSAGE_TYPE_TO_STRING[row.msg_type],
133
+ priority: PRIORITY_TO_STRING[row.priority],
134
+ payload: row.payload ? JSON.parse(row.payload) : null,
135
+ timestamp: new Date(row.ts * 1000).toISOString(),
136
+ read: row.read === 1,
137
+ }));
138
+ return {
139
+ messages,
140
+ count: messages.length,
141
+ };
97
142
  }
98
- // Filter by msg_type
99
- if (params.msg_type_filter) {
100
- validateMessageType(params.msg_type_filter);
101
- const msgTypeInt = STRING_TO_MESSAGE_TYPE[params.msg_type_filter];
102
- query += ' AND m.msg_type = ?';
103
- queryParams.push(msgTypeInt);
143
+ catch (error) {
144
+ const message = error instanceof Error ? error.message : String(error);
145
+ throw new Error(`Failed to get messages: ${message}`);
104
146
  }
105
- // Order by priority DESC, then timestamp DESC
106
- query += ' ORDER BY m.priority DESC, m.ts DESC';
107
- // Limit results
108
- const limit = params.limit || 50;
109
- query += ' LIMIT ?';
110
- queryParams.push(limit);
111
- const stmt = db.prepare(query);
112
- const rows = stmt.all(...queryParams);
113
- // Transform results
114
- const messages = rows.map(row => ({
115
- id: row.id,
116
- from_agent: row.from_agent,
117
- msg_type: MESSAGE_TYPE_TO_STRING[row.msg_type],
118
- priority: PRIORITY_TO_STRING[row.priority],
119
- payload: row.payload ? JSON.parse(row.payload) : null,
120
- timestamp: new Date(row.ts * 1000).toISOString(),
121
- read: row.read === 1,
122
- }));
123
- return {
124
- messages,
125
- count: messages.length,
126
- };
127
147
  }
128
148
  /**
129
149
  * Mark messages as read
130
150
  * Only marks messages addressed to the specified agent (security check)
131
151
  *
132
152
  * @param params - Message IDs and agent name
153
+ * @param adapter - Optional database adapter (for testing)
133
154
  * @returns Success status and count of marked messages
134
155
  */
135
- export function markRead(params) {
136
- const db = getDatabase();
137
- // Validate message_ids array
138
- if (!params.message_ids || params.message_ids.length === 0) {
139
- throw new Error('message_ids array cannot be empty');
156
+ export async function markRead(params, adapter) {
157
+ const actualAdapter = adapter ?? getAdapter();
158
+ const knex = actualAdapter.getKnex();
159
+ try {
160
+ // Validate message_ids array
161
+ if (!params.message_ids || params.message_ids.length === 0) {
162
+ throw new Error('message_ids array cannot be empty');
163
+ }
164
+ // Get agent ID
165
+ const agentId = await getOrCreateAgent(actualAdapter, params.agent_name);
166
+ // Update only messages addressed to this agent (security check)
167
+ // Also allow broadcast messages (to_agent_id IS NULL)
168
+ const markedCount = await knex('t_agent_messages')
169
+ .whereIn('id', params.message_ids)
170
+ .where((builder) => {
171
+ builder.where('to_agent_id', agentId)
172
+ .orWhereNull('to_agent_id');
173
+ })
174
+ .update({ read: 1 });
175
+ return {
176
+ success: true,
177
+ marked_count: markedCount,
178
+ };
179
+ }
180
+ catch (error) {
181
+ const message = error instanceof Error ? error.message : String(error);
182
+ throw new Error(`Failed to mark messages as read: ${message}`);
140
183
  }
141
- // Get agent ID
142
- const agentId = getOrCreateAgent(db, params.agent_name);
143
- // Build placeholders for IN clause
144
- const placeholders = params.message_ids.map(() => '?').join(',');
145
- // Update only messages addressed to this agent (security check)
146
- // Also allow broadcast messages (to_agent_id IS NULL)
147
- const stmt = db.prepare(`
148
- UPDATE t_agent_messages
149
- SET read = 1
150
- WHERE id IN (${placeholders})
151
- AND (to_agent_id = ? OR to_agent_id IS NULL)
152
- `);
153
- const result = stmt.run(...params.message_ids, agentId);
154
- return {
155
- success: true,
156
- marked_count: result.changes,
157
- };
158
184
  }
159
185
  /**
160
186
  * Send multiple messages in a single batch operation (FR-005)
@@ -162,41 +188,103 @@ export function markRead(params) {
162
188
  * Limit: 50 items per batch (constraint #3)
163
189
  *
164
190
  * @param params - Batch parameters with array of messages and atomic flag
191
+ * @param adapter - Optional database adapter (for testing)
165
192
  * @returns Response with success status and detailed results for each item
166
193
  */
167
- export function sendMessageBatch(params) {
168
- const db = getDatabase();
194
+ export async function sendMessageBatch(params, adapter) {
195
+ const actualAdapter = adapter ?? getAdapter();
169
196
  // Validate required parameters
170
197
  if (!params.messages || !Array.isArray(params.messages)) {
171
198
  throw new Error('Parameter "messages" is required and must be an array');
172
199
  }
173
- // Cleanup old messages before processing batch
174
- performAutoCleanup(db);
175
- const atomic = params.atomic !== undefined ? params.atomic : true;
176
- // Use processBatch utility
177
- const batchResult = processBatch(db, params.messages, (message, db) => {
178
- const result = sendMessageInternal(message, db);
200
+ if (params.messages.length === 0) {
179
201
  return {
180
- from_agent: message.from_agent,
181
- to_agent: message.to_agent || null,
182
- message_id: result.message_id,
183
- timestamp: result.timestamp
202
+ success: true,
203
+ inserted: 0,
204
+ failed: 0,
205
+ results: []
184
206
  };
185
- }, atomic, 50);
186
- // Map batch results to SendMessageBatchResponse format
187
- return {
188
- success: batchResult.success,
189
- inserted: batchResult.processed,
190
- failed: batchResult.failed,
191
- results: batchResult.results.map(r => ({
192
- from_agent: r.data?.from_agent || '',
193
- to_agent: r.data?.to_agent || null,
194
- message_id: r.data?.message_id,
195
- timestamp: r.data?.timestamp,
196
- success: r.success,
197
- error: r.error
198
- }))
199
- };
207
+ }
208
+ if (params.messages.length > 50) {
209
+ throw new Error('Parameter "messages" must contain at most 50 items');
210
+ }
211
+ const atomic = params.atomic !== undefined ? params.atomic : true;
212
+ try {
213
+ if (atomic) {
214
+ // Atomic mode: All or nothing
215
+ const results = await actualAdapter.transaction(async (trx) => {
216
+ const processedResults = [];
217
+ for (const message of params.messages) {
218
+ try {
219
+ const result = await sendMessageInternal(message, actualAdapter, trx);
220
+ processedResults.push({
221
+ from_agent: message.from_agent,
222
+ to_agent: message.to_agent || null,
223
+ message_id: result.message_id,
224
+ timestamp: result.timestamp,
225
+ success: true,
226
+ error: undefined
227
+ });
228
+ }
229
+ catch (error) {
230
+ const errorMessage = error instanceof Error ? error.message : String(error);
231
+ throw new Error(`Batch failed at message from "${message.from_agent}": ${errorMessage}`);
232
+ }
233
+ }
234
+ return processedResults;
235
+ });
236
+ return {
237
+ success: true,
238
+ inserted: results.length,
239
+ failed: 0,
240
+ results: results
241
+ };
242
+ }
243
+ else {
244
+ // Non-atomic mode: Process each independently
245
+ const results = [];
246
+ let inserted = 0;
247
+ let failed = 0;
248
+ for (const message of params.messages) {
249
+ try {
250
+ const result = await actualAdapter.transaction(async (trx) => {
251
+ return await sendMessageInternal(message, actualAdapter, trx);
252
+ });
253
+ results.push({
254
+ from_agent: message.from_agent,
255
+ to_agent: message.to_agent || null,
256
+ message_id: result.message_id,
257
+ timestamp: result.timestamp,
258
+ success: true,
259
+ error: undefined
260
+ });
261
+ inserted++;
262
+ }
263
+ catch (error) {
264
+ const errorMessage = error instanceof Error ? error.message : String(error);
265
+ results.push({
266
+ from_agent: message.from_agent,
267
+ to_agent: message.to_agent || null,
268
+ message_id: undefined,
269
+ timestamp: undefined,
270
+ success: false,
271
+ error: errorMessage
272
+ });
273
+ failed++;
274
+ }
275
+ }
276
+ return {
277
+ success: failed === 0,
278
+ inserted: inserted,
279
+ failed: failed,
280
+ results: results
281
+ };
282
+ }
283
+ }
284
+ catch (error) {
285
+ const message = error instanceof Error ? error.message : String(error);
286
+ throw new Error(`Failed to execute batch operation: ${message}`);
287
+ }
200
288
  }
201
289
  /**
202
290
  * Help action for message tool
@@ -1 +1 @@
1
- {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
1
  /**
2
2
  * Task management tools for Kanban Task Watcher
3
3
  * Implements create, update, get, list, move, link, archive, batch_create actions
4
+ *
5
+ * CONVERTED: Using Knex.js with DatabaseAdapter (async/await)
4
6
  */
7
+ import { DatabaseAdapter } from '../adapters/index.js';
5
8
  /**
6
9
  * Create a new task
7
10
  */
@@ -16,7 +19,8 @@ export declare function createTask(params: {
16
19
  layer?: string;
17
20
  tags?: string[];
18
21
  status?: string;
19
- }): any;
22
+ watch_files?: string[];
23
+ }, adapter?: DatabaseAdapter): Promise<any>;
20
24
  /**
21
25
  * Update task metadata
22
26
  */
@@ -29,14 +33,15 @@ export declare function updateTask(params: {
29
33
  description?: string;
30
34
  acceptance_criteria?: string | any[];
31
35
  notes?: string;
32
- }): any;
36
+ watch_files?: string[];
37
+ }, adapter?: DatabaseAdapter): Promise<any>;
33
38
  /**
34
39
  * Get full task details
35
40
  */
36
41
  export declare function getTask(params: {
37
42
  task_id: number;
38
43
  include_dependencies?: boolean;
39
- }): any;
44
+ }, adapter?: DatabaseAdapter): Promise<any>;
40
45
  /**
41
46
  * List tasks (token-efficient, no descriptions)
42
47
  */
@@ -48,14 +53,14 @@ export declare function listTasks(params?: {
48
53
  limit?: number;
49
54
  offset?: number;
50
55
  include_dependency_counts?: boolean;
51
- }): any;
56
+ }, adapter?: DatabaseAdapter): Promise<any>;
52
57
  /**
53
58
  * Move task to different status
54
59
  */
55
60
  export declare function moveTask(params: {
56
61
  task_id: number;
57
62
  new_status: string;
58
- }): any;
63
+ }, adapter?: DatabaseAdapter): Promise<any>;
59
64
  /**
60
65
  * Link task to decision/constraint/file
61
66
  */
@@ -64,34 +69,34 @@ export declare function linkTask(params: {
64
69
  link_type: 'decision' | 'constraint' | 'file';
65
70
  target_id: string | number;
66
71
  link_relation?: string;
67
- }): any;
72
+ }, adapter?: DatabaseAdapter): Promise<any>;
68
73
  /**
69
74
  * Archive completed task
70
75
  */
71
76
  export declare function archiveTask(params: {
72
77
  task_id: number;
73
- }): any;
78
+ }, adapter?: DatabaseAdapter): Promise<any>;
74
79
  /**
75
80
  * Add dependency (blocking relationship) between tasks
76
81
  */
77
82
  export declare function addDependency(params: {
78
83
  blocker_task_id: number;
79
84
  blocked_task_id: number;
80
- }): any;
85
+ }, adapter?: DatabaseAdapter): Promise<any>;
81
86
  /**
82
87
  * Remove dependency between tasks
83
88
  */
84
89
  export declare function removeDependency(params: {
85
90
  blocker_task_id: number;
86
91
  blocked_task_id: number;
87
- }): any;
92
+ }, adapter?: DatabaseAdapter): Promise<any>;
88
93
  /**
89
94
  * Get dependencies for a task (bidirectional: what blocks this task, what this task blocks)
90
95
  */
91
96
  export declare function getDependencies(params: {
92
97
  task_id: number;
93
98
  include_details?: boolean;
94
- }): any;
99
+ }, adapter?: DatabaseAdapter): Promise<any>;
95
100
  /**
96
101
  * Create multiple tasks atomically
97
102
  */
@@ -105,7 +110,32 @@ export declare function batchCreateTasks(params: {
105
110
  tags?: string[];
106
111
  }>;
107
112
  atomic?: boolean;
108
- }): any;
113
+ }, adapter?: DatabaseAdapter): Promise<any>;
114
+ /**
115
+ * Watch/unwatch files for a task (v3.4.1)
116
+ * Replaces the need to use task.link(file) for file watching
117
+ */
118
+ export declare function watchFiles(params: {
119
+ task_id: number;
120
+ action: 'watch' | 'unwatch' | 'list';
121
+ file_paths?: string[];
122
+ }, adapter?: DatabaseAdapter): Promise<any>;
123
+ /**
124
+ * Get pruned files for a task (v3.5.0 Auto-Pruning)
125
+ * Returns audit trail of files that were auto-pruned as non-existent
126
+ */
127
+ export declare function getPrunedFiles(params: {
128
+ task_id: number;
129
+ limit?: number;
130
+ }, adapter?: DatabaseAdapter): Promise<any>;
131
+ /**
132
+ * Link a pruned file to a decision (v3.5.0 Auto-Pruning)
133
+ * Attaches WHY reasoning to pruned files for project archaeology
134
+ */
135
+ export declare function linkPrunedFile(params: {
136
+ pruned_file_id: number;
137
+ decision_key: string;
138
+ }, adapter?: DatabaseAdapter): Promise<any>;
109
139
  /**
110
140
  * Return comprehensive help documentation
111
141
  */
@@ -113,7 +143,7 @@ export declare function taskHelp(): any;
113
143
  /**
114
144
  * Query file watcher status and monitored files/tasks
115
145
  */
116
- export declare function watcherStatus(args: any): any;
146
+ export declare function watcherStatus(args: any, adapter?: DatabaseAdapter): Promise<any>;
117
147
  /**
118
148
  * Get comprehensive examples for task tool
119
149
  * @returns Examples documentation object
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/tools/tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/tools/tasks.ts"],"names":[],"mappings":"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"}