sqlew 4.3.1 → 5.0.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 (841) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/LICENSE +1 -1
  3. package/NOTICE +2 -2
  4. package/README.md +112 -42
  5. package/assets/claude-md-snippets/plan-mode-integration.md +54 -0
  6. package/assets/claude-md-snippets/queue-monitoring.md +84 -0
  7. package/dist/backend/backend-factory.d.ts +67 -0
  8. package/dist/backend/backend-factory.d.ts.map +1 -0
  9. package/dist/backend/backend-factory.js +171 -0
  10. package/dist/backend/backend-factory.js.map +1 -0
  11. package/dist/backend/index.d.ts +12 -0
  12. package/dist/backend/index.d.ts.map +1 -0
  13. package/dist/backend/index.js +13 -0
  14. package/dist/backend/index.js.map +1 -0
  15. package/dist/backend/inference.d.ts +38 -0
  16. package/dist/backend/inference.d.ts.map +1 -0
  17. package/dist/backend/inference.js +76 -0
  18. package/dist/backend/inference.js.map +1 -0
  19. package/dist/backend/local-backend.d.ts +40 -0
  20. package/dist/backend/local-backend.d.ts.map +1 -0
  21. package/dist/backend/local-backend.js +410 -0
  22. package/dist/backend/local-backend.js.map +1 -0
  23. package/dist/backend/transforming-backend.d.ts +47 -0
  24. package/dist/backend/transforming-backend.d.ts.map +1 -0
  25. package/dist/backend/transforming-backend.js +80 -0
  26. package/dist/backend/transforming-backend.js.map +1 -0
  27. package/dist/backend/types.d.ts +58 -0
  28. package/dist/backend/types.d.ts.map +1 -0
  29. package/dist/backend/types.js +7 -0
  30. package/dist/backend/types.js.map +1 -0
  31. package/dist/cli/db-dump.js +45 -45
  32. package/dist/cli/db-dump.js.map +1 -1
  33. package/dist/cli/db-export.js +30 -30
  34. package/dist/cli/db-export.js.map +1 -1
  35. package/dist/cli/db-import.d.ts.map +1 -1
  36. package/dist/cli/db-import.js +32 -33
  37. package/dist/cli/db-import.js.map +1 -1
  38. package/dist/cli/hooks/check-completion.d.ts +1 -0
  39. package/dist/cli/hooks/check-completion.d.ts.map +1 -1
  40. package/dist/cli/hooks/check-completion.js +15 -26
  41. package/dist/cli/hooks/check-completion.js.map +1 -1
  42. package/dist/cli/hooks/mark-done.d.ts +1 -0
  43. package/dist/cli/hooks/mark-done.d.ts.map +1 -1
  44. package/dist/cli/hooks/mark-done.js +12 -17
  45. package/dist/cli/hooks/mark-done.js.map +1 -1
  46. package/dist/cli/hooks/on-enter-plan.js +2 -2
  47. package/dist/cli/hooks/on-enter-plan.js.map +1 -1
  48. package/dist/cli/hooks/on-session-start.d.ts +23 -0
  49. package/dist/cli/hooks/on-session-start.d.ts.map +1 -0
  50. package/dist/cli/hooks/on-session-start.js +70 -0
  51. package/dist/cli/hooks/on-session-start.js.map +1 -0
  52. package/dist/cli/hooks/on-stop.js +5 -5
  53. package/dist/cli/hooks/on-stop.js.map +1 -1
  54. package/dist/cli/hooks/{plan-toml-parser.d.ts → plan-parser.d.ts} +1 -1
  55. package/dist/cli/hooks/plan-parser.d.ts.map +1 -0
  56. package/dist/cli/hooks/{plan-toml-parser.js → plan-parser.js} +1 -1
  57. package/dist/cli/hooks/plan-parser.js.map +1 -0
  58. package/dist/cli/hooks/plan-pattern-extractor.d.ts.map +1 -1
  59. package/dist/cli/hooks/plan-pattern-extractor.js +6 -3
  60. package/dist/cli/hooks/plan-pattern-extractor.js.map +1 -1
  61. package/dist/cli/hooks/plan-processor.js +1 -1
  62. package/dist/cli/hooks/plan-processor.js.map +1 -1
  63. package/dist/cli/hooks/stdin-parser.d.ts +4 -0
  64. package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
  65. package/dist/cli/hooks/stdin-parser.js.map +1 -1
  66. package/dist/cli/hooks/suggest.js +2 -2
  67. package/dist/cli/hooks/suggest.js.map +1 -1
  68. package/dist/cli/hooks/track-plan.d.ts.map +1 -1
  69. package/dist/cli/hooks/track-plan.js +24 -18
  70. package/dist/cli/hooks/track-plan.js.map +1 -1
  71. package/dist/cli.d.ts.map +1 -1
  72. package/dist/cli.js +72 -72
  73. package/dist/cli.js.map +1 -1
  74. package/dist/config/cloud-config-loader.d.ts +107 -0
  75. package/dist/config/cloud-config-loader.d.ts.map +1 -0
  76. package/dist/config/cloud-config-loader.js +273 -0
  77. package/dist/config/cloud-config-loader.js.map +1 -0
  78. package/dist/config/global-config.d.ts +10 -10
  79. package/dist/config/global-config.d.ts.map +1 -1
  80. package/dist/config/global-config.js +12 -12
  81. package/dist/config/global-config.js.map +1 -1
  82. package/dist/config/loader.d.ts.map +1 -1
  83. package/dist/config/loader.js +5 -1
  84. package/dist/config/loader.js.map +1 -1
  85. package/dist/config/minimal-generator.d.ts.map +1 -1
  86. package/dist/config/minimal-generator.js +22 -72
  87. package/dist/config/minimal-generator.js.map +1 -1
  88. package/dist/config/types.d.ts +59 -1
  89. package/dist/config/types.d.ts.map +1 -1
  90. package/dist/config/types.js +14 -0
  91. package/dist/config/types.js.map +1 -1
  92. package/dist/constants.d.ts +1 -29
  93. package/dist/constants.d.ts.map +1 -1
  94. package/dist/constants.js +1 -38
  95. package/dist/constants.js.map +1 -1
  96. package/dist/database/initialization/cleanup.d.ts.map +1 -1
  97. package/dist/database/initialization/cleanup.js +0 -13
  98. package/dist/database/initialization/cleanup.js.map +1 -1
  99. package/dist/database/initialization/init.d.ts.map +1 -1
  100. package/dist/database/initialization/init.js +0 -9
  101. package/dist/database/initialization/init.js.map +1 -1
  102. package/dist/database/initialization/schema-version.d.ts +4 -4
  103. package/dist/database/initialization/schema-version.js +9 -9
  104. package/dist/database/initialization/schema-version.js.map +1 -1
  105. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts +36 -0
  106. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts.map +1 -0
  107. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js +135 -0
  108. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js.map +1 -0
  109. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts +20 -0
  110. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts.map +1 -0
  111. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js +168 -0
  112. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js.map +1 -0
  113. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts +23 -0
  114. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts.map +1 -0
  115. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js +570 -0
  116. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js.map +1 -0
  117. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts +29 -0
  118. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts.map +1 -0
  119. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js +80 -0
  120. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js.map +1 -0
  121. package/dist/database/operations/inserts.js +11 -11
  122. package/dist/database/operations/inserts.js.map +1 -1
  123. package/dist/database/operations/queries.js +9 -9
  124. package/dist/database/operations/queries.js.map +1 -1
  125. package/dist/formatters/adr-formatter.d.ts +22 -0
  126. package/dist/formatters/adr-formatter.d.ts.map +1 -0
  127. package/dist/formatters/adr-formatter.js +127 -0
  128. package/dist/formatters/adr-formatter.js.map +1 -0
  129. package/dist/formatters/confluence-formatter.d.ts +26 -0
  130. package/dist/formatters/confluence-formatter.d.ts.map +1 -0
  131. package/dist/formatters/confluence-formatter.js +129 -0
  132. package/dist/formatters/confluence-formatter.js.map +1 -0
  133. package/dist/formatters/index.d.ts +34 -0
  134. package/dist/formatters/index.d.ts.map +1 -0
  135. package/dist/formatters/index.js +57 -0
  136. package/dist/formatters/index.js.map +1 -0
  137. package/dist/formatters/markdown-formatter.d.ts +16 -0
  138. package/dist/formatters/markdown-formatter.d.ts.map +1 -0
  139. package/dist/formatters/markdown-formatter.js +110 -0
  140. package/dist/formatters/markdown-formatter.js.map +1 -0
  141. package/dist/formatters/notion-formatter.d.ts +29 -0
  142. package/dist/formatters/notion-formatter.d.ts.map +1 -0
  143. package/dist/formatters/notion-formatter.js +177 -0
  144. package/dist/formatters/notion-formatter.js.map +1 -0
  145. package/dist/formatters/types.d.ts +31 -0
  146. package/dist/formatters/types.d.ts.map +1 -0
  147. package/dist/formatters/types.js +6 -0
  148. package/dist/formatters/types.js.map +1 -0
  149. package/dist/help-data/_schema.toml +21 -0
  150. package/dist/help-data/constraint.toml +259 -0
  151. package/dist/help-data/decision.toml +833 -0
  152. package/dist/help-data/example.toml +177 -0
  153. package/dist/help-data/help.toml +246 -0
  154. package/dist/help-data/queue.toml +134 -0
  155. package/dist/help-data/suggest.toml +219 -0
  156. package/dist/help-data/use-cases/_categories.toml +22 -0
  157. package/dist/help-data/use-cases/constraint-basic.toml +34 -0
  158. package/dist/help-data/use-cases/cross-tool-workflow.toml +50 -0
  159. package/dist/help-data/use-cases/decision-intelligence-duplicate.toml +35 -0
  160. package/dist/help-data/use-cases/decision-intelligence-related.toml +35 -0
  161. package/dist/help-data/use-cases/decision-tracking-basic.toml +42 -0
  162. package/dist/help-data/use-cases/decision-tracking-versions.toml +42 -0
  163. package/dist/help-data/use_case.toml +147 -0
  164. package/dist/help-loader.d.ts +194 -0
  165. package/dist/help-loader.d.ts.map +1 -0
  166. package/dist/help-loader.js +419 -0
  167. package/dist/help-loader.js.map +1 -0
  168. package/dist/index.js +15 -10
  169. package/dist/index.js.map +1 -1
  170. package/dist/init-rules.d.ts +42 -0
  171. package/dist/init-rules.d.ts.map +1 -0
  172. package/dist/init-rules.js +217 -0
  173. package/dist/init-rules.js.map +1 -0
  174. package/dist/schema.d.ts +4 -6
  175. package/dist/schema.d.ts.map +1 -1
  176. package/dist/schema.js +28 -45
  177. package/dist/schema.js.map +1 -1
  178. package/dist/server/setup.d.ts +0 -10
  179. package/dist/server/setup.d.ts.map +1 -1
  180. package/dist/server/setup.js +97 -89
  181. package/dist/server/setup.js.map +1 -1
  182. package/dist/server/shutdown.d.ts +1 -1
  183. package/dist/server/shutdown.d.ts.map +1 -1
  184. package/dist/server/shutdown.js +1 -16
  185. package/dist/server/shutdown.js.map +1 -1
  186. package/dist/server/tool-handlers.d.ts +15 -0
  187. package/dist/server/tool-handlers.d.ts.map +1 -1
  188. package/dist/server/tool-handlers.js +47 -462
  189. package/dist/server/tool-handlers.js.map +1 -1
  190. package/dist/server/tool-registry.d.ts.map +1 -1
  191. package/dist/server/tool-registry.js +50 -62
  192. package/dist/server/tool-registry.js.map +1 -1
  193. package/dist/tests/backend/backend-factory.test.d.ts +7 -0
  194. package/dist/tests/backend/backend-factory.test.d.ts.map +1 -0
  195. package/dist/tests/backend/backend-factory.test.js +157 -0
  196. package/dist/tests/backend/backend-factory.test.js.map +1 -0
  197. package/dist/tests/backend/inference.test.d.ts +7 -0
  198. package/dist/tests/backend/inference.test.d.ts.map +1 -0
  199. package/dist/tests/backend/inference.test.js +142 -0
  200. package/dist/tests/backend/inference.test.js.map +1 -0
  201. package/dist/tests/database/multi-project/multi-project.test.js +9 -70
  202. package/dist/tests/database/multi-project/multi-project.test.js.map +1 -1
  203. package/dist/tests/database/sql-dump/table-ordering.test.js +14 -14
  204. package/dist/tests/database/sql-dump/table-ordering.test.js.map +1 -1
  205. package/dist/tests/docker/cross-database.test.js +32 -32
  206. package/dist/tests/docker/cross-database.test.js.map +1 -1
  207. package/dist/tests/docker/dump-import.test.js +55 -55
  208. package/dist/tests/docker/dump-import.test.js.map +1 -1
  209. package/dist/tests/docker/fk-constraints.test.js +3 -3
  210. package/dist/tests/docker/indexes.test.js +34 -34
  211. package/dist/tests/docker/integration.test.js +33 -33
  212. package/dist/tests/docker/multi-project-migration.test.js +47 -47
  213. package/dist/tests/docker/multi-project-migration.test.js.map +1 -1
  214. package/dist/tests/docker/native/constraint-operations.test.js +49 -49
  215. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  216. package/dist/tests/docker/native/db-init.d.ts +3 -1
  217. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  218. package/dist/tests/docker/native/db-init.js +14 -12
  219. package/dist/tests/docker/native/db-init.js.map +1 -1
  220. package/dist/tests/docker/native/decision-operations.test.js +91 -91
  221. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  222. package/dist/tests/docker/native/help-system.test.d.ts +2 -2
  223. package/dist/tests/docker/native/help-system.test.js +113 -138
  224. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  225. package/dist/tests/docker/native/suggest-tool.test.d.ts +2 -2
  226. package/dist/tests/docker/native/suggest-tool.test.js +35 -35
  227. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  228. package/dist/tests/docker/native/test-harness.d.ts +6 -12
  229. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  230. package/dist/tests/docker/native/test-harness.js +74 -156
  231. package/dist/tests/docker/native/test-harness.js.map +1 -1
  232. package/dist/tests/docker/schema-migration.test.js +6 -6
  233. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts +3 -7
  234. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts.map +1 -1
  235. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +7 -318
  236. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  237. package/dist/tests/feature/help/help-system.test.d.ts +6 -6
  238. package/dist/tests/feature/help/help-system.test.js +166 -124
  239. package/dist/tests/feature/help/help-system.test.js.map +1 -1
  240. package/dist/tests/integration/auto-trigger-suggestions.test.js +22 -22
  241. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  242. package/dist/tests/integration/decision-intelligence-e2e.test.js +23 -22
  243. package/dist/tests/integration/decision-intelligence-e2e.test.js.map +1 -1
  244. package/dist/tests/integration/e2e-workflow1-debug.test.js +3 -3
  245. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +1 -1
  246. package/dist/tests/integration/hybrid-similarity-detection.test.js +25 -25
  247. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  248. package/dist/tests/integration/suggest-simple.test.js +18 -0
  249. package/dist/tests/integration/suggest-simple.test.js.map +1 -1
  250. package/dist/tests/migrations/test-all-versions.js +212 -212
  251. package/dist/tests/migrations/test-all-versions.js.map +1 -1
  252. package/dist/tests/migrations/v4/v4-fresh-install.test.js +29 -29
  253. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +1 -1
  254. package/dist/tests/migrations/v4/v4-migrate-data.test.js +20 -20
  255. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +1 -1
  256. package/dist/tests/test-v4-native-rdbms.js +20 -20
  257. package/dist/tests/test-v4-native-rdbms.js.map +1 -1
  258. package/dist/tests/unit/config/cloud-config-loader.test.d.ts +2 -0
  259. package/dist/tests/unit/config/cloud-config-loader.test.d.ts.map +1 -0
  260. package/dist/tests/unit/config/cloud-config-loader.test.js +103 -0
  261. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -0
  262. package/dist/tests/unit/config/{plan-toml-cache.test.d.ts → plan-cache.test.d.ts} +1 -1
  263. package/dist/tests/unit/config/plan-cache.test.d.ts.map +1 -0
  264. package/dist/tests/unit/config/{plan-toml-cache.test.js → plan-cache.test.js} +32 -32
  265. package/dist/tests/unit/config/plan-cache.test.js.map +1 -0
  266. package/dist/tests/unit/hooks/{plan-toml-parser.test.d.ts → plan-parser.test.d.ts} +1 -1
  267. package/dist/tests/unit/hooks/plan-parser.test.d.ts.map +1 -0
  268. package/dist/tests/unit/hooks/{plan-toml-parser.test.js → plan-parser.test.js} +179 -179
  269. package/dist/tests/unit/hooks/plan-parser.test.js.map +1 -0
  270. package/dist/tests/unit/server/tool-handlers.test.d.ts +7 -0
  271. package/dist/tests/unit/server/tool-handlers.test.d.ts.map +1 -0
  272. package/dist/tests/unit/server/tool-handlers.test.js +76 -0
  273. package/dist/tests/unit/server/tool-handlers.test.js.map +1 -0
  274. package/dist/tests/unit/utils/config-loader.test.js +17 -17
  275. package/dist/tests/unit/utils/connection-hash.test.d.ts +2 -0
  276. package/dist/tests/unit/utils/connection-hash.test.d.ts.map +1 -0
  277. package/dist/tests/unit/utils/connection-hash.test.js +57 -0
  278. package/dist/tests/unit/utils/connection-hash.test.js.map +1 -0
  279. package/dist/tests/unit/utils/environment-detector.test.d.ts +2 -0
  280. package/dist/tests/unit/utils/environment-detector.test.d.ts.map +1 -0
  281. package/dist/tests/unit/utils/environment-detector.test.js +43 -0
  282. package/dist/tests/unit/utils/environment-detector.test.js.map +1 -0
  283. package/dist/tests/unit/utils/path-utils.test.d.ts +2 -0
  284. package/dist/tests/unit/utils/path-utils.test.d.ts.map +1 -0
  285. package/dist/tests/unit/utils/path-utils.test.js +72 -0
  286. package/dist/tests/unit/utils/path-utils.test.js.map +1 -0
  287. package/dist/tests/unit/utils/project-detector.test.js +14 -13
  288. package/dist/tests/unit/utils/project-detector.test.js.map +1 -1
  289. package/dist/tests/unit/validation/parameter-validation.test.d.ts +2 -1
  290. package/dist/tests/unit/validation/parameter-validation.test.d.ts.map +1 -1
  291. package/dist/tests/unit/validation/parameter-validation.test.js +5 -133
  292. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  293. package/dist/tests/unit/validation/policy-validation.test.js +15 -15
  294. package/dist/tests/unit/validation/policy-validation.test.js.map +1 -1
  295. package/dist/tests/utils/db-schema.js +48 -48
  296. package/dist/tests/utils/db-seeding.js +11 -11
  297. package/dist/tests/utils/db-seeding.js.map +1 -1
  298. package/dist/tests/utils/json-export-import.test.d.ts +6 -0
  299. package/dist/tests/utils/json-export-import.test.d.ts.map +1 -0
  300. package/dist/tests/utils/json-export-import.test.js +474 -0
  301. package/dist/tests/utils/json-export-import.test.js.map +1 -0
  302. package/dist/tests/utils/test-helpers.js +59 -59
  303. package/dist/tests/utils/test-helpers.js.map +1 -1
  304. package/dist/tools/constraints/actions/activate.d.ts +2 -2
  305. package/dist/tools/constraints/actions/activate.d.ts.map +1 -1
  306. package/dist/tools/constraints/actions/activate.js +12 -12
  307. package/dist/tools/constraints/actions/activate.js.map +1 -1
  308. package/dist/tools/constraints/actions/add.js +3 -3
  309. package/dist/tools/constraints/actions/add.js.map +1 -1
  310. package/dist/tools/constraints/actions/deactivate.js +6 -6
  311. package/dist/tools/constraints/actions/deactivate.js.map +1 -1
  312. package/dist/tools/constraints/actions/get.d.ts +2 -2
  313. package/dist/tools/constraints/actions/get.js +9 -9
  314. package/dist/tools/constraints/actions/get.js.map +1 -1
  315. package/dist/tools/constraints/actions/suggest-pending.js +2 -2
  316. package/dist/tools/constraints/actions/suggest-pending.js.map +1 -1
  317. package/dist/tools/constraints/index.d.ts +1 -1
  318. package/dist/tools/constraints/index.d.ts.map +1 -1
  319. package/dist/tools/constraints/index.js +1 -1
  320. package/dist/tools/constraints/index.js.map +1 -1
  321. package/dist/tools/context/actions/create-policy.js +3 -3
  322. package/dist/tools/context/actions/create-policy.js.map +1 -1
  323. package/dist/tools/context/actions/create-template.js +2 -2
  324. package/dist/tools/context/actions/create-template.js.map +1 -1
  325. package/dist/tools/context/actions/export.d.ts +35 -0
  326. package/dist/tools/context/actions/export.d.ts.map +1 -0
  327. package/dist/tools/context/actions/export.js +93 -0
  328. package/dist/tools/context/actions/export.js.map +1 -0
  329. package/dist/tools/context/actions/hard-delete.js +11 -11
  330. package/dist/tools/context/actions/hard-delete.js.map +1 -1
  331. package/dist/tools/context/actions/has-updates.d.ts +1 -1
  332. package/dist/tools/context/actions/has-updates.d.ts.map +1 -1
  333. package/dist/tools/context/actions/has-updates.js +5 -13
  334. package/dist/tools/context/actions/has-updates.js.map +1 -1
  335. package/dist/tools/context/actions/list-policies.js +1 -1
  336. package/dist/tools/context/actions/list-policies.js.map +1 -1
  337. package/dist/tools/context/actions/list-templates.js +2 -2
  338. package/dist/tools/context/actions/list-templates.js.map +1 -1
  339. package/dist/tools/context/actions/list.js +1 -1
  340. package/dist/tools/context/actions/list.js.map +1 -1
  341. package/dist/tools/context/actions/search-layer.js +8 -8
  342. package/dist/tools/context/actions/search-layer.js.map +1 -1
  343. package/dist/tools/context/actions/set-from-policy.js +1 -1
  344. package/dist/tools/context/actions/set-from-policy.js.map +1 -1
  345. package/dist/tools/context/actions/set-from-template.js +2 -2
  346. package/dist/tools/context/actions/set-from-template.js.map +1 -1
  347. package/dist/tools/context/actions/versions.js +3 -3
  348. package/dist/tools/context/actions/versions.js.map +1 -1
  349. package/dist/tools/context/index.d.ts +1 -0
  350. package/dist/tools/context/index.d.ts.map +1 -1
  351. package/dist/tools/context/index.js +2 -0
  352. package/dist/tools/context/index.js.map +1 -1
  353. package/dist/tools/context/internal/queries.d.ts.map +1 -1
  354. package/dist/tools/context/internal/queries.js +54 -43
  355. package/dist/tools/context/internal/queries.js.map +1 -1
  356. package/dist/tools/context/types.d.ts +1 -1
  357. package/dist/tools/context/types.d.ts.map +1 -1
  358. package/dist/tools/example/actions/get.d.ts +8 -3
  359. package/dist/tools/example/actions/get.d.ts.map +1 -1
  360. package/dist/tools/example/actions/get.js +29 -30
  361. package/dist/tools/example/actions/get.js.map +1 -1
  362. package/dist/tools/example/actions/list-all.d.ts +8 -2
  363. package/dist/tools/example/actions/list-all.d.ts.map +1 -1
  364. package/dist/tools/example/actions/list-all.js +37 -29
  365. package/dist/tools/example/actions/list-all.js.map +1 -1
  366. package/dist/tools/example/actions/search.d.ts +8 -3
  367. package/dist/tools/example/actions/search.d.ts.map +1 -1
  368. package/dist/tools/example/actions/search.js +29 -43
  369. package/dist/tools/example/actions/search.js.map +1 -1
  370. package/dist/tools/help/actions/batch-guide.js +5 -5
  371. package/dist/tools/help/actions/batch-guide.js.map +1 -1
  372. package/dist/tools/help/actions/query-action.d.ts +7 -3
  373. package/dist/tools/help/actions/query-action.d.ts.map +1 -1
  374. package/dist/tools/help/actions/query-action.js +35 -6
  375. package/dist/tools/help/actions/query-action.js.map +1 -1
  376. package/dist/tools/help/actions/query-params.d.ts +5 -3
  377. package/dist/tools/help/actions/query-params.d.ts.map +1 -1
  378. package/dist/tools/help/actions/query-params.js +28 -6
  379. package/dist/tools/help/actions/query-params.js.map +1 -1
  380. package/dist/tools/help/actions/query-tool.d.ts +5 -3
  381. package/dist/tools/help/actions/query-tool.d.ts.map +1 -1
  382. package/dist/tools/help/actions/query-tool.js +23 -6
  383. package/dist/tools/help/actions/query-tool.js.map +1 -1
  384. package/dist/tools/help/actions/workflow-hints.d.ts +5 -3
  385. package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -1
  386. package/dist/tools/help/actions/workflow-hints.js +21 -6
  387. package/dist/tools/help/actions/workflow-hints.js.map +1 -1
  388. package/dist/tools/queue/actions/clear.d.ts +19 -0
  389. package/dist/tools/queue/actions/clear.d.ts.map +1 -0
  390. package/dist/tools/queue/actions/clear.js +79 -0
  391. package/dist/tools/queue/actions/clear.js.map +1 -0
  392. package/dist/tools/queue/actions/list.d.ts +16 -0
  393. package/dist/tools/queue/actions/list.d.ts.map +1 -0
  394. package/dist/tools/queue/actions/list.js +95 -0
  395. package/dist/tools/queue/actions/list.js.map +1 -0
  396. package/dist/tools/queue/actions/remove.d.ts +19 -0
  397. package/dist/tools/queue/actions/remove.d.ts.map +1 -0
  398. package/dist/tools/queue/actions/remove.js +81 -0
  399. package/dist/tools/queue/actions/remove.js.map +1 -0
  400. package/dist/tools/queue/index.d.ts +13 -0
  401. package/dist/tools/queue/index.d.ts.map +1 -0
  402. package/dist/tools/queue/index.js +13 -0
  403. package/dist/tools/queue/index.js.map +1 -0
  404. package/dist/tools/queue/types.d.ts +87 -0
  405. package/dist/tools/queue/types.d.ts.map +1 -0
  406. package/dist/tools/queue/types.js +9 -0
  407. package/dist/tools/queue/types.js.map +1 -0
  408. package/dist/tools/suggest/actions/by-context.d.ts.map +1 -1
  409. package/dist/tools/suggest/actions/by-context.js +3 -1
  410. package/dist/tools/suggest/actions/by-context.js.map +1 -1
  411. package/dist/tools/suggest/actions/by-key.d.ts.map +1 -1
  412. package/dist/tools/suggest/actions/by-key.js +3 -1
  413. package/dist/tools/suggest/actions/by-key.js.map +1 -1
  414. package/dist/tools/suggest/actions/by-tags.d.ts +2 -2
  415. package/dist/tools/suggest/actions/by-tags.js +3 -3
  416. package/dist/tools/suggest/actions/by-tags.js.map +1 -1
  417. package/dist/tools/suggest/internal/constraint-queries.d.ts +4 -4
  418. package/dist/tools/suggest/internal/constraint-queries.js +14 -14
  419. package/dist/tools/suggest/internal/constraint-queries.js.map +1 -1
  420. package/dist/tools/suggest/internal/queries.d.ts +4 -4
  421. package/dist/tools/suggest/internal/queries.js +25 -25
  422. package/dist/tools/suggest/internal/queries.js.map +1 -1
  423. package/dist/tools/use_case/actions/get.d.ts +5 -3
  424. package/dist/tools/use_case/actions/get.d.ts.map +1 -1
  425. package/dist/tools/use_case/actions/get.js +20 -6
  426. package/dist/tools/use_case/actions/get.js.map +1 -1
  427. package/dist/tools/use_case/actions/list-all.d.ts +5 -3
  428. package/dist/tools/use_case/actions/list-all.d.ts.map +1 -1
  429. package/dist/tools/use_case/actions/list-all.js +36 -6
  430. package/dist/tools/use_case/actions/list-all.js.map +1 -1
  431. package/dist/tools/use_case/actions/search.d.ts +6 -3
  432. package/dist/tools/use_case/actions/search.d.ts.map +1 -1
  433. package/dist/tools/use_case/actions/search.js +37 -67
  434. package/dist/tools/use_case/actions/search.js.map +1 -1
  435. package/dist/tools/use_case/help/example.js +17 -17
  436. package/dist/tools/use_case/help/example.js.map +1 -1
  437. package/dist/types.d.ts +82 -153
  438. package/dist/types.d.ts.map +1 -1
  439. package/dist/types.js +0 -10
  440. package/dist/types.js.map +1 -1
  441. package/dist/utils/action-specs/constraint-specs.js +6 -6
  442. package/dist/utils/action-specs/constraint-specs.js.map +1 -1
  443. package/dist/utils/action-specs/index.d.ts +0 -2
  444. package/dist/utils/action-specs/index.d.ts.map +1 -1
  445. package/dist/utils/action-specs/index.js +0 -6
  446. package/dist/utils/action-specs/index.js.map +1 -1
  447. package/dist/utils/batch-validation.d.ts +1 -1
  448. package/dist/utils/batch-validation.js +3 -3
  449. package/dist/utils/batch-validation.js.map +1 -1
  450. package/dist/utils/case-insensitive-validator.d.ts +2 -2
  451. package/dist/utils/case-insensitive-validator.js +2 -2
  452. package/dist/utils/connection-hash.d.ts +37 -0
  453. package/dist/utils/connection-hash.d.ts.map +1 -0
  454. package/dist/utils/connection-hash.js +55 -0
  455. package/dist/utils/connection-hash.js.map +1 -0
  456. package/dist/utils/db-aggregations.js +16 -16
  457. package/dist/utils/db-aggregations.js.map +1 -1
  458. package/dist/utils/enum-converter.d.ts +0 -21
  459. package/dist/utils/enum-converter.d.ts.map +1 -1
  460. package/dist/utils/enum-converter.js +1 -23
  461. package/dist/utils/enum-converter.js.map +1 -1
  462. package/dist/utils/environment-detector.d.ts +30 -0
  463. package/dist/utils/environment-detector.d.ts.map +1 -0
  464. package/dist/utils/environment-detector.js +86 -0
  465. package/dist/utils/environment-detector.js.map +1 -0
  466. package/dist/utils/example-filter.d.ts +34 -0
  467. package/dist/utils/example-filter.d.ts.map +1 -0
  468. package/dist/utils/example-filter.js +45 -0
  469. package/dist/utils/example-filter.js.map +1 -0
  470. package/dist/utils/exporter/export.d.ts +2 -16
  471. package/dist/utils/exporter/export.d.ts.map +1 -1
  472. package/dist/utils/exporter/export.js +49 -130
  473. package/dist/utils/exporter/export.js.map +1 -1
  474. package/dist/utils/hook-queue.d.ts +60 -0
  475. package/dist/utils/hook-queue.d.ts.map +1 -1
  476. package/dist/utils/hook-queue.js +114 -11
  477. package/dist/utils/hook-queue.js.map +1 -1
  478. package/dist/utils/importer/import.d.ts.map +1 -1
  479. package/dist/utils/importer/import.js +33 -188
  480. package/dist/utils/importer/import.js.map +1 -1
  481. package/dist/utils/importer/master-tables.d.ts +2 -1
  482. package/dist/utils/importer/master-tables.d.ts.map +1 -1
  483. package/dist/utils/importer/master-tables.js +35 -81
  484. package/dist/utils/importer/master-tables.js.map +1 -1
  485. package/dist/utils/param-normalizer.d.ts +0 -1
  486. package/dist/utils/param-normalizer.d.ts.map +1 -1
  487. package/dist/utils/param-normalizer.js +1 -3
  488. package/dist/utils/param-normalizer.js.map +1 -1
  489. package/dist/utils/path-utils.d.ts +46 -0
  490. package/dist/utils/path-utils.d.ts.map +1 -0
  491. package/dist/utils/path-utils.js +74 -0
  492. package/dist/utils/path-utils.js.map +1 -0
  493. package/dist/utils/policy-validator.js +1 -1
  494. package/dist/utils/policy-validator.js.map +1 -1
  495. package/dist/utils/project-context.d.ts +23 -0
  496. package/dist/utils/project-context.d.ts.map +1 -1
  497. package/dist/utils/project-context.js +45 -3
  498. package/dist/utils/project-context.js.map +1 -1
  499. package/dist/utils/project-root.d.ts +2 -2
  500. package/dist/utils/project-root.js +2 -2
  501. package/dist/utils/sql-dump/core/index-export.js +7 -7
  502. package/dist/utils/sql-dump/schema/indexes.js +24 -24
  503. package/dist/utils/sql-dump/schema/tables.js +44 -44
  504. package/dist/utils/token-logging.js +6 -6
  505. package/dist/utils/token-logging.js.map +1 -1
  506. package/dist/utils/validators.js +1 -1
  507. package/dist/utils/validators.js.map +1 -1
  508. package/dist/utils/view-queries.d.ts +0 -8
  509. package/dist/utils/view-queries.d.ts.map +1 -1
  510. package/dist/utils/view-queries.js +29 -84
  511. package/dist/utils/view-queries.js.map +1 -1
  512. package/dist/watcher/index.d.ts +1 -4
  513. package/dist/watcher/index.d.ts.map +1 -1
  514. package/dist/watcher/index.js +1 -3
  515. package/dist/watcher/index.js.map +1 -1
  516. package/dist/watcher/queue-watcher.d.ts +10 -3
  517. package/dist/watcher/queue-watcher.d.ts.map +1 -1
  518. package/dist/watcher/queue-watcher.js +24 -21
  519. package/dist/watcher/queue-watcher.js.map +1 -1
  520. package/docs/CONFIGURATION.md +14 -14
  521. package/docs/DATABASE_AUTH.md +1 -1
  522. package/docs/HOOKS_GUIDE.md +30 -50
  523. package/docs/HOW_TO_UNINSTALL.md +199 -0
  524. package/docs/MIGRATION_CLEANUP_GUIDE.md +212 -0
  525. package/docs/MIGRATION_TO_SAAS.md +176 -0
  526. package/docs/SLASH_COMMANDS.md +1 -1
  527. package/docs/cli/DATABASE_MIGRATION.md +13 -13
  528. package/docs/cli/DATA_EXPORT_IMPORT.md +71 -69
  529. package/package.json +10 -8
  530. package/saas-connector/LICENSE +190 -0
  531. package/saas-connector/README.md +122 -0
  532. package/saas-connector/dist/auth/auth-manager.d.ts +6 -0
  533. package/saas-connector/dist/auth/auth-manager.d.ts.map +1 -0
  534. package/saas-connector/dist/auth/auth-manager.js +39 -0
  535. package/saas-connector/dist/auth/auth-manager.js.map +7 -0
  536. package/saas-connector/dist/backend/saas-backend.d.ts +20 -0
  537. package/saas-connector/dist/backend/saas-backend.d.ts.map +1 -0
  538. package/saas-connector/dist/backend/saas-backend.js +104 -0
  539. package/saas-connector/dist/backend/saas-backend.js.map +7 -0
  540. package/saas-connector/dist/client/http-client.d.ts +33 -0
  541. package/saas-connector/dist/client/http-client.d.ts.map +1 -0
  542. package/saas-connector/dist/client/http-client.js +226 -0
  543. package/saas-connector/dist/client/http-client.js.map +7 -0
  544. package/saas-connector/dist/client/types.d.ts +62 -0
  545. package/saas-connector/dist/client/types.d.ts.map +1 -0
  546. package/saas-connector/dist/client/types.js +17 -0
  547. package/saas-connector/dist/client/types.js.map +7 -0
  548. package/saas-connector/dist/config/constants.d.ts +14 -0
  549. package/saas-connector/dist/config/constants.d.ts.map +1 -0
  550. package/saas-connector/dist/config/constants.js +68 -0
  551. package/saas-connector/dist/config/constants.js.map +7 -0
  552. package/saas-connector/dist/errors/api-error.d.ts +26 -0
  553. package/saas-connector/dist/errors/api-error.d.ts.map +1 -0
  554. package/saas-connector/dist/errors/api-error.js +62 -0
  555. package/saas-connector/dist/errors/api-error.js.map +7 -0
  556. package/saas-connector/dist/index.d.ts +18 -0
  557. package/saas-connector/dist/index.d.ts.map +1 -0
  558. package/saas-connector/dist/index.js +51 -0
  559. package/saas-connector/dist/index.js.map +7 -0
  560. package/saas-connector/package-lock.json +518 -0
  561. package/saas-connector/package.json +34 -0
  562. package/scripts/copy-help-data.js +19 -0
  563. package/assets/config.example.toml +0 -120
  564. package/assets/kanban-style.png +0 -0
  565. package/assets/kanban-visualizer.png +0 -0
  566. package/assets/sample-agents/README.md +0 -36
  567. package/assets/sample-agents/sqlew-architect.md +0 -321
  568. package/assets/sample-agents/sqlew-researcher.md +0 -292
  569. package/assets/sample-agents/sqlew-scrum-master.md +0 -286
  570. package/assets/sample-commands/README.md +0 -56
  571. package/assets/sample-commands/sqlew.md +0 -144
  572. package/assets/sample-skills/sqlew-decision-format/SKILL.md +0 -73
  573. package/assets/sample-skills/sqlew-plan-guidance/SKILL.md +0 -62
  574. package/assets/schema.sql +0 -564
  575. package/dist/cli/hooks/init-hooks.d.ts +0 -35
  576. package/dist/cli/hooks/init-hooks.d.ts.map +0 -1
  577. package/dist/cli/hooks/init-hooks.js +0 -517
  578. package/dist/cli/hooks/init-hooks.js.map +0 -1
  579. package/dist/cli/hooks/plan-toml-parser.d.ts.map +0 -1
  580. package/dist/cli/hooks/plan-toml-parser.js.map +0 -1
  581. package/dist/init-agents.d.ts +0 -7
  582. package/dist/init-agents.d.ts.map +0 -1
  583. package/dist/init-agents.js +0 -206
  584. package/dist/init-agents.js.map +0 -1
  585. package/dist/init-commands.d.ts +0 -10
  586. package/dist/init-commands.d.ts.map +0 -1
  587. package/dist/init-commands.js +0 -46
  588. package/dist/init-commands.js.map +0 -1
  589. package/dist/init-skills.d.ts +0 -29
  590. package/dist/init-skills.d.ts.map +0 -1
  591. package/dist/init-skills.js +0 -183
  592. package/dist/init-skills.js.map +0 -1
  593. package/dist/sync-agents.d.ts +0 -13
  594. package/dist/sync-agents.d.ts.map +0 -1
  595. package/dist/sync-agents.js +0 -157
  596. package/dist/sync-agents.js.map +0 -1
  597. package/dist/sync-commands.d.ts +0 -13
  598. package/dist/sync-commands.d.ts.map +0 -1
  599. package/dist/sync-commands.js +0 -150
  600. package/dist/sync-commands.js.map +0 -1
  601. package/dist/sync-gitignore.d.ts +0 -13
  602. package/dist/sync-gitignore.d.ts.map +0 -1
  603. package/dist/sync-gitignore.js +0 -60
  604. package/dist/sync-gitignore.js.map +0 -1
  605. package/dist/tests/docker/native/task-operations.test.d.ts +0 -16
  606. package/dist/tests/docker/native/task-operations.test.d.ts.map +0 -1
  607. package/dist/tests/docker/native/task-operations.test.js +0 -800
  608. package/dist/tests/docker/native/task-operations.test.js.map +0 -1
  609. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts +0 -6
  610. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts.map +0 -1
  611. package/dist/tests/feature/decision/batch-validation-integration.test.js +0 -193
  612. package/dist/tests/feature/decision/batch-validation-integration.test.js.map +0 -1
  613. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts +0 -6
  614. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts.map +0 -1
  615. package/dist/tests/feature/task/auto-pruning-decision-link.test.js +0 -281
  616. package/dist/tests/feature/task/auto-pruning-decision-link.test.js.map +0 -1
  617. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts +0 -6
  618. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts.map +0 -1
  619. package/dist/tests/feature/task/auto-pruning-partial.test.js +0 -305
  620. package/dist/tests/feature/task/auto-pruning-partial.test.js.map +0 -1
  621. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts +0 -6
  622. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts.map +0 -1
  623. package/dist/tests/feature/task/auto-pruning-persistence.test.js +0 -267
  624. package/dist/tests/feature/task/auto-pruning-persistence.test.js.map +0 -1
  625. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts +0 -12
  626. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts.map +0 -1
  627. package/dist/tests/feature/task/auto-pruning-safety.test.js +0 -224
  628. package/dist/tests/feature/task/auto-pruning-safety.test.js.map +0 -1
  629. package/dist/tests/feature/task/dependencies.test.d.ts +0 -7
  630. package/dist/tests/feature/task/dependencies.test.d.ts.map +0 -1
  631. package/dist/tests/feature/task/dependencies.test.js +0 -656
  632. package/dist/tests/feature/task/dependencies.test.js.map +0 -1
  633. package/dist/tests/feature/task/file-actions-integration.test.d.ts +0 -10
  634. package/dist/tests/feature/task/file-actions-integration.test.d.ts.map +0 -1
  635. package/dist/tests/feature/task/file-actions-integration.test.js +0 -162
  636. package/dist/tests/feature/task/file-actions-integration.test.js.map +0 -1
  637. package/dist/tests/feature/task/file-actions-validation.test.d.ts +0 -6
  638. package/dist/tests/feature/task/file-actions-validation.test.d.ts.map +0 -1
  639. package/dist/tests/feature/task/file-actions-validation.test.js +0 -228
  640. package/dist/tests/feature/task/file-actions-validation.test.js.map +0 -1
  641. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts +0 -6
  642. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts.map +0 -1
  643. package/dist/tests/feature/task/link-file-backward-compat.test.js +0 -280
  644. package/dist/tests/feature/task/link-file-backward-compat.test.js.map +0 -1
  645. package/dist/tests/feature/task/watch-files-action.test.d.ts +0 -8
  646. package/dist/tests/feature/task/watch-files-action.test.d.ts.map +0 -1
  647. package/dist/tests/feature/task/watch-files-action.test.js +0 -402
  648. package/dist/tests/feature/task/watch-files-action.test.js.map +0 -1
  649. package/dist/tests/feature/task/watch-files-parameter.test.d.ts +0 -8
  650. package/dist/tests/feature/task/watch-files-parameter.test.d.ts.map +0 -1
  651. package/dist/tests/feature/task/watch-files-parameter.test.js +0 -283
  652. package/dist/tests/feature/task/watch-files-parameter.test.js.map +0 -1
  653. package/dist/tests/integration/all-features.standalone.d.ts +0 -7
  654. package/dist/tests/integration/all-features.standalone.d.ts.map +0 -1
  655. package/dist/tests/integration/all-features.standalone.js +0 -417
  656. package/dist/tests/integration/all-features.standalone.js.map +0 -1
  657. package/dist/tests/unit/config/plan-toml-cache.test.d.ts.map +0 -1
  658. package/dist/tests/unit/config/plan-toml-cache.test.js.map +0 -1
  659. package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts.map +0 -1
  660. package/dist/tests/unit/hooks/plan-toml-parser.test.js.map +0 -1
  661. package/dist/tools/files/actions/check-lock.d.ts +0 -16
  662. package/dist/tools/files/actions/check-lock.d.ts.map +0 -1
  663. package/dist/tools/files/actions/check-lock.js +0 -74
  664. package/dist/tools/files/actions/check-lock.js.map +0 -1
  665. package/dist/tools/files/actions/get.d.ts +0 -16
  666. package/dist/tools/files/actions/get.d.ts.map +0 -1
  667. package/dist/tools/files/actions/get.js +0 -85
  668. package/dist/tools/files/actions/get.js.map +0 -1
  669. package/dist/tools/files/actions/record-batch.d.ts +0 -18
  670. package/dist/tools/files/actions/record-batch.d.ts.map +0 -1
  671. package/dist/tools/files/actions/record-batch.js +0 -119
  672. package/dist/tools/files/actions/record-batch.js.map +0 -1
  673. package/dist/tools/files/actions/record.d.ts +0 -16
  674. package/dist/tools/files/actions/record.d.ts.map +0 -1
  675. package/dist/tools/files/actions/record.js +0 -43
  676. package/dist/tools/files/actions/record.js.map +0 -1
  677. package/dist/tools/files/actions/sqlite-flush.d.ts +0 -27
  678. package/dist/tools/files/actions/sqlite-flush.d.ts.map +0 -1
  679. package/dist/tools/files/actions/sqlite-flush.js +0 -66
  680. package/dist/tools/files/actions/sqlite-flush.js.map +0 -1
  681. package/dist/tools/files/help/example.d.ts +0 -5
  682. package/dist/tools/files/help/example.d.ts.map +0 -1
  683. package/dist/tools/files/help/example.js +0 -109
  684. package/dist/tools/files/help/example.js.map +0 -1
  685. package/dist/tools/files/help/help.d.ts +0 -5
  686. package/dist/tools/files/help/help.d.ts.map +0 -1
  687. package/dist/tools/files/help/help.js +0 -35
  688. package/dist/tools/files/help/help.js.map +0 -1
  689. package/dist/tools/files/index.d.ts +0 -14
  690. package/dist/tools/files/index.d.ts.map +0 -1
  691. package/dist/tools/files/index.js +0 -15
  692. package/dist/tools/files/index.js.map +0 -1
  693. package/dist/tools/files/internal/queries.d.ts +0 -18
  694. package/dist/tools/files/internal/queries.d.ts.map +0 -1
  695. package/dist/tools/files/internal/queries.js +0 -54
  696. package/dist/tools/files/internal/queries.js.map +0 -1
  697. package/dist/tools/files/internal/validation.d.ts +0 -18
  698. package/dist/tools/files/internal/validation.d.ts.map +0 -1
  699. package/dist/tools/files/internal/validation.js +0 -39
  700. package/dist/tools/files/internal/validation.js.map +0 -1
  701. package/dist/tools/files/types.d.ts +0 -6
  702. package/dist/tools/files/types.d.ts.map +0 -1
  703. package/dist/tools/files/types.js +0 -6
  704. package/dist/tools/files/types.js.map +0 -1
  705. package/dist/tools/help-queries.d.ts +0 -130
  706. package/dist/tools/help-queries.d.ts.map +0 -1
  707. package/dist/tools/help-queries.js +0 -411
  708. package/dist/tools/help-queries.js.map +0 -1
  709. package/dist/tools/tasks/actions/add-dependency.d.ts +0 -12
  710. package/dist/tools/tasks/actions/add-dependency.d.ts.map +0 -1
  711. package/dist/tools/tasks/actions/add-dependency.js +0 -129
  712. package/dist/tools/tasks/actions/add-dependency.js.map +0 -1
  713. package/dist/tools/tasks/actions/archive.d.ts +0 -11
  714. package/dist/tools/tasks/actions/archive.d.ts.map +0 -1
  715. package/dist/tools/tasks/actions/archive.js +0 -58
  716. package/dist/tools/tasks/actions/archive.js.map +0 -1
  717. package/dist/tools/tasks/actions/create-batch.d.ts +0 -19
  718. package/dist/tools/tasks/actions/create-batch.d.ts.map +0 -1
  719. package/dist/tools/tasks/actions/create-batch.js +0 -103
  720. package/dist/tools/tasks/actions/create-batch.js.map +0 -1
  721. package/dist/tools/tasks/actions/create.d.ts +0 -16
  722. package/dist/tools/tasks/actions/create.d.ts.map +0 -1
  723. package/dist/tools/tasks/actions/create.js +0 -163
  724. package/dist/tools/tasks/actions/create.js.map +0 -1
  725. package/dist/tools/tasks/actions/get-dependencies.d.ts +0 -12
  726. package/dist/tools/tasks/actions/get-dependencies.d.ts.map +0 -1
  727. package/dist/tools/tasks/actions/get-dependencies.js +0 -41
  728. package/dist/tools/tasks/actions/get-dependencies.js.map +0 -1
  729. package/dist/tools/tasks/actions/get-pruned-files.d.ts +0 -13
  730. package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +0 -1
  731. package/dist/tools/tasks/actions/get-pruned-files.js +0 -45
  732. package/dist/tools/tasks/actions/get-pruned-files.js.map +0 -1
  733. package/dist/tools/tasks/actions/get.d.ts +0 -12
  734. package/dist/tools/tasks/actions/get.d.ts.map +0 -1
  735. package/dist/tools/tasks/actions/get.js +0 -84
  736. package/dist/tools/tasks/actions/get.js.map +0 -1
  737. package/dist/tools/tasks/actions/link-pruned-file.d.ts +0 -14
  738. package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +0 -1
  739. package/dist/tools/tasks/actions/link-pruned-file.js +0 -68
  740. package/dist/tools/tasks/actions/link-pruned-file.js.map +0 -1
  741. package/dist/tools/tasks/actions/link.d.ts +0 -14
  742. package/dist/tools/tasks/actions/link.d.ts.map +0 -1
  743. package/dist/tools/tasks/actions/link.js +0 -120
  744. package/dist/tools/tasks/actions/link.js.map +0 -1
  745. package/dist/tools/tasks/actions/list.d.ts +0 -17
  746. package/dist/tools/tasks/actions/list.d.ts.map +0 -1
  747. package/dist/tools/tasks/actions/list.js +0 -100
  748. package/dist/tools/tasks/actions/list.js.map +0 -1
  749. package/dist/tools/tasks/actions/move.d.ts +0 -13
  750. package/dist/tools/tasks/actions/move.d.ts.map +0 -1
  751. package/dist/tools/tasks/actions/move.js +0 -91
  752. package/dist/tools/tasks/actions/move.js.map +0 -1
  753. package/dist/tools/tasks/actions/remove-dependency.d.ts +0 -12
  754. package/dist/tools/tasks/actions/remove-dependency.d.ts.map +0 -1
  755. package/dist/tools/tasks/actions/remove-dependency.js +0 -36
  756. package/dist/tools/tasks/actions/remove-dependency.js.map +0 -1
  757. package/dist/tools/tasks/actions/update.d.ts +0 -10
  758. package/dist/tools/tasks/actions/update.d.ts.map +0 -1
  759. package/dist/tools/tasks/actions/update.js +0 -183
  760. package/dist/tools/tasks/actions/update.js.map +0 -1
  761. package/dist/tools/tasks/actions/watch-files.d.ts +0 -14
  762. package/dist/tools/tasks/actions/watch-files.d.ts.map +0 -1
  763. package/dist/tools/tasks/actions/watch-files.js +0 -127
  764. package/dist/tools/tasks/actions/watch-files.js.map +0 -1
  765. package/dist/tools/tasks/help/example.d.ts +0 -8
  766. package/dist/tools/tasks/help/example.d.ts.map +0 -1
  767. package/dist/tools/tasks/help/example.js +0 -225
  768. package/dist/tools/tasks/help/example.js.map +0 -1
  769. package/dist/tools/tasks/help/help.d.ts +0 -8
  770. package/dist/tools/tasks/help/help.d.ts.map +0 -1
  771. package/dist/tools/tasks/help/help.js +0 -307
  772. package/dist/tools/tasks/help/help.js.map +0 -1
  773. package/dist/tools/tasks/help/use-case.d.ts +0 -11
  774. package/dist/tools/tasks/help/use-case.d.ts.map +0 -1
  775. package/dist/tools/tasks/help/use-case.js +0 -767
  776. package/dist/tools/tasks/help/use-case.js.map +0 -1
  777. package/dist/tools/tasks/index.d.ts +0 -28
  778. package/dist/tools/tasks/index.d.ts.map +0 -1
  779. package/dist/tools/tasks/index.js +0 -33
  780. package/dist/tools/tasks/index.js.map +0 -1
  781. package/dist/tools/tasks/internal/state-machine.d.ts +0 -16
  782. package/dist/tools/tasks/internal/state-machine.d.ts.map +0 -1
  783. package/dist/tools/tasks/internal/state-machine.js +0 -36
  784. package/dist/tools/tasks/internal/state-machine.js.map +0 -1
  785. package/dist/tools/tasks/internal/task-queries.d.ts +0 -12
  786. package/dist/tools/tasks/internal/task-queries.d.ts.map +0 -1
  787. package/dist/tools/tasks/internal/task-queries.js +0 -53
  788. package/dist/tools/tasks/internal/task-queries.js.map +0 -1
  789. package/dist/tools/tasks/internal/validation.d.ts +0 -47
  790. package/dist/tools/tasks/internal/validation.d.ts.map +0 -1
  791. package/dist/tools/tasks/internal/validation.js +0 -261
  792. package/dist/tools/tasks/internal/validation.js.map +0 -1
  793. package/dist/tools/tasks/types.d.ts +0 -80
  794. package/dist/tools/tasks/types.d.ts.map +0 -1
  795. package/dist/tools/tasks/types.js +0 -68
  796. package/dist/tools/tasks/types.js.map +0 -1
  797. package/dist/tools/tasks/watcher/status.d.ts +0 -9
  798. package/dist/tools/tasks/watcher/status.d.ts.map +0 -1
  799. package/dist/tools/tasks/watcher/status.js +0 -130
  800. package/dist/tools/tasks/watcher/status.js.map +0 -1
  801. package/dist/tools/tasks.d.ts +0 -16
  802. package/dist/tools/tasks.d.ts.map +0 -1
  803. package/dist/tools/tasks.js +0 -17
  804. package/dist/tools/tasks.js.map +0 -1
  805. package/dist/utils/action-specs/file-specs.d.ts +0 -9
  806. package/dist/utils/action-specs/file-specs.d.ts.map +0 -1
  807. package/dist/utils/action-specs/file-specs.js +0 -54
  808. package/dist/utils/action-specs/file-specs.js.map +0 -1
  809. package/dist/utils/action-specs/task-specs.d.ts +0 -9
  810. package/dist/utils/action-specs/task-specs.d.ts.map +0 -1
  811. package/dist/utils/action-specs/task-specs.js +0 -143
  812. package/dist/utils/action-specs/task-specs.js.map +0 -1
  813. package/dist/utils/cleanup.d.ts +0 -69
  814. package/dist/utils/cleanup.d.ts.map +0 -1
  815. package/dist/utils/cleanup.js +0 -102
  816. package/dist/utils/cleanup.js.map +0 -1
  817. package/dist/utils/file-pruning.d.ts +0 -93
  818. package/dist/utils/file-pruning.d.ts.map +0 -1
  819. package/dist/utils/file-pruning.js +0 -194
  820. package/dist/utils/file-pruning.js.map +0 -1
  821. package/dist/utils/importer/topological-sort.d.ts +0 -61
  822. package/dist/utils/importer/topological-sort.d.ts.map +0 -1
  823. package/dist/utils/importer/topological-sort.js +0 -143
  824. package/dist/utils/importer/topological-sort.js.map +0 -1
  825. package/dist/utils/retention.d.ts +0 -65
  826. package/dist/utils/retention.d.ts.map +0 -1
  827. package/dist/utils/retention.js +0 -156
  828. package/dist/utils/retention.js.map +0 -1
  829. package/dist/utils/task-stale-detection.d.ts +0 -98
  830. package/dist/utils/task-stale-detection.d.ts.map +0 -1
  831. package/dist/utils/task-stale-detection.js +0 -479
  832. package/dist/utils/task-stale-detection.js.map +0 -1
  833. package/dist/watcher/file-watcher.d.ts +0 -131
  834. package/dist/watcher/file-watcher.d.ts.map +0 -1
  835. package/dist/watcher/file-watcher.js +0 -730
  836. package/dist/watcher/file-watcher.js.map +0 -1
  837. package/dist/watcher/test-executor.d.ts +0 -23
  838. package/dist/watcher/test-executor.d.ts.map +0 -1
  839. package/dist/watcher/test-executor.js +0 -226
  840. package/dist/watcher/test-executor.js.map +0 -1
  841. package/docs/TASK_SYSTEM_DEPRECATED.md +0 -88
@@ -24,22 +24,6 @@ export function getToolRegistry() {
24
24
  additionalProperties: true, // Allow action-specific parameters (key, value, tags, etc.)
25
25
  },
26
26
  },
27
- {
28
- name: 'file',
29
- description: 'File Change Tracking - Track file modifications and database operations (SQLite only). Use action: "help" for documentation.',
30
- inputSchema: {
31
- type: 'object',
32
- properties: {
33
- action: {
34
- type: 'string',
35
- description: 'Action',
36
- enum: ['record', 'get', 'check_lock', 'record_batch', 'sqlite_flush', 'help', 'example', 'use_case']
37
- }
38
- },
39
- required: ['action'],
40
- additionalProperties: true, // Allow action-specific parameters (file_path, layer, etc.)
41
- },
42
- },
43
27
  {
44
28
  name: 'constraint',
45
29
  description: 'Architectural Rules - Define and manage project constraints with priorities. Use action: "help" for documentation.',
@@ -56,36 +40,20 @@ export function getToolRegistry() {
56
40
  additionalProperties: true, // Allow action-specific parameters (constraint_text, priority, etc.)
57
41
  },
58
42
  },
59
- {
60
- name: 'task',
61
- description: 'Task Management - Create, track, and manage tasks with kanban workflow, layers, and file tracking. Use action: "help" for documentation.',
62
- inputSchema: {
63
- type: 'object',
64
- properties: {
65
- action: {
66
- type: 'string',
67
- description: 'Action',
68
- enum: ['create', 'update', 'get', 'list', 'move', 'link', 'archive', 'create_batch', 'add_dependency', 'remove_dependency', 'get_dependencies', 'watch_files', 'watcher', 'help', 'example', 'use_case']
69
- }
70
- },
71
- required: ['action'],
72
- additionalProperties: true, // Allow file_actions and other parameters (v3.8.0)
73
- },
74
- },
75
43
  {
76
44
  name: 'help',
77
- description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
78
-
79
- Help System - Query action documentation, parameters, and workflow guidance
80
-
81
- Actions:
82
- - query_action: Get action documentation with parameters and examples
83
- - query_params: Get parameter list only (quick reference)
84
- - query_tool: Get tool overview and all actions
85
- - workflow_hints: Get common next actions after current action
86
- - batch_guide: Get guidance for batch operations
87
- - error_recovery: Analyze errors and suggest fixes
88
-
45
+ description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
46
+
47
+ Help System - Query action documentation, parameters, and workflow guidance
48
+
49
+ Actions:
50
+ - query_action: Get action documentation with parameters and examples
51
+ - query_params: Get parameter list only (quick reference)
52
+ - query_tool: Get tool overview and all actions
53
+ - workflow_hints: Get common next actions after current action
54
+ - batch_guide: Get guidance for batch operations
55
+ - error_recovery: Analyze errors and suggest fixes
56
+
89
57
  Use this tool to understand how to use other sqlew tools. Returns only requested information (80-95% token reduction vs legacy help).`,
90
58
  inputSchema: {
91
59
  type: 'object',
@@ -121,15 +89,15 @@ Use this tool to understand how to use other sqlew tools. Returns only requested
121
89
  },
122
90
  {
123
91
  name: 'example',
124
- description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
125
-
126
- Example System - Browse and search code examples for sqlew tools
127
-
128
- Actions:
129
- - get: Get examples by tool, action, or topic
130
- - search: Search examples by keyword
131
- - list_all: List all available examples with filtering
132
-
92
+ description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
93
+
94
+ Example System - Browse and search code examples for sqlew tools
95
+
96
+ Actions:
97
+ - get: Get examples by tool, action, or topic
98
+ - search: Search examples by keyword
99
+ - list_all: List all available examples with filtering
100
+
133
101
  Use this tool to find working code snippets. Returns only requested examples (token-efficient).`,
134
102
  inputSchema: {
135
103
  type: 'object',
@@ -173,15 +141,15 @@ Use this tool to find working code snippets. Returns only requested examples (to
173
141
  },
174
142
  {
175
143
  name: 'use_case',
176
- description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
177
-
178
- Use Case Catalog - Browse and search complete workflow scenarios
179
-
180
- Actions:
181
- - get: Get complete use case workflow by ID
182
- - search: Search use cases by keyword/category
183
- - list_all: List all use cases with filtering and pagination
184
-
144
+ description: `**REQUIRED PARAMETER**: action (must be specified in ALL calls)
145
+
146
+ Use Case Catalog - Browse and search complete workflow scenarios
147
+
148
+ Actions:
149
+ - get: Get complete use case workflow by ID
150
+ - search: Search use cases by keyword/category
151
+ - list_all: List all use cases with filtering and pagination
152
+
185
153
  Use this tool to learn end-to-end workflows and multi-step operations. Returns workflow steps with executable code examples.`,
186
154
  inputSchema: {
187
155
  type: 'object',
@@ -278,6 +246,26 @@ Use this tool to learn end-to-end workflows and multi-step operations. Returns w
278
246
  additionalProperties: false,
279
247
  },
280
248
  },
249
+ {
250
+ name: 'queue',
251
+ description: 'Hook queue management - list, clear, remove pending items from .sqlew/queue/pending.json. Use action: "help" for documentation.',
252
+ inputSchema: {
253
+ type: 'object',
254
+ properties: {
255
+ action: {
256
+ type: 'string',
257
+ description: 'Queue action to perform',
258
+ enum: ['list', 'clear', 'remove', 'help', 'example']
259
+ },
260
+ index: {
261
+ type: 'number',
262
+ description: 'Item index for remove action (0-based)'
263
+ }
264
+ },
265
+ required: ['action'],
266
+ additionalProperties: false,
267
+ },
268
+ },
281
269
  ];
282
270
  }
283
271
  //# sourceMappingURL=tool-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/server/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/server/tool-registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,0GAA0G;YACvH,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,QAAQ;wBACrB,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC;qBAChW;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,oBAAoB,EAAE,IAAI,EAAG,4DAA4D;aAC1F;SACF;QACD;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,oHAAoH;YACjI,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,QAAQ;wBACrB,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC;qBACrF;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,oBAAoB,EAAE,IAAI,EAAG,qEAAqE;aACnG;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE;;;;;;;;;;;;sIAYmH;YAChI,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wBAAwB;wBACrC,IAAI,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC;qBAC3H;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+EAA+E;qBAC7F;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qDAAqD;qBACnE;oBACD,cAAc,EAAE;wBACd,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0CAA0C;qBACxD;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,gEAAgE;qBAC9E;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+CAA+C;qBAC7D;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;QACD;YACE,IAAI,EAAE,SAAS;YACf,WAAW,EAAE;;;;;;;;;gGAS6E;YAC1F,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;wBACxC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC;qBACvD;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iDAAiD;qBAC/D;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yCAAyC;qBACvD;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mDAAmD;qBACjE;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,gCAAgC;qBAC9C;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0EAA0E;qBACxF;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uDAAuD;qBACrE;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yDAAyD;qBACvE;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE;;;;;;;;;6HAS0G;YACvH,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,4BAA4B;wBACzC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC;qBACvD;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mCAAmC;qBACjD;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8DAA8D;qBAC5E;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oDAAoD;qBAClE;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,4BAA4B;wBACzC,IAAI,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC;qBAC5C;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uDAAuD;qBACrE;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yDAAyD;qBACvE;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;QACD;YACE,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,+JAA+J;YAC5K,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8BAA8B;wBAC3C,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,CAAC;qBACrE;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iDAAiD;wBAC9D,IAAI,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;qBACjC;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,6EAA6E;qBAC3F;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,4FAA4F;qBAC1G;oBACD,eAAe,EAAE;wBACf,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,sDAAsD;qBACpE;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+DAA+D;qBAC7E;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,WAAW,EAAE,sCAAsC;qBACpD;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yBAAyB;qBACvC;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACzC;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8BAA8B;qBAC5C;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uCAAuC;qBACrD;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,iIAAiI;YAC9I,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yBAAyB;wBACtC,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;qBACrD;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wCAAwC;qBACtD;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Backend Factory Tests
3
+ *
4
+ * Tests for backend creation and configuration.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=backend-factory.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend-factory.test.d.ts","sourceRoot":"","sources":["../../../src/tests/backend/backend-factory.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,157 @@
1
+ /**
2
+ * Backend Factory Tests
3
+ *
4
+ * Tests for backend creation and configuration.
5
+ */
6
+ import { describe, it, beforeEach, afterEach } from 'node:test';
7
+ import assert from 'node:assert';
8
+ import { createBackend, resetBackend, initializeBackend, getBackend, isBackendInitialized, getBackendType, isCloudMode, loadCloudConfig, validateCloudConfig, } from '../../backend/index.js';
9
+ import { hasGlobalEnvFile } from '../../config/cloud-config-loader.js';
10
+ describe('Backend Factory', () => {
11
+ beforeEach(async () => {
12
+ await resetBackend();
13
+ // Clear environment variables
14
+ delete process.env.SQLEW_API_KEY;
15
+ });
16
+ afterEach(async () => {
17
+ await resetBackend();
18
+ });
19
+ describe('createBackend', () => {
20
+ it('should create LocalBackend for sqlite config', async () => {
21
+ const config = {
22
+ database: { type: 'sqlite' },
23
+ };
24
+ const backend = await createBackend(config);
25
+ assert.strictEqual(backend.backendType, 'local');
26
+ });
27
+ it('should create LocalBackend for postgres config', async () => {
28
+ const config = {
29
+ database: { type: 'postgres' },
30
+ };
31
+ const backend = await createBackend(config);
32
+ assert.strictEqual(backend.backendType, 'local');
33
+ });
34
+ it('should create LocalBackend for mysql config', async () => {
35
+ const config = {
36
+ database: { type: 'mysql' },
37
+ };
38
+ const backend = await createBackend(config);
39
+ assert.strictEqual(backend.backendType, 'local');
40
+ });
41
+ it('should create LocalBackend when no config specified', async () => {
42
+ const config = {};
43
+ const backend = await createBackend(config);
44
+ assert.strictEqual(backend.backendType, 'local');
45
+ });
46
+ it('should throw error for cloud config without API key', async () => {
47
+ // Skip if ~/.sqlew.env exists (it will provide API key)
48
+ if (hasGlobalEnvFile()) {
49
+ return;
50
+ }
51
+ const config = {
52
+ database: { type: 'cloud' },
53
+ };
54
+ await assert.rejects(async () => await createBackend(config), /SQLEW_API_KEY is required for cloud mode/);
55
+ });
56
+ it('should create SaaS backend when API key is set', async () => {
57
+ const config = {
58
+ database: { type: 'cloud' },
59
+ };
60
+ // Set API key - SaaS backend should be created via submodule
61
+ process.env.SQLEW_API_KEY = 'test-key';
62
+ const backend = await createBackend(config);
63
+ assert.strictEqual(backend.backendType, 'saas');
64
+ });
65
+ });
66
+ describe('initializeBackend', () => {
67
+ it('should initialize LocalBackend for local config', async () => {
68
+ const config = {
69
+ database: { type: 'sqlite' },
70
+ };
71
+ const backend = await initializeBackend(config);
72
+ assert.strictEqual(backend.backendType, 'local');
73
+ assert.strictEqual(isBackendInitialized(), true);
74
+ assert.strictEqual(getBackendType(), 'local');
75
+ });
76
+ it('should return same instance on getBackend', async () => {
77
+ const config = {
78
+ database: { type: 'sqlite' },
79
+ };
80
+ const backend1 = await initializeBackend(config);
81
+ const backend2 = getBackend();
82
+ assert.strictEqual(backend1, backend2);
83
+ });
84
+ });
85
+ describe('getBackend', () => {
86
+ it('should return LocalBackend as default when not initialized', () => {
87
+ const backend = getBackend();
88
+ assert.strictEqual(backend.backendType, 'local');
89
+ });
90
+ });
91
+ describe('resetBackend', () => {
92
+ it('should reset backend state', async () => {
93
+ const config = {
94
+ database: { type: 'sqlite' },
95
+ };
96
+ await initializeBackend(config);
97
+ assert.strictEqual(isBackendInitialized(), true);
98
+ await resetBackend();
99
+ assert.strictEqual(isBackendInitialized(), false);
100
+ assert.strictEqual(getBackendType(), null);
101
+ });
102
+ });
103
+ describe('isCloudMode', () => {
104
+ it('should return true for cloud type', () => {
105
+ const config = {
106
+ database: { type: 'cloud' },
107
+ };
108
+ assert.strictEqual(isCloudMode(config), true);
109
+ });
110
+ it('should return false for sqlite type', () => {
111
+ const config = {
112
+ database: { type: 'sqlite' },
113
+ };
114
+ assert.strictEqual(isCloudMode(config), false);
115
+ });
116
+ it('should return false for no database config', () => {
117
+ const config = {};
118
+ assert.strictEqual(isCloudMode(config), false);
119
+ });
120
+ });
121
+ describe('loadCloudConfig', () => {
122
+ it('should return null when no API key set', async () => {
123
+ // Skip if ~/.sqlew.env exists (it will provide API key)
124
+ if (hasGlobalEnvFile()) {
125
+ return;
126
+ }
127
+ const config = await loadCloudConfig();
128
+ assert.strictEqual(config, null);
129
+ });
130
+ it('should return config when API key is set', async () => {
131
+ process.env.SQLEW_API_KEY = 'test-api-key';
132
+ const config = await loadCloudConfig();
133
+ assert.strictEqual(config?.apiKey, 'test-api-key');
134
+ });
135
+ it('should include projectName from config.toml if exists', async () => {
136
+ process.env.SQLEW_API_KEY = 'test-api-key';
137
+ const config = await loadCloudConfig(process.cwd());
138
+ // projectName comes from .sqlew/config.toml, may be undefined
139
+ assert.ok(config?.projectName === undefined || typeof config.projectName === 'string');
140
+ });
141
+ });
142
+ describe('validateCloudConfig', () => {
143
+ it('should return valid false for null config', () => {
144
+ const result = validateCloudConfig(null);
145
+ assert.strictEqual(result.valid, false);
146
+ assert.ok(result.errors.length > 0);
147
+ });
148
+ it('should return valid true for config with API key', () => {
149
+ const result = validateCloudConfig({
150
+ apiKey: 'test-key',
151
+ });
152
+ assert.strictEqual(result.valid, true);
153
+ assert.strictEqual(result.errors.length, 0);
154
+ });
155
+ });
156
+ });
157
+ //# sourceMappingURL=backend-factory.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend-factory.test.js","sourceRoot":"","sources":["../../../src/tests/backend/backend-factory.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Inference Logic Tests
3
+ *
4
+ * Tests for quick_set → set parameter transformation
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=inference.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.test.d.ts","sourceRoot":"","sources":["../../../src/tests/backend/inference.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Inference Logic Tests
3
+ *
4
+ * Tests for quick_set → set parameter transformation
5
+ */
6
+ import { describe, it } from 'node:test';
7
+ import assert from 'node:assert';
8
+ import { inferDecisionParams } from '../../backend/inference.js';
9
+ describe('inferDecisionParams', () => {
10
+ describe('layer inference', () => {
11
+ it('should infer presentation layer from api/ prefix', () => {
12
+ const result = inferDecisionParams({ key: 'api/rate-limit', value: '100' });
13
+ assert.strictEqual(result.transformedParams.layer, 'presentation');
14
+ assert.strictEqual(result.inferred.layer, 'presentation');
15
+ });
16
+ it('should infer presentation layer from endpoint/ prefix', () => {
17
+ const result = inferDecisionParams({ key: 'endpoint/auth', value: 'oauth2' });
18
+ assert.strictEqual(result.transformedParams.layer, 'presentation');
19
+ });
20
+ it('should infer presentation layer from ui/ prefix', () => {
21
+ const result = inferDecisionParams({ key: 'ui/theme', value: 'dark' });
22
+ assert.strictEqual(result.transformedParams.layer, 'presentation');
23
+ });
24
+ it('should infer business layer from service/ prefix', () => {
25
+ const result = inferDecisionParams({ key: 'service/payment', value: 'stripe' });
26
+ assert.strictEqual(result.transformedParams.layer, 'business');
27
+ });
28
+ it('should infer business layer from logic/ prefix', () => {
29
+ const result = inferDecisionParams({ key: 'logic/validation', value: 'strict' });
30
+ assert.strictEqual(result.transformedParams.layer, 'business');
31
+ });
32
+ it('should infer data layer from db/ prefix', () => {
33
+ const result = inferDecisionParams({ key: 'db/engine', value: 'postgresql' });
34
+ assert.strictEqual(result.transformedParams.layer, 'data');
35
+ });
36
+ it('should infer data layer from model/ prefix', () => {
37
+ const result = inferDecisionParams({ key: 'model/user', value: 'active-record' });
38
+ assert.strictEqual(result.transformedParams.layer, 'data');
39
+ });
40
+ it('should infer infrastructure layer from config/ prefix', () => {
41
+ const result = inferDecisionParams({ key: 'config/logging', value: 'debug' });
42
+ assert.strictEqual(result.transformedParams.layer, 'infrastructure');
43
+ });
44
+ it('should infer infrastructure layer from deploy/ prefix', () => {
45
+ const result = inferDecisionParams({ key: 'deploy/strategy', value: 'blue-green' });
46
+ assert.strictEqual(result.transformedParams.layer, 'infrastructure');
47
+ });
48
+ it('should default to business layer for unknown prefix', () => {
49
+ const result = inferDecisionParams({ key: 'custom/setting', value: 'value' });
50
+ assert.strictEqual(result.transformedParams.layer, 'business');
51
+ assert.strictEqual(result.inferred.layer, 'business');
52
+ });
53
+ it('should not override explicitly provided layer', () => {
54
+ const result = inferDecisionParams({
55
+ key: 'api/rate-limit',
56
+ value: '100',
57
+ layer: 'cross-cutting',
58
+ });
59
+ assert.strictEqual(result.transformedParams.layer, 'cross-cutting');
60
+ assert.strictEqual(result.inferred.layer, undefined);
61
+ });
62
+ });
63
+ describe('tags extraction', () => {
64
+ it('should extract tags from slash-separated key', () => {
65
+ const result = inferDecisionParams({ key: 'api/v1/auth', value: 'jwt' });
66
+ assert.deepStrictEqual(result.transformedParams.tags, ['api', 'v1', 'auth']);
67
+ assert.deepStrictEqual(result.inferred.tags, ['api', 'v1', 'auth']);
68
+ });
69
+ it('should extract tags from dash-separated key', () => {
70
+ const result = inferDecisionParams({ key: 'rate-limit-config', value: '100' });
71
+ assert.deepStrictEqual(result.transformedParams.tags, ['rate', 'limit', 'config']);
72
+ });
73
+ it('should extract tags from underscore-separated key', () => {
74
+ const result = inferDecisionParams({ key: 'user_auth_method', value: 'oauth' });
75
+ assert.deepStrictEqual(result.transformedParams.tags, ['user', 'auth', 'method']);
76
+ });
77
+ it('should handle mixed separators', () => {
78
+ const result = inferDecisionParams({ key: 'api/rate-limit_v2', value: '200' });
79
+ assert.deepStrictEqual(result.transformedParams.tags, ['api', 'rate', 'limit', 'v2']);
80
+ });
81
+ it('should not override explicitly provided tags', () => {
82
+ const result = inferDecisionParams({
83
+ key: 'api/rate-limit',
84
+ value: '100',
85
+ tags: ['custom', 'tag'],
86
+ });
87
+ assert.deepStrictEqual(result.transformedParams.tags, ['custom', 'tag']);
88
+ assert.strictEqual(result.inferred.tags, undefined);
89
+ });
90
+ });
91
+ describe('scope inference', () => {
92
+ it('should infer scope from key hierarchy', () => {
93
+ const result = inferDecisionParams({ key: 'api/v1/auth/method', value: 'jwt' });
94
+ assert.deepStrictEqual(result.transformedParams.scopes, ['api/v1/auth']);
95
+ assert.strictEqual(result.inferred.scope, 'api/v1/auth');
96
+ });
97
+ it('should not infer scope for single-part key', () => {
98
+ const result = inferDecisionParams({ key: 'setting', value: 'value' });
99
+ assert.strictEqual(result.transformedParams.scopes, undefined);
100
+ assert.strictEqual(result.inferred.scope, undefined);
101
+ });
102
+ it('should not override explicitly provided scopes', () => {
103
+ const result = inferDecisionParams({
104
+ key: 'api/v1/auth/method',
105
+ value: 'jwt',
106
+ scopes: ['custom-scope'],
107
+ });
108
+ assert.deepStrictEqual(result.transformedParams.scopes, ['custom-scope']);
109
+ assert.strictEqual(result.inferred.scope, undefined);
110
+ });
111
+ });
112
+ describe('default values', () => {
113
+ it('should set default version to v1.0.0', () => {
114
+ const result = inferDecisionParams({ key: 'test', value: 'value' });
115
+ assert.strictEqual(result.transformedParams.version, 'v1.0.0');
116
+ });
117
+ it('should set default status to active', () => {
118
+ const result = inferDecisionParams({ key: 'test', value: 'value' });
119
+ assert.strictEqual(result.transformedParams.status, 'active');
120
+ });
121
+ it('should not override explicitly provided version', () => {
122
+ const result = inferDecisionParams({ key: 'test', value: 'value', version: 'v2.0.0' });
123
+ assert.strictEqual(result.transformedParams.version, 'v2.0.0');
124
+ });
125
+ it('should not override explicitly provided status', () => {
126
+ const result = inferDecisionParams({ key: 'test', value: 'value', status: 'draft' });
127
+ assert.strictEqual(result.transformedParams.status, 'draft');
128
+ });
129
+ });
130
+ describe('passthrough params', () => {
131
+ it('should preserve key and value', () => {
132
+ const result = inferDecisionParams({ key: 'my-key', value: 'my-value' });
133
+ assert.strictEqual(result.transformedParams.key, 'my-key');
134
+ assert.strictEqual(result.transformedParams.value, 'my-value');
135
+ });
136
+ it('should preserve agent if provided', () => {
137
+ const result = inferDecisionParams({ key: 'test', value: 'value', agent: 'claude' });
138
+ assert.strictEqual(result.transformedParams.agent, 'claude');
139
+ });
140
+ });
141
+ });
142
+ //# sourceMappingURL=inference.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.test.js","sourceRoot":"","sources":["../../../src/tests/backend/inference.test.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,6 @@ import assert from 'node:assert/strict';
6
6
  import { initializeDatabase, closeDatabase } from '../../../database.js';
7
7
  import { ProjectContext } from '../../../utils/project-context.js';
8
8
  import { setDecision, getContext, searchByLayer } from '../../../tools/context/index.js';
9
- import { createTask, listTasks } from '../../../tools/tasks.js';
10
- import { recordFileChange } from '../../../tools/files/index.js';
11
9
  import fs from 'fs';
12
10
  import path from 'path';
13
11
  import os from 'os';
@@ -55,63 +53,6 @@ describe('Multi-Project Data Isolation', () => {
55
53
  assert.strictEqual(decisionsB.decisions.length, 1);
56
54
  assert.strictEqual(decisionsB.decisions[0].value, 'JWT');
57
55
  });
58
- it('should isolate tasks between projects', async () => {
59
- const knex = testDb.getKnex();
60
- // Project A
61
- const projectContextA = ProjectContext.getInstance();
62
- await projectContextA.ensureProject(knex, 'frontend', 'config');
63
- await createTask({
64
- title: 'Build login component',
65
- status: 'in_progress',
66
- priority: 3
67
- }, testDb);
68
- const tasksA = await listTasks({}, testDb);
69
- assert.strictEqual(tasksA.tasks.length, 1);
70
- // Project B
71
- ProjectContext.reset();
72
- const projectContextB = ProjectContext.getInstance();
73
- await projectContextB.ensureProject(knex, 'backend', 'config');
74
- await createTask({
75
- title: 'Design API schema',
76
- status: 'todo',
77
- priority: 4
78
- }, testDb);
79
- const tasksB = await listTasks({}, testDb);
80
- assert.strictEqual(tasksB.tasks.length, 1);
81
- assert.strictEqual(tasksB.tasks[0].title, 'Design API schema');
82
- });
83
- it('should isolate file changes between projects', async () => {
84
- const knex = testDb.getKnex();
85
- // Project A
86
- const projectContextA = ProjectContext.getInstance();
87
- await projectContextA.ensureProject(knex, 'web-app', 'config');
88
- await recordFileChange({
89
- file_path: 'src/index.ts',
90
- agent_name: 'developer-1',
91
- layer: 'infrastructure',
92
- change_type: 'modified',
93
- description: 'Updated imports'
94
- }, testDb);
95
- const changesA = await knex('v4_file_changes')
96
- .where({ project_id: projectContextA.getProjectId() })
97
- .select('*');
98
- assert.strictEqual(changesA.length, 1);
99
- // Project B
100
- ProjectContext.reset();
101
- const projectContextB = ProjectContext.getInstance();
102
- await projectContextB.ensureProject(knex, 'api-server', 'config');
103
- await recordFileChange({
104
- file_path: 'src/index.ts',
105
- agent_name: 'developer-2',
106
- layer: 'business',
107
- change_type: 'created',
108
- description: 'Added endpoint'
109
- }, testDb);
110
- const changesB = await knex('v4_file_changes')
111
- .where({ project_id: projectContextB.getProjectId() })
112
- .select('*');
113
- assert.strictEqual(changesB.length, 1);
114
- });
115
56
  });
116
57
  describe('Cross-Project Queries', () => {
117
58
  it('should query decisions from another project', async () => {
@@ -188,7 +129,7 @@ describe('Project Detection', () => {
188
129
  const knex = testDb.getKnex();
189
130
  const projectContext = ProjectContext.getInstance();
190
131
  await projectContext.ensureProject(knex, 'test-project', 'cli');
191
- const dbProject = await knex('v4_projects')
132
+ const dbProject = await knex('m_projects')
192
133
  .where({ name: 'test-project' })
193
134
  .first();
194
135
  assert.ok(dbProject);
@@ -203,20 +144,20 @@ describe('Project Detection', () => {
203
144
  const id2 = projectContext.getProjectId();
204
145
  assert.strictEqual(id1, id2);
205
146
  // Verify only one project in database
206
- const projects = await knex('v4_projects')
147
+ const projects = await knex('m_projects')
207
148
  .where({ name: 'reusable' })
208
149
  .select('*');
209
150
  assert.strictEqual(projects.length, 1);
210
151
  });
211
152
  });
212
153
  describe('Migration Verification', () => {
213
- it('should have v4_projects table with correct schema', async () => {
154
+ it('should have m_projects table with correct schema', async () => {
214
155
  const knex = testDb.getKnex();
215
- const hasTable = await knex.schema.hasTable('v4_projects');
156
+ const hasTable = await knex.schema.hasTable('m_projects');
216
157
  assert.ok(hasTable);
217
- const hasId = await knex.schema.hasColumn('v4_projects', 'id');
218
- const hasName = await knex.schema.hasColumn('v4_projects', 'name');
219
- const hasDetectionSource = await knex.schema.hasColumn('v4_projects', 'detection_source');
158
+ const hasId = await knex.schema.hasColumn('m_projects', 'id');
159
+ const hasName = await knex.schema.hasColumn('m_projects', 'name');
160
+ const hasDetectionSource = await knex.schema.hasColumn('m_projects', 'detection_source');
220
161
  assert.ok(hasId);
221
162
  assert.ok(hasName);
222
163
  assert.ok(hasDetectionSource);
@@ -224,10 +165,8 @@ describe('Migration Verification', () => {
224
165
  it('should have project_id in transaction tables', async () => {
225
166
  const knex = testDb.getKnex();
226
167
  const tables = [
227
- 'v4_decisions',
228
- 'v4_file_changes',
229
- 'v4_constraints',
230
- 'v4_tasks'
168
+ 't_decisions',
169
+ 't_constraints'
231
170
  ];
232
171
  for (const table of tables) {
233
172
  const hasColumn = await knex.schema.hasColumn(table, 'project_id');