sqlew 4.3.1 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (837) hide show
  1. package/CHANGELOG.md +84 -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/saas-connector/auth/auth-manager.d.ts +6 -0
  175. package/dist/saas-connector/auth/auth-manager.d.ts.map +1 -0
  176. package/dist/saas-connector/auth/auth-manager.js +13 -0
  177. package/dist/saas-connector/auth/auth-manager.js.map +1 -0
  178. package/dist/saas-connector/backend/saas-backend.d.ts +20 -0
  179. package/dist/saas-connector/backend/saas-backend.d.ts.map +1 -0
  180. package/dist/saas-connector/backend/saas-backend.js +71 -0
  181. package/dist/saas-connector/backend/saas-backend.js.map +1 -0
  182. package/dist/saas-connector/client/http-client.d.ts +33 -0
  183. package/dist/saas-connector/client/http-client.d.ts.map +1 -0
  184. package/dist/saas-connector/client/http-client.js +196 -0
  185. package/dist/saas-connector/client/http-client.js.map +1 -0
  186. package/dist/saas-connector/client/types.d.ts +62 -0
  187. package/dist/saas-connector/client/types.d.ts.map +1 -0
  188. package/dist/saas-connector/client/types.js +2 -0
  189. package/dist/saas-connector/client/types.js.map +1 -0
  190. package/dist/saas-connector/config/constants.d.ts +14 -0
  191. package/dist/saas-connector/config/constants.d.ts.map +1 -0
  192. package/dist/saas-connector/config/constants.js +37 -0
  193. package/dist/saas-connector/config/constants.js.map +1 -0
  194. package/dist/saas-connector/errors/api-error.d.ts +26 -0
  195. package/dist/saas-connector/errors/api-error.d.ts.map +1 -0
  196. package/dist/saas-connector/errors/api-error.js +38 -0
  197. package/dist/saas-connector/errors/api-error.js.map +1 -0
  198. package/dist/saas-connector/index.d.ts +18 -0
  199. package/dist/saas-connector/index.d.ts.map +1 -0
  200. package/dist/saas-connector/index.js +20 -0
  201. package/dist/saas-connector/index.js.map +1 -0
  202. package/dist/schema.d.ts +4 -6
  203. package/dist/schema.d.ts.map +1 -1
  204. package/dist/schema.js +28 -45
  205. package/dist/schema.js.map +1 -1
  206. package/dist/server/setup.d.ts +0 -10
  207. package/dist/server/setup.d.ts.map +1 -1
  208. package/dist/server/setup.js +97 -89
  209. package/dist/server/setup.js.map +1 -1
  210. package/dist/server/shutdown.d.ts +1 -1
  211. package/dist/server/shutdown.d.ts.map +1 -1
  212. package/dist/server/shutdown.js +1 -16
  213. package/dist/server/shutdown.js.map +1 -1
  214. package/dist/server/tool-handlers.d.ts +15 -0
  215. package/dist/server/tool-handlers.d.ts.map +1 -1
  216. package/dist/server/tool-handlers.js +47 -462
  217. package/dist/server/tool-handlers.js.map +1 -1
  218. package/dist/server/tool-registry.d.ts.map +1 -1
  219. package/dist/server/tool-registry.js +50 -62
  220. package/dist/server/tool-registry.js.map +1 -1
  221. package/dist/tests/backend/backend-factory.test.d.ts +7 -0
  222. package/dist/tests/backend/backend-factory.test.d.ts.map +1 -0
  223. package/dist/tests/backend/backend-factory.test.js +157 -0
  224. package/dist/tests/backend/backend-factory.test.js.map +1 -0
  225. package/dist/tests/backend/inference.test.d.ts +7 -0
  226. package/dist/tests/backend/inference.test.d.ts.map +1 -0
  227. package/dist/tests/backend/inference.test.js +142 -0
  228. package/dist/tests/backend/inference.test.js.map +1 -0
  229. package/dist/tests/database/multi-project/multi-project.test.js +9 -70
  230. package/dist/tests/database/multi-project/multi-project.test.js.map +1 -1
  231. package/dist/tests/database/sql-dump/table-ordering.test.js +14 -14
  232. package/dist/tests/database/sql-dump/table-ordering.test.js.map +1 -1
  233. package/dist/tests/docker/cross-database.test.js +32 -32
  234. package/dist/tests/docker/cross-database.test.js.map +1 -1
  235. package/dist/tests/docker/dump-import.test.js +55 -55
  236. package/dist/tests/docker/dump-import.test.js.map +1 -1
  237. package/dist/tests/docker/fk-constraints.test.js +3 -3
  238. package/dist/tests/docker/indexes.test.js +34 -34
  239. package/dist/tests/docker/integration.test.js +33 -33
  240. package/dist/tests/docker/multi-project-migration.test.js +47 -47
  241. package/dist/tests/docker/multi-project-migration.test.js.map +1 -1
  242. package/dist/tests/docker/native/constraint-operations.test.js +49 -49
  243. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  244. package/dist/tests/docker/native/db-init.d.ts +3 -1
  245. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  246. package/dist/tests/docker/native/db-init.js +14 -12
  247. package/dist/tests/docker/native/db-init.js.map +1 -1
  248. package/dist/tests/docker/native/decision-operations.test.js +91 -91
  249. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  250. package/dist/tests/docker/native/help-system.test.d.ts +2 -2
  251. package/dist/tests/docker/native/help-system.test.js +113 -138
  252. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  253. package/dist/tests/docker/native/suggest-tool.test.d.ts +2 -2
  254. package/dist/tests/docker/native/suggest-tool.test.js +35 -35
  255. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  256. package/dist/tests/docker/native/test-harness.d.ts +6 -12
  257. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  258. package/dist/tests/docker/native/test-harness.js +74 -156
  259. package/dist/tests/docker/native/test-harness.js.map +1 -1
  260. package/dist/tests/docker/schema-migration.test.js +6 -6
  261. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts +3 -7
  262. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts.map +1 -1
  263. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +7 -318
  264. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  265. package/dist/tests/feature/help/help-system.test.d.ts +6 -6
  266. package/dist/tests/feature/help/help-system.test.js +166 -124
  267. package/dist/tests/feature/help/help-system.test.js.map +1 -1
  268. package/dist/tests/integration/auto-trigger-suggestions.test.js +22 -22
  269. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  270. package/dist/tests/integration/decision-intelligence-e2e.test.js +23 -22
  271. package/dist/tests/integration/decision-intelligence-e2e.test.js.map +1 -1
  272. package/dist/tests/integration/e2e-workflow1-debug.test.js +3 -3
  273. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +1 -1
  274. package/dist/tests/integration/hybrid-similarity-detection.test.js +25 -25
  275. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  276. package/dist/tests/integration/suggest-simple.test.js +18 -0
  277. package/dist/tests/integration/suggest-simple.test.js.map +1 -1
  278. package/dist/tests/migrations/test-all-versions.js +212 -212
  279. package/dist/tests/migrations/test-all-versions.js.map +1 -1
  280. package/dist/tests/migrations/v4/v4-fresh-install.test.js +29 -29
  281. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +1 -1
  282. package/dist/tests/migrations/v4/v4-migrate-data.test.js +20 -20
  283. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +1 -1
  284. package/dist/tests/test-v4-native-rdbms.js +20 -20
  285. package/dist/tests/test-v4-native-rdbms.js.map +1 -1
  286. package/dist/tests/unit/config/cloud-config-loader.test.d.ts +2 -0
  287. package/dist/tests/unit/config/cloud-config-loader.test.d.ts.map +1 -0
  288. package/dist/tests/unit/config/cloud-config-loader.test.js +103 -0
  289. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -0
  290. package/dist/tests/unit/config/{plan-toml-cache.test.d.ts → plan-cache.test.d.ts} +1 -1
  291. package/dist/tests/unit/config/plan-cache.test.d.ts.map +1 -0
  292. package/dist/tests/unit/config/{plan-toml-cache.test.js → plan-cache.test.js} +32 -32
  293. package/dist/tests/unit/config/plan-cache.test.js.map +1 -0
  294. package/dist/tests/unit/hooks/{plan-toml-parser.test.d.ts → plan-parser.test.d.ts} +1 -1
  295. package/dist/tests/unit/hooks/plan-parser.test.d.ts.map +1 -0
  296. package/dist/tests/unit/hooks/{plan-toml-parser.test.js → plan-parser.test.js} +179 -179
  297. package/dist/tests/unit/hooks/plan-parser.test.js.map +1 -0
  298. package/dist/tests/unit/server/tool-handlers.test.d.ts +7 -0
  299. package/dist/tests/unit/server/tool-handlers.test.d.ts.map +1 -0
  300. package/dist/tests/unit/server/tool-handlers.test.js +76 -0
  301. package/dist/tests/unit/server/tool-handlers.test.js.map +1 -0
  302. package/dist/tests/unit/utils/config-loader.test.js +17 -17
  303. package/dist/tests/unit/utils/connection-hash.test.d.ts +2 -0
  304. package/dist/tests/unit/utils/connection-hash.test.d.ts.map +1 -0
  305. package/dist/tests/unit/utils/connection-hash.test.js +57 -0
  306. package/dist/tests/unit/utils/connection-hash.test.js.map +1 -0
  307. package/dist/tests/unit/utils/environment-detector.test.d.ts +2 -0
  308. package/dist/tests/unit/utils/environment-detector.test.d.ts.map +1 -0
  309. package/dist/tests/unit/utils/environment-detector.test.js +43 -0
  310. package/dist/tests/unit/utils/environment-detector.test.js.map +1 -0
  311. package/dist/tests/unit/utils/path-utils.test.d.ts +2 -0
  312. package/dist/tests/unit/utils/path-utils.test.d.ts.map +1 -0
  313. package/dist/tests/unit/utils/path-utils.test.js +72 -0
  314. package/dist/tests/unit/utils/path-utils.test.js.map +1 -0
  315. package/dist/tests/unit/utils/project-detector.test.js +14 -13
  316. package/dist/tests/unit/utils/project-detector.test.js.map +1 -1
  317. package/dist/tests/unit/validation/parameter-validation.test.d.ts +2 -1
  318. package/dist/tests/unit/validation/parameter-validation.test.d.ts.map +1 -1
  319. package/dist/tests/unit/validation/parameter-validation.test.js +5 -133
  320. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  321. package/dist/tests/unit/validation/policy-validation.test.js +15 -15
  322. package/dist/tests/unit/validation/policy-validation.test.js.map +1 -1
  323. package/dist/tests/utils/db-schema.js +48 -48
  324. package/dist/tests/utils/db-seeding.js +11 -11
  325. package/dist/tests/utils/db-seeding.js.map +1 -1
  326. package/dist/tests/utils/json-export-import.test.d.ts +6 -0
  327. package/dist/tests/utils/json-export-import.test.d.ts.map +1 -0
  328. package/dist/tests/utils/json-export-import.test.js +474 -0
  329. package/dist/tests/utils/json-export-import.test.js.map +1 -0
  330. package/dist/tests/utils/test-helpers.js +59 -59
  331. package/dist/tests/utils/test-helpers.js.map +1 -1
  332. package/dist/tools/constraints/actions/activate.d.ts +2 -2
  333. package/dist/tools/constraints/actions/activate.d.ts.map +1 -1
  334. package/dist/tools/constraints/actions/activate.js +12 -12
  335. package/dist/tools/constraints/actions/activate.js.map +1 -1
  336. package/dist/tools/constraints/actions/add.js +3 -3
  337. package/dist/tools/constraints/actions/add.js.map +1 -1
  338. package/dist/tools/constraints/actions/deactivate.js +6 -6
  339. package/dist/tools/constraints/actions/deactivate.js.map +1 -1
  340. package/dist/tools/constraints/actions/get.d.ts +2 -2
  341. package/dist/tools/constraints/actions/get.js +9 -9
  342. package/dist/tools/constraints/actions/get.js.map +1 -1
  343. package/dist/tools/constraints/actions/suggest-pending.js +2 -2
  344. package/dist/tools/constraints/actions/suggest-pending.js.map +1 -1
  345. package/dist/tools/constraints/index.d.ts +1 -1
  346. package/dist/tools/constraints/index.d.ts.map +1 -1
  347. package/dist/tools/constraints/index.js +1 -1
  348. package/dist/tools/constraints/index.js.map +1 -1
  349. package/dist/tools/context/actions/create-policy.js +3 -3
  350. package/dist/tools/context/actions/create-policy.js.map +1 -1
  351. package/dist/tools/context/actions/create-template.js +2 -2
  352. package/dist/tools/context/actions/create-template.js.map +1 -1
  353. package/dist/tools/context/actions/export.d.ts +35 -0
  354. package/dist/tools/context/actions/export.d.ts.map +1 -0
  355. package/dist/tools/context/actions/export.js +93 -0
  356. package/dist/tools/context/actions/export.js.map +1 -0
  357. package/dist/tools/context/actions/hard-delete.js +11 -11
  358. package/dist/tools/context/actions/hard-delete.js.map +1 -1
  359. package/dist/tools/context/actions/has-updates.d.ts +1 -1
  360. package/dist/tools/context/actions/has-updates.d.ts.map +1 -1
  361. package/dist/tools/context/actions/has-updates.js +5 -13
  362. package/dist/tools/context/actions/has-updates.js.map +1 -1
  363. package/dist/tools/context/actions/list-policies.js +1 -1
  364. package/dist/tools/context/actions/list-policies.js.map +1 -1
  365. package/dist/tools/context/actions/list-templates.js +2 -2
  366. package/dist/tools/context/actions/list-templates.js.map +1 -1
  367. package/dist/tools/context/actions/list.js +1 -1
  368. package/dist/tools/context/actions/list.js.map +1 -1
  369. package/dist/tools/context/actions/search-layer.js +8 -8
  370. package/dist/tools/context/actions/search-layer.js.map +1 -1
  371. package/dist/tools/context/actions/set-from-policy.js +1 -1
  372. package/dist/tools/context/actions/set-from-policy.js.map +1 -1
  373. package/dist/tools/context/actions/set-from-template.js +2 -2
  374. package/dist/tools/context/actions/set-from-template.js.map +1 -1
  375. package/dist/tools/context/actions/versions.js +3 -3
  376. package/dist/tools/context/actions/versions.js.map +1 -1
  377. package/dist/tools/context/index.d.ts +1 -0
  378. package/dist/tools/context/index.d.ts.map +1 -1
  379. package/dist/tools/context/index.js +2 -0
  380. package/dist/tools/context/index.js.map +1 -1
  381. package/dist/tools/context/internal/queries.d.ts.map +1 -1
  382. package/dist/tools/context/internal/queries.js +54 -43
  383. package/dist/tools/context/internal/queries.js.map +1 -1
  384. package/dist/tools/context/types.d.ts +1 -1
  385. package/dist/tools/context/types.d.ts.map +1 -1
  386. package/dist/tools/example/actions/get.d.ts +8 -3
  387. package/dist/tools/example/actions/get.d.ts.map +1 -1
  388. package/dist/tools/example/actions/get.js +29 -30
  389. package/dist/tools/example/actions/get.js.map +1 -1
  390. package/dist/tools/example/actions/list-all.d.ts +8 -2
  391. package/dist/tools/example/actions/list-all.d.ts.map +1 -1
  392. package/dist/tools/example/actions/list-all.js +37 -29
  393. package/dist/tools/example/actions/list-all.js.map +1 -1
  394. package/dist/tools/example/actions/search.d.ts +8 -3
  395. package/dist/tools/example/actions/search.d.ts.map +1 -1
  396. package/dist/tools/example/actions/search.js +29 -43
  397. package/dist/tools/example/actions/search.js.map +1 -1
  398. package/dist/tools/help/actions/batch-guide.js +5 -5
  399. package/dist/tools/help/actions/batch-guide.js.map +1 -1
  400. package/dist/tools/help/actions/query-action.d.ts +7 -3
  401. package/dist/tools/help/actions/query-action.d.ts.map +1 -1
  402. package/dist/tools/help/actions/query-action.js +35 -6
  403. package/dist/tools/help/actions/query-action.js.map +1 -1
  404. package/dist/tools/help/actions/query-params.d.ts +5 -3
  405. package/dist/tools/help/actions/query-params.d.ts.map +1 -1
  406. package/dist/tools/help/actions/query-params.js +28 -6
  407. package/dist/tools/help/actions/query-params.js.map +1 -1
  408. package/dist/tools/help/actions/query-tool.d.ts +5 -3
  409. package/dist/tools/help/actions/query-tool.d.ts.map +1 -1
  410. package/dist/tools/help/actions/query-tool.js +23 -6
  411. package/dist/tools/help/actions/query-tool.js.map +1 -1
  412. package/dist/tools/help/actions/workflow-hints.d.ts +5 -3
  413. package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -1
  414. package/dist/tools/help/actions/workflow-hints.js +21 -6
  415. package/dist/tools/help/actions/workflow-hints.js.map +1 -1
  416. package/dist/tools/queue/actions/clear.d.ts +19 -0
  417. package/dist/tools/queue/actions/clear.d.ts.map +1 -0
  418. package/dist/tools/queue/actions/clear.js +79 -0
  419. package/dist/tools/queue/actions/clear.js.map +1 -0
  420. package/dist/tools/queue/actions/list.d.ts +16 -0
  421. package/dist/tools/queue/actions/list.d.ts.map +1 -0
  422. package/dist/tools/queue/actions/list.js +95 -0
  423. package/dist/tools/queue/actions/list.js.map +1 -0
  424. package/dist/tools/queue/actions/remove.d.ts +19 -0
  425. package/dist/tools/queue/actions/remove.d.ts.map +1 -0
  426. package/dist/tools/queue/actions/remove.js +81 -0
  427. package/dist/tools/queue/actions/remove.js.map +1 -0
  428. package/dist/tools/queue/index.d.ts +13 -0
  429. package/dist/tools/queue/index.d.ts.map +1 -0
  430. package/dist/tools/queue/index.js +13 -0
  431. package/dist/tools/queue/index.js.map +1 -0
  432. package/dist/tools/queue/types.d.ts +87 -0
  433. package/dist/tools/queue/types.d.ts.map +1 -0
  434. package/dist/tools/queue/types.js +9 -0
  435. package/dist/tools/queue/types.js.map +1 -0
  436. package/dist/tools/suggest/actions/by-context.d.ts.map +1 -1
  437. package/dist/tools/suggest/actions/by-context.js +3 -1
  438. package/dist/tools/suggest/actions/by-context.js.map +1 -1
  439. package/dist/tools/suggest/actions/by-key.d.ts.map +1 -1
  440. package/dist/tools/suggest/actions/by-key.js +3 -1
  441. package/dist/tools/suggest/actions/by-key.js.map +1 -1
  442. package/dist/tools/suggest/actions/by-tags.d.ts +2 -2
  443. package/dist/tools/suggest/actions/by-tags.js +3 -3
  444. package/dist/tools/suggest/actions/by-tags.js.map +1 -1
  445. package/dist/tools/suggest/internal/constraint-queries.d.ts +4 -4
  446. package/dist/tools/suggest/internal/constraint-queries.js +14 -14
  447. package/dist/tools/suggest/internal/constraint-queries.js.map +1 -1
  448. package/dist/tools/suggest/internal/queries.d.ts +4 -4
  449. package/dist/tools/suggest/internal/queries.js +25 -25
  450. package/dist/tools/suggest/internal/queries.js.map +1 -1
  451. package/dist/tools/use_case/actions/get.d.ts +5 -3
  452. package/dist/tools/use_case/actions/get.d.ts.map +1 -1
  453. package/dist/tools/use_case/actions/get.js +20 -6
  454. package/dist/tools/use_case/actions/get.js.map +1 -1
  455. package/dist/tools/use_case/actions/list-all.d.ts +5 -3
  456. package/dist/tools/use_case/actions/list-all.d.ts.map +1 -1
  457. package/dist/tools/use_case/actions/list-all.js +36 -6
  458. package/dist/tools/use_case/actions/list-all.js.map +1 -1
  459. package/dist/tools/use_case/actions/search.d.ts +6 -3
  460. package/dist/tools/use_case/actions/search.d.ts.map +1 -1
  461. package/dist/tools/use_case/actions/search.js +37 -67
  462. package/dist/tools/use_case/actions/search.js.map +1 -1
  463. package/dist/tools/use_case/help/example.js +17 -17
  464. package/dist/tools/use_case/help/example.js.map +1 -1
  465. package/dist/types.d.ts +82 -153
  466. package/dist/types.d.ts.map +1 -1
  467. package/dist/types.js +0 -10
  468. package/dist/types.js.map +1 -1
  469. package/dist/utils/action-specs/constraint-specs.js +6 -6
  470. package/dist/utils/action-specs/constraint-specs.js.map +1 -1
  471. package/dist/utils/action-specs/index.d.ts +0 -2
  472. package/dist/utils/action-specs/index.d.ts.map +1 -1
  473. package/dist/utils/action-specs/index.js +0 -6
  474. package/dist/utils/action-specs/index.js.map +1 -1
  475. package/dist/utils/batch-validation.d.ts +1 -1
  476. package/dist/utils/batch-validation.js +3 -3
  477. package/dist/utils/batch-validation.js.map +1 -1
  478. package/dist/utils/case-insensitive-validator.d.ts +2 -2
  479. package/dist/utils/case-insensitive-validator.js +2 -2
  480. package/dist/utils/connection-hash.d.ts +37 -0
  481. package/dist/utils/connection-hash.d.ts.map +1 -0
  482. package/dist/utils/connection-hash.js +55 -0
  483. package/dist/utils/connection-hash.js.map +1 -0
  484. package/dist/utils/db-aggregations.js +16 -16
  485. package/dist/utils/db-aggregations.js.map +1 -1
  486. package/dist/utils/enum-converter.d.ts +0 -21
  487. package/dist/utils/enum-converter.d.ts.map +1 -1
  488. package/dist/utils/enum-converter.js +1 -23
  489. package/dist/utils/enum-converter.js.map +1 -1
  490. package/dist/utils/environment-detector.d.ts +30 -0
  491. package/dist/utils/environment-detector.d.ts.map +1 -0
  492. package/dist/utils/environment-detector.js +86 -0
  493. package/dist/utils/environment-detector.js.map +1 -0
  494. package/dist/utils/example-filter.d.ts +34 -0
  495. package/dist/utils/example-filter.d.ts.map +1 -0
  496. package/dist/utils/example-filter.js +45 -0
  497. package/dist/utils/example-filter.js.map +1 -0
  498. package/dist/utils/exporter/export.d.ts +2 -16
  499. package/dist/utils/exporter/export.d.ts.map +1 -1
  500. package/dist/utils/exporter/export.js +49 -130
  501. package/dist/utils/exporter/export.js.map +1 -1
  502. package/dist/utils/hook-queue.d.ts +60 -0
  503. package/dist/utils/hook-queue.d.ts.map +1 -1
  504. package/dist/utils/hook-queue.js +114 -11
  505. package/dist/utils/hook-queue.js.map +1 -1
  506. package/dist/utils/importer/import.d.ts.map +1 -1
  507. package/dist/utils/importer/import.js +33 -188
  508. package/dist/utils/importer/import.js.map +1 -1
  509. package/dist/utils/importer/master-tables.d.ts +2 -1
  510. package/dist/utils/importer/master-tables.d.ts.map +1 -1
  511. package/dist/utils/importer/master-tables.js +35 -81
  512. package/dist/utils/importer/master-tables.js.map +1 -1
  513. package/dist/utils/param-normalizer.d.ts +0 -1
  514. package/dist/utils/param-normalizer.d.ts.map +1 -1
  515. package/dist/utils/param-normalizer.js +1 -3
  516. package/dist/utils/param-normalizer.js.map +1 -1
  517. package/dist/utils/path-utils.d.ts +46 -0
  518. package/dist/utils/path-utils.d.ts.map +1 -0
  519. package/dist/utils/path-utils.js +74 -0
  520. package/dist/utils/path-utils.js.map +1 -0
  521. package/dist/utils/policy-validator.js +1 -1
  522. package/dist/utils/policy-validator.js.map +1 -1
  523. package/dist/utils/project-context.d.ts +23 -0
  524. package/dist/utils/project-context.d.ts.map +1 -1
  525. package/dist/utils/project-context.js +45 -3
  526. package/dist/utils/project-context.js.map +1 -1
  527. package/dist/utils/project-root.d.ts +2 -2
  528. package/dist/utils/project-root.js +2 -2
  529. package/dist/utils/sql-dump/core/index-export.js +7 -7
  530. package/dist/utils/sql-dump/schema/indexes.js +24 -24
  531. package/dist/utils/sql-dump/schema/tables.js +44 -44
  532. package/dist/utils/token-logging.js +6 -6
  533. package/dist/utils/token-logging.js.map +1 -1
  534. package/dist/utils/validators.js +1 -1
  535. package/dist/utils/validators.js.map +1 -1
  536. package/dist/utils/view-queries.d.ts +0 -8
  537. package/dist/utils/view-queries.d.ts.map +1 -1
  538. package/dist/utils/view-queries.js +29 -84
  539. package/dist/utils/view-queries.js.map +1 -1
  540. package/dist/watcher/index.d.ts +1 -4
  541. package/dist/watcher/index.d.ts.map +1 -1
  542. package/dist/watcher/index.js +1 -3
  543. package/dist/watcher/index.js.map +1 -1
  544. package/dist/watcher/queue-watcher.d.ts +10 -3
  545. package/dist/watcher/queue-watcher.d.ts.map +1 -1
  546. package/dist/watcher/queue-watcher.js +24 -21
  547. package/dist/watcher/queue-watcher.js.map +1 -1
  548. package/docs/CONFIGURATION.md +14 -14
  549. package/docs/DATABASE_AUTH.md +1 -1
  550. package/docs/HOOKS_GUIDE.md +30 -50
  551. package/docs/HOW_TO_UNINSTALL.md +199 -0
  552. package/docs/MIGRATION_CLEANUP_GUIDE.md +212 -0
  553. package/docs/MIGRATION_TO_SAAS.md +176 -0
  554. package/docs/SLASH_COMMANDS.md +1 -1
  555. package/docs/cli/DATABASE_MIGRATION.md +13 -13
  556. package/docs/cli/DATA_EXPORT_IMPORT.md +71 -69
  557. package/package.json +7 -8
  558. package/scripts/copy-help-data.js +19 -0
  559. package/assets/config.example.toml +0 -120
  560. package/assets/kanban-style.png +0 -0
  561. package/assets/kanban-visualizer.png +0 -0
  562. package/assets/sample-agents/README.md +0 -36
  563. package/assets/sample-agents/sqlew-architect.md +0 -321
  564. package/assets/sample-agents/sqlew-researcher.md +0 -292
  565. package/assets/sample-agents/sqlew-scrum-master.md +0 -286
  566. package/assets/sample-commands/README.md +0 -56
  567. package/assets/sample-commands/sqlew.md +0 -144
  568. package/assets/sample-skills/sqlew-decision-format/SKILL.md +0 -73
  569. package/assets/sample-skills/sqlew-plan-guidance/SKILL.md +0 -62
  570. package/assets/schema.sql +0 -564
  571. package/dist/cli/hooks/init-hooks.d.ts +0 -35
  572. package/dist/cli/hooks/init-hooks.d.ts.map +0 -1
  573. package/dist/cli/hooks/init-hooks.js +0 -517
  574. package/dist/cli/hooks/init-hooks.js.map +0 -1
  575. package/dist/cli/hooks/plan-toml-parser.d.ts.map +0 -1
  576. package/dist/cli/hooks/plan-toml-parser.js.map +0 -1
  577. package/dist/init-agents.d.ts +0 -7
  578. package/dist/init-agents.d.ts.map +0 -1
  579. package/dist/init-agents.js +0 -206
  580. package/dist/init-agents.js.map +0 -1
  581. package/dist/init-commands.d.ts +0 -10
  582. package/dist/init-commands.d.ts.map +0 -1
  583. package/dist/init-commands.js +0 -46
  584. package/dist/init-commands.js.map +0 -1
  585. package/dist/init-skills.d.ts +0 -29
  586. package/dist/init-skills.d.ts.map +0 -1
  587. package/dist/init-skills.js +0 -183
  588. package/dist/init-skills.js.map +0 -1
  589. package/dist/sync-agents.d.ts +0 -13
  590. package/dist/sync-agents.d.ts.map +0 -1
  591. package/dist/sync-agents.js +0 -157
  592. package/dist/sync-agents.js.map +0 -1
  593. package/dist/sync-commands.d.ts +0 -13
  594. package/dist/sync-commands.d.ts.map +0 -1
  595. package/dist/sync-commands.js +0 -150
  596. package/dist/sync-commands.js.map +0 -1
  597. package/dist/sync-gitignore.d.ts +0 -13
  598. package/dist/sync-gitignore.d.ts.map +0 -1
  599. package/dist/sync-gitignore.js +0 -60
  600. package/dist/sync-gitignore.js.map +0 -1
  601. package/dist/tests/docker/native/task-operations.test.d.ts +0 -16
  602. package/dist/tests/docker/native/task-operations.test.d.ts.map +0 -1
  603. package/dist/tests/docker/native/task-operations.test.js +0 -800
  604. package/dist/tests/docker/native/task-operations.test.js.map +0 -1
  605. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts +0 -6
  606. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts.map +0 -1
  607. package/dist/tests/feature/decision/batch-validation-integration.test.js +0 -193
  608. package/dist/tests/feature/decision/batch-validation-integration.test.js.map +0 -1
  609. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts +0 -6
  610. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts.map +0 -1
  611. package/dist/tests/feature/task/auto-pruning-decision-link.test.js +0 -281
  612. package/dist/tests/feature/task/auto-pruning-decision-link.test.js.map +0 -1
  613. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts +0 -6
  614. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts.map +0 -1
  615. package/dist/tests/feature/task/auto-pruning-partial.test.js +0 -305
  616. package/dist/tests/feature/task/auto-pruning-partial.test.js.map +0 -1
  617. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts +0 -6
  618. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts.map +0 -1
  619. package/dist/tests/feature/task/auto-pruning-persistence.test.js +0 -267
  620. package/dist/tests/feature/task/auto-pruning-persistence.test.js.map +0 -1
  621. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts +0 -12
  622. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts.map +0 -1
  623. package/dist/tests/feature/task/auto-pruning-safety.test.js +0 -224
  624. package/dist/tests/feature/task/auto-pruning-safety.test.js.map +0 -1
  625. package/dist/tests/feature/task/dependencies.test.d.ts +0 -7
  626. package/dist/tests/feature/task/dependencies.test.d.ts.map +0 -1
  627. package/dist/tests/feature/task/dependencies.test.js +0 -656
  628. package/dist/tests/feature/task/dependencies.test.js.map +0 -1
  629. package/dist/tests/feature/task/file-actions-integration.test.d.ts +0 -10
  630. package/dist/tests/feature/task/file-actions-integration.test.d.ts.map +0 -1
  631. package/dist/tests/feature/task/file-actions-integration.test.js +0 -162
  632. package/dist/tests/feature/task/file-actions-integration.test.js.map +0 -1
  633. package/dist/tests/feature/task/file-actions-validation.test.d.ts +0 -6
  634. package/dist/tests/feature/task/file-actions-validation.test.d.ts.map +0 -1
  635. package/dist/tests/feature/task/file-actions-validation.test.js +0 -228
  636. package/dist/tests/feature/task/file-actions-validation.test.js.map +0 -1
  637. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts +0 -6
  638. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts.map +0 -1
  639. package/dist/tests/feature/task/link-file-backward-compat.test.js +0 -280
  640. package/dist/tests/feature/task/link-file-backward-compat.test.js.map +0 -1
  641. package/dist/tests/feature/task/watch-files-action.test.d.ts +0 -8
  642. package/dist/tests/feature/task/watch-files-action.test.d.ts.map +0 -1
  643. package/dist/tests/feature/task/watch-files-action.test.js +0 -402
  644. package/dist/tests/feature/task/watch-files-action.test.js.map +0 -1
  645. package/dist/tests/feature/task/watch-files-parameter.test.d.ts +0 -8
  646. package/dist/tests/feature/task/watch-files-parameter.test.d.ts.map +0 -1
  647. package/dist/tests/feature/task/watch-files-parameter.test.js +0 -283
  648. package/dist/tests/feature/task/watch-files-parameter.test.js.map +0 -1
  649. package/dist/tests/integration/all-features.standalone.d.ts +0 -7
  650. package/dist/tests/integration/all-features.standalone.d.ts.map +0 -1
  651. package/dist/tests/integration/all-features.standalone.js +0 -417
  652. package/dist/tests/integration/all-features.standalone.js.map +0 -1
  653. package/dist/tests/unit/config/plan-toml-cache.test.d.ts.map +0 -1
  654. package/dist/tests/unit/config/plan-toml-cache.test.js.map +0 -1
  655. package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts.map +0 -1
  656. package/dist/tests/unit/hooks/plan-toml-parser.test.js.map +0 -1
  657. package/dist/tools/files/actions/check-lock.d.ts +0 -16
  658. package/dist/tools/files/actions/check-lock.d.ts.map +0 -1
  659. package/dist/tools/files/actions/check-lock.js +0 -74
  660. package/dist/tools/files/actions/check-lock.js.map +0 -1
  661. package/dist/tools/files/actions/get.d.ts +0 -16
  662. package/dist/tools/files/actions/get.d.ts.map +0 -1
  663. package/dist/tools/files/actions/get.js +0 -85
  664. package/dist/tools/files/actions/get.js.map +0 -1
  665. package/dist/tools/files/actions/record-batch.d.ts +0 -18
  666. package/dist/tools/files/actions/record-batch.d.ts.map +0 -1
  667. package/dist/tools/files/actions/record-batch.js +0 -119
  668. package/dist/tools/files/actions/record-batch.js.map +0 -1
  669. package/dist/tools/files/actions/record.d.ts +0 -16
  670. package/dist/tools/files/actions/record.d.ts.map +0 -1
  671. package/dist/tools/files/actions/record.js +0 -43
  672. package/dist/tools/files/actions/record.js.map +0 -1
  673. package/dist/tools/files/actions/sqlite-flush.d.ts +0 -27
  674. package/dist/tools/files/actions/sqlite-flush.d.ts.map +0 -1
  675. package/dist/tools/files/actions/sqlite-flush.js +0 -66
  676. package/dist/tools/files/actions/sqlite-flush.js.map +0 -1
  677. package/dist/tools/files/help/example.d.ts +0 -5
  678. package/dist/tools/files/help/example.d.ts.map +0 -1
  679. package/dist/tools/files/help/example.js +0 -109
  680. package/dist/tools/files/help/example.js.map +0 -1
  681. package/dist/tools/files/help/help.d.ts +0 -5
  682. package/dist/tools/files/help/help.d.ts.map +0 -1
  683. package/dist/tools/files/help/help.js +0 -35
  684. package/dist/tools/files/help/help.js.map +0 -1
  685. package/dist/tools/files/index.d.ts +0 -14
  686. package/dist/tools/files/index.d.ts.map +0 -1
  687. package/dist/tools/files/index.js +0 -15
  688. package/dist/tools/files/index.js.map +0 -1
  689. package/dist/tools/files/internal/queries.d.ts +0 -18
  690. package/dist/tools/files/internal/queries.d.ts.map +0 -1
  691. package/dist/tools/files/internal/queries.js +0 -54
  692. package/dist/tools/files/internal/queries.js.map +0 -1
  693. package/dist/tools/files/internal/validation.d.ts +0 -18
  694. package/dist/tools/files/internal/validation.d.ts.map +0 -1
  695. package/dist/tools/files/internal/validation.js +0 -39
  696. package/dist/tools/files/internal/validation.js.map +0 -1
  697. package/dist/tools/files/types.d.ts +0 -6
  698. package/dist/tools/files/types.d.ts.map +0 -1
  699. package/dist/tools/files/types.js +0 -6
  700. package/dist/tools/files/types.js.map +0 -1
  701. package/dist/tools/help-queries.d.ts +0 -130
  702. package/dist/tools/help-queries.d.ts.map +0 -1
  703. package/dist/tools/help-queries.js +0 -411
  704. package/dist/tools/help-queries.js.map +0 -1
  705. package/dist/tools/tasks/actions/add-dependency.d.ts +0 -12
  706. package/dist/tools/tasks/actions/add-dependency.d.ts.map +0 -1
  707. package/dist/tools/tasks/actions/add-dependency.js +0 -129
  708. package/dist/tools/tasks/actions/add-dependency.js.map +0 -1
  709. package/dist/tools/tasks/actions/archive.d.ts +0 -11
  710. package/dist/tools/tasks/actions/archive.d.ts.map +0 -1
  711. package/dist/tools/tasks/actions/archive.js +0 -58
  712. package/dist/tools/tasks/actions/archive.js.map +0 -1
  713. package/dist/tools/tasks/actions/create-batch.d.ts +0 -19
  714. package/dist/tools/tasks/actions/create-batch.d.ts.map +0 -1
  715. package/dist/tools/tasks/actions/create-batch.js +0 -103
  716. package/dist/tools/tasks/actions/create-batch.js.map +0 -1
  717. package/dist/tools/tasks/actions/create.d.ts +0 -16
  718. package/dist/tools/tasks/actions/create.d.ts.map +0 -1
  719. package/dist/tools/tasks/actions/create.js +0 -163
  720. package/dist/tools/tasks/actions/create.js.map +0 -1
  721. package/dist/tools/tasks/actions/get-dependencies.d.ts +0 -12
  722. package/dist/tools/tasks/actions/get-dependencies.d.ts.map +0 -1
  723. package/dist/tools/tasks/actions/get-dependencies.js +0 -41
  724. package/dist/tools/tasks/actions/get-dependencies.js.map +0 -1
  725. package/dist/tools/tasks/actions/get-pruned-files.d.ts +0 -13
  726. package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +0 -1
  727. package/dist/tools/tasks/actions/get-pruned-files.js +0 -45
  728. package/dist/tools/tasks/actions/get-pruned-files.js.map +0 -1
  729. package/dist/tools/tasks/actions/get.d.ts +0 -12
  730. package/dist/tools/tasks/actions/get.d.ts.map +0 -1
  731. package/dist/tools/tasks/actions/get.js +0 -84
  732. package/dist/tools/tasks/actions/get.js.map +0 -1
  733. package/dist/tools/tasks/actions/link-pruned-file.d.ts +0 -14
  734. package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +0 -1
  735. package/dist/tools/tasks/actions/link-pruned-file.js +0 -68
  736. package/dist/tools/tasks/actions/link-pruned-file.js.map +0 -1
  737. package/dist/tools/tasks/actions/link.d.ts +0 -14
  738. package/dist/tools/tasks/actions/link.d.ts.map +0 -1
  739. package/dist/tools/tasks/actions/link.js +0 -120
  740. package/dist/tools/tasks/actions/link.js.map +0 -1
  741. package/dist/tools/tasks/actions/list.d.ts +0 -17
  742. package/dist/tools/tasks/actions/list.d.ts.map +0 -1
  743. package/dist/tools/tasks/actions/list.js +0 -100
  744. package/dist/tools/tasks/actions/list.js.map +0 -1
  745. package/dist/tools/tasks/actions/move.d.ts +0 -13
  746. package/dist/tools/tasks/actions/move.d.ts.map +0 -1
  747. package/dist/tools/tasks/actions/move.js +0 -91
  748. package/dist/tools/tasks/actions/move.js.map +0 -1
  749. package/dist/tools/tasks/actions/remove-dependency.d.ts +0 -12
  750. package/dist/tools/tasks/actions/remove-dependency.d.ts.map +0 -1
  751. package/dist/tools/tasks/actions/remove-dependency.js +0 -36
  752. package/dist/tools/tasks/actions/remove-dependency.js.map +0 -1
  753. package/dist/tools/tasks/actions/update.d.ts +0 -10
  754. package/dist/tools/tasks/actions/update.d.ts.map +0 -1
  755. package/dist/tools/tasks/actions/update.js +0 -183
  756. package/dist/tools/tasks/actions/update.js.map +0 -1
  757. package/dist/tools/tasks/actions/watch-files.d.ts +0 -14
  758. package/dist/tools/tasks/actions/watch-files.d.ts.map +0 -1
  759. package/dist/tools/tasks/actions/watch-files.js +0 -127
  760. package/dist/tools/tasks/actions/watch-files.js.map +0 -1
  761. package/dist/tools/tasks/help/example.d.ts +0 -8
  762. package/dist/tools/tasks/help/example.d.ts.map +0 -1
  763. package/dist/tools/tasks/help/example.js +0 -225
  764. package/dist/tools/tasks/help/example.js.map +0 -1
  765. package/dist/tools/tasks/help/help.d.ts +0 -8
  766. package/dist/tools/tasks/help/help.d.ts.map +0 -1
  767. package/dist/tools/tasks/help/help.js +0 -307
  768. package/dist/tools/tasks/help/help.js.map +0 -1
  769. package/dist/tools/tasks/help/use-case.d.ts +0 -11
  770. package/dist/tools/tasks/help/use-case.d.ts.map +0 -1
  771. package/dist/tools/tasks/help/use-case.js +0 -767
  772. package/dist/tools/tasks/help/use-case.js.map +0 -1
  773. package/dist/tools/tasks/index.d.ts +0 -28
  774. package/dist/tools/tasks/index.d.ts.map +0 -1
  775. package/dist/tools/tasks/index.js +0 -33
  776. package/dist/tools/tasks/index.js.map +0 -1
  777. package/dist/tools/tasks/internal/state-machine.d.ts +0 -16
  778. package/dist/tools/tasks/internal/state-machine.d.ts.map +0 -1
  779. package/dist/tools/tasks/internal/state-machine.js +0 -36
  780. package/dist/tools/tasks/internal/state-machine.js.map +0 -1
  781. package/dist/tools/tasks/internal/task-queries.d.ts +0 -12
  782. package/dist/tools/tasks/internal/task-queries.d.ts.map +0 -1
  783. package/dist/tools/tasks/internal/task-queries.js +0 -53
  784. package/dist/tools/tasks/internal/task-queries.js.map +0 -1
  785. package/dist/tools/tasks/internal/validation.d.ts +0 -47
  786. package/dist/tools/tasks/internal/validation.d.ts.map +0 -1
  787. package/dist/tools/tasks/internal/validation.js +0 -261
  788. package/dist/tools/tasks/internal/validation.js.map +0 -1
  789. package/dist/tools/tasks/types.d.ts +0 -80
  790. package/dist/tools/tasks/types.d.ts.map +0 -1
  791. package/dist/tools/tasks/types.js +0 -68
  792. package/dist/tools/tasks/types.js.map +0 -1
  793. package/dist/tools/tasks/watcher/status.d.ts +0 -9
  794. package/dist/tools/tasks/watcher/status.d.ts.map +0 -1
  795. package/dist/tools/tasks/watcher/status.js +0 -130
  796. package/dist/tools/tasks/watcher/status.js.map +0 -1
  797. package/dist/tools/tasks.d.ts +0 -16
  798. package/dist/tools/tasks.d.ts.map +0 -1
  799. package/dist/tools/tasks.js +0 -17
  800. package/dist/tools/tasks.js.map +0 -1
  801. package/dist/utils/action-specs/file-specs.d.ts +0 -9
  802. package/dist/utils/action-specs/file-specs.d.ts.map +0 -1
  803. package/dist/utils/action-specs/file-specs.js +0 -54
  804. package/dist/utils/action-specs/file-specs.js.map +0 -1
  805. package/dist/utils/action-specs/task-specs.d.ts +0 -9
  806. package/dist/utils/action-specs/task-specs.d.ts.map +0 -1
  807. package/dist/utils/action-specs/task-specs.js +0 -143
  808. package/dist/utils/action-specs/task-specs.js.map +0 -1
  809. package/dist/utils/cleanup.d.ts +0 -69
  810. package/dist/utils/cleanup.d.ts.map +0 -1
  811. package/dist/utils/cleanup.js +0 -102
  812. package/dist/utils/cleanup.js.map +0 -1
  813. package/dist/utils/file-pruning.d.ts +0 -93
  814. package/dist/utils/file-pruning.d.ts.map +0 -1
  815. package/dist/utils/file-pruning.js +0 -194
  816. package/dist/utils/file-pruning.js.map +0 -1
  817. package/dist/utils/importer/topological-sort.d.ts +0 -61
  818. package/dist/utils/importer/topological-sort.d.ts.map +0 -1
  819. package/dist/utils/importer/topological-sort.js +0 -143
  820. package/dist/utils/importer/topological-sort.js.map +0 -1
  821. package/dist/utils/retention.d.ts +0 -65
  822. package/dist/utils/retention.d.ts.map +0 -1
  823. package/dist/utils/retention.js +0 -156
  824. package/dist/utils/retention.js.map +0 -1
  825. package/dist/utils/task-stale-detection.d.ts +0 -98
  826. package/dist/utils/task-stale-detection.d.ts.map +0 -1
  827. package/dist/utils/task-stale-detection.js +0 -479
  828. package/dist/utils/task-stale-detection.js.map +0 -1
  829. package/dist/watcher/file-watcher.d.ts +0 -131
  830. package/dist/watcher/file-watcher.d.ts.map +0 -1
  831. package/dist/watcher/file-watcher.js +0 -730
  832. package/dist/watcher/file-watcher.js.map +0 -1
  833. package/dist/watcher/test-executor.d.ts +0 -23
  834. package/dist/watcher/test-executor.d.ts.map +0 -1
  835. package/dist/watcher/test-executor.js +0 -226
  836. package/dist/watcher/test-executor.js.map +0 -1
  837. package/docs/TASK_SYSTEM_DEPRECATED.md +0 -88
package/dist/index.js CHANGED
@@ -45,7 +45,7 @@ async function startMcpServer() {
45
45
  const { parseArgs, validateArgs } = await import('./server/arg-parser.js');
46
46
  const { getToolRegistry } = await import('./server/tool-registry.js');
47
47
  const { handleToolCall } = await import('./server/tool-handlers.js');
48
- const { initializeServer, startFileWatcher } = await import('./server/setup.js');
48
+ const { initializeServer } = await import('./server/setup.js');
49
49
  const { registerShutdownHandlers, performCleanup } = await import('./server/shutdown.js');
50
50
  const { handleInitializationError, safeConsoleError } = await import('./utils/error-handler.js');
51
51
  // Parse command-line arguments
@@ -74,8 +74,22 @@ async function startMcpServer() {
74
74
  tools: getToolRegistry(),
75
75
  };
76
76
  });
77
+ // Flag for one-time agent name initialization
78
+ let agentNameInitialized = false;
77
79
  // Handle tool execution
78
80
  server.setRequestHandler(CallToolRequestSchema, async (request) => {
81
+ // Lazy initialization of agent name (after MCP handshake is complete)
82
+ if (!agentNameInitialized) {
83
+ agentNameInitialized = true;
84
+ const clientVersion = server.getClientVersion();
85
+ if (clientVersion?.name) {
86
+ const { getBackend } = await import('./backend/backend-factory.js');
87
+ const backend = getBackend();
88
+ if (backend.setAgentName) {
89
+ backend.setAgentName(clientVersion.name);
90
+ }
91
+ }
92
+ }
79
93
  return await handleToolCall(request);
80
94
  });
81
95
  // Setup centralized global error handlers
@@ -98,15 +112,6 @@ async function startMcpServer() {
98
112
  safeConsoleError(` Database: ${dbPath} (from ${source})`);
99
113
  }
100
114
  safeConsoleError(` Project: ${setupResult.projectContext.getProjectName()} (ID: ${setupResult.projectContext.getProjectId()}, source: ${setupResult.detectionSource})`);
101
- safeConsoleError(` Auto-delete config: messages=${setupResult.configValues.messageHours}h, file_history=${setupResult.configValues.fileHistoryDays}d, ignore_weekend=${setupResult.configValues.ignoreWeekend}`);
102
- // Start file watcher for auto-task-tracking (after database is ready)
103
- try {
104
- await startFileWatcher();
105
- }
106
- catch (error) {
107
- safeConsoleError('⚠ Failed to start file watcher:', error);
108
- safeConsoleError(' (Auto task tracking will be disabled)');
109
- }
110
115
  }
111
116
  catch (error) {
112
117
  // If debug logger not initialized, write to stderr as fallback
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Auto-initialize sqlew on server startup
3
+ *
4
+ * As of v5.0.0, this module handles:
5
+ * - Global CLAUDE.md injection (~/.claude/CLAUDE.md)
6
+ * - Project .gitignore updates
7
+ *
8
+ * Skills and Hooks are managed by the sqlew-plugin (Claude Code Plugin).
9
+ * @see https://github.com/sqlew-io/sqlew-plugin for Skills/Hooks/Agents
10
+ */
11
+ /**
12
+ * Inject sqlew snippets into global ~/.claude/CLAUDE.md
13
+ *
14
+ * As of v5.0.0, snippets are injected directly into CLAUDE.md instead of
15
+ * being copied to ~/.claude/rules/sqlew/. This ensures higher priority
16
+ * and better compatibility with other CLI tools (Codex, Gemini CLI).
17
+ *
18
+ * The injected section is wrapped with HTML comment markers for:
19
+ * - Easy identification of auto-managed content
20
+ * - Safe updates (replace existing section)
21
+ * - No impact on Markdown rendering
22
+ *
23
+ * TODO: Add client detection to conditionally inject based on CLI type
24
+ * Use server.getClientVersion() after MCP initialization
25
+ */
26
+ export declare function injectToGlobalClaudeMd(): void;
27
+ /**
28
+ * Initialize sqlew on MCP server startup
29
+ *
30
+ * As of v5.0.0:
31
+ * - Injects snippets into ~/.claude/CLAUDE.md (not rules/)
32
+ * - Updates project .gitignore
33
+ *
34
+ * @param projectRoot - Project root directory (for .gitignore updates)
35
+ */
36
+ export declare function initializeSqlewRules(projectRoot: string): void;
37
+ /**
38
+ * Initialize .sqlew/.gitignore with sqlew auto-generated file entries
39
+ * Creates .sqlew/.gitignore if it doesn't exist, adds missing entries if sqlew section exists
40
+ */
41
+ export declare function initializeGitignore(projectRoot: string): void;
42
+ //# sourceMappingURL=init-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-rules.d.ts","sourceRoot":"","sources":["../src/init-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAwBH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAyE7C;AASD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAS9D;AAoBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAkE7D"}
@@ -0,0 +1,217 @@
1
+ /**
2
+ * Auto-initialize sqlew on server startup
3
+ *
4
+ * As of v5.0.0, this module handles:
5
+ * - Global CLAUDE.md injection (~/.claude/CLAUDE.md)
6
+ * - Project .gitignore updates
7
+ *
8
+ * Skills and Hooks are managed by the sqlew-plugin (Claude Code Plugin).
9
+ * @see https://github.com/sqlew-io/sqlew-plugin for Skills/Hooks/Agents
10
+ */
11
+ import * as fs from 'fs';
12
+ import * as path from 'path';
13
+ import * as os from 'os';
14
+ import { fileURLToPath } from 'url';
15
+ import { debugLog } from './utils/debug-logger.js';
16
+ const __filename = fileURLToPath(import.meta.url);
17
+ const __dirname = path.dirname(__filename);
18
+ /**
19
+ * Get path to assets directory (relative to dist/)
20
+ */
21
+ function getAssetsPath() {
22
+ const distDir = __dirname; // .../dist
23
+ const packageRoot = path.dirname(distDir); // .../mcp-sqlew
24
+ return path.join(packageRoot, 'assets');
25
+ }
26
+ /** Marker for sqlew auto-injected section in CLAUDE.md */
27
+ const CLAUDE_MD_MARKER_START = '<!-- sqlew:auto-injected:start -->';
28
+ const CLAUDE_MD_MARKER_END = '<!-- sqlew:auto-injected:end -->';
29
+ /**
30
+ * Inject sqlew snippets into global ~/.claude/CLAUDE.md
31
+ *
32
+ * As of v5.0.0, snippets are injected directly into CLAUDE.md instead of
33
+ * being copied to ~/.claude/rules/sqlew/. This ensures higher priority
34
+ * and better compatibility with other CLI tools (Codex, Gemini CLI).
35
+ *
36
+ * The injected section is wrapped with HTML comment markers for:
37
+ * - Easy identification of auto-managed content
38
+ * - Safe updates (replace existing section)
39
+ * - No impact on Markdown rendering
40
+ *
41
+ * TODO: Add client detection to conditionally inject based on CLI type
42
+ * Use server.getClientVersion() after MCP initialization
43
+ */
44
+ export function injectToGlobalClaudeMd() {
45
+ const home = os.homedir();
46
+ const claudeDir = path.join(home, '.claude');
47
+ const claudeMdPath = path.join(claudeDir, 'CLAUDE.md');
48
+ const snippetsDir = path.join(getAssetsPath(), 'claude-md-snippets');
49
+ // Check if snippets directory exists
50
+ if (!fs.existsSync(snippetsDir)) {
51
+ debugLog('WARN', 'Claude MD snippets directory not found', { snippetsDir });
52
+ return;
53
+ }
54
+ // Create ~/.claude/ directory if needed
55
+ if (!fs.existsSync(claudeDir)) {
56
+ try {
57
+ fs.mkdirSync(claudeDir, { recursive: true });
58
+ debugLog('INFO', 'Created ~/.claude directory', { claudeDir });
59
+ }
60
+ catch (error) {
61
+ debugLog('WARN', 'Failed to create ~/.claude directory', { error });
62
+ return;
63
+ }
64
+ }
65
+ // Read current CLAUDE.md content (or empty string if doesn't exist)
66
+ let content = '';
67
+ if (fs.existsSync(claudeMdPath)) {
68
+ content = fs.readFileSync(claudeMdPath, 'utf-8');
69
+ }
70
+ else {
71
+ debugLog('INFO', 'Creating new ~/.claude/CLAUDE.md', { claudeMdPath });
72
+ }
73
+ // Find all .md files in snippets directory
74
+ const snippetFiles = fs.readdirSync(snippetsDir).filter(f => f.endsWith('.md'));
75
+ if (snippetFiles.length === 0) {
76
+ debugLog('WARN', 'No snippet files found', { snippetsDir });
77
+ return;
78
+ }
79
+ // Concatenate all snippet contents
80
+ const snippetContent = snippetFiles
81
+ .map(f => fs.readFileSync(path.join(snippetsDir, f), 'utf-8'))
82
+ .join('\n\n');
83
+ // Build the injected section
84
+ const injectedSection = `${CLAUDE_MD_MARKER_START}\n${snippetContent}\n${CLAUDE_MD_MARKER_END}`;
85
+ // Check if section already exists
86
+ if (content.includes(CLAUDE_MD_MARKER_START)) {
87
+ // Check if content is the same (no update needed)
88
+ const regex = new RegExp(`${escapeRegex(CLAUDE_MD_MARKER_START)}[\\s\\S]*?${escapeRegex(CLAUDE_MD_MARKER_END)}`, 'g');
89
+ const existingMatch = content.match(regex);
90
+ if (existingMatch && existingMatch[0] === injectedSection) {
91
+ debugLog('DEBUG', 'CLAUDE.md sqlew section is up-to-date');
92
+ return;
93
+ }
94
+ // Replace existing section
95
+ content = content.replace(regex, injectedSection);
96
+ debugLog('INFO', 'Updated sqlew section in CLAUDE.md', { files: snippetFiles.length });
97
+ }
98
+ else {
99
+ // Append new section
100
+ content = content.trimEnd() + '\n\n' + injectedSection + '\n';
101
+ debugLog('INFO', 'Injected sqlew section into CLAUDE.md', { files: snippetFiles.length });
102
+ }
103
+ // Write updated content
104
+ try {
105
+ fs.writeFileSync(claudeMdPath, content, 'utf-8');
106
+ }
107
+ catch (error) {
108
+ debugLog('WARN', 'Failed to write CLAUDE.md', { error });
109
+ }
110
+ }
111
+ /**
112
+ * Escape special regex characters in a string
113
+ */
114
+ function escapeRegex(str) {
115
+ return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
116
+ }
117
+ /**
118
+ * Initialize sqlew on MCP server startup
119
+ *
120
+ * As of v5.0.0:
121
+ * - Injects snippets into ~/.claude/CLAUDE.md (not rules/)
122
+ * - Updates project .gitignore
123
+ *
124
+ * @param projectRoot - Project root directory (for .gitignore updates)
125
+ */
126
+ export function initializeSqlewRules(projectRoot) {
127
+ debugLog('DEBUG', 'Initializing sqlew', { projectRoot });
128
+ // Inject snippets into global ~/.claude/CLAUDE.md
129
+ // TODO: Add client detection to conditionally inject
130
+ injectToGlobalClaudeMd();
131
+ // Initialize .gitignore entries for sqlew-generated files
132
+ initializeGitignore(projectRoot);
133
+ }
134
+ /**
135
+ * Files/directories auto-generated by sqlew that should be gitignored
136
+ *
137
+ * As of v5.0.0:
138
+ * - Skills and Hooks are managed by sqlew-plugin (not per-project)
139
+ * - Gitignore is placed inside .sqlew/ directory
140
+ *
141
+ * Note: *.db* catches .db, .db-journal, .db-wal, .db-shm files
142
+ */
143
+ const SQLEW_GITIGNORE_ENTRIES = [
144
+ 'queue/',
145
+ 'tmp/',
146
+ '*.db*',
147
+ ];
148
+ /** Marker comment for sqlew gitignore */
149
+ const SQLEW_GITIGNORE_MARKER = '# sqlew auto-generated files';
150
+ /**
151
+ * Initialize .sqlew/.gitignore with sqlew auto-generated file entries
152
+ * Creates .sqlew/.gitignore if it doesn't exist, adds missing entries if sqlew section exists
153
+ */
154
+ export function initializeGitignore(projectRoot) {
155
+ const sqlewDir = path.join(projectRoot, '.sqlew');
156
+ const gitignorePath = path.join(sqlewDir, '.gitignore');
157
+ // Create .sqlew directory if needed
158
+ if (!fs.existsSync(sqlewDir)) {
159
+ try {
160
+ fs.mkdirSync(sqlewDir, { recursive: true });
161
+ }
162
+ catch (error) {
163
+ debugLog('WARN', 'Failed to create .sqlew directory', { error });
164
+ return;
165
+ }
166
+ }
167
+ // Read current .gitignore content (or empty string if doesn't exist)
168
+ let content = '';
169
+ if (fs.existsSync(gitignorePath)) {
170
+ content = fs.readFileSync(gitignorePath, 'utf-8');
171
+ }
172
+ else {
173
+ debugLog('INFO', '.sqlew/.gitignore not found, creating new file', { gitignorePath });
174
+ }
175
+ // Check if sqlew section already exists
176
+ if (content.includes(SQLEW_GITIGNORE_MARKER)) {
177
+ // Find missing entries
178
+ const missingEntries = SQLEW_GITIGNORE_ENTRIES.filter(entry => !content.includes(entry));
179
+ if (missingEntries.length === 0) {
180
+ debugLog('DEBUG', 'sqlew gitignore section is up-to-date');
181
+ return;
182
+ }
183
+ // Append missing entries after the marker
184
+ try {
185
+ const markerIndex = content.indexOf(SQLEW_GITIGNORE_MARKER);
186
+ const afterMarker = markerIndex + SQLEW_GITIGNORE_MARKER.length;
187
+ const newContent = content.slice(0, afterMarker) +
188
+ '\n' + missingEntries.join('\n') +
189
+ content.slice(afterMarker);
190
+ fs.writeFileSync(gitignorePath, newContent, 'utf-8');
191
+ debugLog('INFO', 'Added missing sqlew entries to .sqlew/.gitignore', {
192
+ entries: missingEntries
193
+ });
194
+ }
195
+ catch (error) {
196
+ debugLog('WARN', 'Failed to update .sqlew/.gitignore', { error });
197
+ }
198
+ return;
199
+ }
200
+ // Build section to add (fresh install)
201
+ const sectionLines = [
202
+ SQLEW_GITIGNORE_MARKER,
203
+ ...SQLEW_GITIGNORE_ENTRIES,
204
+ ];
205
+ // Write to .sqlew/.gitignore
206
+ try {
207
+ const newContent = content.trimEnd() + (content ? '\n' : '') + sectionLines.join('\n') + '\n';
208
+ fs.writeFileSync(gitignorePath, newContent, 'utf-8');
209
+ debugLog('INFO', 'Created .sqlew/.gitignore', {
210
+ entries: SQLEW_GITIGNORE_ENTRIES.length
211
+ });
212
+ }
213
+ catch (error) {
214
+ debugLog('WARN', 'Failed to create .sqlew/.gitignore', { error });
215
+ }
216
+ }
217
+ //# sourceMappingURL=init-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-rules.js","sourceRoot":"","sources":["../src/init-rules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare class AuthManager {
2
+ private apiKey;
3
+ constructor(apiKey: string);
4
+ getAuthorizationHeader(): string;
5
+ }
6
+ //# sourceMappingURL=auth-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-manager.d.ts","sourceRoot":"","sources":["../../../src/saas-connector/auth/auth-manager.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;IACV,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAMlC,sBAAsB,IAAI,MAAM;CAGjC"}
@@ -0,0 +1,13 @@
1
+ export class AuthManager {
2
+ apiKey;
3
+ constructor(apiKey) {
4
+ this.apiKey = apiKey;
5
+ if (!apiKey || apiKey.trim() === '') {
6
+ throw new Error('API key is required');
7
+ }
8
+ }
9
+ getAuthorizationHeader() {
10
+ return `Bearer ${this.apiKey}`;
11
+ }
12
+ }
13
+ //# sourceMappingURL=auth-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-manager.js","sourceRoot":"","sources":["../../../src/saas-connector/auth/auth-manager.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAW;IACF;IAApB,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAChC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,sBAAsB;QACpB,OAAO,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;CACF"}
@@ -0,0 +1,20 @@
1
+ import type { CloudConfig, ToolBackend, HealthCheckResult } from '../client/types.js';
2
+ export declare class SaaSBackend implements ToolBackend {
3
+ readonly backendType: "saas";
4
+ readonly pluginName = "saas-connector";
5
+ private httpClient;
6
+ constructor(config: CloudConfig);
7
+ execute<T>(tool: string, action: string, params: Record<string, unknown>): Promise<T>;
8
+ /**
9
+ * Normalize params for SaaS API compatibility
10
+ * Maps client param names to SaaS API expected names
11
+ */
12
+ private normalizeParams;
13
+ healthCheck(): Promise<HealthCheckResult>;
14
+ disconnect(): Promise<void>;
15
+ /**
16
+ * Set agent name for X-Agent header (called after MCP handshake)
17
+ */
18
+ setAgentName(name: string): void;
19
+ }
20
+ //# sourceMappingURL=saas-backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saas-backend.d.ts","sourceRoot":"","sources":["../../../src/saas-connector/backend/saas-backend.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAE5B,qBAAa,WAAY,YAAW,WAAW;IAC7C,QAAQ,CAAC,WAAW,EAAG,MAAM,CAAU;IACvC,QAAQ,CAAC,UAAU,oBAAoB;IAEvC,OAAO,CAAC,UAAU,CAAa;gBAEnB,MAAM,EAAE,WAAW;IAUzB,OAAO,CAAC,CAAC,EACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,CAAC,CAAC;IA2Bb;;;OAGG;IACH,OAAO,CAAC,eAAe;IAkBjB,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAiBzC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAGjC"}
@@ -0,0 +1,71 @@
1
+ import { HttpClient } from '../client/http-client.js';
2
+ import { AuthManager } from '../auth/auth-manager.js';
3
+ import { ApiError } from '../errors/api-error.js';
4
+ import { SUPPORTED_TOOLS, isLocalOnlyAction } from '../config/constants.js';
5
+ export class SaaSBackend {
6
+ backendType = 'saas';
7
+ pluginName = 'saas-connector';
8
+ httpClient;
9
+ constructor(config) {
10
+ const authManager = new AuthManager(config.apiKey);
11
+ this.httpClient = new HttpClient(authManager, config.projectName, config.projectId, config.connectionIdentity);
12
+ }
13
+ async execute(tool, action, params) {
14
+ // Check if this action should be handled locally (no DB access required)
15
+ if (isLocalOnlyAction(tool, action)) {
16
+ throw new ApiError('LOCAL_ONLY_ACTION', `Action '${tool}.${action}' should be handled locally (no DB access required)`, 200 // Not an error, just a signal to fallback
17
+ );
18
+ }
19
+ // Validate supported tools
20
+ if (!SUPPORTED_TOOLS.includes(tool)) {
21
+ throw new ApiError('UNSUPPORTED_TOOL', `Tool '${tool}' is not supported in SaaS mode. Supported tools: ${SUPPORTED_TOOLS.join(', ')}`, 400);
22
+ }
23
+ // Normalize params for SaaS API compatibility
24
+ const normalizedParams = this.normalizeParams(tool, action, params);
25
+ // Call SaaS API
26
+ const endpoint = `/api/v1/${tool}/${action}`;
27
+ return await this.httpClient.post(endpoint, normalizedParams);
28
+ }
29
+ /**
30
+ * Normalize params for SaaS API compatibility
31
+ * Maps client param names to SaaS API expected names
32
+ */
33
+ normalizeParams(tool, action, params) {
34
+ const result = { ...params };
35
+ // constraint.deactivate/activate: constraint_id → id
36
+ if (tool === 'constraint' && (action === 'deactivate' || action === 'activate')) {
37
+ if ('constraint_id' in result && !('id' in result)) {
38
+ result.id = result.constraint_id;
39
+ delete result.constraint_id;
40
+ }
41
+ }
42
+ return result;
43
+ }
44
+ async healthCheck() {
45
+ const start = Date.now();
46
+ try {
47
+ await this.httpClient.get('/health');
48
+ return {
49
+ ok: true,
50
+ latency: Date.now() - start,
51
+ };
52
+ }
53
+ catch (error) {
54
+ return {
55
+ ok: false,
56
+ latency: Date.now() - start,
57
+ message: error instanceof Error ? error.message : String(error),
58
+ };
59
+ }
60
+ }
61
+ async disconnect() {
62
+ // HTTP client doesn't need explicit disconnect
63
+ }
64
+ /**
65
+ * Set agent name for X-Agent header (called after MCP handshake)
66
+ */
67
+ setAgentName(name) {
68
+ this.httpClient.setAgentName(name);
69
+ }
70
+ }
71
+ //# sourceMappingURL=saas-backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saas-backend.js","sourceRoot":"","sources":["../../../src/saas-connector/backend/saas-backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { AuthManager } from '../auth/auth-manager.js';
2
+ import type { ConnectionIdentity } from './types.js';
3
+ export declare class HttpClient {
4
+ private authManager;
5
+ private projectName?;
6
+ private projectId?;
7
+ private connectionIdentity?;
8
+ private agentName?;
9
+ constructor(authManager: AuthManager, projectName?: string | undefined, projectId?: string | undefined, connectionIdentity?: ConnectionIdentity | undefined);
10
+ /**
11
+ * Set agent name for X-Agent header (called after MCP handshake)
12
+ */
13
+ setAgentName(name: string): void;
14
+ post<T>(path: string, body: Record<string, unknown>): Promise<T>;
15
+ get<T>(path: string): Promise<T>;
16
+ private executeWithRetry;
17
+ private handleResponse;
18
+ private calculateRetryDelay;
19
+ private sleep;
20
+ }
21
+ /**
22
+ * Resolve project name to UUID via /api/v1/project/resolve
23
+ *
24
+ * This is a standalone function used before HttpClient is fully initialized,
25
+ * since we need the projectId to construct HttpClient.
26
+ *
27
+ * @param apiKey - API key for authentication
28
+ * @param projectName - Project name from config.toml
29
+ * @returns Resolved project UUID
30
+ * @throws ApiError on authentication or resolution failure
31
+ */
32
+ export declare function resolveProject(apiKey: string, projectName: string): Promise<string>;
33
+ //# sourceMappingURL=http-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../../src/saas-connector/client/http-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAStD,OAAO,KAAK,EAAe,kBAAkB,EAA0B,MAAM,YAAY,CAAC;AAE1F,qBAAa,UAAU;IAInB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,kBAAkB,CAAC;IAN7B,OAAO,CAAC,SAAS,CAAC,CAAS;gBAGjB,WAAW,EAAE,WAAW,EACxB,WAAW,CAAC,EAAE,MAAM,YAAA,EACpB,SAAS,CAAC,EAAE,MAAM,YAAA,EAClB,kBAAkB,CAAC,EAAE,kBAAkB,YAAA;IAGjD;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAuChE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;YAwBxB,gBAAgB;YAuChB,cAAc;IA4C5B,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,KAAK;CAGd;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAoDjB"}