@schema-weaver/pg-connector 0.0.0-stage → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1065) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/LICENSE +21 -0
  3. package/README.md +457 -2
  4. package/dist/cjs/audit/chain.d.ts +365 -0
  5. package/dist/cjs/audit/chain.d.ts.map +1 -0
  6. package/dist/cjs/audit/chain.js +959 -0
  7. package/dist/cjs/audit/chain.js.map +1 -0
  8. package/dist/cjs/audit/cloud-client.d.ts +142 -0
  9. package/dist/cjs/audit/cloud-client.d.ts.map +1 -0
  10. package/dist/cjs/audit/cloud-client.js +364 -0
  11. package/dist/cjs/audit/cloud-client.js.map +1 -0
  12. package/dist/cjs/audit/cloud-writer.d.ts +57 -0
  13. package/dist/cjs/audit/cloud-writer.d.ts.map +1 -0
  14. package/dist/cjs/audit/cloud-writer.js +95 -0
  15. package/dist/cjs/audit/cloud-writer.js.map +1 -0
  16. package/dist/cjs/audit/context.d.ts +51 -0
  17. package/dist/cjs/audit/context.d.ts.map +1 -0
  18. package/dist/cjs/audit/context.js +75 -0
  19. package/dist/cjs/audit/context.js.map +1 -0
  20. package/dist/cjs/audit/files.d.ts +111 -0
  21. package/dist/cjs/audit/files.d.ts.map +1 -0
  22. package/dist/cjs/audit/files.js +406 -0
  23. package/dist/cjs/audit/files.js.map +1 -0
  24. package/dist/cjs/audit/index.d.ts +9 -0
  25. package/dist/cjs/audit/index.d.ts.map +1 -0
  26. package/dist/cjs/audit/index.js +68 -0
  27. package/dist/cjs/audit/index.js.map +1 -0
  28. package/dist/cjs/audit/local-writer.d.ts +255 -0
  29. package/dist/cjs/audit/local-writer.d.ts.map +1 -0
  30. package/dist/cjs/audit/local-writer.js +829 -0
  31. package/dist/cjs/audit/local-writer.js.map +1 -0
  32. package/dist/cjs/audit/redact.d.ts +151 -0
  33. package/dist/cjs/audit/redact.d.ts.map +1 -0
  34. package/dist/cjs/audit/redact.js +549 -0
  35. package/dist/cjs/audit/redact.js.map +1 -0
  36. package/dist/cjs/audit/sanitize.d.ts +78 -0
  37. package/dist/cjs/audit/sanitize.d.ts.map +1 -0
  38. package/dist/cjs/audit/sanitize.js +315 -0
  39. package/dist/cjs/audit/sanitize.js.map +1 -0
  40. package/dist/cjs/audit/sink.d.ts +278 -0
  41. package/dist/cjs/audit/sink.d.ts.map +1 -0
  42. package/dist/cjs/audit/sink.js +819 -0
  43. package/dist/cjs/audit/sink.js.map +1 -0
  44. package/dist/cjs/audit/types.d.ts +226 -0
  45. package/dist/cjs/audit/types.d.ts.map +1 -0
  46. package/dist/cjs/audit/types.js +3 -0
  47. package/dist/cjs/audit/types.js.map +1 -0
  48. package/dist/cjs/audit/verify-cache.d.ts +127 -0
  49. package/dist/cjs/audit/verify-cache.d.ts.map +1 -0
  50. package/dist/cjs/audit/verify-cache.js +668 -0
  51. package/dist/cjs/audit/verify-cache.js.map +1 -0
  52. package/dist/cjs/channels/agent-session.d.ts +228 -0
  53. package/dist/cjs/channels/agent-session.d.ts.map +1 -0
  54. package/dist/cjs/channels/agent-session.js +604 -0
  55. package/dist/cjs/channels/agent-session.js.map +1 -0
  56. package/dist/cjs/channels/data-channel.d.ts +181 -0
  57. package/dist/cjs/channels/data-channel.d.ts.map +1 -0
  58. package/dist/cjs/channels/data-channel.js +607 -0
  59. package/dist/cjs/channels/data-channel.js.map +1 -0
  60. package/dist/cjs/channels/reconnect.d.ts +142 -0
  61. package/dist/cjs/channels/reconnect.d.ts.map +1 -0
  62. package/dist/cjs/channels/reconnect.js +247 -0
  63. package/dist/cjs/channels/reconnect.js.map +1 -0
  64. package/dist/cjs/channels/types.d.ts +112 -0
  65. package/dist/cjs/channels/types.d.ts.map +1 -0
  66. package/dist/cjs/channels/types.js +3 -0
  67. package/dist/cjs/channels/types.js.map +1 -0
  68. package/dist/cjs/channels/wake-channel.d.ts +232 -0
  69. package/dist/cjs/channels/wake-channel.d.ts.map +1 -0
  70. package/dist/cjs/channels/wake-channel.js +752 -0
  71. package/dist/cjs/channels/wake-channel.js.map +1 -0
  72. package/dist/cjs/cli/banner.d.ts +2 -0
  73. package/dist/cjs/cli/banner.d.ts.map +1 -0
  74. package/dist/cjs/cli/banner.js +150 -0
  75. package/dist/cjs/cli/banner.js.map +1 -0
  76. package/dist/cjs/cli/commands/agent.d.ts +30 -0
  77. package/dist/cjs/cli/commands/agent.d.ts.map +1 -0
  78. package/dist/cjs/cli/commands/agent.js +214 -0
  79. package/dist/cjs/cli/commands/agent.js.map +1 -0
  80. package/dist/cjs/cli/commands/audit-verify.d.ts +19 -0
  81. package/dist/cjs/cli/commands/audit-verify.d.ts.map +1 -0
  82. package/dist/cjs/cli/commands/audit-verify.js +382 -0
  83. package/dist/cjs/cli/commands/audit-verify.js.map +1 -0
  84. package/dist/cjs/cli/commands/clean.d.ts +23 -0
  85. package/dist/cjs/cli/commands/clean.d.ts.map +1 -0
  86. package/dist/cjs/cli/commands/clean.js +272 -0
  87. package/dist/cjs/cli/commands/clean.js.map +1 -0
  88. package/dist/cjs/cli/commands/config-show.d.ts +2 -0
  89. package/dist/cjs/cli/commands/config-show.d.ts.map +1 -0
  90. package/dist/cjs/cli/commands/config-show.js +10 -0
  91. package/dist/cjs/cli/commands/config-show.js.map +1 -0
  92. package/dist/cjs/cli/commands/config.d.ts +6 -0
  93. package/dist/cjs/cli/commands/config.d.ts.map +1 -0
  94. package/dist/cjs/cli/commands/config.js +266 -0
  95. package/dist/cjs/cli/commands/config.js.map +1 -0
  96. package/dist/cjs/cli/commands/db-add.d.ts +16 -0
  97. package/dist/cjs/cli/commands/db-add.d.ts.map +1 -0
  98. package/dist/cjs/cli/commands/db-add.js +613 -0
  99. package/dist/cjs/cli/commands/db-add.js.map +1 -0
  100. package/dist/cjs/cli/commands/db-edit.d.ts +2 -0
  101. package/dist/cjs/cli/commands/db-edit.d.ts.map +1 -0
  102. package/dist/cjs/cli/commands/db-edit.js +388 -0
  103. package/dist/cjs/cli/commands/db-edit.js.map +1 -0
  104. package/dist/cjs/cli/commands/db-logs.d.ts +3 -0
  105. package/dist/cjs/cli/commands/db-logs.d.ts.map +1 -0
  106. package/dist/cjs/cli/commands/db-logs.js +67 -0
  107. package/dist/cjs/cli/commands/db-logs.js.map +1 -0
  108. package/dist/cjs/cli/commands/db-ls.d.ts +2 -0
  109. package/dist/cjs/cli/commands/db-ls.d.ts.map +1 -0
  110. package/dist/cjs/cli/commands/db-ls.js +118 -0
  111. package/dist/cjs/cli/commands/db-ls.js.map +1 -0
  112. package/dist/cjs/cli/commands/db-query.d.ts +121 -0
  113. package/dist/cjs/cli/commands/db-query.d.ts.map +1 -0
  114. package/dist/cjs/cli/commands/db-query.js +802 -0
  115. package/dist/cjs/cli/commands/db-query.js.map +1 -0
  116. package/dist/cjs/cli/commands/db-remove.d.ts +2 -0
  117. package/dist/cjs/cli/commands/db-remove.d.ts.map +1 -0
  118. package/dist/cjs/cli/commands/db-remove.js +51 -0
  119. package/dist/cjs/cli/commands/db-remove.js.map +1 -0
  120. package/dist/cjs/cli/commands/db-show.d.ts +2 -0
  121. package/dist/cjs/cli/commands/db-show.d.ts.map +1 -0
  122. package/dist/cjs/cli/commands/db-show.js +134 -0
  123. package/dist/cjs/cli/commands/db-show.js.map +1 -0
  124. package/dist/cjs/cli/commands/db-test.d.ts +3 -0
  125. package/dist/cjs/cli/commands/db-test.d.ts.map +1 -0
  126. package/dist/cjs/cli/commands/db-test.js +311 -0
  127. package/dist/cjs/cli/commands/db-test.js.map +1 -0
  128. package/dist/cjs/cli/commands/db.d.ts +11 -0
  129. package/dist/cjs/cli/commands/db.d.ts.map +1 -0
  130. package/dist/cjs/cli/commands/db.js +90 -0
  131. package/dist/cjs/cli/commands/db.js.map +1 -0
  132. package/dist/cjs/cli/commands/debug.d.ts +2 -0
  133. package/dist/cjs/cli/commands/debug.d.ts.map +1 -0
  134. package/dist/cjs/cli/commands/debug.js +241 -0
  135. package/dist/cjs/cli/commands/debug.js.map +1 -0
  136. package/dist/cjs/cli/commands/doctor.d.ts +5 -0
  137. package/dist/cjs/cli/commands/doctor.d.ts.map +1 -0
  138. package/dist/cjs/cli/commands/doctor.js +117 -0
  139. package/dist/cjs/cli/commands/doctor.js.map +1 -0
  140. package/dist/cjs/cli/commands/index.d.ts +10 -0
  141. package/dist/cjs/cli/commands/index.d.ts.map +1 -0
  142. package/dist/cjs/cli/commands/index.js +30 -0
  143. package/dist/cjs/cli/commands/index.js.map +1 -0
  144. package/dist/cjs/cli/commands/init.d.ts +2 -0
  145. package/dist/cjs/cli/commands/init.d.ts.map +1 -0
  146. package/dist/cjs/cli/commands/init.js +199 -0
  147. package/dist/cjs/cli/commands/init.js.map +1 -0
  148. package/dist/cjs/cli/commands/link.d.ts +5 -0
  149. package/dist/cjs/cli/commands/link.d.ts.map +1 -0
  150. package/dist/cjs/cli/commands/link.js +44 -0
  151. package/dist/cjs/cli/commands/link.js.map +1 -0
  152. package/dist/cjs/cli/commands/logs.d.ts +17 -0
  153. package/dist/cjs/cli/commands/logs.d.ts.map +1 -0
  154. package/dist/cjs/cli/commands/logs.js +314 -0
  155. package/dist/cjs/cli/commands/logs.js.map +1 -0
  156. package/dist/cjs/cli/commands/project-show.d.ts +2 -0
  157. package/dist/cjs/cli/commands/project-show.d.ts.map +1 -0
  158. package/dist/cjs/cli/commands/project-show.js +105 -0
  159. package/dist/cjs/cli/commands/project-show.js.map +1 -0
  160. package/dist/cjs/cli/commands/project.d.ts +3 -0
  161. package/dist/cjs/cli/commands/project.d.ts.map +1 -0
  162. package/dist/cjs/cli/commands/project.js +64 -0
  163. package/dist/cjs/cli/commands/project.js.map +1 -0
  164. package/dist/cjs/cli/commands/service.d.ts +123 -0
  165. package/dist/cjs/cli/commands/service.d.ts.map +1 -0
  166. package/dist/cjs/cli/commands/service.js +554 -0
  167. package/dist/cjs/cli/commands/service.js.map +1 -0
  168. package/dist/cjs/cli/commands/start.d.ts +6 -0
  169. package/dist/cjs/cli/commands/start.d.ts.map +1 -0
  170. package/dist/cjs/cli/commands/start.js +308 -0
  171. package/dist/cjs/cli/commands/start.js.map +1 -0
  172. package/dist/cjs/cli/commands/status.d.ts +2 -0
  173. package/dist/cjs/cli/commands/status.d.ts.map +1 -0
  174. package/dist/cjs/cli/commands/status.js +225 -0
  175. package/dist/cjs/cli/commands/status.js.map +1 -0
  176. package/dist/cjs/cli/commands/stop.d.ts +6 -0
  177. package/dist/cjs/cli/commands/stop.d.ts.map +1 -0
  178. package/dist/cjs/cli/commands/stop.js +99 -0
  179. package/dist/cjs/cli/commands/stop.js.map +1 -0
  180. package/dist/cjs/cli/daemon/error-tracker.d.ts +119 -0
  181. package/dist/cjs/cli/daemon/error-tracker.d.ts.map +1 -0
  182. package/dist/cjs/cli/daemon/error-tracker.js +500 -0
  183. package/dist/cjs/cli/daemon/error-tracker.js.map +1 -0
  184. package/dist/cjs/cli/daemon/fault-shutdown.d.ts +144 -0
  185. package/dist/cjs/cli/daemon/fault-shutdown.d.ts.map +1 -0
  186. package/dist/cjs/cli/daemon/fault-shutdown.js +312 -0
  187. package/dist/cjs/cli/daemon/fault-shutdown.js.map +1 -0
  188. package/dist/cjs/cli/daemon/index.d.ts +12 -0
  189. package/dist/cjs/cli/daemon/index.d.ts.map +1 -0
  190. package/dist/cjs/cli/daemon/index.js +23 -0
  191. package/dist/cjs/cli/daemon/index.js.map +1 -0
  192. package/dist/cjs/cli/daemon/pid-file.d.ts +13 -0
  193. package/dist/cjs/cli/daemon/pid-file.d.ts.map +1 -0
  194. package/dist/cjs/cli/daemon/pid-file.js +90 -0
  195. package/dist/cjs/cli/daemon/pid-file.js.map +1 -0
  196. package/dist/cjs/cli/daemon/readiness.d.ts +30 -0
  197. package/dist/cjs/cli/daemon/readiness.d.ts.map +1 -0
  198. package/dist/cjs/cli/daemon/readiness.js +74 -0
  199. package/dist/cjs/cli/daemon/readiness.js.map +1 -0
  200. package/dist/cjs/cli/daemon/runtime.d.ts +366 -0
  201. package/dist/cjs/cli/daemon/runtime.d.ts.map +1 -0
  202. package/dist/cjs/cli/daemon/runtime.js +1343 -0
  203. package/dist/cjs/cli/daemon/runtime.js.map +1 -0
  204. package/dist/cjs/cli/daemon/shutdown.d.ts +7 -0
  205. package/dist/cjs/cli/daemon/shutdown.d.ts.map +1 -0
  206. package/dist/cjs/cli/daemon/shutdown.js +66 -0
  207. package/dist/cjs/cli/daemon/shutdown.js.map +1 -0
  208. package/dist/cjs/cli/daemon/signal-handlers.d.ts +3 -0
  209. package/dist/cjs/cli/daemon/signal-handlers.d.ts.map +1 -0
  210. package/dist/cjs/cli/daemon/signal-handlers.js +27 -0
  211. package/dist/cjs/cli/daemon/signal-handlers.js.map +1 -0
  212. package/dist/cjs/cli/daemon/state.d.ts +157 -0
  213. package/dist/cjs/cli/daemon/state.d.ts.map +1 -0
  214. package/dist/cjs/cli/daemon/state.js +397 -0
  215. package/dist/cjs/cli/daemon/state.js.map +1 -0
  216. package/dist/cjs/cli/daemon/status-file.d.ts +139 -0
  217. package/dist/cjs/cli/daemon/status-file.d.ts.map +1 -0
  218. package/dist/cjs/cli/daemon/status-file.js +88 -0
  219. package/dist/cjs/cli/daemon/status-file.js.map +1 -0
  220. package/dist/cjs/cli/doctor/checks.d.ts +133 -0
  221. package/dist/cjs/cli/doctor/checks.d.ts.map +1 -0
  222. package/dist/cjs/cli/doctor/checks.js +677 -0
  223. package/dist/cjs/cli/doctor/checks.js.map +1 -0
  224. package/dist/cjs/cli/doctor/fixes.d.ts +9 -0
  225. package/dist/cjs/cli/doctor/fixes.d.ts.map +1 -0
  226. package/dist/cjs/cli/doctor/fixes.js +199 -0
  227. package/dist/cjs/cli/doctor/fixes.js.map +1 -0
  228. package/dist/cjs/cli/doctor/index.d.ts +7 -0
  229. package/dist/cjs/cli/doctor/index.d.ts.map +1 -0
  230. package/dist/cjs/cli/doctor/index.js +27 -0
  231. package/dist/cjs/cli/doctor/index.js.map +1 -0
  232. package/dist/cjs/cli/index.d.ts +3 -0
  233. package/dist/cjs/cli/index.d.ts.map +1 -0
  234. package/dist/cjs/cli/index.js +336 -0
  235. package/dist/cjs/cli/index.js.map +1 -0
  236. package/dist/cjs/cli/interactive.d.ts +8 -0
  237. package/dist/cjs/cli/interactive.d.ts.map +1 -0
  238. package/dist/cjs/cli/interactive.js +670 -0
  239. package/dist/cjs/cli/interactive.js.map +1 -0
  240. package/dist/cjs/cli/logs/format.d.ts +13 -0
  241. package/dist/cjs/cli/logs/format.d.ts.map +1 -0
  242. package/dist/cjs/cli/logs/format.js +178 -0
  243. package/dist/cjs/cli/logs/format.js.map +1 -0
  244. package/dist/cjs/cli/logs/index.d.ts +3 -0
  245. package/dist/cjs/cli/logs/index.d.ts.map +1 -0
  246. package/dist/cjs/cli/logs/index.js +13 -0
  247. package/dist/cjs/cli/logs/index.js.map +1 -0
  248. package/dist/cjs/cli/logs/viewer.d.ts +41 -0
  249. package/dist/cjs/cli/logs/viewer.d.ts.map +1 -0
  250. package/dist/cjs/cli/logs/viewer.js +417 -0
  251. package/dist/cjs/cli/logs/viewer.js.map +1 -0
  252. package/dist/cjs/cli/ops/operation-logger.d.ts +63 -0
  253. package/dist/cjs/cli/ops/operation-logger.d.ts.map +1 -0
  254. package/dist/cjs/cli/ops/operation-logger.js +183 -0
  255. package/dist/cjs/cli/ops/operation-logger.js.map +1 -0
  256. package/dist/cjs/cli/palette.d.ts +11 -0
  257. package/dist/cjs/cli/palette.d.ts.map +1 -0
  258. package/dist/cjs/cli/palette.js +243 -0
  259. package/dist/cjs/cli/palette.js.map +1 -0
  260. package/dist/cjs/cli/prompt.d.ts +186 -0
  261. package/dist/cjs/cli/prompt.d.ts.map +1 -0
  262. package/dist/cjs/cli/prompt.js +541 -0
  263. package/dist/cjs/cli/prompt.js.map +1 -0
  264. package/dist/cjs/cli/ui/box.d.ts +21 -0
  265. package/dist/cjs/cli/ui/box.d.ts.map +1 -0
  266. package/dist/cjs/cli/ui/box.js +72 -0
  267. package/dist/cjs/cli/ui/box.js.map +1 -0
  268. package/dist/cjs/cli/ui/clipboard.d.ts +6 -0
  269. package/dist/cjs/cli/ui/clipboard.d.ts.map +1 -0
  270. package/dist/cjs/cli/ui/clipboard.js +78 -0
  271. package/dist/cjs/cli/ui/clipboard.js.map +1 -0
  272. package/dist/cjs/cli/ui/colors.d.ts +57 -0
  273. package/dist/cjs/cli/ui/colors.d.ts.map +1 -0
  274. package/dist/cjs/cli/ui/colors.js +151 -0
  275. package/dist/cjs/cli/ui/colors.js.map +1 -0
  276. package/dist/cjs/cli/ui/index.d.ts +9 -0
  277. package/dist/cjs/cli/ui/index.d.ts.map +1 -0
  278. package/dist/cjs/cli/ui/index.js +55 -0
  279. package/dist/cjs/cli/ui/index.js.map +1 -0
  280. package/dist/cjs/cli/ui/spinner.d.ts +12 -0
  281. package/dist/cjs/cli/ui/spinner.d.ts.map +1 -0
  282. package/dist/cjs/cli/ui/spinner.js +82 -0
  283. package/dist/cjs/cli/ui/spinner.js.map +1 -0
  284. package/dist/cjs/cli/ui/symbols.d.ts +47 -0
  285. package/dist/cjs/cli/ui/symbols.d.ts.map +1 -0
  286. package/dist/cjs/cli/ui/symbols.js +112 -0
  287. package/dist/cjs/cli/ui/symbols.js.map +1 -0
  288. package/dist/cjs/cli/ui/table.d.ts +23 -0
  289. package/dist/cjs/cli/ui/table.d.ts.map +1 -0
  290. package/dist/cjs/cli/ui/table.js +160 -0
  291. package/dist/cjs/cli/ui/table.js.map +1 -0
  292. package/dist/cjs/cli/ui/terminal.d.ts +7 -0
  293. package/dist/cjs/cli/ui/terminal.d.ts.map +1 -0
  294. package/dist/cjs/cli/ui/terminal.js +40 -0
  295. package/dist/cjs/cli/ui/terminal.js.map +1 -0
  296. package/dist/cjs/config/atomic-write.d.ts +69 -0
  297. package/dist/cjs/config/atomic-write.d.ts.map +1 -0
  298. package/dist/cjs/config/atomic-write.js +289 -0
  299. package/dist/cjs/config/atomic-write.js.map +1 -0
  300. package/dist/cjs/config/db-config.d.ts +134 -0
  301. package/dist/cjs/config/db-config.d.ts.map +1 -0
  302. package/dist/cjs/config/db-config.js +594 -0
  303. package/dist/cjs/config/db-config.js.map +1 -0
  304. package/dist/cjs/config/machine-config.d.ts +85 -0
  305. package/dist/cjs/config/machine-config.d.ts.map +1 -0
  306. package/dist/cjs/config/machine-config.js +232 -0
  307. package/dist/cjs/config/machine-config.js.map +1 -0
  308. package/dist/cjs/config/paths.d.ts +64 -0
  309. package/dist/cjs/config/paths.d.ts.map +1 -0
  310. package/dist/cjs/config/paths.js +155 -0
  311. package/dist/cjs/config/paths.js.map +1 -0
  312. package/dist/cjs/config/schema.d.ts +72 -0
  313. package/dist/cjs/config/schema.d.ts.map +1 -0
  314. package/dist/cjs/config/schema.js +197 -0
  315. package/dist/cjs/config/schema.js.map +1 -0
  316. package/dist/cjs/config/token.d.ts +63 -0
  317. package/dist/cjs/config/token.d.ts.map +1 -0
  318. package/dist/cjs/config/token.js +146 -0
  319. package/dist/cjs/config/token.js.map +1 -0
  320. package/dist/cjs/execution/canceller.d.ts +41 -0
  321. package/dist/cjs/execution/canceller.d.ts.map +1 -0
  322. package/dist/cjs/execution/canceller.js +209 -0
  323. package/dist/cjs/execution/canceller.js.map +1 -0
  324. package/dist/cjs/execution/database-lookup.d.ts +56 -0
  325. package/dist/cjs/execution/database-lookup.d.ts.map +1 -0
  326. package/dist/cjs/execution/database-lookup.js +43 -0
  327. package/dist/cjs/execution/database-lookup.js.map +1 -0
  328. package/dist/cjs/execution/dispatcher.d.ts +181 -0
  329. package/dist/cjs/execution/dispatcher.d.ts.map +1 -0
  330. package/dist/cjs/execution/dispatcher.js +1296 -0
  331. package/dist/cjs/execution/dispatcher.js.map +1 -0
  332. package/dist/cjs/execution/function-effects.d.ts +209 -0
  333. package/dist/cjs/execution/function-effects.d.ts.map +1 -0
  334. package/dist/cjs/execution/function-effects.js +596 -0
  335. package/dist/cjs/execution/function-effects.js.map +1 -0
  336. package/dist/cjs/execution/introspection.d.ts +76 -0
  337. package/dist/cjs/execution/introspection.d.ts.map +1 -0
  338. package/dist/cjs/execution/introspection.js +448 -0
  339. package/dist/cjs/execution/introspection.js.map +1 -0
  340. package/dist/cjs/execution/migration-runner.d.ts +128 -0
  341. package/dist/cjs/execution/migration-runner.d.ts.map +1 -0
  342. package/dist/cjs/execution/migration-runner.js +798 -0
  343. package/dist/cjs/execution/migration-runner.js.map +1 -0
  344. package/dist/cjs/execution/non-tx-detector.d.ts +23 -0
  345. package/dist/cjs/execution/non-tx-detector.d.ts.map +1 -0
  346. package/dist/cjs/execution/non-tx-detector.js +218 -0
  347. package/dist/cjs/execution/non-tx-detector.js.map +1 -0
  348. package/dist/cjs/execution/pool.d.ts +229 -0
  349. package/dist/cjs/execution/pool.d.ts.map +1 -0
  350. package/dist/cjs/execution/pool.js +738 -0
  351. package/dist/cjs/execution/pool.js.map +1 -0
  352. package/dist/cjs/execution/query-runner.d.ts +88 -0
  353. package/dist/cjs/execution/query-runner.d.ts.map +1 -0
  354. package/dist/cjs/execution/query-runner.js +751 -0
  355. package/dist/cjs/execution/query-runner.js.map +1 -0
  356. package/dist/cjs/execution/rate-limiter.d.ts +120 -0
  357. package/dist/cjs/execution/rate-limiter.d.ts.map +1 -0
  358. package/dist/cjs/execution/rate-limiter.js +273 -0
  359. package/dist/cjs/execution/rate-limiter.js.map +1 -0
  360. package/dist/cjs/execution/search-path.d.ts +161 -0
  361. package/dist/cjs/execution/search-path.d.ts.map +1 -0
  362. package/dist/cjs/execution/search-path.js +279 -0
  363. package/dist/cjs/execution/search-path.js.map +1 -0
  364. package/dist/cjs/execution/sql-parser.d.ts +195 -0
  365. package/dist/cjs/execution/sql-parser.d.ts.map +1 -0
  366. package/dist/cjs/execution/sql-parser.js +704 -0
  367. package/dist/cjs/execution/sql-parser.js.map +1 -0
  368. package/dist/cjs/execution/statement-classifier.d.ts +103 -0
  369. package/dist/cjs/execution/statement-classifier.d.ts.map +1 -0
  370. package/dist/cjs/execution/statement-classifier.js +535 -0
  371. package/dist/cjs/execution/statement-classifier.js.map +1 -0
  372. package/dist/cjs/execution/types.d.ts +189 -0
  373. package/dist/cjs/execution/types.d.ts.map +1 -0
  374. package/dist/cjs/execution/types.js +28 -0
  375. package/dist/cjs/execution/types.js.map +1 -0
  376. package/dist/cjs/index.d.ts +34 -0
  377. package/dist/cjs/index.d.ts.map +1 -0
  378. package/dist/cjs/index.js +98 -0
  379. package/dist/cjs/index.js.map +1 -0
  380. package/dist/cjs/permissions/auto-upgrade.d.ts +40 -0
  381. package/dist/cjs/permissions/auto-upgrade.d.ts.map +1 -0
  382. package/dist/cjs/permissions/auto-upgrade.js +168 -0
  383. package/dist/cjs/permissions/auto-upgrade.js.map +1 -0
  384. package/dist/cjs/permissions/checker.d.ts +53 -0
  385. package/dist/cjs/permissions/checker.d.ts.map +1 -0
  386. package/dist/cjs/permissions/checker.js +326 -0
  387. package/dist/cjs/permissions/checker.js.map +1 -0
  388. package/dist/cjs/permissions/manual-approval.d.ts +213 -0
  389. package/dist/cjs/permissions/manual-approval.d.ts.map +1 -0
  390. package/dist/cjs/permissions/manual-approval.js +541 -0
  391. package/dist/cjs/permissions/manual-approval.js.map +1 -0
  392. package/dist/cjs/permissions/plan-registry.d.ts +274 -0
  393. package/dist/cjs/permissions/plan-registry.d.ts.map +1 -0
  394. package/dist/cjs/permissions/plan-registry.js +454 -0
  395. package/dist/cjs/permissions/plan-registry.js.map +1 -0
  396. package/dist/cjs/permissions/role-policy.d.ts +217 -0
  397. package/dist/cjs/permissions/role-policy.d.ts.map +1 -0
  398. package/dist/cjs/permissions/role-policy.js +584 -0
  399. package/dist/cjs/permissions/role-policy.js.map +1 -0
  400. package/dist/cjs/permissions/types.d.ts +126 -0
  401. package/dist/cjs/permissions/types.d.ts.map +1 -0
  402. package/dist/cjs/permissions/types.js +3 -0
  403. package/dist/cjs/permissions/types.js.map +1 -0
  404. package/dist/cjs/protocol/constants.d.ts +72 -0
  405. package/dist/cjs/protocol/constants.d.ts.map +1 -0
  406. package/dist/cjs/protocol/constants.js +107 -0
  407. package/dist/cjs/protocol/constants.js.map +1 -0
  408. package/dist/cjs/protocol/envelope.d.ts +165 -0
  409. package/dist/cjs/protocol/envelope.d.ts.map +1 -0
  410. package/dist/cjs/protocol/envelope.js +309 -0
  411. package/dist/cjs/protocol/envelope.js.map +1 -0
  412. package/dist/cjs/protocol/errors.d.ts +33 -0
  413. package/dist/cjs/protocol/errors.d.ts.map +1 -0
  414. package/dist/cjs/protocol/errors.js +391 -0
  415. package/dist/cjs/protocol/errors.js.map +1 -0
  416. package/dist/cjs/protocol/messages.d.ts +327 -0
  417. package/dist/cjs/protocol/messages.d.ts.map +1 -0
  418. package/dist/cjs/protocol/messages.js +3 -0
  419. package/dist/cjs/protocol/messages.js.map +1 -0
  420. package/dist/cjs/protocol/serialize.d.ts +26 -0
  421. package/dist/cjs/protocol/serialize.d.ts.map +1 -0
  422. package/dist/cjs/protocol/serialize.js +71 -0
  423. package/dist/cjs/protocol/serialize.js.map +1 -0
  424. package/dist/cjs/protocol/validate.d.ts +135 -0
  425. package/dist/cjs/protocol/validate.d.ts.map +1 -0
  426. package/dist/cjs/protocol/validate.js +852 -0
  427. package/dist/cjs/protocol/validate.js.map +1 -0
  428. package/dist/esm/audit/chain.d.ts +365 -0
  429. package/dist/esm/audit/chain.d.ts.map +1 -0
  430. package/dist/esm/audit/chain.js +895 -0
  431. package/dist/esm/audit/chain.js.map +1 -0
  432. package/dist/esm/audit/cloud-client.d.ts +142 -0
  433. package/dist/esm/audit/cloud-client.d.ts.map +1 -0
  434. package/dist/esm/audit/cloud-client.js +326 -0
  435. package/dist/esm/audit/cloud-client.js.map +1 -0
  436. package/dist/esm/audit/cloud-writer.d.ts +57 -0
  437. package/dist/esm/audit/cloud-writer.d.ts.map +1 -0
  438. package/dist/esm/audit/cloud-writer.js +91 -0
  439. package/dist/esm/audit/cloud-writer.js.map +1 -0
  440. package/dist/esm/audit/context.d.ts +51 -0
  441. package/dist/esm/audit/context.d.ts.map +1 -0
  442. package/dist/esm/audit/context.js +69 -0
  443. package/dist/esm/audit/context.js.map +1 -0
  444. package/dist/esm/audit/files.d.ts +111 -0
  445. package/dist/esm/audit/files.d.ts.map +1 -0
  446. package/dist/esm/audit/files.js +361 -0
  447. package/dist/esm/audit/files.js.map +1 -0
  448. package/dist/esm/audit/index.d.ts +9 -0
  449. package/dist/esm/audit/index.d.ts.map +1 -0
  450. package/dist/esm/audit/index.js +8 -0
  451. package/dist/esm/audit/index.js.map +1 -0
  452. package/dist/esm/audit/local-writer.d.ts +255 -0
  453. package/dist/esm/audit/local-writer.d.ts.map +1 -0
  454. package/dist/esm/audit/local-writer.js +785 -0
  455. package/dist/esm/audit/local-writer.js.map +1 -0
  456. package/dist/esm/audit/redact.d.ts +151 -0
  457. package/dist/esm/audit/redact.d.ts.map +1 -0
  458. package/dist/esm/audit/redact.js +506 -0
  459. package/dist/esm/audit/redact.js.map +1 -0
  460. package/dist/esm/audit/sanitize.d.ts +78 -0
  461. package/dist/esm/audit/sanitize.d.ts.map +1 -0
  462. package/dist/esm/audit/sanitize.js +307 -0
  463. package/dist/esm/audit/sanitize.js.map +1 -0
  464. package/dist/esm/audit/sink.d.ts +278 -0
  465. package/dist/esm/audit/sink.d.ts.map +1 -0
  466. package/dist/esm/audit/sink.js +782 -0
  467. package/dist/esm/audit/sink.js.map +1 -0
  468. package/dist/esm/audit/types.d.ts +226 -0
  469. package/dist/esm/audit/types.d.ts.map +1 -0
  470. package/dist/esm/audit/types.js +2 -0
  471. package/dist/esm/audit/types.js.map +1 -0
  472. package/dist/esm/audit/verify-cache.d.ts +127 -0
  473. package/dist/esm/audit/verify-cache.d.ts.map +1 -0
  474. package/dist/esm/audit/verify-cache.js +628 -0
  475. package/dist/esm/audit/verify-cache.js.map +1 -0
  476. package/dist/esm/channels/agent-session.d.ts +228 -0
  477. package/dist/esm/channels/agent-session.d.ts.map +1 -0
  478. package/dist/esm/channels/agent-session.js +566 -0
  479. package/dist/esm/channels/agent-session.js.map +1 -0
  480. package/dist/esm/channels/data-channel.d.ts +181 -0
  481. package/dist/esm/channels/data-channel.d.ts.map +1 -0
  482. package/dist/esm/channels/data-channel.js +567 -0
  483. package/dist/esm/channels/data-channel.js.map +1 -0
  484. package/dist/esm/channels/reconnect.d.ts +142 -0
  485. package/dist/esm/channels/reconnect.d.ts.map +1 -0
  486. package/dist/esm/channels/reconnect.js +234 -0
  487. package/dist/esm/channels/reconnect.js.map +1 -0
  488. package/dist/esm/channels/types.d.ts +112 -0
  489. package/dist/esm/channels/types.d.ts.map +1 -0
  490. package/dist/esm/channels/types.js +2 -0
  491. package/dist/esm/channels/types.js.map +1 -0
  492. package/dist/esm/channels/wake-channel.d.ts +232 -0
  493. package/dist/esm/channels/wake-channel.d.ts.map +1 -0
  494. package/dist/esm/channels/wake-channel.js +715 -0
  495. package/dist/esm/channels/wake-channel.js.map +1 -0
  496. package/dist/esm/cli/banner.d.ts +2 -0
  497. package/dist/esm/cli/banner.d.ts.map +1 -0
  498. package/dist/esm/cli/banner.js +114 -0
  499. package/dist/esm/cli/banner.js.map +1 -0
  500. package/dist/esm/cli/commands/agent.d.ts +30 -0
  501. package/dist/esm/cli/commands/agent.d.ts.map +1 -0
  502. package/dist/esm/cli/commands/agent.js +204 -0
  503. package/dist/esm/cli/commands/agent.js.map +1 -0
  504. package/dist/esm/cli/commands/audit-verify.d.ts +19 -0
  505. package/dist/esm/cli/commands/audit-verify.d.ts.map +1 -0
  506. package/dist/esm/cli/commands/audit-verify.js +345 -0
  507. package/dist/esm/cli/commands/audit-verify.js.map +1 -0
  508. package/dist/esm/cli/commands/clean.d.ts +23 -0
  509. package/dist/esm/cli/commands/clean.d.ts.map +1 -0
  510. package/dist/esm/cli/commands/clean.js +235 -0
  511. package/dist/esm/cli/commands/clean.js.map +1 -0
  512. package/dist/esm/cli/commands/config-show.d.ts +2 -0
  513. package/dist/esm/cli/commands/config-show.d.ts.map +1 -0
  514. package/dist/esm/cli/commands/config-show.js +2 -0
  515. package/dist/esm/cli/commands/config-show.js.map +1 -0
  516. package/dist/esm/cli/commands/config.d.ts +6 -0
  517. package/dist/esm/cli/commands/config.d.ts.map +1 -0
  518. package/dist/esm/cli/commands/config.js +259 -0
  519. package/dist/esm/cli/commands/config.js.map +1 -0
  520. package/dist/esm/cli/commands/db-add.d.ts +16 -0
  521. package/dist/esm/cli/commands/db-add.d.ts.map +1 -0
  522. package/dist/esm/cli/commands/db-add.js +576 -0
  523. package/dist/esm/cli/commands/db-add.js.map +1 -0
  524. package/dist/esm/cli/commands/db-edit.d.ts +2 -0
  525. package/dist/esm/cli/commands/db-edit.d.ts.map +1 -0
  526. package/dist/esm/cli/commands/db-edit.js +352 -0
  527. package/dist/esm/cli/commands/db-edit.js.map +1 -0
  528. package/dist/esm/cli/commands/db-logs.d.ts +3 -0
  529. package/dist/esm/cli/commands/db-logs.d.ts.map +1 -0
  530. package/dist/esm/cli/commands/db-logs.js +64 -0
  531. package/dist/esm/cli/commands/db-logs.js.map +1 -0
  532. package/dist/esm/cli/commands/db-ls.d.ts +2 -0
  533. package/dist/esm/cli/commands/db-ls.d.ts.map +1 -0
  534. package/dist/esm/cli/commands/db-ls.js +115 -0
  535. package/dist/esm/cli/commands/db-ls.js.map +1 -0
  536. package/dist/esm/cli/commands/db-query.d.ts +121 -0
  537. package/dist/esm/cli/commands/db-query.d.ts.map +1 -0
  538. package/dist/esm/cli/commands/db-query.js +754 -0
  539. package/dist/esm/cli/commands/db-query.js.map +1 -0
  540. package/dist/esm/cli/commands/db-remove.d.ts +2 -0
  541. package/dist/esm/cli/commands/db-remove.d.ts.map +1 -0
  542. package/dist/esm/cli/commands/db-remove.js +48 -0
  543. package/dist/esm/cli/commands/db-remove.js.map +1 -0
  544. package/dist/esm/cli/commands/db-show.d.ts +2 -0
  545. package/dist/esm/cli/commands/db-show.d.ts.map +1 -0
  546. package/dist/esm/cli/commands/db-show.js +131 -0
  547. package/dist/esm/cli/commands/db-show.js.map +1 -0
  548. package/dist/esm/cli/commands/db-test.d.ts +3 -0
  549. package/dist/esm/cli/commands/db-test.d.ts.map +1 -0
  550. package/dist/esm/cli/commands/db-test.js +307 -0
  551. package/dist/esm/cli/commands/db-test.js.map +1 -0
  552. package/dist/esm/cli/commands/db.d.ts +11 -0
  553. package/dist/esm/cli/commands/db.d.ts.map +1 -0
  554. package/dist/esm/cli/commands/db.js +76 -0
  555. package/dist/esm/cli/commands/db.js.map +1 -0
  556. package/dist/esm/cli/commands/debug.d.ts +2 -0
  557. package/dist/esm/cli/commands/debug.d.ts.map +1 -0
  558. package/dist/esm/cli/commands/debug.js +205 -0
  559. package/dist/esm/cli/commands/debug.js.map +1 -0
  560. package/dist/esm/cli/commands/doctor.d.ts +5 -0
  561. package/dist/esm/cli/commands/doctor.d.ts.map +1 -0
  562. package/dist/esm/cli/commands/doctor.js +114 -0
  563. package/dist/esm/cli/commands/doctor.js.map +1 -0
  564. package/dist/esm/cli/commands/index.d.ts +10 -0
  565. package/dist/esm/cli/commands/index.d.ts.map +1 -0
  566. package/dist/esm/cli/commands/index.js +10 -0
  567. package/dist/esm/cli/commands/index.js.map +1 -0
  568. package/dist/esm/cli/commands/init.d.ts +2 -0
  569. package/dist/esm/cli/commands/init.d.ts.map +1 -0
  570. package/dist/esm/cli/commands/init.js +163 -0
  571. package/dist/esm/cli/commands/init.js.map +1 -0
  572. package/dist/esm/cli/commands/link.d.ts +5 -0
  573. package/dist/esm/cli/commands/link.d.ts.map +1 -0
  574. package/dist/esm/cli/commands/link.js +41 -0
  575. package/dist/esm/cli/commands/link.js.map +1 -0
  576. package/dist/esm/cli/commands/logs.d.ts +17 -0
  577. package/dist/esm/cli/commands/logs.d.ts.map +1 -0
  578. package/dist/esm/cli/commands/logs.js +278 -0
  579. package/dist/esm/cli/commands/logs.js.map +1 -0
  580. package/dist/esm/cli/commands/project-show.d.ts +2 -0
  581. package/dist/esm/cli/commands/project-show.d.ts.map +1 -0
  582. package/dist/esm/cli/commands/project-show.js +69 -0
  583. package/dist/esm/cli/commands/project-show.js.map +1 -0
  584. package/dist/esm/cli/commands/project.d.ts +3 -0
  585. package/dist/esm/cli/commands/project.d.ts.map +1 -0
  586. package/dist/esm/cli/commands/project.js +60 -0
  587. package/dist/esm/cli/commands/project.js.map +1 -0
  588. package/dist/esm/cli/commands/service.d.ts +123 -0
  589. package/dist/esm/cli/commands/service.d.ts.map +1 -0
  590. package/dist/esm/cli/commands/service.js +505 -0
  591. package/dist/esm/cli/commands/service.js.map +1 -0
  592. package/dist/esm/cli/commands/start.d.ts +6 -0
  593. package/dist/esm/cli/commands/start.d.ts.map +1 -0
  594. package/dist/esm/cli/commands/start.js +272 -0
  595. package/dist/esm/cli/commands/start.js.map +1 -0
  596. package/dist/esm/cli/commands/status.d.ts +2 -0
  597. package/dist/esm/cli/commands/status.d.ts.map +1 -0
  598. package/dist/esm/cli/commands/status.js +222 -0
  599. package/dist/esm/cli/commands/status.js.map +1 -0
  600. package/dist/esm/cli/commands/stop.d.ts +6 -0
  601. package/dist/esm/cli/commands/stop.d.ts.map +1 -0
  602. package/dist/esm/cli/commands/stop.js +96 -0
  603. package/dist/esm/cli/commands/stop.js.map +1 -0
  604. package/dist/esm/cli/daemon/error-tracker.d.ts +119 -0
  605. package/dist/esm/cli/daemon/error-tracker.d.ts.map +1 -0
  606. package/dist/esm/cli/daemon/error-tracker.js +451 -0
  607. package/dist/esm/cli/daemon/error-tracker.js.map +1 -0
  608. package/dist/esm/cli/daemon/fault-shutdown.d.ts +144 -0
  609. package/dist/esm/cli/daemon/fault-shutdown.d.ts.map +1 -0
  610. package/dist/esm/cli/daemon/fault-shutdown.js +273 -0
  611. package/dist/esm/cli/daemon/fault-shutdown.js.map +1 -0
  612. package/dist/esm/cli/daemon/index.d.ts +12 -0
  613. package/dist/esm/cli/daemon/index.d.ts.map +1 -0
  614. package/dist/esm/cli/daemon/index.js +7 -0
  615. package/dist/esm/cli/daemon/index.js.map +1 -0
  616. package/dist/esm/cli/daemon/pid-file.d.ts +13 -0
  617. package/dist/esm/cli/daemon/pid-file.d.ts.map +1 -0
  618. package/dist/esm/cli/daemon/pid-file.js +51 -0
  619. package/dist/esm/cli/daemon/pid-file.js.map +1 -0
  620. package/dist/esm/cli/daemon/readiness.d.ts +30 -0
  621. package/dist/esm/cli/daemon/readiness.d.ts.map +1 -0
  622. package/dist/esm/cli/daemon/readiness.js +70 -0
  623. package/dist/esm/cli/daemon/readiness.js.map +1 -0
  624. package/dist/esm/cli/daemon/runtime.d.ts +366 -0
  625. package/dist/esm/cli/daemon/runtime.d.ts.map +1 -0
  626. package/dist/esm/cli/daemon/runtime.js +1284 -0
  627. package/dist/esm/cli/daemon/runtime.js.map +1 -0
  628. package/dist/esm/cli/daemon/shutdown.d.ts +7 -0
  629. package/dist/esm/cli/daemon/shutdown.d.ts.map +1 -0
  630. package/dist/esm/cli/daemon/shutdown.js +63 -0
  631. package/dist/esm/cli/daemon/shutdown.js.map +1 -0
  632. package/dist/esm/cli/daemon/signal-handlers.d.ts +3 -0
  633. package/dist/esm/cli/daemon/signal-handlers.d.ts.map +1 -0
  634. package/dist/esm/cli/daemon/signal-handlers.js +24 -0
  635. package/dist/esm/cli/daemon/signal-handlers.js.map +1 -0
  636. package/dist/esm/cli/daemon/state.d.ts +157 -0
  637. package/dist/esm/cli/daemon/state.d.ts.map +1 -0
  638. package/dist/esm/cli/daemon/state.js +352 -0
  639. package/dist/esm/cli/daemon/state.js.map +1 -0
  640. package/dist/esm/cli/daemon/status-file.d.ts +139 -0
  641. package/dist/esm/cli/daemon/status-file.d.ts.map +1 -0
  642. package/dist/esm/cli/daemon/status-file.js +50 -0
  643. package/dist/esm/cli/daemon/status-file.js.map +1 -0
  644. package/dist/esm/cli/doctor/checks.d.ts +133 -0
  645. package/dist/esm/cli/doctor/checks.d.ts.map +1 -0
  646. package/dist/esm/cli/doctor/checks.js +624 -0
  647. package/dist/esm/cli/doctor/checks.js.map +1 -0
  648. package/dist/esm/cli/doctor/fixes.d.ts +9 -0
  649. package/dist/esm/cli/doctor/fixes.d.ts.map +1 -0
  650. package/dist/esm/cli/doctor/fixes.js +163 -0
  651. package/dist/esm/cli/doctor/fixes.js.map +1 -0
  652. package/dist/esm/cli/doctor/index.d.ts +7 -0
  653. package/dist/esm/cli/doctor/index.d.ts.map +1 -0
  654. package/dist/esm/cli/doctor/index.js +5 -0
  655. package/dist/esm/cli/doctor/index.js.map +1 -0
  656. package/dist/esm/cli/index.d.ts +3 -0
  657. package/dist/esm/cli/index.d.ts.map +1 -0
  658. package/dist/esm/cli/index.js +333 -0
  659. package/dist/esm/cli/index.js.map +1 -0
  660. package/dist/esm/cli/interactive.d.ts +8 -0
  661. package/dist/esm/cli/interactive.d.ts.map +1 -0
  662. package/dist/esm/cli/interactive.js +665 -0
  663. package/dist/esm/cli/interactive.js.map +1 -0
  664. package/dist/esm/cli/logs/format.d.ts +13 -0
  665. package/dist/esm/cli/logs/format.d.ts.map +1 -0
  666. package/dist/esm/cli/logs/format.js +169 -0
  667. package/dist/esm/cli/logs/format.js.map +1 -0
  668. package/dist/esm/cli/logs/index.d.ts +3 -0
  669. package/dist/esm/cli/logs/index.d.ts.map +1 -0
  670. package/dist/esm/cli/logs/index.js +3 -0
  671. package/dist/esm/cli/logs/index.js.map +1 -0
  672. package/dist/esm/cli/logs/viewer.d.ts +41 -0
  673. package/dist/esm/cli/logs/viewer.d.ts.map +1 -0
  674. package/dist/esm/cli/logs/viewer.js +412 -0
  675. package/dist/esm/cli/logs/viewer.js.map +1 -0
  676. package/dist/esm/cli/ops/operation-logger.d.ts +63 -0
  677. package/dist/esm/cli/ops/operation-logger.d.ts.map +1 -0
  678. package/dist/esm/cli/ops/operation-logger.js +142 -0
  679. package/dist/esm/cli/ops/operation-logger.js.map +1 -0
  680. package/dist/esm/cli/palette.d.ts +11 -0
  681. package/dist/esm/cli/palette.d.ts.map +1 -0
  682. package/dist/esm/cli/palette.js +240 -0
  683. package/dist/esm/cli/palette.js.map +1 -0
  684. package/dist/esm/cli/prompt.d.ts +186 -0
  685. package/dist/esm/cli/prompt.d.ts.map +1 -0
  686. package/dist/esm/cli/prompt.js +483 -0
  687. package/dist/esm/cli/prompt.js.map +1 -0
  688. package/dist/esm/cli/ui/box.d.ts +21 -0
  689. package/dist/esm/cli/ui/box.d.ts.map +1 -0
  690. package/dist/esm/cli/ui/box.js +60 -0
  691. package/dist/esm/cli/ui/box.js.map +1 -0
  692. package/dist/esm/cli/ui/clipboard.d.ts +6 -0
  693. package/dist/esm/cli/ui/clipboard.d.ts.map +1 -0
  694. package/dist/esm/cli/ui/clipboard.js +42 -0
  695. package/dist/esm/cli/ui/clipboard.js.map +1 -0
  696. package/dist/esm/cli/ui/colors.d.ts +57 -0
  697. package/dist/esm/cli/ui/colors.d.ts.map +1 -0
  698. package/dist/esm/cli/ui/colors.js +126 -0
  699. package/dist/esm/cli/ui/colors.js.map +1 -0
  700. package/dist/esm/cli/ui/index.d.ts +9 -0
  701. package/dist/esm/cli/ui/index.d.ts.map +1 -0
  702. package/dist/esm/cli/ui/index.js +7 -0
  703. package/dist/esm/cli/ui/index.js.map +1 -0
  704. package/dist/esm/cli/ui/spinner.d.ts +12 -0
  705. package/dist/esm/cli/ui/spinner.d.ts.map +1 -0
  706. package/dist/esm/cli/ui/spinner.js +78 -0
  707. package/dist/esm/cli/ui/spinner.js.map +1 -0
  708. package/dist/esm/cli/ui/symbols.d.ts +47 -0
  709. package/dist/esm/cli/ui/symbols.d.ts.map +1 -0
  710. package/dist/esm/cli/ui/symbols.js +109 -0
  711. package/dist/esm/cli/ui/symbols.js.map +1 -0
  712. package/dist/esm/cli/ui/table.d.ts +23 -0
  713. package/dist/esm/cli/ui/table.d.ts.map +1 -0
  714. package/dist/esm/cli/ui/table.js +156 -0
  715. package/dist/esm/cli/ui/table.js.map +1 -0
  716. package/dist/esm/cli/ui/terminal.d.ts +7 -0
  717. package/dist/esm/cli/ui/terminal.d.ts.map +1 -0
  718. package/dist/esm/cli/ui/terminal.js +32 -0
  719. package/dist/esm/cli/ui/terminal.js.map +1 -0
  720. package/dist/esm/config/atomic-write.d.ts +69 -0
  721. package/dist/esm/config/atomic-write.d.ts.map +1 -0
  722. package/dist/esm/config/atomic-write.js +246 -0
  723. package/dist/esm/config/atomic-write.js.map +1 -0
  724. package/dist/esm/config/db-config.d.ts +134 -0
  725. package/dist/esm/config/db-config.d.ts.map +1 -0
  726. package/dist/esm/config/db-config.js +542 -0
  727. package/dist/esm/config/db-config.js.map +1 -0
  728. package/dist/esm/config/machine-config.d.ts +85 -0
  729. package/dist/esm/config/machine-config.d.ts.map +1 -0
  730. package/dist/esm/config/machine-config.js +190 -0
  731. package/dist/esm/config/machine-config.js.map +1 -0
  732. package/dist/esm/config/paths.d.ts +64 -0
  733. package/dist/esm/config/paths.d.ts.map +1 -0
  734. package/dist/esm/config/paths.js +108 -0
  735. package/dist/esm/config/paths.js.map +1 -0
  736. package/dist/esm/config/schema.d.ts +72 -0
  737. package/dist/esm/config/schema.d.ts.map +1 -0
  738. package/dist/esm/config/schema.js +180 -0
  739. package/dist/esm/config/schema.js.map +1 -0
  740. package/dist/esm/config/token.d.ts +63 -0
  741. package/dist/esm/config/token.d.ts.map +1 -0
  742. package/dist/esm/config/token.js +104 -0
  743. package/dist/esm/config/token.js.map +1 -0
  744. package/dist/esm/execution/canceller.d.ts +41 -0
  745. package/dist/esm/execution/canceller.d.ts.map +1 -0
  746. package/dist/esm/execution/canceller.js +205 -0
  747. package/dist/esm/execution/canceller.js.map +1 -0
  748. package/dist/esm/execution/database-lookup.d.ts +56 -0
  749. package/dist/esm/execution/database-lookup.d.ts.map +1 -0
  750. package/dist/esm/execution/database-lookup.js +38 -0
  751. package/dist/esm/execution/database-lookup.js.map +1 -0
  752. package/dist/esm/execution/dispatcher.d.ts +181 -0
  753. package/dist/esm/execution/dispatcher.d.ts.map +1 -0
  754. package/dist/esm/execution/dispatcher.js +1258 -0
  755. package/dist/esm/execution/dispatcher.js.map +1 -0
  756. package/dist/esm/execution/function-effects.d.ts +209 -0
  757. package/dist/esm/execution/function-effects.d.ts.map +1 -0
  758. package/dist/esm/execution/function-effects.js +586 -0
  759. package/dist/esm/execution/function-effects.js.map +1 -0
  760. package/dist/esm/execution/introspection.d.ts +76 -0
  761. package/dist/esm/execution/introspection.d.ts.map +1 -0
  762. package/dist/esm/execution/introspection.js +442 -0
  763. package/dist/esm/execution/introspection.js.map +1 -0
  764. package/dist/esm/execution/migration-runner.d.ts +128 -0
  765. package/dist/esm/execution/migration-runner.d.ts.map +1 -0
  766. package/dist/esm/execution/migration-runner.js +754 -0
  767. package/dist/esm/execution/migration-runner.js.map +1 -0
  768. package/dist/esm/execution/non-tx-detector.d.ts +23 -0
  769. package/dist/esm/execution/non-tx-detector.d.ts.map +1 -0
  770. package/dist/esm/execution/non-tx-detector.js +215 -0
  771. package/dist/esm/execution/non-tx-detector.js.map +1 -0
  772. package/dist/esm/execution/pool.d.ts +229 -0
  773. package/dist/esm/execution/pool.d.ts.map +1 -0
  774. package/dist/esm/execution/pool.js +685 -0
  775. package/dist/esm/execution/pool.js.map +1 -0
  776. package/dist/esm/execution/query-runner.d.ts +88 -0
  777. package/dist/esm/execution/query-runner.d.ts.map +1 -0
  778. package/dist/esm/execution/query-runner.js +743 -0
  779. package/dist/esm/execution/query-runner.js.map +1 -0
  780. package/dist/esm/execution/rate-limiter.d.ts +120 -0
  781. package/dist/esm/execution/rate-limiter.d.ts.map +1 -0
  782. package/dist/esm/execution/rate-limiter.js +269 -0
  783. package/dist/esm/execution/rate-limiter.js.map +1 -0
  784. package/dist/esm/execution/search-path.d.ts +161 -0
  785. package/dist/esm/execution/search-path.d.ts.map +1 -0
  786. package/dist/esm/execution/search-path.js +270 -0
  787. package/dist/esm/execution/search-path.js.map +1 -0
  788. package/dist/esm/execution/sql-parser.d.ts +195 -0
  789. package/dist/esm/execution/sql-parser.d.ts.map +1 -0
  790. package/dist/esm/execution/sql-parser.js +683 -0
  791. package/dist/esm/execution/sql-parser.js.map +1 -0
  792. package/dist/esm/execution/statement-classifier.d.ts +103 -0
  793. package/dist/esm/execution/statement-classifier.d.ts.map +1 -0
  794. package/dist/esm/execution/statement-classifier.js +526 -0
  795. package/dist/esm/execution/statement-classifier.js.map +1 -0
  796. package/dist/esm/execution/types.d.ts +189 -0
  797. package/dist/esm/execution/types.d.ts.map +1 -0
  798. package/dist/esm/execution/types.js +22 -0
  799. package/dist/esm/execution/types.js.map +1 -0
  800. package/dist/esm/index.d.ts +34 -0
  801. package/dist/esm/index.d.ts.map +1 -0
  802. package/dist/esm/index.js +38 -0
  803. package/dist/esm/index.js.map +1 -0
  804. package/dist/esm/permissions/auto-upgrade.d.ts +40 -0
  805. package/dist/esm/permissions/auto-upgrade.d.ts.map +1 -0
  806. package/dist/esm/permissions/auto-upgrade.js +164 -0
  807. package/dist/esm/permissions/auto-upgrade.js.map +1 -0
  808. package/dist/esm/permissions/checker.d.ts +53 -0
  809. package/dist/esm/permissions/checker.d.ts.map +1 -0
  810. package/dist/esm/permissions/checker.js +322 -0
  811. package/dist/esm/permissions/checker.js.map +1 -0
  812. package/dist/esm/permissions/manual-approval.d.ts +213 -0
  813. package/dist/esm/permissions/manual-approval.d.ts.map +1 -0
  814. package/dist/esm/permissions/manual-approval.js +503 -0
  815. package/dist/esm/permissions/manual-approval.js.map +1 -0
  816. package/dist/esm/permissions/plan-registry.d.ts +274 -0
  817. package/dist/esm/permissions/plan-registry.d.ts.map +1 -0
  818. package/dist/esm/permissions/plan-registry.js +450 -0
  819. package/dist/esm/permissions/plan-registry.js.map +1 -0
  820. package/dist/esm/permissions/role-policy.d.ts +217 -0
  821. package/dist/esm/permissions/role-policy.d.ts.map +1 -0
  822. package/dist/esm/permissions/role-policy.js +570 -0
  823. package/dist/esm/permissions/role-policy.js.map +1 -0
  824. package/dist/esm/permissions/types.d.ts +126 -0
  825. package/dist/esm/permissions/types.d.ts.map +1 -0
  826. package/dist/esm/permissions/types.js +2 -0
  827. package/dist/esm/permissions/types.js.map +1 -0
  828. package/dist/esm/protocol/constants.d.ts +72 -0
  829. package/dist/esm/protocol/constants.d.ts.map +1 -0
  830. package/dist/esm/protocol/constants.js +104 -0
  831. package/dist/esm/protocol/constants.js.map +1 -0
  832. package/dist/esm/protocol/envelope.d.ts +165 -0
  833. package/dist/esm/protocol/envelope.d.ts.map +1 -0
  834. package/dist/esm/protocol/envelope.js +263 -0
  835. package/dist/esm/protocol/envelope.js.map +1 -0
  836. package/dist/esm/protocol/errors.d.ts +33 -0
  837. package/dist/esm/protocol/errors.d.ts.map +1 -0
  838. package/dist/esm/protocol/errors.js +384 -0
  839. package/dist/esm/protocol/errors.js.map +1 -0
  840. package/dist/esm/protocol/messages.d.ts +327 -0
  841. package/dist/esm/protocol/messages.d.ts.map +1 -0
  842. package/dist/esm/protocol/messages.js +2 -0
  843. package/dist/esm/protocol/messages.js.map +1 -0
  844. package/dist/esm/protocol/serialize.d.ts +26 -0
  845. package/dist/esm/protocol/serialize.d.ts.map +1 -0
  846. package/dist/esm/protocol/serialize.js +63 -0
  847. package/dist/esm/protocol/serialize.js.map +1 -0
  848. package/dist/esm/protocol/validate.d.ts +135 -0
  849. package/dist/esm/protocol/validate.d.ts.map +1 -0
  850. package/dist/esm/protocol/validate.js +830 -0
  851. package/dist/esm/protocol/validate.js.map +1 -0
  852. package/dist/types/audit/chain.d.ts +365 -0
  853. package/dist/types/audit/chain.d.ts.map +1 -0
  854. package/dist/types/audit/cloud-client.d.ts +142 -0
  855. package/dist/types/audit/cloud-client.d.ts.map +1 -0
  856. package/dist/types/audit/cloud-writer.d.ts +57 -0
  857. package/dist/types/audit/cloud-writer.d.ts.map +1 -0
  858. package/dist/types/audit/context.d.ts +51 -0
  859. package/dist/types/audit/context.d.ts.map +1 -0
  860. package/dist/types/audit/files.d.ts +111 -0
  861. package/dist/types/audit/files.d.ts.map +1 -0
  862. package/dist/types/audit/index.d.ts +9 -0
  863. package/dist/types/audit/index.d.ts.map +1 -0
  864. package/dist/types/audit/local-writer.d.ts +255 -0
  865. package/dist/types/audit/local-writer.d.ts.map +1 -0
  866. package/dist/types/audit/redact.d.ts +151 -0
  867. package/dist/types/audit/redact.d.ts.map +1 -0
  868. package/dist/types/audit/sanitize.d.ts +78 -0
  869. package/dist/types/audit/sanitize.d.ts.map +1 -0
  870. package/dist/types/audit/sink.d.ts +278 -0
  871. package/dist/types/audit/sink.d.ts.map +1 -0
  872. package/dist/types/audit/types.d.ts +226 -0
  873. package/dist/types/audit/types.d.ts.map +1 -0
  874. package/dist/types/audit/verify-cache.d.ts +127 -0
  875. package/dist/types/audit/verify-cache.d.ts.map +1 -0
  876. package/dist/types/channels/agent-session.d.ts +228 -0
  877. package/dist/types/channels/agent-session.d.ts.map +1 -0
  878. package/dist/types/channels/data-channel.d.ts +181 -0
  879. package/dist/types/channels/data-channel.d.ts.map +1 -0
  880. package/dist/types/channels/reconnect.d.ts +142 -0
  881. package/dist/types/channels/reconnect.d.ts.map +1 -0
  882. package/dist/types/channels/types.d.ts +112 -0
  883. package/dist/types/channels/types.d.ts.map +1 -0
  884. package/dist/types/channels/wake-channel.d.ts +232 -0
  885. package/dist/types/channels/wake-channel.d.ts.map +1 -0
  886. package/dist/types/cli/banner.d.ts +2 -0
  887. package/dist/types/cli/banner.d.ts.map +1 -0
  888. package/dist/types/cli/commands/agent.d.ts +30 -0
  889. package/dist/types/cli/commands/agent.d.ts.map +1 -0
  890. package/dist/types/cli/commands/audit-verify.d.ts +19 -0
  891. package/dist/types/cli/commands/audit-verify.d.ts.map +1 -0
  892. package/dist/types/cli/commands/clean.d.ts +23 -0
  893. package/dist/types/cli/commands/clean.d.ts.map +1 -0
  894. package/dist/types/cli/commands/config-show.d.ts +2 -0
  895. package/dist/types/cli/commands/config-show.d.ts.map +1 -0
  896. package/dist/types/cli/commands/config.d.ts +6 -0
  897. package/dist/types/cli/commands/config.d.ts.map +1 -0
  898. package/dist/types/cli/commands/db-add.d.ts +16 -0
  899. package/dist/types/cli/commands/db-add.d.ts.map +1 -0
  900. package/dist/types/cli/commands/db-edit.d.ts +2 -0
  901. package/dist/types/cli/commands/db-edit.d.ts.map +1 -0
  902. package/dist/types/cli/commands/db-logs.d.ts +3 -0
  903. package/dist/types/cli/commands/db-logs.d.ts.map +1 -0
  904. package/dist/types/cli/commands/db-ls.d.ts +2 -0
  905. package/dist/types/cli/commands/db-ls.d.ts.map +1 -0
  906. package/dist/types/cli/commands/db-query.d.ts +121 -0
  907. package/dist/types/cli/commands/db-query.d.ts.map +1 -0
  908. package/dist/types/cli/commands/db-remove.d.ts +2 -0
  909. package/dist/types/cli/commands/db-remove.d.ts.map +1 -0
  910. package/dist/types/cli/commands/db-show.d.ts +2 -0
  911. package/dist/types/cli/commands/db-show.d.ts.map +1 -0
  912. package/dist/types/cli/commands/db-test.d.ts +3 -0
  913. package/dist/types/cli/commands/db-test.d.ts.map +1 -0
  914. package/dist/types/cli/commands/db.d.ts +11 -0
  915. package/dist/types/cli/commands/db.d.ts.map +1 -0
  916. package/dist/types/cli/commands/debug.d.ts +2 -0
  917. package/dist/types/cli/commands/debug.d.ts.map +1 -0
  918. package/dist/types/cli/commands/doctor.d.ts +5 -0
  919. package/dist/types/cli/commands/doctor.d.ts.map +1 -0
  920. package/dist/types/cli/commands/index.d.ts +10 -0
  921. package/dist/types/cli/commands/index.d.ts.map +1 -0
  922. package/dist/types/cli/commands/init.d.ts +2 -0
  923. package/dist/types/cli/commands/init.d.ts.map +1 -0
  924. package/dist/types/cli/commands/link.d.ts +5 -0
  925. package/dist/types/cli/commands/link.d.ts.map +1 -0
  926. package/dist/types/cli/commands/logs.d.ts +17 -0
  927. package/dist/types/cli/commands/logs.d.ts.map +1 -0
  928. package/dist/types/cli/commands/project-show.d.ts +2 -0
  929. package/dist/types/cli/commands/project-show.d.ts.map +1 -0
  930. package/dist/types/cli/commands/project.d.ts +3 -0
  931. package/dist/types/cli/commands/project.d.ts.map +1 -0
  932. package/dist/types/cli/commands/service.d.ts +123 -0
  933. package/dist/types/cli/commands/service.d.ts.map +1 -0
  934. package/dist/types/cli/commands/start.d.ts +6 -0
  935. package/dist/types/cli/commands/start.d.ts.map +1 -0
  936. package/dist/types/cli/commands/status.d.ts +2 -0
  937. package/dist/types/cli/commands/status.d.ts.map +1 -0
  938. package/dist/types/cli/commands/stop.d.ts +6 -0
  939. package/dist/types/cli/commands/stop.d.ts.map +1 -0
  940. package/dist/types/cli/daemon/error-tracker.d.ts +119 -0
  941. package/dist/types/cli/daemon/error-tracker.d.ts.map +1 -0
  942. package/dist/types/cli/daemon/fault-shutdown.d.ts +144 -0
  943. package/dist/types/cli/daemon/fault-shutdown.d.ts.map +1 -0
  944. package/dist/types/cli/daemon/index.d.ts +12 -0
  945. package/dist/types/cli/daemon/index.d.ts.map +1 -0
  946. package/dist/types/cli/daemon/pid-file.d.ts +13 -0
  947. package/dist/types/cli/daemon/pid-file.d.ts.map +1 -0
  948. package/dist/types/cli/daemon/readiness.d.ts +30 -0
  949. package/dist/types/cli/daemon/readiness.d.ts.map +1 -0
  950. package/dist/types/cli/daemon/runtime.d.ts +366 -0
  951. package/dist/types/cli/daemon/runtime.d.ts.map +1 -0
  952. package/dist/types/cli/daemon/shutdown.d.ts +7 -0
  953. package/dist/types/cli/daemon/shutdown.d.ts.map +1 -0
  954. package/dist/types/cli/daemon/signal-handlers.d.ts +3 -0
  955. package/dist/types/cli/daemon/signal-handlers.d.ts.map +1 -0
  956. package/dist/types/cli/daemon/state.d.ts +157 -0
  957. package/dist/types/cli/daemon/state.d.ts.map +1 -0
  958. package/dist/types/cli/daemon/status-file.d.ts +139 -0
  959. package/dist/types/cli/daemon/status-file.d.ts.map +1 -0
  960. package/dist/types/cli/doctor/checks.d.ts +133 -0
  961. package/dist/types/cli/doctor/checks.d.ts.map +1 -0
  962. package/dist/types/cli/doctor/fixes.d.ts +9 -0
  963. package/dist/types/cli/doctor/fixes.d.ts.map +1 -0
  964. package/dist/types/cli/doctor/index.d.ts +7 -0
  965. package/dist/types/cli/doctor/index.d.ts.map +1 -0
  966. package/dist/types/cli/index.d.ts +3 -0
  967. package/dist/types/cli/index.d.ts.map +1 -0
  968. package/dist/types/cli/interactive.d.ts +8 -0
  969. package/dist/types/cli/interactive.d.ts.map +1 -0
  970. package/dist/types/cli/logs/format.d.ts +13 -0
  971. package/dist/types/cli/logs/format.d.ts.map +1 -0
  972. package/dist/types/cli/logs/index.d.ts +3 -0
  973. package/dist/types/cli/logs/index.d.ts.map +1 -0
  974. package/dist/types/cli/logs/viewer.d.ts +41 -0
  975. package/dist/types/cli/logs/viewer.d.ts.map +1 -0
  976. package/dist/types/cli/ops/operation-logger.d.ts +63 -0
  977. package/dist/types/cli/ops/operation-logger.d.ts.map +1 -0
  978. package/dist/types/cli/palette.d.ts +11 -0
  979. package/dist/types/cli/palette.d.ts.map +1 -0
  980. package/dist/types/cli/prompt.d.ts +186 -0
  981. package/dist/types/cli/prompt.d.ts.map +1 -0
  982. package/dist/types/cli/ui/box.d.ts +21 -0
  983. package/dist/types/cli/ui/box.d.ts.map +1 -0
  984. package/dist/types/cli/ui/clipboard.d.ts +6 -0
  985. package/dist/types/cli/ui/clipboard.d.ts.map +1 -0
  986. package/dist/types/cli/ui/colors.d.ts +57 -0
  987. package/dist/types/cli/ui/colors.d.ts.map +1 -0
  988. package/dist/types/cli/ui/index.d.ts +9 -0
  989. package/dist/types/cli/ui/index.d.ts.map +1 -0
  990. package/dist/types/cli/ui/spinner.d.ts +12 -0
  991. package/dist/types/cli/ui/spinner.d.ts.map +1 -0
  992. package/dist/types/cli/ui/symbols.d.ts +47 -0
  993. package/dist/types/cli/ui/symbols.d.ts.map +1 -0
  994. package/dist/types/cli/ui/table.d.ts +23 -0
  995. package/dist/types/cli/ui/table.d.ts.map +1 -0
  996. package/dist/types/cli/ui/terminal.d.ts +7 -0
  997. package/dist/types/cli/ui/terminal.d.ts.map +1 -0
  998. package/dist/types/config/atomic-write.d.ts +69 -0
  999. package/dist/types/config/atomic-write.d.ts.map +1 -0
  1000. package/dist/types/config/db-config.d.ts +134 -0
  1001. package/dist/types/config/db-config.d.ts.map +1 -0
  1002. package/dist/types/config/machine-config.d.ts +85 -0
  1003. package/dist/types/config/machine-config.d.ts.map +1 -0
  1004. package/dist/types/config/paths.d.ts +64 -0
  1005. package/dist/types/config/paths.d.ts.map +1 -0
  1006. package/dist/types/config/schema.d.ts +72 -0
  1007. package/dist/types/config/schema.d.ts.map +1 -0
  1008. package/dist/types/config/token.d.ts +63 -0
  1009. package/dist/types/config/token.d.ts.map +1 -0
  1010. package/dist/types/execution/canceller.d.ts +41 -0
  1011. package/dist/types/execution/canceller.d.ts.map +1 -0
  1012. package/dist/types/execution/database-lookup.d.ts +56 -0
  1013. package/dist/types/execution/database-lookup.d.ts.map +1 -0
  1014. package/dist/types/execution/dispatcher.d.ts +181 -0
  1015. package/dist/types/execution/dispatcher.d.ts.map +1 -0
  1016. package/dist/types/execution/function-effects.d.ts +209 -0
  1017. package/dist/types/execution/function-effects.d.ts.map +1 -0
  1018. package/dist/types/execution/introspection.d.ts +76 -0
  1019. package/dist/types/execution/introspection.d.ts.map +1 -0
  1020. package/dist/types/execution/migration-runner.d.ts +128 -0
  1021. package/dist/types/execution/migration-runner.d.ts.map +1 -0
  1022. package/dist/types/execution/non-tx-detector.d.ts +23 -0
  1023. package/dist/types/execution/non-tx-detector.d.ts.map +1 -0
  1024. package/dist/types/execution/pool.d.ts +229 -0
  1025. package/dist/types/execution/pool.d.ts.map +1 -0
  1026. package/dist/types/execution/query-runner.d.ts +88 -0
  1027. package/dist/types/execution/query-runner.d.ts.map +1 -0
  1028. package/dist/types/execution/rate-limiter.d.ts +120 -0
  1029. package/dist/types/execution/rate-limiter.d.ts.map +1 -0
  1030. package/dist/types/execution/search-path.d.ts +161 -0
  1031. package/dist/types/execution/search-path.d.ts.map +1 -0
  1032. package/dist/types/execution/sql-parser.d.ts +195 -0
  1033. package/dist/types/execution/sql-parser.d.ts.map +1 -0
  1034. package/dist/types/execution/statement-classifier.d.ts +103 -0
  1035. package/dist/types/execution/statement-classifier.d.ts.map +1 -0
  1036. package/dist/types/execution/types.d.ts +189 -0
  1037. package/dist/types/execution/types.d.ts.map +1 -0
  1038. package/dist/types/index.d.ts +34 -0
  1039. package/dist/types/index.d.ts.map +1 -0
  1040. package/dist/types/permissions/auto-upgrade.d.ts +40 -0
  1041. package/dist/types/permissions/auto-upgrade.d.ts.map +1 -0
  1042. package/dist/types/permissions/checker.d.ts +53 -0
  1043. package/dist/types/permissions/checker.d.ts.map +1 -0
  1044. package/dist/types/permissions/manual-approval.d.ts +213 -0
  1045. package/dist/types/permissions/manual-approval.d.ts.map +1 -0
  1046. package/dist/types/permissions/plan-registry.d.ts +274 -0
  1047. package/dist/types/permissions/plan-registry.d.ts.map +1 -0
  1048. package/dist/types/permissions/role-policy.d.ts +217 -0
  1049. package/dist/types/permissions/role-policy.d.ts.map +1 -0
  1050. package/dist/types/permissions/types.d.ts +126 -0
  1051. package/dist/types/permissions/types.d.ts.map +1 -0
  1052. package/dist/types/protocol/constants.d.ts +72 -0
  1053. package/dist/types/protocol/constants.d.ts.map +1 -0
  1054. package/dist/types/protocol/envelope.d.ts +165 -0
  1055. package/dist/types/protocol/envelope.d.ts.map +1 -0
  1056. package/dist/types/protocol/errors.d.ts +33 -0
  1057. package/dist/types/protocol/errors.d.ts.map +1 -0
  1058. package/dist/types/protocol/messages.d.ts +327 -0
  1059. package/dist/types/protocol/messages.d.ts.map +1 -0
  1060. package/dist/types/protocol/serialize.d.ts +26 -0
  1061. package/dist/types/protocol/serialize.d.ts.map +1 -0
  1062. package/dist/types/protocol/validate.d.ts +135 -0
  1063. package/dist/types/protocol/validate.d.ts.map +1 -0
  1064. package/package.json +116 -4
  1065. package/scripts/generate-systemd-service.mjs +117 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql-parser.js","sourceRoot":"","sources":["../../../src/execution/sql-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Statement classification, driven by the real PostgreSQL grammar.
3
+ *
4
+ * The previous implementation split the SQL on whitespace and looked at the
5
+ * first token. That is unsound: it classified `SELECT 1; DROP TABLE users` as a
6
+ * read, and it classified `SELECT * INTO t ...` as a read even though it
7
+ * creates a table. Both were reachable from the cloud and both executed.
8
+ *
9
+ * This implementation parses with libpg_query (WASM) and classifies from the
10
+ * AST. The guarantee it provides, and its exact limits:
11
+ *
12
+ * - The number of statements is COUNTED by PostgreSQL's own grammar, so
13
+ * multi-statement smuggling is structural rather than lexical: a `;` inside
14
+ * a string literal, a dollar-quoted body, a quoted identifier or a comment
15
+ * cannot split a statement, and a real second statement always is visible.
16
+ * `statement_count !== 1` is never a read.
17
+ * - Classification is ALLOWLIST-based on the root node: a statement type this
18
+ * module does not recognise is `unknown`, which is not a read.
19
+ * - `SELECT` is treated as a command envelope, not a read-only assertion.
20
+ * `SELECT … INTO`, row-locking clauses, data-modifying CTEs, executable
21
+ * blocks and denylisted volatile/privileged functions are detected anywhere
22
+ * in the statement and demote it out of `read`.
23
+ * - A parse failure and an unavailable parser both FAIL CLOSED: they throw,
24
+ * and no lexical heuristic is ever consulted as a fallback. An
25
+ * authorization decision must never be made from this module's guesswork.
26
+ * - A function reference is a claim that has to be PROVED. Every function the
27
+ * statement calls is resolved against `pg_proc` on the caller's connection
28
+ * (`function-effects.ts`), and only `provolatile = 'i' AND prosecdef =
29
+ * false` counts as a read. A VOLATILE or SECURITY DEFINER function, an
30
+ * unknown one, and — deliberately — one the catalogue could not be asked
31
+ * about all carry `side_effect` and are never a provable read. With no
32
+ * resolver supplied every statement that calls anything is escalated; see
33
+ * {@link ClassifyOptions.resolveFunctionEffects}.
34
+ *
35
+ * It is still not a substitute for PostgreSQL's own enforcement. The database
36
+ * is the authority on what a statement does, and the agent's read-only
37
+ * guarantee is `default_transaction_read_only = on` on the connection — which
38
+ * constrains WRITES only, and therefore does not constrain a function that
39
+ * reads a file, notifies a channel, or allocates a transaction id. Those are
40
+ * why the function-effect analysis above is a control in its own right rather
41
+ * than an optimisation of the deny-list in `sql-parser.ts`.
42
+ */
43
+ import { SqlParseError, SqlParserUnavailableError, walkAst } from './sql-parser';
44
+ import type { RawStmt } from './sql-parser';
45
+ import type { FunctionEffectResolver } from './function-effects';
46
+ import type { StatementClassification } from './types';
47
+ /** Reasons a syntactically valid SELECT is still not a safe read. */
48
+ export type ReadViolation = 'selects_into' | 'row_locking' | 'writable_cte' | 'denied_function' | 'side_effect' | 'multiple_statements' | 'executable_block' | 'parse_error' | 'parser_unavailable';
49
+ /**
50
+ * Violations that mean "this parsed as a read but it is not one".
51
+ *
52
+ * A statement carrying any of these is never reported as a provable read, and
53
+ * the permission layer treats it as a privileged operation rather than a
54
+ * `query_read`.
55
+ */
56
+ export declare const READ_ESCAPE_VIOLATIONS: ReadonlySet<ReadViolation>;
57
+ /**
58
+ * Options for a classification that can consult a database.
59
+ *
60
+ * `resolveFunctionEffects` is optional and its absence is meaningful: without
61
+ * it this module cannot prove any function call is effect-free, so it reports
62
+ * `side_effect` for every one of them and the statement is escalated. That is
63
+ * the fail-closed direction, and it is required — the alternative (treating an
64
+ * absent catalogue verdict as "safe") is the vulnerability being fixed.
65
+ */
66
+ export interface ClassifyOptions {
67
+ resolveFunctionEffects?: FunctionEffectResolver;
68
+ }
69
+ export declare class StatementClassificationError extends Error {
70
+ readonly code: ReadViolation | 'unknown_statement';
71
+ constructor(message: string, code: ReadViolation | 'unknown_statement');
72
+ }
73
+ /**
74
+ * Classify a SQL string using the PostgreSQL parser.
75
+ *
76
+ * @throws {SqlParserUnavailableError} if the parser has not been initialised
77
+ * @throws {SqlParseError} if PostgreSQL cannot parse the input
78
+ */
79
+ export declare function classifyStatement(sql: string, options?: ClassifyOptions): Promise<StatementClassification>;
80
+ /**
81
+ * Classify a parsed statement list, resolving every function the statements
82
+ * reference against `pg_proc` in ONE batched read.
83
+ *
84
+ * The names of every statement in the list are collected before the lookup, so
85
+ * a migration plan of twenty statements still costs one catalogue query.
86
+ */
87
+ export declare function classifyStatements(stmts: RawStmt[], options?: ClassifyOptions): Promise<StatementClassification>;
88
+ /**
89
+ * Classify using an already-parsed statement list (sync; parser must be ready).
90
+ *
91
+ * No catalogue is consulted here, so any statement that calls a function is
92
+ * escalated. Callers that hold a connection should use {@link classifyStatements}
93
+ * (or `classifyStatement`) with a resolver instead.
94
+ */
95
+ export declare function classifyParsedStatements(stmts: RawStmt[]): StatementClassification;
96
+ /**
97
+ * Classify and throw instead of returning, for call sites that must fail
98
+ * closed on anything they cannot prove is a read.
99
+ */
100
+ export declare function assertSingleReadStatement(sql: string, options?: ClassifyOptions): Promise<StatementClassification>;
101
+ export { SqlParseError, SqlParserUnavailableError };
102
+ export { walkAst };
103
+ //# sourceMappingURL=statement-classifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statement-classifier.d.ts","sourceRoot":"","sources":["../../../src/execution/statement-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,OAAO,EAML,aAAa,EACb,yBAAyB,EASzB,OAAO,EACR,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAgD,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE/G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAIvD,qEAAqE;AACrE,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,aAAa,GACb,cAAc,GACd,iBAAiB,GACjB,aAAa,GACb,qBAAqB,GACrB,kBAAkB,GAClB,aAAa,GACb,oBAAoB,CAAC;AAEzB;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,aAAa,CAO5D,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;CACjD;AAKD,qBAAa,4BAA6B,SAAQ,KAAK;aAGnC,IAAI,EAAE,aAAa,GAAG,mBAAmB;gBADzD,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,aAAa,GAAG,mBAAmB;CAK5D;AAgCD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAGlC;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CASlC;AAgBD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAMlF;AA+YD;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CA0BlC;AAED,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,535 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.walkAst = exports.SqlParserUnavailableError = exports.SqlParseError = exports.StatementClassificationError = exports.READ_ESCAPE_VIOLATIONS = void 0;
4
+ exports.classifyStatement = classifyStatement;
5
+ exports.classifyStatements = classifyStatements;
6
+ exports.classifyParsedStatements = classifyParsedStatements;
7
+ exports.assertSingleReadStatement = assertSingleReadStatement;
8
+ /**
9
+ * Statement classification, driven by the real PostgreSQL grammar.
10
+ *
11
+ * The previous implementation split the SQL on whitespace and looked at the
12
+ * first token. That is unsound: it classified `SELECT 1; DROP TABLE users` as a
13
+ * read, and it classified `SELECT * INTO t ...` as a read even though it
14
+ * creates a table. Both were reachable from the cloud and both executed.
15
+ *
16
+ * This implementation parses with libpg_query (WASM) and classifies from the
17
+ * AST. The guarantee it provides, and its exact limits:
18
+ *
19
+ * - The number of statements is COUNTED by PostgreSQL's own grammar, so
20
+ * multi-statement smuggling is structural rather than lexical: a `;` inside
21
+ * a string literal, a dollar-quoted body, a quoted identifier or a comment
22
+ * cannot split a statement, and a real second statement always is visible.
23
+ * `statement_count !== 1` is never a read.
24
+ * - Classification is ALLOWLIST-based on the root node: a statement type this
25
+ * module does not recognise is `unknown`, which is not a read.
26
+ * - `SELECT` is treated as a command envelope, not a read-only assertion.
27
+ * `SELECT … INTO`, row-locking clauses, data-modifying CTEs, executable
28
+ * blocks and denylisted volatile/privileged functions are detected anywhere
29
+ * in the statement and demote it out of `read`.
30
+ * - A parse failure and an unavailable parser both FAIL CLOSED: they throw,
31
+ * and no lexical heuristic is ever consulted as a fallback. An
32
+ * authorization decision must never be made from this module's guesswork.
33
+ * - A function reference is a claim that has to be PROVED. Every function the
34
+ * statement calls is resolved against `pg_proc` on the caller's connection
35
+ * (`function-effects.ts`), and only `provolatile = 'i' AND prosecdef =
36
+ * false` counts as a read. A VOLATILE or SECURITY DEFINER function, an
37
+ * unknown one, and — deliberately — one the catalogue could not be asked
38
+ * about all carry `side_effect` and are never a provable read. With no
39
+ * resolver supplied every statement that calls anything is escalated; see
40
+ * {@link ClassifyOptions.resolveFunctionEffects}.
41
+ *
42
+ * It is still not a substitute for PostgreSQL's own enforcement. The database
43
+ * is the authority on what a statement does, and the agent's read-only
44
+ * guarantee is `default_transaction_read_only = on` on the connection — which
45
+ * constrains WRITES only, and therefore does not constrain a function that
46
+ * reads a file, notifies a channel, or allocates a transaction id. Those are
47
+ * why the function-effect analysis above is a control in its own right rather
48
+ * than an optimisation of the deny-list in `sql-parser.ts`.
49
+ */
50
+ const sql_parser_1 = require("./sql-parser");
51
+ Object.defineProperty(exports, "SqlParseError", { enumerable: true, get: function () { return sql_parser_1.SqlParseError; } });
52
+ Object.defineProperty(exports, "SqlParserUnavailableError", { enumerable: true, get: function () { return sql_parser_1.SqlParserUnavailableError; } });
53
+ Object.defineProperty(exports, "walkAst", { enumerable: true, get: function () { return sql_parser_1.walkAst; } });
54
+ const function_effects_1 = require("./function-effects");
55
+ /**
56
+ * Violations that mean "this parsed as a read but it is not one".
57
+ *
58
+ * A statement carrying any of these is never reported as a provable read, and
59
+ * the permission layer treats it as a privileged operation rather than a
60
+ * `query_read`.
61
+ */
62
+ exports.READ_ESCAPE_VIOLATIONS = new Set([
63
+ 'selects_into',
64
+ 'row_locking',
65
+ 'writable_cte',
66
+ 'denied_function',
67
+ 'side_effect',
68
+ 'executable_block',
69
+ ]);
70
+ /** An analysis that says nothing, used when there is nothing to say. */
71
+ const NO_FUNCTION_EFFECTS = { records: [], analysed: true };
72
+ class StatementClassificationError extends Error {
73
+ code;
74
+ constructor(message, code) {
75
+ super(message);
76
+ this.code = code;
77
+ this.name = 'StatementClassificationError';
78
+ }
79
+ }
80
+ exports.StatementClassificationError = StatementClassificationError;
81
+ function base(type, kind, transactional, verb, extra = {}, effects = NO_FUNCTION_EFFECTS) {
82
+ return {
83
+ type,
84
+ kind,
85
+ transactional,
86
+ verb,
87
+ statement_count: 1,
88
+ parse_ok: true,
89
+ read_violations: [],
90
+ function_effects: effects.records,
91
+ side_effects: uniqueSideEffects(effects.records),
92
+ ...extra,
93
+ };
94
+ }
95
+ function uniqueSideEffects(records) {
96
+ const kinds = new Set();
97
+ for (const record of records) {
98
+ for (const kind of record.side_effects)
99
+ kinds.add(kind);
100
+ }
101
+ return [...kinds];
102
+ }
103
+ /**
104
+ * Classify a SQL string using the PostgreSQL parser.
105
+ *
106
+ * @throws {SqlParserUnavailableError} if the parser has not been initialised
107
+ * @throws {SqlParseError} if PostgreSQL cannot parse the input
108
+ */
109
+ async function classifyStatement(sql, options = {}) {
110
+ const { stmts } = (0, sql_parser_1.parseSql)(sql);
111
+ return classifyStatements(stmts, options);
112
+ }
113
+ /**
114
+ * Classify a parsed statement list, resolving every function the statements
115
+ * reference against `pg_proc` in ONE batched read.
116
+ *
117
+ * The names of every statement in the list are collected before the lookup, so
118
+ * a migration plan of twenty statements still costs one catalogue query.
119
+ */
120
+ async function classifyStatements(stmts, options = {}) {
121
+ const names = stmts.flatMap((stmt) => (0, sql_parser_1.collectFunctionNames)(stmt));
122
+ const effects = names.length === 0
123
+ ? NO_FUNCTION_EFFECTS
124
+ : await (options.resolveFunctionEffects
125
+ ? options.resolveFunctionEffects(names)
126
+ : Promise.resolve(unanalysedAnalysis(names)));
127
+ return classifyParsedStatementsWith(stmts, effects);
128
+ }
129
+ /**
130
+ * An analysis for names nothing could be asked about.
131
+ *
132
+ * `resolved: false` and `effect: 'unknown'` for each, which is what makes
133
+ * `isProvableRead()` refuse the statement. The records are still emitted so the
134
+ * audit trail names the functions that could not be cleared.
135
+ */
136
+ function unanalysedAnalysis(names) {
137
+ return {
138
+ records: names.map((name) => (0, function_effects_1.unresolvedRecord)(name)),
139
+ analysed: false,
140
+ };
141
+ }
142
+ /**
143
+ * Classify using an already-parsed statement list (sync; parser must be ready).
144
+ *
145
+ * No catalogue is consulted here, so any statement that calls a function is
146
+ * escalated. Callers that hold a connection should use {@link classifyStatements}
147
+ * (or `classifyStatement`) with a resolver instead.
148
+ */
149
+ function classifyParsedStatements(stmts) {
150
+ const names = stmts.flatMap((stmt) => (0, sql_parser_1.collectFunctionNames)(stmt));
151
+ return classifyParsedStatementsWith(stmts, names.length === 0 ? NO_FUNCTION_EFFECTS : unanalysedAnalysis(names));
152
+ }
153
+ function classifyParsedStatementsWith(stmts, effects) {
154
+ const statementCount = stmts.length;
155
+ if (statementCount === 0) {
156
+ return base('unknown', 'EMPTY', true, '', {
157
+ statement_count: 0,
158
+ read_violations: ['parse_error'],
159
+ });
160
+ }
161
+ if (statementCount > 1) {
162
+ // Classify by the MOST dangerous statement present. Never let a leading
163
+ // SELECT launder a trailing DROP.
164
+ let worst = base('read', 'SELECT', true, 'SELECT', {
165
+ statement_count: statementCount,
166
+ read_violations: ['multiple_statements'],
167
+ });
168
+ const violations = ['multiple_statements'];
169
+ let sawNonRead = false;
170
+ for (const stmt of stmts) {
171
+ const one = classifySingleStatement(stmt, effects);
172
+ for (const v of one.read_violations) {
173
+ if (!violations.includes(v))
174
+ violations.push(v);
175
+ }
176
+ if (one.type !== 'read')
177
+ sawNonRead = true;
178
+ if (severity(one.type) > severity(worst.type))
179
+ worst = one;
180
+ }
181
+ if (sawNonRead) {
182
+ // Keep `worst`'s kind/verb, but report it as a multi-statement payload
183
+ // with every violation the individual statements carried.
184
+ return {
185
+ ...worst,
186
+ statement_count: statementCount,
187
+ kind: `${worst.kind} + ${statementCount - 1} more statement(s)`,
188
+ read_violations: violations,
189
+ };
190
+ }
191
+ // Every statement parsed as a read; the payload is still refused because
192
+ // more than one statement would be executed in a single round trip.
193
+ return {
194
+ ...worst,
195
+ statement_count: statementCount,
196
+ kind: `${statementCount} statements`,
197
+ read_violations: violations,
198
+ };
199
+ }
200
+ return classifySingleStatement(stmts[0], effects);
201
+ }
202
+ function severity(t) {
203
+ switch (t) {
204
+ case 'read':
205
+ return 0;
206
+ case 'utility':
207
+ return 1;
208
+ case 'write':
209
+ return 2;
210
+ case 'ddl':
211
+ return 3;
212
+ default:
213
+ return 4;
214
+ }
215
+ }
216
+ function classifySingleStatement(stmt, effects) {
217
+ const rootType = (0, sql_parser_1.rootNodeType)(stmt);
218
+ const node = (0, sql_parser_1.rootNode)(stmt);
219
+ const verb = deriveVerb(rootType, node);
220
+ // ---- allowlisted reads -------------------------------------------------
221
+ if (sql_parser_1.READ_ROOTS.has(rootType)) {
222
+ if (rootType === 'SelectStmt')
223
+ return classifySelect(stmt, effects);
224
+ // VariableShowStmt (SHOW) has no expression context, so there is nothing
225
+ // for a function call to hide in.
226
+ return base('read', rootType, true, verb, {}, effects);
227
+ }
228
+ if (rootType === 'ExplainStmt') {
229
+ // EXPLAIN is transparent to the statement it wraps, so classify the inner
230
+ // statement with the same rules. EXPLAIN ANALYZE additionally EXECUTES it,
231
+ // which is only sound when the wrapped statement is itself a provable read.
232
+ const analyze = (0, sql_parser_1.explainExecutesStatement)(node);
233
+ const inner = classifySingleStatement({ stmt: node?.query }, effects);
234
+ if (inner.type === 'read' && inner.read_violations.length === 0) {
235
+ return base('read', analyze ? 'EXPLAIN ANALYZE' : 'EXPLAIN', true, 'EXPLAIN');
236
+ }
237
+ if (analyze) {
238
+ return {
239
+ ...inner,
240
+ kind: `EXPLAIN ANALYZE ${inner.kind}`,
241
+ read_violations: [
242
+ ...inner.read_violations,
243
+ ...(inner.read_violations.includes('executable_block')
244
+ ? []
245
+ : ['executable_block']),
246
+ ],
247
+ };
248
+ }
249
+ return { ...inner, kind: `EXPLAIN ${inner.kind}` };
250
+ }
251
+ // ---- writes ------------------------------------------------------------
252
+ if (sql_parser_1.WRITE_ROOTS.has(rootType)) {
253
+ return base('write', rootType.replace(/Stmt$/, ''), true, verb, {}, effects);
254
+ }
255
+ // Checked before the DDL and utility tables because two of these roots are
256
+ // listed there as well (`ExecuteStmt`, `CreatePLangFunctionStmt`). Matching
257
+ // them first is what makes `EXECUTE` and a PL/pgSQL `CREATE FUNCTION` carry
258
+ // `executable_block`, which is the signal auto-upgrade refuses on: both run
259
+ // code whose body was never classified.
260
+ if (sql_parser_1.EXECUTABLE_ROOTS.has(rootType)) {
261
+ return base('ddl', rootType.replace(/Stmt$/, ''), true, verb, {
262
+ read_violations: ['executable_block'],
263
+ });
264
+ }
265
+ if (rootType === 'CopyStmt') {
266
+ // COPY FROM writes rows. COPY TO PROGRAM runs a command on the server;
267
+ // COPY TO 'file' writes the server's filesystem. Only COPY … TO STDOUT is a
268
+ // read, and it is the only form the classifier will ever call one.
269
+ const isFrom = node?.is_from === true;
270
+ const hasProgram = Boolean(node?.is_program);
271
+ if (isFrom)
272
+ return base('write', 'COPY FROM', true, verb);
273
+ if (hasProgram) {
274
+ return base('ddl', 'COPY TO PROGRAM', true, verb, {
275
+ read_violations: ['executable_block'],
276
+ });
277
+ }
278
+ if (copyDestinationFile(node) !== null) {
279
+ return base('ddl', 'COPY TO FILE', true, verb);
280
+ }
281
+ return base('read', 'COPY TO STDOUT', true, verb);
282
+ }
283
+ // ---- schema / role / persistent state ---------------------------------
284
+ if (sql_parser_1.DDL_ROOTS.has(rootType)) {
285
+ return base('ddl', rootType.replace(/Stmt$/, ''), !(0, sql_parser_1.isNonTransactionalNode)(rootType, node), verb, {}, effects);
286
+ }
287
+ // ---- session / transaction utilities -----------------------------------
288
+ if (sql_parser_1.UTILITY_ROOTS.has(rootType)) {
289
+ if (rootType === 'VariableSetStmt')
290
+ return classifyVariableSet(node, verb);
291
+ return base('utility', rootType.replace(/Stmt$/, ''), !(0, sql_parser_1.isNonTransactionalNode)(rootType, node), verb, {}, effects);
292
+ }
293
+ // Unknown root node: NOT a read. Fail closed by requiring DDL capability.
294
+ return base('unknown', 'UNKNOWN', true, verb, {
295
+ read_violations: ['executable_block'],
296
+ });
297
+ }
298
+ /**
299
+ * The destination file of a `COPY … TO 'path'`, or `null` for `STDOUT` and
300
+ * `PROGRAM`. `pgsql-parser` normalises the path to a plain string; the wrapped
301
+ * `{ String: { sval } }` form is accepted too so a change in that library's
302
+ * shape cannot silently turn every `COPY TO` into a read.
303
+ */
304
+ function copyDestinationFile(node) {
305
+ const filename = node?.filename;
306
+ const sval = typeof filename === 'string' ? filename : filename?.String?.sval;
307
+ return typeof sval === 'string' && sval.length > 0 ? sval : null;
308
+ }
309
+ /**
310
+ * Classify a `SELECT` envelope.
311
+ *
312
+ * `SELECT` is not a read-only assertion in PostgreSQL, so everything that can
313
+ * mutate state or reach outside the database is looked for across the whole
314
+ * statement — including sub-selects, CTEs and set-returning functions in FROM.
315
+ *
316
+ * The third source of demotion is the function catalogue: a call is only a read
317
+ * when `pg_proc` says `IMMUTABLE` and not `SECURITY DEFINER`. This is what
318
+ * catches a function no deny-list can name, because it does not depend on the
319
+ * name at all.
320
+ */
321
+ function classifySelect(stmt, effects) {
322
+ const violations = [];
323
+ const shape = (0, sql_parser_1.findReadSideEffects)(stmt);
324
+ if (shape.selectsInto)
325
+ violations.push('selects_into');
326
+ if (shape.lockingClauses.length > 0)
327
+ violations.push('row_locking');
328
+ if (shape.writableCte)
329
+ violations.push('writable_cte');
330
+ const names = (0, sql_parser_1.collectFunctionNames)(stmt);
331
+ const denied = (0, sql_parser_1.findDeniedReadFunction)(names);
332
+ if (denied.length > 0)
333
+ violations.push('denied_function');
334
+ // Only this statement's own references, so a plan entry does not inherit the
335
+ // verdicts of its neighbours.
336
+ const referenced = new Set(names.map((name) => name.toLowerCase()));
337
+ const records = effects.records.filter((record) => referenced.has(record.name.toLowerCase()));
338
+ const unsafe = records.filter((record) => record.effect !== 'immutable' || !record.resolved);
339
+ if (records.length > 0 && unsafe.length > 0)
340
+ violations.push('side_effect');
341
+ if (violations.length > 0) {
342
+ const named = denied[0] ?? unsafe[0]?.name;
343
+ const kind = named ? `SELECT (${named})` : `SELECT (${violations.join(', ')})`;
344
+ // Not a read. Reported as `write` so it can never satisfy a `query_read`
345
+ // check, and so it is visible as a mutation attempt in the audit trail.
346
+ return base('write', kind, true, 'SELECT', { read_violations: violations }, { records, analysed: effects.analysed });
347
+ }
348
+ return base('read', 'SELECT', true, 'SELECT', {}, { records, analysed: effects.analysed });
349
+ }
350
+ /**
351
+ * `SET` / `RESET` classification.
352
+ *
353
+ * Most GUCs are harmless session tuning, but a handful change who the session
354
+ * is or what it is allowed to do. Those are privilege changes, not utilities,
355
+ * and must require the `ddl` capability.
356
+ */
357
+ function classifyVariableSet(node, verb) {
358
+ const name = String(node?.name ?? '').toLowerCase();
359
+ const kind = String(node?.kind ?? 'VAR_SET_VALUE').toUpperCase();
360
+ const PRIVILEGE_GUCS = new Set([
361
+ 'role',
362
+ 'session_authorization',
363
+ 'session_replication_role',
364
+ 'transaction_read_only',
365
+ 'default_transaction_read_only',
366
+ ]);
367
+ if (PRIVILEGE_GUCS.has(name) || makesTransactionWritable(node)) {
368
+ return base('ddl', `SET ${name.toUpperCase()}`, true, verb, {
369
+ read_violations: ['executable_block'],
370
+ });
371
+ }
372
+ return base('utility', `SET ${kind}`, true, verb);
373
+ }
374
+ /**
375
+ * True when the statement opens a writable transaction — `SET TRANSACTION READ
376
+ * WRITE` or `SET SESSION CHARACTERISTICS AS TRANSACTION READ WRITE`.
377
+ *
378
+ * `default_transaction_read_only = on` is not by itself sufficient: PostgreSQL
379
+ * lets a transaction override it with an explicit `READ WRITE`, so a statement
380
+ * that does this in the middle of a request is a request to leave read-only
381
+ * mode, not session tuning. The parse tree spells it as a `DefElem` with
382
+ * `defname: 'transaction_read_only'` whose argument is the boolean, where
383
+ * `false` means `READ WRITE`.
384
+ */
385
+ function makesTransactionWritable(node) {
386
+ const args = Array.isArray(node?.args) ? node.args : [];
387
+ for (const arg of args) {
388
+ const elem = arg?.DefElem ?? arg;
389
+ const defname = String(elem?.defname ?? '').toLowerCase();
390
+ if (defname === 'transaction_read_only' || defname === 'default_transaction_read_only') {
391
+ if (isFalseArgument(elem))
392
+ return true;
393
+ }
394
+ }
395
+ return false;
396
+ }
397
+ /**
398
+ * True when a `DefElem` argument is the boolean `false`.
399
+ *
400
+ * libpg_query's JSON encoding omits zero-valued protobuf fields, so `false`
401
+ * arrives either as an absent `ival`, as an empty `ival` object or as
402
+ * `ival: 0`, while `true` always arrives as `ival: { ival: 1 }`.
403
+ */
404
+ function isFalseArgument(elem) {
405
+ const constant = elem?.arg?.A_Const;
406
+ if (constant === undefined || constant === null)
407
+ return true;
408
+ if (constant.sval !== undefined)
409
+ return false;
410
+ const ival = constant.ival;
411
+ if (ival === undefined)
412
+ return true;
413
+ return ival.ival === undefined || ival.ival === 0;
414
+ }
415
+ function deriveVerb(rootType, node) {
416
+ switch (rootType) {
417
+ case 'SelectStmt':
418
+ return 'SELECT';
419
+ case 'InsertStmt':
420
+ return 'INSERT';
421
+ case 'UpdateStmt':
422
+ return 'UPDATE';
423
+ case 'DeleteStmt':
424
+ return 'DELETE';
425
+ case 'MergeStmt':
426
+ return 'MERGE';
427
+ case 'CreateStmt':
428
+ return 'CREATE';
429
+ case 'IndexStmt':
430
+ return 'CREATE INDEX';
431
+ case 'CreateTableAsStmt':
432
+ return 'CREATE TABLE AS';
433
+ case 'ViewStmt':
434
+ return 'CREATE VIEW';
435
+ case 'AlterTableStmt':
436
+ return 'ALTER';
437
+ case 'DropStmt':
438
+ return 'DROP';
439
+ case 'TruncateStmt':
440
+ return 'TRUNCATE';
441
+ case 'GrantStmt':
442
+ return String(node?.is_grant === false ? 'REVOKE' : 'GRANT');
443
+ case 'GrantRoleStmt':
444
+ return String(node?.is_grant === false ? 'REVOKE ROLE' : 'GRANT ROLE');
445
+ case 'VariableSetStmt':
446
+ return 'SET';
447
+ case 'VariableShowStmt':
448
+ return 'SHOW';
449
+ case 'TransactionStmt':
450
+ return String(node?.kind ?? 'BEGIN').toUpperCase();
451
+ case 'ExplainStmt':
452
+ return 'EXPLAIN';
453
+ case 'CopyStmt':
454
+ return 'COPY';
455
+ case 'VacuumStmt':
456
+ return 'VACUUM';
457
+ case 'ReindexStmt':
458
+ return 'REINDEX';
459
+ case 'ClusterStmt':
460
+ return 'CLUSTER';
461
+ case 'DoStmt':
462
+ return 'DO';
463
+ case 'CallStmt':
464
+ return 'CALL';
465
+ case 'ExecuteStmt':
466
+ return 'EXECUTE';
467
+ case 'LockStmt':
468
+ return 'LOCK';
469
+ case 'AlterSystemStmt':
470
+ return 'ALTER SYSTEM';
471
+ case 'CreateRoleStmt':
472
+ return 'CREATE ROLE';
473
+ case 'AlterRoleStmt':
474
+ return 'ALTER ROLE';
475
+ case 'RefreshMatViewStmt':
476
+ return 'REFRESH MATERIALIZED VIEW';
477
+ case 'DeclareCursorStmt':
478
+ return 'DECLARE';
479
+ case 'CommentStmt':
480
+ return 'COMMENT';
481
+ default:
482
+ return rootType.replace(/Stmt$/, '').toUpperCase();
483
+ }
484
+ }
485
+ /*
486
+ * There are deliberately no `isReadOnly` / `isTransactional` / `extractVerb`
487
+ * wrappers here any more.
488
+ *
489
+ * They each parsed the SQL and then read a field off the classification the
490
+ * caller could already have, and nothing in production called them — the only
491
+ * references were tests written to exercise them, which made them look covered
492
+ * while shipping nothing. Every rule they named is enforced, in production, by
493
+ * the thing that actually needs it:
494
+ *
495
+ * - "is this a provable read?" is `isProvableRead` in
496
+ * `permissions/role-policy.ts`, the predicate `PermissionChecker.check` uses
497
+ * for the `read_only`, `auto_upgrade` and `manual` levels and for the
498
+ * capability a classification requires. It is the identical rule
499
+ * (`type === 'read' && parse_ok && statement_count === 1 && no read
500
+ * violations && every referenced function proved IMMUTABLE by pg_proc`);
501
+ * keeping a second copy here invited the two to drift.
502
+ * - "can this run inside a transaction?" is `classification.transactional`,
503
+ * which `execution/non-tx-detector.ts` and the migration runner read, and
504
+ * `aggregateClassification` in `permissions/checker.ts` combines.
505
+ * - "what is the verb?" is `classification.verb`, interpolated into the
506
+ * intent-mismatch reason in `permissions/checker.ts` and into the
507
+ * auto-upgrade refusal reasons in `permissions/auto-upgrade.ts`.
508
+ */
509
+ /**
510
+ * Classify and throw instead of returning, for call sites that must fail
511
+ * closed on anything they cannot prove is a read.
512
+ */
513
+ async function assertSingleReadStatement(sql, options = {}) {
514
+ let classification;
515
+ try {
516
+ classification = await classifyStatement(sql, options);
517
+ }
518
+ catch (err) {
519
+ if (err instanceof sql_parser_1.SqlParserUnavailableError)
520
+ throw err;
521
+ if (err instanceof sql_parser_1.SqlParseError) {
522
+ throw new StatementClassificationError(`PostgreSQL rejected the statement: ${err.message}`, 'parse_error');
523
+ }
524
+ throw err;
525
+ }
526
+ if (!classification.parse_ok) {
527
+ throw new StatementClassificationError('Statement could not be parsed.', 'parse_error');
528
+ }
529
+ if (classification.statement_count !== 1) {
530
+ throw new StatementClassificationError(`Expected exactly one statement, found ${classification.statement_count}. ` +
531
+ 'Multi-statement execution is not permitted.', 'multiple_statements');
532
+ }
533
+ return classification;
534
+ }
535
+ //# sourceMappingURL=statement-classifier.js.map