sqlew 5.0.8 → 5.2.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 (499) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/README.md +19 -10
  3. package/dist/adapters/auth/auth-factory.d.ts +2 -81
  4. package/dist/adapters/auth/auth-factory.d.ts.map +1 -1
  5. package/dist/adapters/auth/auth-factory.js +2 -82
  6. package/dist/adapters/auth/auth-factory.js.map +1 -1
  7. package/dist/adapters/auth/base-auth-provider.d.ts +18 -303
  8. package/dist/adapters/auth/base-auth-provider.d.ts.map +1 -1
  9. package/dist/adapters/auth/base-auth-provider.js +2 -104
  10. package/dist/adapters/auth/base-auth-provider.js.map +1 -1
  11. package/dist/adapters/auth/direct-auth-provider.d.ts +4 -348
  12. package/dist/adapters/auth/direct-auth-provider.d.ts.map +1 -1
  13. package/dist/adapters/auth/direct-auth-provider.js +6 -356
  14. package/dist/adapters/auth/direct-auth-provider.js.map +1 -1
  15. package/dist/adapters/base-adapter.d.ts +31 -598
  16. package/dist/adapters/base-adapter.d.ts.map +1 -1
  17. package/dist/adapters/base-adapter.js +10 -458
  18. package/dist/adapters/base-adapter.js.map +1 -1
  19. package/dist/adapters/index.d.ts +1 -11
  20. package/dist/adapters/index.d.ts.map +1 -1
  21. package/dist/adapters/index.js +1 -11
  22. package/dist/adapters/index.js.map +1 -1
  23. package/dist/adapters/mysql-adapter.d.ts +15 -541
  24. package/dist/adapters/mysql-adapter.d.ts.map +1 -1
  25. package/dist/adapters/mysql-adapter.js +24 -561
  26. package/dist/adapters/mysql-adapter.js.map +1 -1
  27. package/dist/adapters/postgresql-adapter.d.ts +15 -203
  28. package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
  29. package/dist/adapters/postgresql-adapter.js +24 -223
  30. package/dist/adapters/postgresql-adapter.js.map +1 -1
  31. package/dist/adapters/sqlite-adapter.d.ts +4 -28
  32. package/dist/adapters/sqlite-adapter.d.ts.map +1 -1
  33. package/dist/adapters/sqlite-adapter.js +4 -32
  34. package/dist/adapters/sqlite-adapter.js.map +1 -1
  35. package/dist/adapters/types.d.ts +1 -4
  36. package/dist/adapters/types.d.ts.map +1 -1
  37. package/dist/backend/backend-factory.d.ts +3 -3
  38. package/dist/backend/backend-factory.js +3 -3
  39. package/dist/backend/local-backend.d.ts.map +1 -1
  40. package/dist/backend/local-backend.js +0 -5
  41. package/dist/backend/local-backend.js.map +1 -1
  42. package/dist/cli/db-export.d.ts.map +1 -1
  43. package/dist/cli/db-export.js +54 -32
  44. package/dist/cli/db-export.js.map +1 -1
  45. package/dist/cli/db-import.d.ts.map +1 -1
  46. package/dist/cli/db-import.js +32 -31
  47. package/dist/cli/db-import.js.map +1 -1
  48. package/dist/cli/hooks/on-exit-plan.d.ts.map +1 -1
  49. package/dist/cli/hooks/on-exit-plan.js +42 -1
  50. package/dist/cli/hooks/on-exit-plan.js.map +1 -1
  51. package/dist/cli/hooks/on-prompt.d.ts.map +1 -1
  52. package/dist/cli/hooks/on-prompt.js +5 -0
  53. package/dist/cli/hooks/on-prompt.js.map +1 -1
  54. package/dist/cli/hooks/plan-processor.d.ts.map +1 -1
  55. package/dist/cli/hooks/plan-processor.js +16 -2
  56. package/dist/cli/hooks/plan-processor.js.map +1 -1
  57. package/dist/cli/hooks/stdin-parser.d.ts +41 -0
  58. package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
  59. package/dist/cli/hooks/stdin-parser.js +140 -4
  60. package/dist/cli/hooks/stdin-parser.js.map +1 -1
  61. package/dist/cli/hooks/track-plan.d.ts +13 -0
  62. package/dist/cli/hooks/track-plan.d.ts.map +1 -1
  63. package/dist/cli/hooks/track-plan.js +58 -3
  64. package/dist/cli/hooks/track-plan.js.map +1 -1
  65. package/dist/cli.d.ts.map +1 -1
  66. package/dist/cli.js +1 -12
  67. package/dist/cli.js.map +1 -1
  68. package/dist/config/cloud-config-loader.d.ts +8 -8
  69. package/dist/config/cloud-config-loader.d.ts.map +1 -1
  70. package/dist/config/cloud-config-loader.js +12 -12
  71. package/dist/config/cloud-config-loader.js.map +1 -1
  72. package/dist/config/global-config.d.ts +24 -46
  73. package/dist/config/global-config.d.ts.map +1 -1
  74. package/dist/config/global-config.js +174 -56
  75. package/dist/config/global-config.js.map +1 -1
  76. package/dist/config/loader.d.ts +1 -18
  77. package/dist/config/loader.d.ts.map +1 -1
  78. package/dist/config/loader.js +1 -89
  79. package/dist/config/loader.js.map +1 -1
  80. package/dist/config/types.d.ts +2 -64
  81. package/dist/config/types.d.ts.map +1 -1
  82. package/dist/config/types.js +0 -18
  83. package/dist/config/types.js.map +1 -1
  84. package/dist/database/index.d.ts +1 -2
  85. package/dist/database/index.d.ts.map +1 -1
  86. package/dist/database/index.js +1 -3
  87. package/dist/database/index.js.map +1 -1
  88. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.d.ts.map +1 -1
  89. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js +2 -1
  90. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js.map +1 -1
  91. package/dist/database/operations/queries.d.ts +0 -4
  92. package/dist/database/operations/queries.d.ts.map +1 -1
  93. package/dist/database/operations/queries.js +0 -8
  94. package/dist/database/operations/queries.js.map +1 -1
  95. package/dist/index.d.ts +1 -1
  96. package/dist/index.js +2 -2
  97. package/dist/index.js.map +1 -1
  98. package/dist/init-rules.d.ts.map +1 -1
  99. package/dist/init-rules.js +0 -1
  100. package/dist/init-rules.js.map +1 -1
  101. package/dist/knexfile.d.ts.map +1 -1
  102. package/dist/knexfile.js +2 -1
  103. package/dist/knexfile.js.map +1 -1
  104. package/dist/migration/local-to-global.d.ts +19 -0
  105. package/dist/migration/local-to-global.d.ts.map +1 -0
  106. package/dist/migration/local-to-global.js +133 -0
  107. package/dist/migration/local-to-global.js.map +1 -0
  108. package/dist/saas-connector/client/types.d.ts +1 -1
  109. package/dist/saas-connector/client/types.d.ts.map +1 -1
  110. package/dist/schema.js +1 -1
  111. package/dist/server/setup.d.ts.map +1 -1
  112. package/dist/server/setup.js +15 -7
  113. package/dist/server/setup.js.map +1 -1
  114. package/dist/tests/backend/backend-factory.test.js +2 -2
  115. package/dist/tests/backend/backend-factory.test.js.map +1 -1
  116. package/dist/tests/docker/native/constraint-operations.test.d.ts +2 -17
  117. package/dist/tests/docker/native/constraint-operations.test.d.ts.map +1 -1
  118. package/dist/tests/docker/native/constraint-operations.test.js +3 -82
  119. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  120. package/dist/tests/docker/native/db-init.d.ts +3 -34
  121. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  122. package/dist/tests/docker/native/db-init.js +15 -77
  123. package/dist/tests/docker/native/db-init.js.map +1 -1
  124. package/dist/tests/docker/native/decision-operations.test.d.ts +2 -10
  125. package/dist/tests/docker/native/decision-operations.test.d.ts.map +1 -1
  126. package/dist/tests/docker/native/decision-operations.test.js +2 -84
  127. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  128. package/dist/tests/docker/native/help-system.test.d.ts +2 -5
  129. package/dist/tests/docker/native/help-system.test.d.ts.map +1 -1
  130. package/dist/tests/docker/native/help-system.test.js +2 -47
  131. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  132. package/dist/tests/docker/native/suggest-tool.test.d.ts +3 -11
  133. package/dist/tests/docker/native/suggest-tool.test.d.ts.map +1 -1
  134. package/dist/tests/docker/native/suggest-tool.test.js +3 -60
  135. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  136. package/dist/tests/docker/native/test-harness.d.ts +2 -23
  137. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  138. package/dist/tests/docker/native/test-harness.js +5 -59
  139. package/dist/tests/docker/native/test-harness.js.map +1 -1
  140. package/dist/tests/feature/decision/analytics.test.js +2 -1
  141. package/dist/tests/feature/decision/analytics.test.js.map +1 -1
  142. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +2 -7
  143. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  144. package/dist/tests/feature/decision/batch-validation.test.js +2 -1
  145. package/dist/tests/feature/decision/batch-validation.test.js.map +1 -1
  146. package/dist/tests/integration/auto-trigger-suggestions.test.js +4 -37
  147. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  148. package/dist/tests/integration/hybrid-similarity-detection.test.js +2 -1
  149. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  150. package/dist/tests/integration/json-export-import.test.d.ts.map +1 -0
  151. package/dist/tests/integration/json-export-import.test.js.map +1 -0
  152. package/dist/tests/unit/case-insensitive-validator.test.d.ts +0 -7
  153. package/dist/tests/unit/case-insensitive-validator.test.d.ts.map +1 -1
  154. package/dist/tests/unit/case-insensitive-validator.test.js +0 -22
  155. package/dist/tests/unit/case-insensitive-validator.test.js.map +1 -1
  156. package/dist/tests/unit/config/cloud-config-loader.test.js +4 -2
  157. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -1
  158. package/dist/tests/unit/config/global-db-migration.test.d.ts +12 -0
  159. package/dist/tests/unit/config/global-db-migration.test.d.ts.map +1 -0
  160. package/dist/tests/unit/config/global-db-migration.test.js +117 -0
  161. package/dist/tests/unit/config/global-db-migration.test.js.map +1 -0
  162. package/dist/tests/unit/constraint-scorer.test.d.ts +2 -7
  163. package/dist/tests/unit/constraint-scorer.test.d.ts.map +1 -1
  164. package/dist/tests/unit/constraint-scorer.test.js +2 -28
  165. package/dist/tests/unit/constraint-scorer.test.js.map +1 -1
  166. package/dist/tests/unit/hooks/grok-hook-normalization.test.d.ts +9 -0
  167. package/dist/tests/unit/hooks/grok-hook-normalization.test.d.ts.map +1 -0
  168. package/dist/tests/unit/hooks/grok-hook-normalization.test.js +98 -0
  169. package/dist/tests/unit/hooks/grok-hook-normalization.test.js.map +1 -0
  170. package/dist/tests/unit/hooks/grok-plan-template-injection.test.d.ts +7 -0
  171. package/dist/tests/unit/hooks/grok-plan-template-injection.test.d.ts.map +1 -0
  172. package/dist/tests/unit/hooks/grok-plan-template-injection.test.js +55 -0
  173. package/dist/tests/unit/hooks/grok-plan-template-injection.test.js.map +1 -0
  174. package/dist/tests/unit/universal-knex.test.js +9 -0
  175. package/dist/tests/unit/universal-knex.test.js.map +1 -1
  176. package/dist/tests/unit/validation/parameter-validation.test.js +0 -24
  177. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  178. package/dist/tests/utils/db-config.d.ts.map +1 -1
  179. package/dist/tests/utils/db-config.js +0 -9
  180. package/dist/tests/utils/db-config.js.map +1 -1
  181. package/dist/tests/utils/db-import.d.ts.map +1 -1
  182. package/dist/tests/utils/db-import.js +0 -3
  183. package/dist/tests/utils/db-import.js.map +1 -1
  184. package/dist/tests/utils/db-schema.d.ts.map +1 -1
  185. package/dist/tests/utils/db-schema.js +48 -51
  186. package/dist/tests/utils/db-schema.js.map +1 -1
  187. package/dist/tests/utils/db-seeding.d.ts.map +1 -1
  188. package/dist/tests/utils/db-seeding.js +0 -3
  189. package/dist/tests/utils/db-seeding.js.map +1 -1
  190. package/dist/tests/utils/index.d.ts +0 -1
  191. package/dist/tests/utils/index.d.ts.map +1 -1
  192. package/dist/tests/utils/index.js +0 -2
  193. package/dist/tests/utils/index.js.map +1 -1
  194. package/dist/tests/utils/test-helpers.d.ts +6 -76
  195. package/dist/tests/utils/test-helpers.d.ts.map +1 -1
  196. package/dist/tests/utils/test-helpers.js +56 -162
  197. package/dist/tests/utils/test-helpers.js.map +1 -1
  198. package/dist/tests/utils/test-lifecycle.d.ts +2 -28
  199. package/dist/tests/utils/test-lifecycle.d.ts.map +1 -1
  200. package/dist/tests/utils/test-lifecycle.js +2 -31
  201. package/dist/tests/utils/test-lifecycle.js.map +1 -1
  202. package/dist/tools/context/index.d.ts +0 -1
  203. package/dist/tools/context/index.d.ts.map +1 -1
  204. package/dist/tools/context/index.js +0 -2
  205. package/dist/tools/context/index.js.map +1 -1
  206. package/dist/tools/context/types.d.ts +1 -1
  207. package/dist/tools/context/types.d.ts.map +1 -1
  208. package/dist/types/actions.d.ts +6 -29
  209. package/dist/types/actions.d.ts.map +1 -1
  210. package/dist/types/actions.js +1 -2
  211. package/dist/types/actions.js.map +1 -1
  212. package/dist/types/constraint/params.d.ts +24 -1
  213. package/dist/types/constraint/params.d.ts.map +1 -1
  214. package/dist/types/constraint/params.js +3 -0
  215. package/dist/types/constraint/params.js.map +1 -1
  216. package/dist/types/constraint/responses.d.ts +18 -1
  217. package/dist/types/constraint/responses.d.ts.map +1 -1
  218. package/dist/types/constraint/responses.js +3 -0
  219. package/dist/types/constraint/responses.js.map +1 -1
  220. package/dist/types/decision/batch.d.ts +2 -5
  221. package/dist/types/decision/batch.d.ts.map +1 -1
  222. package/dist/types/decision/batch.js +3 -3
  223. package/dist/types/decision/batch.js.map +1 -1
  224. package/dist/types/decision/params.d.ts +7 -4
  225. package/dist/types/decision/params.d.ts.map +1 -1
  226. package/dist/types/decision/responses.d.ts +49 -35
  227. package/dist/types/decision/responses.d.ts.map +1 -1
  228. package/dist/types/decision/templates.d.ts +2 -18
  229. package/dist/types/decision/templates.d.ts.map +1 -1
  230. package/dist/types/decision/templates.js +3 -3
  231. package/dist/types/decision/templates.js.map +1 -1
  232. package/dist/types/enums.d.ts +11 -13
  233. package/dist/types/enums.d.ts.map +1 -1
  234. package/dist/types/enums.js +5 -13
  235. package/dist/types/enums.js.map +1 -1
  236. package/dist/types/import-export.d.ts +7 -30
  237. package/dist/types/import-export.d.ts.map +1 -1
  238. package/dist/types/import-export.js +1 -2
  239. package/dist/types/import-export.js.map +1 -1
  240. package/dist/types/index.d.ts +18 -22
  241. package/dist/types/index.d.ts.map +1 -1
  242. package/dist/types/index.js +4 -32
  243. package/dist/types/index.js.map +1 -1
  244. package/dist/types/master-entities.d.ts +1 -10
  245. package/dist/types/master-entities.d.ts.map +1 -1
  246. package/dist/types/master-entities.js +1 -2
  247. package/dist/types/master-entities.js.map +1 -1
  248. package/dist/types/transaction-entities.d.ts +2 -21
  249. package/dist/types/transaction-entities.d.ts.map +1 -1
  250. package/dist/types/transaction-entities.js +1 -1
  251. package/dist/types/validation.d.ts +1 -16
  252. package/dist/types/validation.d.ts.map +1 -1
  253. package/dist/types/validation.js +1 -2
  254. package/dist/types/validation.js.map +1 -1
  255. package/dist/types/view-entities.d.ts +3 -12
  256. package/dist/types/view-entities.d.ts.map +1 -1
  257. package/dist/types/view-entities.js +1 -1
  258. package/dist/types.d.ts +4 -718
  259. package/dist/types.d.ts.map +1 -1
  260. package/dist/types.js +5 -39
  261. package/dist/types.js.map +1 -1
  262. package/dist/utils/parameter-validator.d.ts +2 -2
  263. package/dist/utils/parameter-validator.d.ts.map +1 -1
  264. package/dist/utils/parameter-validator.js.map +1 -1
  265. package/dist/utils/path-normalize.d.ts +23 -0
  266. package/dist/utils/path-normalize.d.ts.map +1 -0
  267. package/dist/utils/path-normalize.js +38 -0
  268. package/dist/utils/path-normalize.js.map +1 -0
  269. package/dist/utils/project-root.d.ts +6 -3
  270. package/dist/utils/project-root.d.ts.map +1 -1
  271. package/dist/utils/project-root.js +11 -3
  272. package/dist/utils/project-root.js.map +1 -1
  273. package/dist/watcher/base-watcher.d.ts +0 -4
  274. package/dist/watcher/base-watcher.d.ts.map +1 -1
  275. package/dist/watcher/base-watcher.js +11 -22
  276. package/dist/watcher/base-watcher.js.map +1 -1
  277. package/docs/CLI_USAGE.md +27 -107
  278. package/docs/CONFIGURATION.md +10 -5
  279. package/docs/DATABASE_AUTH.md +3 -3
  280. package/docs/HOOKS_GUIDE.md +40 -6
  281. package/docs/MIGRATION_TO_SAAS.md +2 -2
  282. package/docs/SHARED_DATABASE.md +108 -0
  283. package/package.json +4 -3
  284. package/dist/adapters/auth/auth-types.d.ts +0 -30
  285. package/dist/adapters/auth/auth-types.d.ts.map +0 -1
  286. package/dist/adapters/auth/auth-types.js +0 -30
  287. package/dist/adapters/auth/auth-types.js.map +0 -1
  288. package/dist/cli/db-dump.d.ts +0 -36
  289. package/dist/cli/db-dump.d.ts.map +0 -1
  290. package/dist/cli/db-dump.js +0 -384
  291. package/dist/cli/db-dump.js.map +0 -1
  292. package/dist/database/config/config-ops.d.ts +0 -42
  293. package/dist/database/config/config-ops.d.ts.map +0 -1
  294. package/dist/database/config/config-ops.js +0 -102
  295. package/dist/database/config/config-ops.js.map +0 -1
  296. package/dist/formatters/adr-formatter.d.ts +0 -22
  297. package/dist/formatters/adr-formatter.d.ts.map +0 -1
  298. package/dist/formatters/adr-formatter.js +0 -127
  299. package/dist/formatters/adr-formatter.js.map +0 -1
  300. package/dist/formatters/confluence-formatter.d.ts +0 -26
  301. package/dist/formatters/confluence-formatter.d.ts.map +0 -1
  302. package/dist/formatters/confluence-formatter.js +0 -129
  303. package/dist/formatters/confluence-formatter.js.map +0 -1
  304. package/dist/formatters/index.d.ts +0 -34
  305. package/dist/formatters/index.d.ts.map +0 -1
  306. package/dist/formatters/index.js +0 -57
  307. package/dist/formatters/index.js.map +0 -1
  308. package/dist/formatters/markdown-formatter.d.ts +0 -16
  309. package/dist/formatters/markdown-formatter.d.ts.map +0 -1
  310. package/dist/formatters/markdown-formatter.js +0 -110
  311. package/dist/formatters/markdown-formatter.js.map +0 -1
  312. package/dist/formatters/notion-formatter.d.ts +0 -29
  313. package/dist/formatters/notion-formatter.d.ts.map +0 -1
  314. package/dist/formatters/notion-formatter.js +0 -177
  315. package/dist/formatters/notion-formatter.js.map +0 -1
  316. package/dist/formatters/types.d.ts +0 -31
  317. package/dist/formatters/types.d.ts.map +0 -1
  318. package/dist/formatters/types.js +0 -6
  319. package/dist/formatters/types.js.map +0 -1
  320. package/dist/tests/database/sql-dump/converters.test.d.ts +0 -7
  321. package/dist/tests/database/sql-dump/converters.test.d.ts.map +0 -1
  322. package/dist/tests/database/sql-dump/converters.test.js +0 -314
  323. package/dist/tests/database/sql-dump/converters.test.js.map +0 -1
  324. package/dist/tests/database/sql-dump/default-conversions.test.d.ts +0 -8
  325. package/dist/tests/database/sql-dump/default-conversions.test.d.ts.map +0 -1
  326. package/dist/tests/database/sql-dump/default-conversions.test.js +0 -141
  327. package/dist/tests/database/sql-dump/default-conversions.test.js.map +0 -1
  328. package/dist/tests/database/sql-dump/table-ordering.test.d.ts +0 -27
  329. package/dist/tests/database/sql-dump/table-ordering.test.d.ts.map +0 -1
  330. package/dist/tests/database/sql-dump/table-ordering.test.js +0 -284
  331. package/dist/tests/database/sql-dump/table-ordering.test.js.map +0 -1
  332. package/dist/tests/database/sql-dump/type-conversion.test.d.ts +0 -8
  333. package/dist/tests/database/sql-dump/type-conversion.test.d.ts.map +0 -1
  334. package/dist/tests/database/sql-dump/type-conversion.test.js +0 -361
  335. package/dist/tests/database/sql-dump/type-conversion.test.js.map +0 -1
  336. package/dist/tests/docker/cross-database.test.d.ts +0 -21
  337. package/dist/tests/docker/cross-database.test.d.ts.map +0 -1
  338. package/dist/tests/docker/cross-database.test.js +0 -308
  339. package/dist/tests/docker/cross-database.test.js.map +0 -1
  340. package/dist/tests/docker/dump-import.test.d.ts +0 -15
  341. package/dist/tests/docker/dump-import.test.d.ts.map +0 -1
  342. package/dist/tests/docker/dump-import.test.js +0 -424
  343. package/dist/tests/docker/dump-import.test.js.map +0 -1
  344. package/dist/tests/docker/fk-constraints.test.d.ts +0 -13
  345. package/dist/tests/docker/fk-constraints.test.d.ts.map +0 -1
  346. package/dist/tests/docker/fk-constraints.test.js +0 -381
  347. package/dist/tests/docker/fk-constraints.test.js.map +0 -1
  348. package/dist/tests/docker/indexes.test.d.ts +0 -12
  349. package/dist/tests/docker/indexes.test.d.ts.map +0 -1
  350. package/dist/tests/docker/indexes.test.js +0 -250
  351. package/dist/tests/docker/indexes.test.js.map +0 -1
  352. package/dist/tests/docker/integration.test.d.ts +0 -16
  353. package/dist/tests/docker/integration.test.d.ts.map +0 -1
  354. package/dist/tests/docker/integration.test.js +0 -323
  355. package/dist/tests/docker/integration.test.js.map +0 -1
  356. package/dist/tests/docker/multi-project-migration.test.d.ts +0 -17
  357. package/dist/tests/docker/multi-project-migration.test.d.ts.map +0 -1
  358. package/dist/tests/docker/multi-project-migration.test.js +0 -394
  359. package/dist/tests/docker/multi-project-migration.test.js.map +0 -1
  360. package/dist/tests/docker/schema-migration.test.d.ts +0 -8
  361. package/dist/tests/docker/schema-migration.test.d.ts.map +0 -1
  362. package/dist/tests/docker/schema-migration.test.js +0 -98
  363. package/dist/tests/docker/schema-migration.test.js.map +0 -1
  364. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts +0 -5
  365. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts.map +0 -1
  366. package/dist/tests/integration/e2e-workflow1-debug.test.js +0 -85
  367. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +0 -1
  368. package/dist/tests/integration/suggest-simple.test.d.ts +0 -5
  369. package/dist/tests/integration/suggest-simple.test.d.ts.map +0 -1
  370. package/dist/tests/integration/suggest-simple.test.js +0 -90
  371. package/dist/tests/integration/suggest-simple.test.js.map +0 -1
  372. package/dist/tests/migrations/test-all-versions-real.d.ts +0 -8
  373. package/dist/tests/migrations/test-all-versions-real.d.ts.map +0 -1
  374. package/dist/tests/migrations/test-all-versions-real.js +0 -236
  375. package/dist/tests/migrations/test-all-versions-real.js.map +0 -1
  376. package/dist/tests/migrations/test-all-versions.d.ts +0 -14
  377. package/dist/tests/migrations/test-all-versions.d.ts.map +0 -1
  378. package/dist/tests/migrations/test-all-versions.js +0 -519
  379. package/dist/tests/migrations/test-all-versions.js.map +0 -1
  380. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts +0 -7
  381. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts.map +0 -1
  382. package/dist/tests/migrations/v4/v4-fresh-install.test.js +0 -168
  383. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +0 -1
  384. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts +0 -13
  385. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts.map +0 -1
  386. package/dist/tests/migrations/v4/v4-migrate-data.test.js +0 -264
  387. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +0 -1
  388. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts +0 -2
  389. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts.map +0 -1
  390. package/dist/tests/unit/utils/case-insensitive-validator.test.js +0 -97
  391. package/dist/tests/unit/utils/case-insensitive-validator.test.js.map +0 -1
  392. package/dist/tests/utils/json-export-import.test.d.ts.map +0 -1
  393. package/dist/tests/utils/json-export-import.test.js.map +0 -1
  394. package/dist/tests/utils/task-helpers.d.ts +0 -67
  395. package/dist/tests/utils/task-helpers.d.ts.map +0 -1
  396. package/dist/tests/utils/task-helpers.js +0 -134
  397. package/dist/tests/utils/task-helpers.js.map +0 -1
  398. package/dist/tools/context/actions/export.d.ts +0 -35
  399. package/dist/tools/context/actions/export.d.ts.map +0 -1
  400. package/dist/tools/context/actions/export.js +0 -93
  401. package/dist/tools/context/actions/export.js.map +0 -1
  402. package/dist/types/file/params.d.ts +0 -40
  403. package/dist/types/file/params.d.ts.map +0 -1
  404. package/dist/types/file/params.js +0 -6
  405. package/dist/types/file/params.js.map +0 -1
  406. package/dist/types/file/responses.d.ts +0 -2
  407. package/dist/types/file/responses.d.ts.map +0 -1
  408. package/dist/types/file/responses.js +0 -2
  409. package/dist/types/file/responses.js.map +0 -1
  410. package/dist/types/task/params.d.ts +0 -173
  411. package/dist/types/task/params.d.ts.map +0 -1
  412. package/dist/types/task/params.js +0 -8
  413. package/dist/types/task/params.js.map +0 -1
  414. package/dist/types/task/responses.d.ts +0 -334
  415. package/dist/types/task/responses.d.ts.map +0 -1
  416. package/dist/types/task/responses.js +0 -8
  417. package/dist/types/task/responses.js.map +0 -1
  418. package/dist/utils/sql-dump/core/dependency-sort.d.ts +0 -16
  419. package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +0 -1
  420. package/dist/utils/sql-dump/core/dependency-sort.js +0 -105
  421. package/dist/utils/sql-dump/core/dependency-sort.js.map +0 -1
  422. package/dist/utils/sql-dump/core/generate-dump.d.ts +0 -13
  423. package/dist/utils/sql-dump/core/generate-dump.d.ts.map +0 -1
  424. package/dist/utils/sql-dump/core/generate-dump.js +0 -201
  425. package/dist/utils/sql-dump/core/generate-dump.js.map +0 -1
  426. package/dist/utils/sql-dump/core/index-export.d.ts +0 -10
  427. package/dist/utils/sql-dump/core/index-export.d.ts.map +0 -1
  428. package/dist/utils/sql-dump/core/index-export.js +0 -173
  429. package/dist/utils/sql-dump/core/index-export.js.map +0 -1
  430. package/dist/utils/sql-dump/core/sequence-reset.d.ts +0 -6
  431. package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +0 -1
  432. package/dist/utils/sql-dump/core/sequence-reset.js +0 -28
  433. package/dist/utils/sql-dump/core/sequence-reset.js.map +0 -1
  434. package/dist/utils/sql-dump/core/table-export.d.ts +0 -2
  435. package/dist/utils/sql-dump/core/table-export.d.ts.map +0 -1
  436. package/dist/utils/sql-dump/core/table-export.js +0 -4
  437. package/dist/utils/sql-dump/core/table-export.js.map +0 -1
  438. package/dist/utils/sql-dump/core/view-export.d.ts +0 -2
  439. package/dist/utils/sql-dump/core/view-export.d.ts.map +0 -1
  440. package/dist/utils/sql-dump/core/view-export.js +0 -4
  441. package/dist/utils/sql-dump/core/view-export.js.map +0 -1
  442. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +0 -14
  443. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +0 -1
  444. package/dist/utils/sql-dump/formatters/bulk-insert.js +0 -177
  445. package/dist/utils/sql-dump/formatters/bulk-insert.js.map +0 -1
  446. package/dist/utils/sql-dump/formatters/identifiers.d.ts +0 -6
  447. package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +0 -1
  448. package/dist/utils/sql-dump/formatters/identifiers.js +0 -16
  449. package/dist/utils/sql-dump/formatters/identifiers.js.map +0 -1
  450. package/dist/utils/sql-dump/formatters/value-formatter.d.ts +0 -14
  451. package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +0 -1
  452. package/dist/utils/sql-dump/formatters/value-formatter.js +0 -281
  453. package/dist/utils/sql-dump/formatters/value-formatter.js.map +0 -1
  454. package/dist/utils/sql-dump/generators/controls.d.ts +0 -10
  455. package/dist/utils/sql-dump/generators/controls.d.ts.map +0 -1
  456. package/dist/utils/sql-dump/generators/controls.js +0 -36
  457. package/dist/utils/sql-dump/generators/controls.js.map +0 -1
  458. package/dist/utils/sql-dump/generators/headers.d.ts +0 -6
  459. package/dist/utils/sql-dump/generators/headers.d.ts.map +0 -1
  460. package/dist/utils/sql-dump/generators/headers.js +0 -19
  461. package/dist/utils/sql-dump/generators/headers.js.map +0 -1
  462. package/dist/utils/sql-dump/index.d.ts +0 -14
  463. package/dist/utils/sql-dump/index.d.ts.map +0 -1
  464. package/dist/utils/sql-dump/index.js +0 -16
  465. package/dist/utils/sql-dump/index.js.map +0 -1
  466. package/dist/utils/sql-dump/schema/indexes.d.ts +0 -20
  467. package/dist/utils/sql-dump/schema/indexes.d.ts.map +0 -1
  468. package/dist/utils/sql-dump/schema/indexes.js +0 -108
  469. package/dist/utils/sql-dump/schema/indexes.js.map +0 -1
  470. package/dist/utils/sql-dump/schema/primary-keys.d.ts +0 -6
  471. package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +0 -1
  472. package/dist/utils/sql-dump/schema/primary-keys.js +0 -41
  473. package/dist/utils/sql-dump/schema/primary-keys.js.map +0 -1
  474. package/dist/utils/sql-dump/schema/tables.d.ts +0 -15
  475. package/dist/utils/sql-dump/schema/tables.d.ts.map +0 -1
  476. package/dist/utils/sql-dump/schema/tables.js +0 -518
  477. package/dist/utils/sql-dump/schema/tables.js.map +0 -1
  478. package/dist/utils/sql-dump/schema/views.d.ts +0 -11
  479. package/dist/utils/sql-dump/schema/views.d.ts.map +0 -1
  480. package/dist/utils/sql-dump/schema/views.js +0 -116
  481. package/dist/utils/sql-dump/schema/views.js.map +0 -1
  482. package/dist/utils/sql-dump/types.d.ts +0 -10
  483. package/dist/utils/sql-dump/types.d.ts.map +0 -1
  484. package/dist/utils/sql-dump/types.js +0 -3
  485. package/dist/utils/sql-dump/types.js.map +0 -1
  486. package/dist/utils/sql-dump-converters.d.ts +0 -188
  487. package/dist/utils/sql-dump-converters.d.ts.map +0 -1
  488. package/dist/utils/sql-dump-converters.js +0 -315
  489. package/dist/utils/sql-dump-converters.js.map +0 -1
  490. package/dist/watcher/gitignore-parser.d.ts +0 -70
  491. package/dist/watcher/gitignore-parser.d.ts.map +0 -1
  492. package/dist/watcher/gitignore-parser.js +0 -195
  493. package/dist/watcher/gitignore-parser.js.map +0 -1
  494. package/dist/watcher/index.d.ts +0 -9
  495. package/dist/watcher/index.d.ts.map +0 -1
  496. package/dist/watcher/index.js +0 -8
  497. package/dist/watcher/index.js.map +0 -1
  498. /package/dist/tests/{utils → integration}/json-export-import.test.d.ts +0 -0
  499. /package/dist/tests/{utils → integration}/json-export-import.test.js +0 -0
@@ -1,141 +0,0 @@
1
- /**
2
- * DEFAULT value conversion tests for CREATE TABLE statements
3
- *
4
- * Tests that SQLite DEFAULT functions are correctly converted to target database syntax.
5
- * Focus: INTEGER timestamp defaults (strftime('%s', 'now') → UNIX_TIMESTAMP() / EXTRACT(epoch...))
6
- */
7
- import { describe, it } from 'node:test';
8
- import assert from 'node:assert';
9
- import knex from 'knex';
10
- import { generateSqlDump } from '../../../utils/sql-dump/index.js';
11
- describe('SQL Dump DEFAULT Value Conversions', () => {
12
- describe('INTEGER Timestamp Defaults', () => {
13
- it('should convert strftime(\'%s\', \'now\') to UNIX_TIMESTAMP() for MySQL', async () => {
14
- // Create in-memory SQLite database with INTEGER timestamp DEFAULT
15
- const db = knex({
16
- client: 'better-sqlite3',
17
- connection: ':memory:',
18
- useNullAsDefault: true,
19
- });
20
- await db.schema.createTable('v4_help_token_usage', (table) => {
21
- table.increments('usage_id').primary();
22
- table.text('query_type').notNullable();
23
- table.integer('estimated_tokens').notNullable();
24
- // SQLite INTEGER timestamp with strftime DEFAULT (requires parentheses)
25
- table.integer('timestamp').notNullable().defaultTo(db.raw("(strftime('%s', 'now'))"));
26
- });
27
- // Generate MySQL dump
28
- const dump = await generateSqlDump(db, 'mysql', {
29
- tables: ['v4_help_token_usage'],
30
- includeSchema: true,
31
- });
32
- // Verify conversion
33
- assert.ok(dump.includes('UNIX_TIMESTAMP()'), 'Should convert to UNIX_TIMESTAMP()');
34
- assert.ok(!dump.includes('strftime'), 'Should not contain strftime');
35
- assert.ok(!dump.includes('NOW()'), 'Should not use NOW() for integer timestamps');
36
- await db.destroy();
37
- });
38
- it('should convert strftime(\'%s\', \'now\') to EXTRACT(epoch FROM NOW())::INTEGER for PostgreSQL', async () => {
39
- const db = knex({
40
- client: 'better-sqlite3',
41
- connection: ':memory:',
42
- useNullAsDefault: true,
43
- });
44
- await db.schema.createTable('v4_help_token_usage', (table) => {
45
- table.increments('usage_id').primary();
46
- table.text('query_type').notNullable();
47
- table.integer('estimated_tokens').notNullable();
48
- table.integer('timestamp').notNullable().defaultTo(db.raw("(strftime('%s', 'now'))"));
49
- });
50
- const dump = await generateSqlDump(db, 'postgresql', {
51
- tables: ['v4_help_token_usage'],
52
- includeSchema: true,
53
- });
54
- // Verify conversion
55
- assert.ok(dump.includes('EXTRACT(epoch FROM NOW())::INTEGER'), 'Should convert to EXTRACT with INTEGER cast');
56
- assert.ok(!dump.includes('strftime'), 'Should not contain strftime');
57
- assert.ok(!dump.includes('NOW()') || dump.includes('EXTRACT(epoch FROM NOW())'), 'Should not use bare NOW() for integer timestamps');
58
- await db.destroy();
59
- });
60
- it('should convert unixepoch() to UNIX_TIMESTAMP() for MySQL', async () => {
61
- const db = knex({
62
- client: 'better-sqlite3',
63
- connection: ':memory:',
64
- useNullAsDefault: true,
65
- });
66
- await db.schema.createTable('t_test', (table) => {
67
- table.increments('id').primary();
68
- table.integer('created_at').defaultTo(db.raw('(unixepoch())'));
69
- });
70
- const dump = await generateSqlDump(db, 'mysql', {
71
- tables: ['t_test'],
72
- includeSchema: true,
73
- });
74
- assert.ok(dump.includes('UNIX_TIMESTAMP()'), 'Should convert unixepoch() to UNIX_TIMESTAMP()');
75
- assert.ok(!dump.includes('unixepoch'), 'Should not contain unixepoch');
76
- await db.destroy();
77
- });
78
- it('should convert unixepoch() to EXTRACT(epoch FROM NOW())::INTEGER for PostgreSQL', async () => {
79
- const db = knex({
80
- client: 'better-sqlite3',
81
- connection: ':memory:',
82
- useNullAsDefault: true,
83
- });
84
- await db.schema.createTable('t_test', (table) => {
85
- table.increments('id').primary();
86
- table.integer('created_at').defaultTo(db.raw('(unixepoch())'));
87
- });
88
- const dump = await generateSqlDump(db, 'postgresql', {
89
- tables: ['t_test'],
90
- includeSchema: true,
91
- });
92
- assert.ok(dump.includes('EXTRACT(epoch FROM NOW())::INTEGER'), 'Should convert unixepoch() to EXTRACT with INTEGER cast');
93
- assert.ok(!dump.includes('unixepoch'), 'Should not contain unixepoch');
94
- await db.destroy();
95
- });
96
- });
97
- describe('Datetime Defaults (Non-Integer)', () => {
98
- it('should skip DEFAULT for TEXT columns in MySQL (TEXT cannot have DEFAULT)', async () => {
99
- const db = knex({
100
- client: 'better-sqlite3',
101
- connection: ':memory:',
102
- useNullAsDefault: true,
103
- });
104
- await db.schema.createTable('t_test', (table) => {
105
- table.increments('id').primary();
106
- table.text('created_at').defaultTo(db.raw("(strftime('%Y-%m-%d %H:%M:%S', 'now'))"));
107
- });
108
- const dump = await generateSqlDump(db, 'mysql', {
109
- tables: ['t_test'],
110
- includeSchema: true,
111
- });
112
- // MySQL TEXT columns cannot have DEFAULT values, so it should be skipped
113
- // Check that created_at column does not have DEFAULT (ignore DEFAULT CHARSET)
114
- const createdAtLine = dump.split('\n').find(line => line.includes('created_at'));
115
- assert.ok(createdAtLine, 'Should have created_at column');
116
- assert.ok(!createdAtLine.includes('DEFAULT'), 'created_at column should not have DEFAULT');
117
- assert.ok(!dump.includes('strftime'), 'Should not contain strftime');
118
- assert.ok(!dump.includes('NOW()'), 'Should not use NOW() for TEXT columns');
119
- await db.destroy();
120
- });
121
- it('should convert strftime datetime formats to NOW() for PostgreSQL', async () => {
122
- const db = knex({
123
- client: 'better-sqlite3',
124
- connection: ':memory:',
125
- useNullAsDefault: true,
126
- });
127
- await db.schema.createTable('t_test', (table) => {
128
- table.increments('id').primary();
129
- table.text('created_at').defaultTo(db.raw("(strftime('%Y-%m-%d', 'now'))"));
130
- });
131
- const dump = await generateSqlDump(db, 'postgresql', {
132
- tables: ['t_test'],
133
- includeSchema: true,
134
- });
135
- assert.ok(dump.includes('NOW()'), 'Should convert datetime strftime to NOW()');
136
- assert.ok(!dump.includes('strftime'), 'Should not contain strftime');
137
- await db.destroy();
138
- });
139
- });
140
- });
141
- //# sourceMappingURL=default-conversions.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default-conversions.test.js","sourceRoot":"","sources":["../../../../src/tests/database/sql-dump/default-conversions.test.ts"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- /**
2
- * Topological Sort Unit Tests
3
- *
4
- * Tests the foreign key dependency resolution and topological sorting logic.
5
- * Uses DRY shared test utilities from test-helpers.ts
6
- *
7
- * MAINTENANCE NOTE:
8
- * The "End-to-End Sorting with Real Schema" test validates table ordering against
9
- * the actual mcp-sqlew schema by running all migrations. This test MUST be updated
10
- * whenever new tables or foreign key relationships are added to the schema.
11
- *
12
- * What to update after schema changes:
13
- * 1. Add assertions for new FK dependencies (e.g., "new_table should come after parent_table")
14
- * 2. Verify master tables (m_*) still come before transaction tables (t_*)
15
- * 3. Check that the test database isolation (unique temp files) prevents conflicts
16
- *
17
- * Why this matters:
18
- * SQL dumps export tables in dependency order. If topological sort fails or produces
19
- * wrong order, importing the dump will fail with "table does not exist" errors.
20
- *
21
- * Test structure:
22
- * - Pure algorithm tests: Validate sorting logic with synthetic data
23
- * - SQLite integration tests: Test FK extraction from real schema
24
- * - End-to-end test: Validate with full production schema (requires maintenance)
25
- */
26
- export {};
27
- //# sourceMappingURL=table-ordering.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-ordering.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/database/sql-dump/table-ordering.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG"}
@@ -1,284 +0,0 @@
1
- /**
2
- * Topological Sort Unit Tests
3
- *
4
- * Tests the foreign key dependency resolution and topological sorting logic.
5
- * Uses DRY shared test utilities from test-helpers.ts
6
- *
7
- * MAINTENANCE NOTE:
8
- * The "End-to-End Sorting with Real Schema" test validates table ordering against
9
- * the actual mcp-sqlew schema by running all migrations. This test MUST be updated
10
- * whenever new tables or foreign key relationships are added to the schema.
11
- *
12
- * What to update after schema changes:
13
- * 1. Add assertions for new FK dependencies (e.g., "new_table should come after parent_table")
14
- * 2. Verify master tables (m_*) still come before transaction tables (t_*)
15
- * 3. Check that the test database isolation (unique temp files) prevents conflicts
16
- *
17
- * Why this matters:
18
- * SQL dumps export tables in dependency order. If topological sort fails or produces
19
- * wrong order, importing the dump will fail with "table does not exist" errors.
20
- *
21
- * Test structure:
22
- * - Pure algorithm tests: Validate sorting logic with synthetic data
23
- * - SQLite integration tests: Test FK extraction from real schema
24
- * - End-to-end test: Validate with full production schema (requires maintenance)
25
- */
26
- import { describe, it, before } from 'node:test';
27
- import assert from 'node:assert';
28
- import { mkdirSync } from 'node:fs';
29
- import { getTableDependencies, topologicalSort } from '../../../utils/sql-dump/index.js';
30
- import { connectDb, disconnectDb, getDbConfig } from '../../utils/test-helpers.js';
31
- describe('Topological Sort Unit Tests', () => {
32
- // Generate unique database path for this test suite to avoid conflicts
33
- const TEST_DB_PATH = `.tmp-test/table-ordering-${Date.now()}.db`;
34
- // Ensure test directory exists
35
- before(() => {
36
- mkdirSync('.tmp-test', { recursive: true });
37
- });
38
- describe('topologicalSort() - Pure Algorithm Tests', () => {
39
- it('should handle empty table list', () => {
40
- const tables = [];
41
- const dependencies = new Map();
42
- const sorted = topologicalSort(tables, dependencies);
43
- assert.deepStrictEqual(sorted, []);
44
- });
45
- it('should handle single table with no dependencies', () => {
46
- const tables = ['table_a'];
47
- const dependencies = new Map([['table_a', []]]);
48
- const sorted = topologicalSort(tables, dependencies);
49
- assert.deepStrictEqual(sorted, ['table_a']);
50
- });
51
- it('should sort linear dependency chain (A←B←C←D)', () => {
52
- // D depends on C, C depends on B, B depends on A
53
- const tables = ['table_d', 'table_c', 'table_b', 'table_a'];
54
- const dependencies = new Map([
55
- ['table_a', []],
56
- ['table_b', ['table_a']],
57
- ['table_c', ['table_b']],
58
- ['table_d', ['table_c']],
59
- ]);
60
- const sorted = topologicalSort(tables, dependencies);
61
- // Parents must come before children: A → B → C → D
62
- const indexA = sorted.indexOf('table_a');
63
- const indexB = sorted.indexOf('table_b');
64
- const indexC = sorted.indexOf('table_c');
65
- const indexD = sorted.indexOf('table_d');
66
- assert.ok(indexA < indexB, 'A should come before B');
67
- assert.ok(indexB < indexC, 'B should come before C');
68
- assert.ok(indexC < indexD, 'C should come before D');
69
- });
70
- it('should sort diamond dependency (A←B,C; B,C←D)', () => {
71
- // A
72
- // / \
73
- // B C
74
- // \ /
75
- // D
76
- // D depends on both B and C, which both depend on A
77
- const tables = ['table_d', 'table_c', 'table_b', 'table_a'];
78
- const dependencies = new Map([
79
- ['table_a', []],
80
- ['table_b', ['table_a']],
81
- ['table_c', ['table_a']],
82
- ['table_d', ['table_b', 'table_c']],
83
- ]);
84
- const sorted = topologicalSort(tables, dependencies);
85
- const indexA = sorted.indexOf('table_a');
86
- const indexB = sorted.indexOf('table_b');
87
- const indexC = sorted.indexOf('table_c');
88
- const indexD = sorted.indexOf('table_d');
89
- // A must come before B and C
90
- assert.ok(indexA < indexB, 'A should come before B');
91
- assert.ok(indexA < indexC, 'A should come before C');
92
- // B and C must come before D
93
- assert.ok(indexB < indexD, 'B should come before D');
94
- assert.ok(indexC < indexD, 'C should come before D');
95
- });
96
- it('should handle circular dependency (A←B←C←A) with warning', () => {
97
- // Circular: A → B → C → A
98
- const tables = ['table_a', 'table_b', 'table_c'];
99
- const dependencies = new Map([
100
- ['table_a', ['table_c']],
101
- ['table_b', ['table_a']],
102
- ['table_c', ['table_b']],
103
- ]);
104
- // Should complete without throwing (logs warning)
105
- const sorted = topologicalSort(tables, dependencies);
106
- // All tables should be in result
107
- assert.strictEqual(sorted.length, 3);
108
- assert.ok(sorted.includes('table_a'));
109
- assert.ok(sorted.includes('table_b'));
110
- assert.ok(sorted.includes('table_c'));
111
- });
112
- it('should handle self-referential dependency (A←A)', () => {
113
- // Table A has FK to itself (e.g., categories.parent_id → categories.id)
114
- const tables = ['table_a'];
115
- const dependencies = new Map([['table_a', ['table_a']]]);
116
- const sorted = topologicalSort(tables, dependencies);
117
- // Should include table once
118
- assert.strictEqual(sorted.length, 1);
119
- assert.strictEqual(sorted[0], 'table_a');
120
- });
121
- it('should handle disconnected graphs (independent tables)', () => {
122
- // A←B C←D (two separate chains)
123
- const tables = ['table_a', 'table_b', 'table_c', 'table_d'];
124
- const dependencies = new Map([
125
- ['table_a', []],
126
- ['table_b', ['table_a']],
127
- ['table_c', []],
128
- ['table_d', ['table_c']],
129
- ]);
130
- const sorted = topologicalSort(tables, dependencies);
131
- // All tables should be present
132
- assert.strictEqual(sorted.length, 4);
133
- // Dependencies should be respected within each chain
134
- const indexA = sorted.indexOf('table_a');
135
- const indexB = sorted.indexOf('table_b');
136
- const indexC = sorted.indexOf('table_c');
137
- const indexD = sorted.indexOf('table_d');
138
- assert.ok(indexA < indexB, 'A should come before B');
139
- assert.ok(indexC < indexD, 'C should come before D');
140
- });
141
- it('should handle complex multi-dependency graph', () => {
142
- // A
143
- // / \
144
- // B C
145
- // |\ /|
146
- // | X |
147
- // |/ \|
148
- // D E
149
- // \ /
150
- // F
151
- const tables = ['table_a', 'table_b', 'table_c', 'table_d', 'table_e', 'table_f'];
152
- const dependencies = new Map([
153
- ['table_a', []],
154
- ['table_b', ['table_a']],
155
- ['table_c', ['table_a']],
156
- ['table_d', ['table_b', 'table_c']],
157
- ['table_e', ['table_b', 'table_c']],
158
- ['table_f', ['table_d', 'table_e']],
159
- ]);
160
- const sorted = topologicalSort(tables, dependencies);
161
- const indices = new Map(sorted.map((t, i) => [t, i]));
162
- // A must come first
163
- assert.ok(indices.get('table_a') < indices.get('table_b'));
164
- assert.ok(indices.get('table_a') < indices.get('table_c'));
165
- // B and C before D and E
166
- assert.ok(indices.get('table_b') < indices.get('table_d'));
167
- assert.ok(indices.get('table_b') < indices.get('table_e'));
168
- assert.ok(indices.get('table_c') < indices.get('table_d'));
169
- assert.ok(indices.get('table_c') < indices.get('table_e'));
170
- // D and E before F
171
- assert.ok(indices.get('table_d') < indices.get('table_f'));
172
- assert.ok(indices.get('table_e') < indices.get('table_f'));
173
- });
174
- });
175
- describe('getTableDependencies() - SQLite Integration', () => {
176
- let db;
177
- it('should extract FK dependencies from SQLite schema', async () => {
178
- const config = getDbConfig('sqlite', TEST_DB_PATH);
179
- db = await connectDb(config);
180
- // Create test schema with FK relationships
181
- await db.schema.createTable('m_projects', (table) => {
182
- table.increments('id').primary();
183
- table.string('name').notNullable();
184
- });
185
- await db.schema.createTable('v4_users', (table) => {
186
- table.increments('id').primary();
187
- table.integer('project_id').unsigned().notNullable();
188
- table.foreign('project_id').references('m_projects.id');
189
- });
190
- await db.schema.createTable('v4_posts', (table) => {
191
- table.increments('id').primary();
192
- table.integer('user_id').unsigned().notNullable();
193
- table.foreign('user_id').references('v4_users.id');
194
- });
195
- // Extract dependencies
196
- const tables = ['m_projects', 'v4_users', 'v4_posts'];
197
- const dependencies = await getTableDependencies(db, tables);
198
- // Verify dependencies
199
- assert.deepStrictEqual(dependencies.get('m_projects'), []);
200
- assert.deepStrictEqual(dependencies.get('v4_users'), ['m_projects']);
201
- assert.deepStrictEqual(dependencies.get('v4_posts'), ['v4_users']);
202
- // Clean up
203
- await disconnectDb(db);
204
- });
205
- it('should handle self-referential FK (categories example)', async () => {
206
- const config = getDbConfig('sqlite', TEST_DB_PATH);
207
- db = await connectDb(config);
208
- // Categories table with parent_id self-reference
209
- await db.schema.createTable('categories', (table) => {
210
- table.increments('id').primary();
211
- table.string('name').notNullable();
212
- table.integer('parent_id').unsigned().nullable();
213
- table.foreign('parent_id').references('categories.id');
214
- });
215
- const tables = ['categories'];
216
- const dependencies = await getTableDependencies(db, tables);
217
- // Self-references are intentionally filtered out (don't affect sort order)
218
- assert.deepStrictEqual(dependencies.get('categories'), []);
219
- await disconnectDb(db);
220
- });
221
- it('should handle tables with no FKs', async () => {
222
- const config = getDbConfig('sqlite', TEST_DB_PATH);
223
- db = await connectDb(config);
224
- await db.schema.createTable('standalone_table', (table) => {
225
- table.increments('id').primary();
226
- table.string('data');
227
- });
228
- const tables = ['standalone_table'];
229
- const dependencies = await getTableDependencies(db, tables);
230
- assert.deepStrictEqual(dependencies.get('standalone_table'), []);
231
- await disconnectDb(db);
232
- });
233
- it('should ignore FKs to tables not in the list', async () => {
234
- const config = getDbConfig('sqlite', TEST_DB_PATH);
235
- db = await connectDb(config);
236
- await db.schema.createTable('external_table', (table) => {
237
- table.increments('id').primary();
238
- });
239
- await db.schema.createTable('my_table', (table) => {
240
- table.increments('id').primary();
241
- table.integer('external_id').unsigned();
242
- table.foreign('external_id').references('external_table.id');
243
- });
244
- // Only include my_table in the list
245
- const tables = ['my_table'];
246
- const dependencies = await getTableDependencies(db, tables);
247
- // FK to external_table should be ignored
248
- assert.deepStrictEqual(dependencies.get('my_table'), []);
249
- await disconnectDb(db);
250
- });
251
- });
252
- describe('End-to-End Sorting with Real Schema', () => {
253
- // ⚠️ MAINTENANCE REQUIRED: Update this test when adding new tables or FK relationships
254
- // This test validates dependency order using the REAL production schema
255
- it('should correctly sort mcp-sqlew schema tables', async () => {
256
- // Use separate database for migration test to avoid conflicts
257
- const E2E_DB_PATH = `.tmp-test/table-ordering-e2e-${Date.now()}.db`;
258
- const config = getDbConfig('sqlite', E2E_DB_PATH);
259
- const db = await connectDb(config);
260
- // Run migrations to get real schema
261
- await db.migrate.latest();
262
- // Get all tables
263
- const result = await db.raw(`
264
- SELECT name FROM sqlite_master
265
- WHERE type='table' AND name NOT LIKE 'sqlite_%' AND name != 'knex_migrations'
266
- ORDER BY name
267
- `);
268
- const tables = result.map((r) => r.name);
269
- // Extract dependencies
270
- const dependencies = await getTableDependencies(db, tables);
271
- // Sort topologically
272
- const sorted = topologicalSort(tables, dependencies);
273
- // Verify master tables come before transaction tables
274
- // ⚠️ ADD NEW ASSERTIONS HERE when adding tables with FK dependencies
275
- const projectsIndex = sorted.indexOf('m_projects');
276
- const decisionsIndex = sorted.indexOf('t_decisions');
277
- const constraintsIndex = sorted.indexOf('t_constraints');
278
- assert.ok(projectsIndex < decisionsIndex, 'm_projects should come before t_decisions');
279
- assert.ok(projectsIndex < constraintsIndex, 'm_projects should come before t_constraints');
280
- await disconnectDb(db);
281
- });
282
- });
283
- });
284
- //# sourceMappingURL=table-ordering.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-ordering.test.js","sourceRoot":"","sources":["../../../../src/tests/database/sql-dump/table-ordering.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Type-aware value conversion tests
3
- *
4
- * Tests enhanced convertValueWithType() with Knex columnInfo() support
5
- * for accurate cross-database type conversions.
6
- */
7
- export {};
8
- //# sourceMappingURL=type-conversion.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"type-conversion.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/database/sql-dump/type-conversion.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}