@north-light/api 0.3.580 → 0.3.587

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 (1671) hide show
  1. package/dist/api/client.d.ts +9 -2
  2. package/dist/api/client.js +22 -0
  3. package/dist/api/contract.d.ts +1 -1
  4. package/dist/api/contract.js +1 -1
  5. package/dist/api/dto/bash-jobs.d.ts +17 -0
  6. package/dist/api/dto/bash-jobs.js +2 -0
  7. package/dist/api/dto/execution-start.d.ts +14 -0
  8. package/dist/api/dto/health.d.ts +22 -0
  9. package/dist/api/dto/imports.d.ts +142 -0
  10. package/dist/api/dto/imports.js +2 -0
  11. package/dist/api/error-codes.d.ts +5 -0
  12. package/dist/api/error-codes.js +2 -0
  13. package/dist/api/errors.js +2 -1
  14. package/dist/api/index.d.ts +1 -0
  15. package/dist/api/index.js +1 -0
  16. package/dist/api/routes.d.ts +3 -0
  17. package/dist/api/routes.js +3 -0
  18. package/dist/build-root.d.ts +66 -0
  19. package/dist/build-root.js +401 -0
  20. package/dist/clients/attach/ansi-cells.d.ts +44 -0
  21. package/dist/clients/attach/ansi-cells.js +137 -0
  22. package/dist/clients/attach/chrome/bash-jobs.d.ts +16 -0
  23. package/dist/clients/attach/chrome/bash-jobs.js +34 -0
  24. package/dist/clients/attach/chrome/canvas-panels.d.ts +43 -0
  25. package/dist/clients/attach/chrome/canvas-panels.js +227 -0
  26. package/dist/clients/attach/chrome/completion-bell.d.ts +10 -0
  27. package/dist/clients/attach/chrome/completion-bell.js +89 -0
  28. package/dist/clients/attach/chrome/cron-wait.d.ts +3 -0
  29. package/dist/clients/attach/chrome/cron-wait.js +34 -0
  30. package/dist/clients/attach/chrome/git-info.d.ts +20 -0
  31. package/dist/clients/attach/chrome/git-info.js +44 -0
  32. package/dist/clients/attach/chrome/header.d.ts +10 -0
  33. package/dist/clients/attach/chrome/header.js +30 -0
  34. package/dist/clients/attach/chrome/inbox-strip.d.ts +36 -0
  35. package/dist/clients/attach/chrome/inbox-strip.js +219 -0
  36. package/dist/clients/attach/chrome/key-hint.d.ts +9 -0
  37. package/dist/clients/attach/chrome/key-hint.js +16 -0
  38. package/dist/clients/attach/chrome/object-wait.d.ts +4 -0
  39. package/dist/clients/attach/chrome/object-wait.js +24 -0
  40. package/dist/clients/attach/chrome/recap.d.ts +7 -0
  41. package/dist/clients/attach/chrome/recap.js +19 -0
  42. package/dist/clients/attach/chrome/review-wait.d.ts +6 -0
  43. package/dist/clients/attach/chrome/review-wait.js +22 -0
  44. package/dist/clients/attach/chrome/roster.d.ts +39 -0
  45. package/dist/clients/attach/chrome/roster.js +294 -0
  46. package/dist/clients/attach/chrome/status-line.d.ts +38 -0
  47. package/dist/clients/attach/chrome/status-line.js +127 -0
  48. package/dist/clients/attach/chrome/ticket-panel.d.ts +29 -0
  49. package/dist/clients/attach/chrome/ticket-panel.js +280 -0
  50. package/dist/clients/attach/chrome/widgets.d.ts +9 -0
  51. package/dist/clients/attach/chrome/widgets.js +51 -0
  52. package/dist/clients/attach/command.d.ts +3 -0
  53. package/dist/clients/attach/command.js +107 -0
  54. package/dist/clients/attach/config.d.ts +95 -0
  55. package/dist/clients/attach/config.js +275 -0
  56. package/dist/clients/attach/input/capabilities.d.ts +30 -0
  57. package/dist/clients/attach/input/capabilities.js +112 -0
  58. package/dist/clients/attach/input/clipboard-image.d.ts +55 -0
  59. package/dist/clients/attach/input/clipboard-image.js +237 -0
  60. package/dist/clients/attach/input/completion-frecency.d.ts +45 -0
  61. package/dist/clients/attach/input/completion-frecency.js +141 -0
  62. package/dist/clients/attach/input/controller.d.ts +92 -0
  63. package/dist/clients/attach/input/controller.js +383 -0
  64. package/dist/clients/attach/input/overlay-owner.d.ts +41 -0
  65. package/dist/clients/attach/input/overlay-owner.js +199 -0
  66. package/dist/clients/attach/input/ref-autocomplete.d.ts +77 -0
  67. package/dist/clients/attach/input/ref-autocomplete.js +176 -0
  68. package/dist/clients/attach/input/titled-editor.d.ts +225 -0
  69. package/dist/clients/attach/input/titled-editor.js +859 -0
  70. package/dist/clients/attach/overlays/auth.d.ts +13 -0
  71. package/dist/clients/attach/overlays/auth.js +247 -0
  72. package/dist/clients/attach/overlays/dialogs.d.ts +27 -0
  73. package/dist/clients/attach/overlays/dialogs.js +102 -0
  74. package/dist/clients/attach/overlays/file-review.d.ts +10 -0
  75. package/dist/clients/attach/overlays/file-review.js +146 -0
  76. package/dist/clients/attach/overlays/graph.d.ts +83 -0
  77. package/dist/clients/attach/overlays/graph.js +725 -0
  78. package/dist/clients/attach/overlays/help.d.ts +33 -0
  79. package/dist/clients/attach/overlays/help.js +214 -0
  80. package/dist/clients/attach/overlays/mcp.d.ts +32 -0
  81. package/dist/clients/attach/overlays/mcp.js +302 -0
  82. package/dist/clients/attach/overlays/pickers.d.ts +56 -0
  83. package/dist/clients/attach/overlays/pickers.js +163 -0
  84. package/dist/clients/attach/render/activity-slot.d.ts +4 -0
  85. package/dist/clients/attach/render/activity-slot.js +13 -0
  86. package/dist/clients/attach/render/assistant-message.d.ts +13 -0
  87. package/dist/clients/attach/render/assistant-message.js +56 -0
  88. package/dist/clients/attach/render/card-presentation.d.ts +36 -0
  89. package/dist/clients/attach/render/card-presentation.js +222 -0
  90. package/dist/clients/attach/render/chat-view.d.ts +409 -0
  91. package/dist/clients/attach/render/chat-view.js +2108 -0
  92. package/dist/clients/attach/render/condensed-history.d.ts +21 -0
  93. package/dist/clients/attach/render/condensed-history.js +60 -0
  94. package/dist/clients/attach/render/context-message.d.ts +22 -0
  95. package/dist/clients/attach/render/context-message.js +63 -0
  96. package/dist/clients/attach/render/crtr-output.d.ts +52 -0
  97. package/dist/clients/attach/render/crtr-output.js +721 -0
  98. package/dist/clients/attach/render/diagram.d.ts +4 -0
  99. package/dist/clients/attach/render/diagram.js +111 -0
  100. package/dist/clients/attach/render/doc-links.d.ts +36 -0
  101. package/dist/clients/attach/render/doc-links.js +78 -0
  102. package/dist/clients/attach/render/edit-diff.d.ts +12 -0
  103. package/dist/clients/attach/render/edit-diff.js +304 -0
  104. package/dist/clients/attach/render/glyph-codepoints.d.ts +3 -0
  105. package/dist/clients/attach/render/glyph-codepoints.js +42 -0
  106. package/dist/clients/attach/render/group-activity.d.ts +84 -0
  107. package/dist/clients/attach/render/group-activity.js +276 -0
  108. package/dist/clients/attach/render/group-recap.d.ts +13 -0
  109. package/dist/clients/attach/render/group-recap.js +146 -0
  110. package/dist/clients/attach/render/markdown-source.d.ts +21 -0
  111. package/dist/clients/attach/render/markdown-source.js +279 -0
  112. package/dist/clients/attach/render/measured-container.d.ts +96 -0
  113. package/dist/clients/attach/render/measured-container.js +322 -0
  114. package/dist/clients/attach/render/page-block.d.ts +39 -0
  115. package/dist/clients/attach/render/page-block.js +187 -0
  116. package/dist/clients/attach/render/scroll-animation.d.ts +8 -0
  117. package/dist/clients/attach/render/scroll-animation.js +80 -0
  118. package/dist/clients/attach/render/tool-calls.d.ts +53 -0
  119. package/dist/clients/attach/render/tool-calls.js +350 -0
  120. package/dist/clients/attach/render/transcript-copy.d.ts +9 -0
  121. package/dist/clients/attach/render/transcript-copy.js +81 -0
  122. package/dist/clients/attach/render/transcript-search.d.ts +28 -0
  123. package/dist/clients/attach/render/transcript-search.js +152 -0
  124. package/dist/clients/attach/render/viewport.d.ts +38 -0
  125. package/dist/clients/attach/render/viewport.js +184 -0
  126. package/dist/clients/attach/session/banner.d.ts +13 -0
  127. package/dist/clients/attach/session/banner.js +33 -0
  128. package/dist/clients/attach/session/bindings.d.ts +20 -0
  129. package/dist/clients/attach/session/bindings.js +71 -0
  130. package/dist/clients/attach/session/chrome-refresh.d.ts +49 -0
  131. package/dist/clients/attach/session/chrome-refresh.js +154 -0
  132. package/dist/clients/attach/session/connection.d.ts +54 -0
  133. package/dist/clients/attach/session/connection.js +204 -0
  134. package/dist/clients/attach/session/context.d.ts +59 -0
  135. package/dist/clients/attach/session/context.js +16 -0
  136. package/dist/clients/attach/session/document-links.d.ts +12 -0
  137. package/dist/clients/attach/session/document-links.js +43 -0
  138. package/dist/clients/attach/session/editor-frame.d.ts +47 -0
  139. package/dist/clients/attach/session/editor-frame.js +142 -0
  140. package/dist/clients/attach/session/editor-inventory.d.ts +63 -0
  141. package/dist/clients/attach/session/editor-inventory.js +156 -0
  142. package/dist/clients/attach/session/file-links.d.ts +22 -0
  143. package/dist/clients/attach/session/file-links.js +73 -0
  144. package/dist/clients/attach/session/focus-events.d.ts +4 -0
  145. package/dist/clients/attach/session/focus-events.js +12 -0
  146. package/dist/clients/attach/session/frame.d.ts +46 -0
  147. package/dist/clients/attach/session/frame.js +214 -0
  148. package/dist/clients/attach/session/frames.d.ts +51 -0
  149. package/dist/clients/attach/session/frames.js +203 -0
  150. package/dist/clients/attach/session/identity.d.ts +16 -0
  151. package/dist/clients/attach/session/identity.js +26 -0
  152. package/dist/clients/attach/session/input-wiring.d.ts +53 -0
  153. package/dist/clients/attach/session/input-wiring.js +146 -0
  154. package/dist/clients/attach/session/invariant.d.ts +9 -0
  155. package/dist/clients/attach/session/invariant.js +15 -0
  156. package/dist/clients/attach/session/keys.d.ts +46 -0
  157. package/dist/clients/attach/session/keys.js +77 -0
  158. package/dist/clients/attach/session/layout.d.ts +22 -0
  159. package/dist/clients/attach/session/layout.js +59 -0
  160. package/dist/clients/attach/session/mouse.d.ts +27 -0
  161. package/dist/clients/attach/session/mouse.js +78 -0
  162. package/dist/clients/attach/session/pane-focus.d.ts +8 -0
  163. package/dist/clients/attach/session/pane-focus.js +42 -0
  164. package/dist/clients/attach/session/pane-tag.d.ts +44 -0
  165. package/dist/clients/attach/session/pane-tag.js +112 -0
  166. package/dist/clients/attach/session/pi-assets.d.ts +1 -0
  167. package/dist/clients/attach/session/pi-assets.js +24 -0
  168. package/dist/clients/attach/session/pi-oauth-flows.d.ts +1 -0
  169. package/dist/clients/attach/session/pi-oauth-flows.js +21 -0
  170. package/dist/clients/attach/session/profile-files.d.ts +17 -0
  171. package/dist/clients/attach/session/profile-files.js +207 -0
  172. package/dist/clients/attach/session/readonly-popup.d.ts +15 -0
  173. package/dist/clients/attach/session/readonly-popup.js +25 -0
  174. package/dist/clients/attach/session/reconnect.d.ts +46 -0
  175. package/dist/clients/attach/session/reconnect.js +195 -0
  176. package/dist/clients/attach/session/selection.d.ts +28 -0
  177. package/dist/clients/attach/session/selection.js +108 -0
  178. package/dist/clients/attach/session/state-sync.d.ts +38 -0
  179. package/dist/clients/attach/session/state-sync.js +67 -0
  180. package/dist/clients/attach/session/surface-frame.d.ts +20 -0
  181. package/dist/clients/attach/session/surface-frame.js +73 -0
  182. package/dist/clients/attach/session/surface-host.d.ts +65 -0
  183. package/dist/clients/attach/session/surface-host.js +256 -0
  184. package/dist/clients/attach/session/teardown.d.ts +30 -0
  185. package/dist/clients/attach/session/teardown.js +94 -0
  186. package/dist/clients/attach/session/transcript-search.d.ts +20 -0
  187. package/dist/clients/attach/session/transcript-search.js +151 -0
  188. package/dist/clients/attach/session/whip-achievements.d.ts +4 -0
  189. package/dist/clients/attach/session/whip-achievements.js +145 -0
  190. package/dist/clients/attach/session/whip.d.ts +20 -0
  191. package/dist/clients/attach/session/whip.js +362 -0
  192. package/dist/clients/attach/slash/dispatch.d.ts +120 -0
  193. package/dist/clients/attach/slash/dispatch.js +748 -0
  194. package/dist/clients/attach/slash/prompt-preview.d.ts +30 -0
  195. package/dist/clients/attach/slash/prompt-preview.js +121 -0
  196. package/dist/clients/attach/viewer.d.ts +8 -0
  197. package/dist/clients/attach/viewer.js +873 -0
  198. package/dist/clients/conversation/projection.d.ts +79 -0
  199. package/dist/clients/conversation/projection.js +324 -0
  200. package/dist/clients/conversation/submit.d.ts +38 -0
  201. package/dist/clients/conversation/submit.js +51 -0
  202. package/dist/clients/dashboard/app.d.ts +7 -0
  203. package/dist/clients/dashboard/app.js +438 -0
  204. package/dist/clients/dashboard/model.d.ts +39 -0
  205. package/dist/clients/dashboard/model.js +77 -0
  206. package/dist/clients/dashboard/render.d.ts +29 -0
  207. package/dist/clients/dashboard/render.js +148 -0
  208. package/dist/clients/inbox/controller.d.ts +174 -0
  209. package/dist/clients/inbox/controller.js +816 -0
  210. package/dist/clients/inbox/dto-adapt.d.ts +28 -0
  211. package/dist/clients/inbox/dto-adapt.js +93 -0
  212. package/dist/clients/inbox/layout.d.ts +8 -0
  213. package/dist/clients/inbox/layout.js +9 -0
  214. package/dist/clients/inbox/page-adapter.d.ts +33 -0
  215. package/dist/clients/inbox/page-adapter.js +55 -0
  216. package/dist/clients/inbox/resolve.d.ts +16 -0
  217. package/dist/clients/inbox/resolve.js +35 -0
  218. package/dist/clients/inbox/review/anchors.d.ts +41 -0
  219. package/dist/clients/inbox/review/anchors.js +89 -0
  220. package/dist/clients/inbox/review/comments-client.d.ts +74 -0
  221. package/dist/clients/inbox/review/comments-client.js +103 -0
  222. package/dist/clients/inbox/review/companion-pane.d.ts +47 -0
  223. package/dist/clients/inbox/review/companion-pane.js +109 -0
  224. package/dist/clients/inbox/review/document-surface.d.ts +212 -0
  225. package/dist/clients/inbox/review/document-surface.js +1268 -0
  226. package/dist/clients/inbox/review/frame.d.ts +57 -0
  227. package/dist/clients/inbox/review/frame.js +309 -0
  228. package/dist/clients/inbox/review/keys.d.ts +69 -0
  229. package/dist/clients/inbox/review/keys.js +133 -0
  230. package/dist/clients/inbox/review/launch.d.ts +16 -0
  231. package/dist/clients/inbox/review/launch.js +170 -0
  232. package/dist/clients/inbox/review/live-source.d.ts +24 -0
  233. package/dist/clients/inbox/review/live-source.js +160 -0
  234. package/dist/clients/inbox/review/nvim.d.ts +15 -0
  235. package/dist/clients/inbox/review/nvim.js +43 -0
  236. package/dist/clients/inbox/review/remap.d.ts +51 -0
  237. package/dist/clients/inbox/review/remap.js +157 -0
  238. package/dist/clients/inbox/review/review-client.d.ts +43 -0
  239. package/dist/clients/inbox/review/review-client.js +123 -0
  240. package/dist/clients/inbox/review/roundtrip.d.ts +5 -0
  241. package/dist/clients/inbox/review/roundtrip.js +41 -0
  242. package/dist/clients/inbox/review/state.d.ts +153 -0
  243. package/dist/clients/inbox/review/state.js +315 -0
  244. package/dist/clients/inbox/review-adapter.d.ts +17 -0
  245. package/dist/clients/inbox/review-adapter.js +43 -0
  246. package/dist/clients/inbox/surface.d.ts +25 -0
  247. package/dist/clients/inbox/surface.js +190 -0
  248. package/dist/clients/inbox/tui/ansi.d.ts +68 -0
  249. package/dist/clients/inbox/tui/ansi.js +321 -0
  250. package/dist/clients/inbox/tui/input.d.ts +5 -0
  251. package/dist/clients/inbox/tui/input.js +392 -0
  252. package/dist/clients/inbox/tui/keys.d.ts +28 -0
  253. package/dist/clients/inbox/tui/keys.js +104 -0
  254. package/dist/clients/inbox/tui/page-body.d.ts +10 -0
  255. package/dist/clients/inbox/tui/page-body.js +69 -0
  256. package/dist/clients/inbox/tui/panel.d.ts +4 -0
  257. package/dist/clients/inbox/tui/panel.js +84 -0
  258. package/dist/clients/inbox/tui/render.d.ts +23 -0
  259. package/dist/clients/inbox/tui/render.js +378 -0
  260. package/dist/clients/inbox/tui/slots.d.ts +33 -0
  261. package/dist/clients/inbox/tui/slots.js +134 -0
  262. package/dist/clients/inbox/tui/types.d.ts +73 -0
  263. package/dist/clients/inbox/tui/types.js +1 -0
  264. package/dist/clients/inbox/tui.d.ts +17 -0
  265. package/dist/clients/inbox/tui.js +92 -0
  266. package/dist/clients/surfaces/host.d.ts +74 -0
  267. package/dist/clients/surfaces/host.js +1 -0
  268. package/dist/commands/api-client.d.ts +113 -0
  269. package/dist/commands/api-client.js +427 -0
  270. package/dist/commands/attention.d.ts +2 -0
  271. package/dist/commands/attention.js +215 -0
  272. package/dist/commands/canvas/edges.d.ts +2 -0
  273. package/dist/commands/canvas/edges.js +41 -0
  274. package/dist/commands/canvas/list.d.ts +4 -0
  275. package/dist/commands/canvas/list.js +79 -0
  276. package/dist/commands/canvas/read.d.ts +14 -0
  277. package/dist/commands/canvas/read.js +95 -0
  278. package/dist/commands/canvas/search.d.ts +2 -0
  279. package/dist/commands/canvas/search.js +49 -0
  280. package/dist/commands/canvas/share.d.ts +2 -0
  281. package/dist/commands/canvas/share.js +80 -0
  282. package/dist/commands/canvas/unwatch.d.ts +2 -0
  283. package/dist/commands/canvas/unwatch.js +42 -0
  284. package/dist/commands/canvas/watch.d.ts +3 -0
  285. package/dist/commands/canvas/watch.js +63 -0
  286. package/dist/commands/canvas-analytics/chart.d.ts +52 -0
  287. package/dist/commands/canvas-analytics/chart.js +124 -0
  288. package/dist/commands/canvas-analytics/drilldown.d.ts +34 -0
  289. package/dist/commands/canvas-analytics/drilldown.js +96 -0
  290. package/dist/commands/canvas-analytics/format.d.ts +29 -0
  291. package/dist/commands/canvas-analytics/format.js +106 -0
  292. package/dist/commands/canvas-analytics/graph-detail.d.ts +2 -0
  293. package/dist/commands/canvas-analytics/graph-detail.js +307 -0
  294. package/dist/commands/canvas-analytics/graphs.d.ts +9 -0
  295. package/dist/commands/canvas-analytics/graphs.js +365 -0
  296. package/dist/commands/canvas-analytics/memory.d.ts +2 -0
  297. package/dist/commands/canvas-analytics/memory.js +211 -0
  298. package/dist/commands/canvas-analytics/overview.d.ts +2 -0
  299. package/dist/commands/canvas-analytics/overview.js +189 -0
  300. package/dist/commands/canvas-analytics/shell.d.ts +60 -0
  301. package/dist/commands/canvas-analytics/shell.js +416 -0
  302. package/dist/commands/canvas-analytics/time.d.ts +2 -0
  303. package/dist/commands/canvas-analytics/time.js +228 -0
  304. package/dist/commands/canvas-analytics/usage.d.ts +2 -0
  305. package/dist/commands/canvas-analytics/usage.js +305 -0
  306. package/dist/commands/canvas-analytics/view.d.ts +85 -0
  307. package/dist/commands/canvas-analytics/view.js +102 -0
  308. package/dist/commands/canvas-analytics.d.ts +2 -0
  309. package/dist/commands/canvas-analytics.js +28 -0
  310. package/dist/commands/canvas-browse.d.ts +2 -0
  311. package/dist/commands/canvas-browse.js +71 -0
  312. package/dist/commands/canvas-config.d.ts +2 -0
  313. package/dist/commands/canvas-config.js +192 -0
  314. package/dist/commands/canvas-history/grep.d.ts +1 -0
  315. package/dist/commands/canvas-history/grep.js +85 -0
  316. package/dist/commands/canvas-history/read.d.ts +1 -0
  317. package/dist/commands/canvas-history/read.js +48 -0
  318. package/dist/commands/canvas-history/search.d.ts +1 -0
  319. package/dist/commands/canvas-history/search.js +99 -0
  320. package/dist/commands/canvas-history/shared.d.ts +34 -0
  321. package/dist/commands/canvas-history/shared.js +135 -0
  322. package/dist/commands/canvas-history/stats.d.ts +1 -0
  323. package/dist/commands/canvas-history/stats.js +68 -0
  324. package/dist/commands/canvas-history.d.ts +2 -0
  325. package/dist/commands/canvas-history.js +29 -0
  326. package/dist/commands/canvas-issue.d.ts +2 -0
  327. package/dist/commands/canvas-issue.js +148 -0
  328. package/dist/commands/canvas-prune.d.ts +2 -0
  329. package/dist/commands/canvas-prune.js +111 -0
  330. package/dist/commands/canvas-roster.d.ts +2 -0
  331. package/dist/commands/canvas-roster.js +69 -0
  332. package/dist/commands/canvas-snapshot.d.ts +2 -0
  333. package/dist/commands/canvas-snapshot.js +34 -0
  334. package/dist/commands/canvas-use.d.ts +1 -0
  335. package/dist/commands/canvas-use.js +61 -0
  336. package/dist/commands/canvas.d.ts +3 -0
  337. package/dist/commands/canvas.js +57 -0
  338. package/dist/commands/chord.d.ts +2 -0
  339. package/dist/commands/chord.js +241 -0
  340. package/dist/commands/cron.d.ts +2 -0
  341. package/dist/commands/cron.js +541 -0
  342. package/dist/commands/custom-object/ack.d.ts +2 -0
  343. package/dist/commands/custom-object/ack.js +30 -0
  344. package/dist/commands/custom-object/publish.d.ts +2 -0
  345. package/dist/commands/custom-object/publish.js +39 -0
  346. package/dist/commands/custom-object/receive.d.ts +2 -0
  347. package/dist/commands/custom-object/receive.js +69 -0
  348. package/dist/commands/custom-object/register.d.ts +2 -0
  349. package/dist/commands/custom-object/register.js +69 -0
  350. package/dist/commands/custom-object/shared.d.ts +5 -0
  351. package/dist/commands/custom-object/shared.js +14 -0
  352. package/dist/commands/custom-object/unregister.d.ts +2 -0
  353. package/dist/commands/custom-object/unregister.js +26 -0
  354. package/dist/commands/custom-object.d.ts +2 -0
  355. package/dist/commands/custom-object.js +21 -0
  356. package/dist/commands/dashboard.d.ts +2 -0
  357. package/dist/commands/dashboard.js +86 -0
  358. package/dist/commands/doc/delete.d.ts +2 -0
  359. package/dist/commands/doc/delete.js +30 -0
  360. package/dist/commands/doc/edit.d.ts +2 -0
  361. package/dist/commands/doc/edit.js +82 -0
  362. package/dist/commands/doc/history.d.ts +2 -0
  363. package/dist/commands/doc/history.js +38 -0
  364. package/dist/commands/doc/lint.d.ts +2 -0
  365. package/dist/commands/doc/lint.js +36 -0
  366. package/dist/commands/doc/list.d.ts +2 -0
  367. package/dist/commands/doc/list.js +19 -0
  368. package/dist/commands/doc/move.d.ts +2 -0
  369. package/dist/commands/doc/move.js +37 -0
  370. package/dist/commands/doc/read.d.ts +2 -0
  371. package/dist/commands/doc/read.js +19 -0
  372. package/dist/commands/doc/replace-blocks.d.ts +6 -0
  373. package/dist/commands/doc/replace-blocks.js +40 -0
  374. package/dist/commands/doc/shared.d.ts +25 -0
  375. package/dist/commands/doc/shared.js +160 -0
  376. package/dist/commands/doc/write.d.ts +2 -0
  377. package/dist/commands/doc/write.js +52 -0
  378. package/dist/commands/doc.d.ts +2 -0
  379. package/dist/commands/doc.js +27 -0
  380. package/dist/commands/human/components.d.ts +4 -0
  381. package/dist/commands/human/components.js +78 -0
  382. package/dist/commands/human/feedback.d.ts +2 -0
  383. package/dist/commands/human/feedback.js +112 -0
  384. package/dist/commands/human/prompts.d.ts +21 -0
  385. package/dist/commands/human/prompts.js +326 -0
  386. package/dist/commands/human/queue.d.ts +3 -0
  387. package/dist/commands/human/queue.js +191 -0
  388. package/dist/commands/human/request.d.ts +2 -0
  389. package/dist/commands/human/request.js +266 -0
  390. package/dist/commands/human/review.d.ts +2 -0
  391. package/dist/commands/human/review.js +288 -0
  392. package/dist/commands/human/shared.d.ts +16 -0
  393. package/dist/commands/human/shared.js +67 -0
  394. package/dist/commands/human.d.ts +2 -0
  395. package/dist/commands/human.js +63 -0
  396. package/dist/commands/node/bash.d.ts +1 -0
  397. package/dist/commands/node/bash.js +390 -0
  398. package/dist/commands/node/create.d.ts +6 -0
  399. package/dist/commands/node/create.js +363 -0
  400. package/dist/commands/node/inspect.d.ts +2 -0
  401. package/dist/commands/node/inspect.js +288 -0
  402. package/dist/commands/node/lifecycle.d.ts +4 -0
  403. package/dist/commands/node/lifecycle.js +577 -0
  404. package/dist/commands/node/message.d.ts +1 -0
  405. package/dist/commands/node/message.js +170 -0
  406. package/dist/commands/node/outcome.d.ts +2 -0
  407. package/dist/commands/node/outcome.js +133 -0
  408. package/dist/commands/node/pyramid.d.ts +2 -0
  409. package/dist/commands/node/pyramid.js +79 -0
  410. package/dist/commands/node/subscription.d.ts +1 -0
  411. package/dist/commands/node/subscription.js +78 -0
  412. package/dist/commands/node/wait.d.ts +1 -0
  413. package/dist/commands/node/wait.js +165 -0
  414. package/dist/commands/node-context.d.ts +2 -0
  415. package/dist/commands/node-context.js +145 -0
  416. package/dist/commands/node-lifecycle-revive.d.ts +12 -0
  417. package/dist/commands/node-lifecycle-revive.js +217 -0
  418. package/dist/commands/node-snapshot.d.ts +2 -0
  419. package/dist/commands/node-snapshot.js +37 -0
  420. package/dist/commands/node-transcript.d.ts +2 -0
  421. package/dist/commands/node-transcript.js +59 -0
  422. package/dist/commands/node-worktree.d.ts +2 -0
  423. package/dist/commands/node-worktree.js +138 -0
  424. package/dist/commands/node.d.ts +2 -0
  425. package/dist/commands/node.js +29 -0
  426. package/dist/commands/person-settings.d.ts +1 -0
  427. package/dist/commands/person-settings.js +23 -0
  428. package/dist/commands/pkg/browse/actions.d.ts +7 -0
  429. package/dist/commands/pkg/browse/actions.js +198 -0
  430. package/dist/commands/pkg/browse/catalog.d.ts +9 -0
  431. package/dist/commands/pkg/browse/catalog.js +461 -0
  432. package/dist/commands/pkg/browse/command-view.d.ts +3 -0
  433. package/dist/commands/pkg/browse/command-view.js +217 -0
  434. package/dist/commands/pkg/browse/detail-panel.d.ts +66 -0
  435. package/dist/commands/pkg/browse/detail-panel.js +402 -0
  436. package/dist/commands/pkg/browse/doc-view.d.ts +3 -0
  437. package/dist/commands/pkg/browse/doc-view.js +84 -0
  438. package/dist/commands/pkg/browse/list-panel.d.ts +28 -0
  439. package/dist/commands/pkg/browse/list-panel.js +168 -0
  440. package/dist/commands/pkg/browse/model.d.ts +223 -0
  441. package/dist/commands/pkg/browse/model.js +36 -0
  442. package/dist/commands/pkg/browse/shell.d.ts +93 -0
  443. package/dist/commands/pkg/browse/shell.js +640 -0
  444. package/dist/commands/pkg/browse.d.ts +2 -0
  445. package/dist/commands/pkg/browse.js +27 -0
  446. package/dist/commands/pkg/market-inspect.d.ts +2 -0
  447. package/dist/commands/pkg/market-inspect.js +141 -0
  448. package/dist/commands/pkg/market-manage.d.ts +16 -0
  449. package/dist/commands/pkg/market-manage.js +327 -0
  450. package/dist/commands/pkg/market.d.ts +1 -0
  451. package/dist/commands/pkg/market.js +14 -0
  452. package/dist/commands/pkg/plugin-env.d.ts +3 -0
  453. package/dist/commands/pkg/plugin-env.js +65 -0
  454. package/dist/commands/pkg/plugin-inspect.d.ts +2 -0
  455. package/dist/commands/pkg/plugin-inspect.js +168 -0
  456. package/dist/commands/pkg/plugin-manage.d.ts +98 -0
  457. package/dist/commands/pkg/plugin-manage.js +1024 -0
  458. package/dist/commands/pkg/plugin.d.ts +1 -0
  459. package/dist/commands/pkg/plugin.js +14 -0
  460. package/dist/commands/pkg/shared.d.ts +13 -0
  461. package/dist/commands/pkg/shared.js +62 -0
  462. package/dist/commands/pkg.d.ts +2 -0
  463. package/dist/commands/pkg.js +21 -0
  464. package/dist/commands/profile/daemon-profiles.d.ts +13 -0
  465. package/dist/commands/profile/daemon-profiles.js +38 -0
  466. package/dist/commands/profile/default.d.ts +2 -0
  467. package/dist/commands/profile/default.js +183 -0
  468. package/dist/commands/profile/delete.d.ts +1 -0
  469. package/dist/commands/profile/delete.js +66 -0
  470. package/dist/commands/profile/env.d.ts +8 -0
  471. package/dist/commands/profile/env.js +188 -0
  472. package/dist/commands/profile/kind.d.ts +1 -0
  473. package/dist/commands/profile/kind.js +27 -0
  474. package/dist/commands/profile/list.d.ts +1 -0
  475. package/dist/commands/profile/list.js +45 -0
  476. package/dist/commands/profile/meta.d.ts +4 -0
  477. package/dist/commands/profile/meta.js +65 -0
  478. package/dist/commands/profile/new.d.ts +1 -0
  479. package/dist/commands/profile/new.js +95 -0
  480. package/dist/commands/profile/pause.d.ts +2 -0
  481. package/dist/commands/profile/pause.js +59 -0
  482. package/dist/commands/profile/project.d.ts +2 -0
  483. package/dist/commands/profile/project.js +134 -0
  484. package/dist/commands/profile/rename.d.ts +1 -0
  485. package/dist/commands/profile/rename.js +41 -0
  486. package/dist/commands/profile/show.d.ts +1 -0
  487. package/dist/commands/profile/show.js +55 -0
  488. package/dist/commands/profile.d.ts +2 -0
  489. package/dist/commands/profile.js +35 -0
  490. package/dist/commands/push.d.ts +2 -0
  491. package/dist/commands/push.js +263 -0
  492. package/dist/commands/revive.d.ts +2 -0
  493. package/dist/commands/revive.js +183 -0
  494. package/dist/commands/surface/node/cycle.d.ts +1 -0
  495. package/dist/commands/surface/node/cycle.js +83 -0
  496. package/dist/commands/surface/node/focus.d.ts +1 -0
  497. package/dist/commands/surface/node/focus.js +60 -0
  498. package/dist/commands/surface/node/id.d.ts +1 -0
  499. package/dist/commands/surface/node/id.js +38 -0
  500. package/dist/commands/surface/node/pin.d.ts +1 -0
  501. package/dist/commands/surface/node/pin.js +42 -0
  502. package/dist/commands/surface/node/placement.d.ts +30 -0
  503. package/dist/commands/surface/node/placement.js +49 -0
  504. package/dist/commands/surface-dashboard.d.ts +2 -0
  505. package/dist/commands/surface-dashboard.js +138 -0
  506. package/dist/commands/surface-edit.d.ts +2 -0
  507. package/dist/commands/surface-edit.js +157 -0
  508. package/dist/commands/surface-inbox.d.ts +2 -0
  509. package/dist/commands/surface-inbox.js +98 -0
  510. package/dist/commands/surface-inspect.d.ts +2 -0
  511. package/dist/commands/surface-inspect.js +41 -0
  512. package/dist/commands/surface-node.d.ts +2 -0
  513. package/dist/commands/surface-node.js +19 -0
  514. package/dist/commands/surface-reload.d.ts +7 -0
  515. package/dist/commands/surface-reload.js +129 -0
  516. package/dist/commands/surface-tmux-spread.d.ts +2 -0
  517. package/dist/commands/surface-tmux-spread.js +214 -0
  518. package/dist/commands/surface.d.ts +2 -0
  519. package/dist/commands/surface.js +29 -0
  520. package/dist/commands/sys/branch.d.ts +2 -0
  521. package/dist/commands/sys/branch.js +19 -0
  522. package/dist/commands/sys/config.d.ts +1 -0
  523. package/dist/commands/sys/config.js +353 -0
  524. package/dist/commands/sys/connect.d.ts +1 -0
  525. package/dist/commands/sys/connect.js +185 -0
  526. package/dist/commands/sys/context/admin/actions.d.ts +23 -0
  527. package/dist/commands/sys/context/admin/actions.js +89 -0
  528. package/dist/commands/sys/context/admin/detail-panel.d.ts +73 -0
  529. package/dist/commands/sys/context/admin/detail-panel.js +233 -0
  530. package/dist/commands/sys/context/admin/docs-panel.d.ts +63 -0
  531. package/dist/commands/sys/context/admin/docs-panel.js +185 -0
  532. package/dist/commands/sys/context/admin/list-view.d.ts +62 -0
  533. package/dist/commands/sys/context/admin/list-view.js +170 -0
  534. package/dist/commands/sys/context/admin/model.d.ts +123 -0
  535. package/dist/commands/sys/context/admin/model.js +179 -0
  536. package/dist/commands/sys/context/admin/rail-panel.d.ts +84 -0
  537. package/dist/commands/sys/context/admin/rail-panel.js +229 -0
  538. package/dist/commands/sys/context/admin/read-view.d.ts +27 -0
  539. package/dist/commands/sys/context/admin/read-view.js +172 -0
  540. package/dist/commands/sys/context/admin/shell.d.ts +125 -0
  541. package/dist/commands/sys/context/admin/shell.js +870 -0
  542. package/dist/commands/sys/context/admin.d.ts +1 -0
  543. package/dist/commands/sys/context/admin.js +148 -0
  544. package/dist/commands/sys/context/doc.d.ts +1 -0
  545. package/dist/commands/sys/context/doc.js +126 -0
  546. package/dist/commands/sys/context/expose.d.ts +1 -0
  547. package/dist/commands/sys/context/expose.js +66 -0
  548. package/dist/commands/sys/context/prompt-review.d.ts +1 -0
  549. package/dist/commands/sys/context/prompt-review.js +244 -0
  550. package/dist/commands/sys/context/resolve.d.ts +115 -0
  551. package/dist/commands/sys/context/resolve.js +326 -0
  552. package/dist/commands/sys/context/sysprompt.d.ts +1 -0
  553. package/dist/commands/sys/context/sysprompt.js +95 -0
  554. package/dist/commands/sys/context.d.ts +2 -0
  555. package/dist/commands/sys/context.js +21 -0
  556. package/dist/commands/sys/daemon.d.ts +4 -0
  557. package/dist/commands/sys/daemon.js +334 -0
  558. package/dist/commands/sys/db.d.ts +1 -0
  559. package/dist/commands/sys/db.js +69 -0
  560. package/dist/commands/sys/desktop.d.ts +5 -0
  561. package/dist/commands/sys/desktop.js +201 -0
  562. package/dist/commands/sys/doctor.d.ts +36 -0
  563. package/dist/commands/sys/doctor.js +633 -0
  564. package/dist/commands/sys/env.d.ts +1 -0
  565. package/dist/commands/sys/env.js +39 -0
  566. package/dist/commands/sys/feedback.d.ts +1 -0
  567. package/dist/commands/sys/feedback.js +228 -0
  568. package/dist/commands/sys/import/move.d.ts +55 -0
  569. package/dist/commands/sys/import/move.js +391 -0
  570. package/dist/commands/sys/import/resume.d.ts +1 -0
  571. package/dist/commands/sys/import/resume.js +23 -0
  572. package/dist/commands/sys/import/start.d.ts +4 -0
  573. package/dist/commands/sys/import/start.js +92 -0
  574. package/dist/commands/sys/join.d.ts +3 -0
  575. package/dist/commands/sys/join.js +85 -0
  576. package/dist/commands/sys/limits.d.ts +1 -0
  577. package/dist/commands/sys/limits.js +133 -0
  578. package/dist/commands/sys/logs.d.ts +1 -0
  579. package/dist/commands/sys/logs.js +129 -0
  580. package/dist/commands/sys/machine/rotate.d.ts +1 -0
  581. package/dist/commands/sys/machine/rotate.js +49 -0
  582. package/dist/commands/sys/migrate.d.ts +1 -0
  583. package/dist/commands/sys/migrate.js +79 -0
  584. package/dist/commands/sys/panels/broker-limits-panel.d.ts +17 -0
  585. package/dist/commands/sys/panels/broker-limits-panel.js +110 -0
  586. package/dist/commands/sys/panels/dependencies-panel.d.ts +14 -0
  587. package/dist/commands/sys/panels/dependencies-panel.js +80 -0
  588. package/dist/commands/sys/panels/keybindings-panel.d.ts +56 -0
  589. package/dist/commands/sys/panels/keybindings-panel.js +703 -0
  590. package/dist/commands/sys/panels/models-panel.d.ts +106 -0
  591. package/dist/commands/sys/panels/models-panel.js +1160 -0
  592. package/dist/commands/sys/panels/plugin-env-panel.d.ts +19 -0
  593. package/dist/commands/sys/panels/plugin-env-panel.js +70 -0
  594. package/dist/commands/sys/panels/plugins-panel.d.ts +16 -0
  595. package/dist/commands/sys/panels/plugins-panel.js +87 -0
  596. package/dist/commands/sys/panels/prefs-panel.d.ts +22 -0
  597. package/dist/commands/sys/panels/prefs-panel.js +97 -0
  598. package/dist/commands/sys/panels/profiles-panel.d.ts +70 -0
  599. package/dist/commands/sys/panels/profiles-panel.js +655 -0
  600. package/dist/commands/sys/panels/provider-panel.d.ts +74 -0
  601. package/dist/commands/sys/panels/provider-panel.js +534 -0
  602. package/dist/commands/sys/panels/terminal-panel.d.ts +19 -0
  603. package/dist/commands/sys/panels/terminal-panel.js +67 -0
  604. package/dist/commands/sys/provider-login.d.ts +8 -0
  605. package/dist/commands/sys/provider-login.js +99 -0
  606. package/dist/commands/sys/retry-delivery.d.ts +1 -0
  607. package/dist/commands/sys/retry-delivery.js +33 -0
  608. package/dist/commands/sys/settings-shell.d.ts +54 -0
  609. package/dist/commands/sys/settings-shell.js +400 -0
  610. package/dist/commands/sys/settings.d.ts +2 -0
  611. package/dist/commands/sys/settings.js +46 -0
  612. package/dist/commands/sys/setup-core.d.ts +121 -0
  613. package/dist/commands/sys/setup-core.js +890 -0
  614. package/dist/commands/sys/setup-settings-runner.d.ts +13 -0
  615. package/dist/commands/sys/setup-settings-runner.js +15 -0
  616. package/dist/commands/sys/setup-wizard.d.ts +52 -0
  617. package/dist/commands/sys/setup-wizard.js +351 -0
  618. package/dist/commands/sys/setup.d.ts +6 -0
  619. package/dist/commands/sys/setup.js +41 -0
  620. package/dist/commands/sys/shared.d.ts +51 -0
  621. package/dist/commands/sys/shared.js +81 -0
  622. package/dist/commands/sys/signin.d.ts +7 -0
  623. package/dist/commands/sys/signin.js +149 -0
  624. package/dist/commands/sys/spaces.d.ts +1 -0
  625. package/dist/commands/sys/spaces.js +22 -0
  626. package/dist/commands/sys/spend.d.ts +1 -0
  627. package/dist/commands/sys/spend.js +144 -0
  628. package/dist/commands/sys/support/prepare.d.ts +13 -0
  629. package/dist/commands/sys/support/prepare.js +239 -0
  630. package/dist/commands/sys/support/submit.d.ts +19 -0
  631. package/dist/commands/sys/support/submit.js +524 -0
  632. package/dist/commands/sys/support.d.ts +2 -0
  633. package/dist/commands/sys/support.js +18 -0
  634. package/dist/commands/sys/sync-deps.d.ts +16 -0
  635. package/dist/commands/sys/sync-deps.js +445 -0
  636. package/dist/commands/sys/sync-project-guidance.d.ts +1 -0
  637. package/dist/commands/sys/sync-project-guidance.js +319 -0
  638. package/dist/commands/sys/sync-shared.d.ts +44 -0
  639. package/dist/commands/sys/sync-shared.js +139 -0
  640. package/dist/commands/sys/sync-skills.d.ts +1 -0
  641. package/dist/commands/sys/sync-skills.js +297 -0
  642. package/dist/commands/sys/sync.d.ts +2 -0
  643. package/dist/commands/sys/sync.js +17 -0
  644. package/dist/commands/sys/terminal-option.d.ts +112 -0
  645. package/dist/commands/sys/terminal-option.js +542 -0
  646. package/dist/commands/sys/tutorial/branch.d.ts +1 -0
  647. package/dist/commands/sys/tutorial/branch.js +15 -0
  648. package/dist/commands/sys/tutorial/lessons.d.ts +5 -0
  649. package/dist/commands/sys/tutorial/lessons.js +107 -0
  650. package/dist/commands/sys/tutorial/scenario.d.ts +1 -0
  651. package/dist/commands/sys/tutorial/scenario.js +431 -0
  652. package/dist/commands/sys/tutorial/tracks.d.ts +1 -0
  653. package/dist/commands/sys/tutorial/tracks.js +96 -0
  654. package/dist/commands/sys/update.d.ts +2 -0
  655. package/dist/commands/sys/update.js +157 -0
  656. package/dist/commands/sys/worktrees.d.ts +2 -0
  657. package/dist/commands/sys/worktrees.js +53 -0
  658. package/dist/commands/sys.d.ts +2 -0
  659. package/dist/commands/sys.js +31 -0
  660. package/dist/core/activity-signal.d.ts +7 -0
  661. package/dist/core/activity-signal.js +38 -0
  662. package/dist/core/async-array.d.ts +7 -0
  663. package/dist/core/async-array.js +48 -0
  664. package/dist/core/auth-file.d.ts +35 -0
  665. package/dist/core/auth-file.js +161 -0
  666. package/dist/core/auth-interaction.d.ts +19 -0
  667. package/dist/core/auth-interaction.js +94 -0
  668. package/dist/core/bash-guard.d.ts +6 -0
  669. package/dist/core/bash-guard.js +527 -0
  670. package/dist/core/bash-job-supervisor.d.ts +5 -0
  671. package/dist/core/bash-job-supervisor.js +144 -0
  672. package/dist/core/bash-jobs.d.ts +168 -0
  673. package/dist/core/bash-jobs.js +455 -0
  674. package/dist/core/blobs/directory.d.ts +11 -0
  675. package/dist/core/blobs/directory.js +216 -0
  676. package/dist/core/blobs/fault.d.ts +3 -0
  677. package/dist/core/blobs/fault.js +6 -0
  678. package/dist/core/blobs/index.d.ts +21 -0
  679. package/dist/core/blobs/index.js +30 -0
  680. package/dist/core/blobs/r2.d.ts +13 -0
  681. package/dist/core/blobs/r2.js +104 -0
  682. package/dist/core/broker-client/client.d.ts +89 -0
  683. package/dist/core/broker-client/client.js +184 -0
  684. package/dist/core/broker-client/index.d.ts +2 -0
  685. package/dist/core/broker-client/index.js +14 -0
  686. package/dist/core/broker-client/transport-relay.d.ts +47 -0
  687. package/dist/core/broker-client/transport-relay.js +165 -0
  688. package/dist/core/broker-client/transport-socket.d.ts +35 -0
  689. package/dist/core/broker-client/transport-socket.js +187 -0
  690. package/dist/core/broker-client/transport.d.ts +46 -0
  691. package/dist/core/broker-client/transport.js +40 -0
  692. package/dist/core/canvas/app-run.d.ts +3 -0
  693. package/dist/core/canvas/app-run.js +4 -0
  694. package/dist/core/canvas/attention.d.ts +18 -0
  695. package/dist/core/canvas/attention.js +47 -0
  696. package/dist/core/canvas/browse/app.d.ts +29 -0
  697. package/dist/core/canvas/browse/app.js +1050 -0
  698. package/dist/core/canvas/browse/model.d.ts +176 -0
  699. package/dist/core/canvas/browse/model.js +477 -0
  700. package/dist/core/canvas/browse/pins.d.ts +4 -0
  701. package/dist/core/canvas/browse/pins.js +29 -0
  702. package/dist/core/canvas/browse/render.d.ts +103 -0
  703. package/dist/core/canvas/browse/render.js +1058 -0
  704. package/dist/core/canvas/canvas.d.ts +409 -0
  705. package/dist/core/canvas/canvas.js +1206 -0
  706. package/dist/core/canvas/crons.d.ts +322 -0
  707. package/dist/core/canvas/crons.js +541 -0
  708. package/dist/core/canvas/daemon-actions.d.ts +42 -0
  709. package/dist/core/canvas/daemon-actions.js +98 -0
  710. package/dist/core/canvas/db.d.ts +60 -0
  711. package/dist/core/canvas/db.js +426 -0
  712. package/dist/core/canvas/deliveries.d.ts +125 -0
  713. package/dist/core/canvas/deliveries.js +393 -0
  714. package/dist/core/canvas/delivery-contract.d.ts +37 -0
  715. package/dist/core/canvas/delivery-contract.js +30 -0
  716. package/dist/core/canvas/executions.d.ts +125 -0
  717. package/dist/core/canvas/executions.js +279 -0
  718. package/dist/core/canvas/extensions.d.ts +9 -0
  719. package/dist/core/canvas/extensions.js +90 -0
  720. package/dist/core/canvas/focuses.d.ts +26 -0
  721. package/dist/core/canvas/focuses.js +82 -0
  722. package/dist/core/canvas/history.d.ts +104 -0
  723. package/dist/core/canvas/history.js +480 -0
  724. package/dist/core/canvas/index.d.ts +14 -0
  725. package/dist/core/canvas/index.js +16 -0
  726. package/dist/core/canvas/install-id.d.ts +9 -0
  727. package/dist/core/canvas/install-id.js +64 -0
  728. package/dist/core/canvas/labels.d.ts +30 -0
  729. package/dist/core/canvas/labels.js +43 -0
  730. package/dist/core/canvas/legacy-person.d.ts +4 -0
  731. package/dist/core/canvas/legacy-person.js +4 -0
  732. package/dist/core/canvas/memory-reads.d.ts +24 -0
  733. package/dist/core/canvas/memory-reads.js +36 -0
  734. package/dist/core/canvas/meta-file.d.ts +20 -0
  735. package/dist/core/canvas/meta-file.js +89 -0
  736. package/dist/core/canvas/nav-render.d.ts +136 -0
  737. package/dist/core/canvas/nav-render.js +224 -0
  738. package/dist/core/canvas/node-agent-paths.d.ts +8 -0
  739. package/dist/core/canvas/node-agent-paths.js +30 -0
  740. package/dist/core/canvas/node-order.d.ts +24 -0
  741. package/dist/core/canvas/node-order.js +37 -0
  742. package/dist/core/canvas/node-recap.d.ts +23 -0
  743. package/dist/core/canvas/node-recap.js +62 -0
  744. package/dist/core/canvas/node-tokens.d.ts +19 -0
  745. package/dist/core/canvas/node-tokens.js +53 -0
  746. package/dist/core/canvas/outcome-actions.d.ts +23 -0
  747. package/dist/core/canvas/outcome-actions.js +71 -0
  748. package/dist/core/canvas/person.d.ts +32 -0
  749. package/dist/core/canvas/person.js +244 -0
  750. package/dist/core/canvas/pid.d.ts +6 -0
  751. package/dist/core/canvas/pid.js +20 -10
  752. package/dist/core/canvas/reconciler-leases.d.ts +12 -0
  753. package/dist/core/canvas/reconciler-leases.js +40 -0
  754. package/dist/core/canvas/recovery.d.ts +127 -0
  755. package/dist/core/canvas/recovery.js +713 -0
  756. package/dist/core/canvas/remote-canvas-source.d.ts +71 -0
  757. package/dist/core/canvas/remote-canvas-source.js +290 -0
  758. package/dist/core/canvas/remote-transport.d.ts +7 -0
  759. package/dist/core/canvas/remote-transport.js +57 -0
  760. package/dist/core/canvas/render-source.d.ts +193 -0
  761. package/dist/core/canvas/render-source.js +518 -0
  762. package/dist/core/canvas/schema-chain.d.ts +33 -0
  763. package/dist/core/canvas/schema-chain.js +110 -0
  764. package/dist/core/canvas/schema-version.d.ts +30 -0
  765. package/dist/core/canvas/schema-version.js +58 -0
  766. package/dist/core/canvas/sessions.d.ts +54 -0
  767. package/dist/core/canvas/sessions.js +128 -0
  768. package/dist/core/canvas/source.d.ts +52 -0
  769. package/dist/core/canvas/source.js +57 -0
  770. package/dist/core/canvas/status-glyph.d.ts +52 -0
  771. package/dist/core/canvas/status-glyph.js +132 -0
  772. package/dist/core/canvas/structured-requests.d.ts +69 -0
  773. package/dist/core/canvas/structured-requests.js +176 -0
  774. package/dist/core/canvas/telemetry.d.ts +14 -0
  775. package/dist/core/canvas/telemetry.js +35 -0
  776. package/dist/core/canvas/tree.d.ts +33 -0
  777. package/dist/core/canvas/tree.js +128 -0
  778. package/dist/core/canvas/types.d.ts +461 -0
  779. package/dist/core/canvas/types.js +6 -0
  780. package/dist/core/canvas/waits.d.ts +39 -0
  781. package/dist/core/canvas/waits.js +104 -0
  782. package/dist/core/canvas/worktrees.d.ts +41 -0
  783. package/dist/core/canvas/worktrees.js +97 -0
  784. package/dist/core/clipboard-text.d.ts +11 -0
  785. package/dist/core/clipboard-text.js +57 -0
  786. package/dist/core/command-hooks/artifact.d.ts +16 -0
  787. package/dist/core/command-hooks/artifact.js +145 -0
  788. package/dist/core/command-hooks/catalog.d.ts +14 -0
  789. package/dist/core/command-hooks/catalog.js +38 -0
  790. package/dist/core/command-hooks/compose.d.ts +15 -0
  791. package/dist/core/command-hooks/compose.js +101 -0
  792. package/dist/core/command-hooks/discovery.d.ts +133 -0
  793. package/dist/core/command-hooks/discovery.js +246 -0
  794. package/dist/core/command-hooks/help.d.ts +5 -0
  795. package/dist/core/command-hooks/help.js +18 -0
  796. package/dist/core/command-hooks/lifecycle-catalog.d.ts +21 -0
  797. package/dist/core/command-hooks/lifecycle-catalog.js +9 -0
  798. package/dist/core/command-hooks/lifecycle-create.d.ts +4 -0
  799. package/dist/core/command-hooks/lifecycle-create.js +51 -0
  800. package/dist/core/command-hooks/report.d.ts +32 -0
  801. package/dist/core/command-hooks/report.js +28 -0
  802. package/dist/core/command-hooks/schema.d.ts +42 -0
  803. package/dist/core/command-hooks/schema.js +157 -0
  804. package/dist/core/command-hooks/transport/exec-invoke.d.ts +24 -0
  805. package/dist/core/command-hooks/transport/exec-invoke.js +315 -0
  806. package/dist/core/command-hooks/transport/exec-lifecycle.d.ts +23 -0
  807. package/dist/core/command-hooks/transport/exec-lifecycle.js +248 -0
  808. package/dist/core/command-hooks/transport/plan.d.ts +3 -0
  809. package/dist/core/command-hooks/transport/plan.js +30 -0
  810. package/dist/core/command-manifests/registry.d.ts +68 -0
  811. package/dist/core/command-manifests/registry.js +118 -0
  812. package/dist/core/command-plugins/caller-header.d.ts +10 -0
  813. package/dist/core/command-plugins/caller-header.js +15 -0
  814. package/dist/core/command-plugins/compose.d.ts +11 -0
  815. package/dist/core/command-plugins/compose.js +241 -0
  816. package/dist/core/command-plugins/discovery.d.ts +49 -0
  817. package/dist/core/command-plugins/discovery.js +240 -0
  818. package/dist/core/command-plugins/extensions.d.ts +20 -0
  819. package/dist/core/command-plugins/extensions.js +166 -0
  820. package/dist/core/command-plugins/help-addenda.d.ts +25 -0
  821. package/dist/core/command-plugins/help-addenda.js +55 -0
  822. package/dist/core/command-plugins/presence.d.ts +4 -0
  823. package/dist/core/command-plugins/presence.js +36 -0
  824. package/dist/core/command-plugins/transport/exec-invoke.d.ts +42 -0
  825. package/dist/core/command-plugins/transport/exec-invoke.js +138 -0
  826. package/dist/core/command-plugins/transport/http-fetch.d.ts +41 -0
  827. package/dist/core/command-plugins/transport/http-fetch.js +68 -0
  828. package/dist/core/command-plugins/transport/http-invoke.d.ts +22 -0
  829. package/dist/core/command-plugins/transport/http-invoke.js +333 -0
  830. package/dist/core/command-plugins/transport/http-plan.d.ts +75 -0
  831. package/dist/core/command-plugins/transport/http-plan.js +349 -0
  832. package/dist/core/command-plugins/transport/sign.d.ts +55 -0
  833. package/dist/core/command-plugins/transport/sign.js +115 -0
  834. package/dist/core/command.d.ts +238 -0
  835. package/dist/core/command.js +848 -0
  836. package/dist/core/conversation-store/row-store.d.ts +14 -0
  837. package/dist/core/conversation-store/row-store.js +337 -0
  838. package/dist/core/directory/issuer.d.ts +8 -0
  839. package/dist/core/directory/issuer.js +15 -0
  840. package/dist/core/directory/join.d.ts +57 -0
  841. package/dist/core/directory/join.js +218 -0
  842. package/dist/core/directory/person-credential.d.ts +61 -0
  843. package/dist/core/directory/person-credential.js +220 -0
  844. package/dist/core/directory/reach.d.ts +3 -0
  845. package/dist/core/directory/reach.js +19 -0
  846. package/dist/core/document-lines.d.ts +4 -0
  847. package/dist/core/document-lines.js +6 -0
  848. package/dist/core/editor-resolver.d.ts +28 -0
  849. package/dist/core/editor-resolver.js +77 -0
  850. package/dist/core/environments.d.ts +21 -0
  851. package/dist/core/environments.js +56 -0
  852. package/dist/core/events/outbound.d.ts +21 -0
  853. package/dist/core/events/outbound.js +92 -0
  854. package/dist/core/events/read.d.ts +40 -0
  855. package/dist/core/events/read.js +625 -0
  856. package/dist/core/fault-classifier.d.ts +36 -0
  857. package/dist/core/fault-classifier.js +101 -0
  858. package/dist/core/feed/feed.d.ts +63 -0
  859. package/dist/core/feed/feed.js +190 -0
  860. package/dist/core/feed/inbox.d.ts +34 -0
  861. package/dist/core/feed/inbox.js +93 -0
  862. package/dist/core/feed/messages.d.ts +88 -0
  863. package/dist/core/feed/messages.js +206 -0
  864. package/dist/core/feed/reports.d.ts +10 -0
  865. package/dist/core/feed/reports.js +58 -0
  866. package/dist/core/frontmatter.d.ts +8 -0
  867. package/dist/core/frontmatter.js +35 -0
  868. package/dist/core/grants/cover.d.ts +14 -0
  869. package/dist/core/grants/cover.js +66 -0
  870. package/dist/core/grants/local.d.ts +4 -0
  871. package/dist/core/grants/local.js +26 -0
  872. package/dist/core/grants/mirror.d.ts +155 -0
  873. package/dist/core/grants/mirror.js +379 -0
  874. package/dist/core/grants/on-sync.d.ts +26 -0
  875. package/dist/core/grants/on-sync.js +161 -0
  876. package/dist/core/grants/sandboxes.d.ts +7 -0
  877. package/dist/core/grants/sandboxes.js +24 -0
  878. package/dist/core/grants/sync.d.ts +46 -0
  879. package/dist/core/grants/sync.js +195 -0
  880. package/dist/core/grants/terminal.d.ts +10 -0
  881. package/dist/core/grants/terminal.js +25 -0
  882. package/dist/core/graph/access.d.ts +13 -0
  883. package/dist/core/graph/access.js +37 -0
  884. package/dist/core/graph/bodies.d.ts +22 -0
  885. package/dist/core/graph/bodies.js +68 -0
  886. package/dist/core/graph/custom.d.ts +98 -0
  887. package/dist/core/graph/custom.js +298 -0
  888. package/dist/core/graph/deletion.d.ts +16 -0
  889. package/dist/core/graph/deletion.js +104 -0
  890. package/dist/core/graph/documents.d.ts +181 -0
  891. package/dist/core/graph/documents.js +653 -0
  892. package/dist/core/graph/edges.d.ts +41 -0
  893. package/dist/core/graph/edges.js +83 -0
  894. package/dist/core/graph/events.d.ts +49 -0
  895. package/dist/core/graph/events.js +315 -0
  896. package/dist/core/graph/exposures.d.ts +53 -0
  897. package/dist/core/graph/exposures.js +152 -0
  898. package/dist/core/graph/jobs.d.ts +107 -0
  899. package/dist/core/graph/jobs.js +184 -0
  900. package/dist/core/graph/kinds/action.d.ts +3 -0
  901. package/dist/core/graph/kinds/action.js +20 -0
  902. package/dist/core/graph/kinds/custom.d.ts +8 -0
  903. package/dist/core/graph/kinds/custom.js +25 -0
  904. package/dist/core/graph/kinds/document.d.ts +20 -0
  905. package/dist/core/graph/kinds/document.js +133 -0
  906. package/dist/core/graph/kinds/dto.d.ts +5 -0
  907. package/dist/core/graph/kinds/dto.js +11 -0
  908. package/dist/core/graph/kinds/environment.d.ts +2 -0
  909. package/dist/core/graph/kinds/environment.js +21 -0
  910. package/dist/core/graph/kinds/job.d.ts +2 -0
  911. package/dist/core/graph/kinds/job.js +24 -0
  912. package/dist/core/graph/kinds/kind.d.ts +67 -0
  913. package/dist/core/graph/kinds/kind.js +15 -0
  914. package/dist/core/graph/kinds/live-read.d.ts +5 -0
  915. package/dist/core/graph/kinds/live-read.js +11 -0
  916. package/dist/core/graph/kinds/node.d.ts +12 -0
  917. package/dist/core/graph/kinds/node.js +87 -0
  918. package/dist/core/graph/kinds/owner.d.ts +2 -0
  919. package/dist/core/graph/kinds/owner.js +26 -0
  920. package/dist/core/graph/kinds/registry.d.ts +10 -0
  921. package/dist/core/graph/kinds/registry.js +58 -0
  922. package/dist/core/graph/kinds/render.d.ts +9 -0
  923. package/dist/core/graph/kinds/render.js +17 -0
  924. package/dist/core/graph/names.d.ts +57 -0
  925. package/dist/core/graph/names.js +183 -0
  926. package/dist/core/graph/objects.d.ts +88 -0
  927. package/dist/core/graph/objects.js +273 -0
  928. package/dist/core/graph/package-docs.d.ts +41 -0
  929. package/dist/core/graph/package-docs.js +198 -0
  930. package/dist/core/graph/package-files.d.ts +20 -0
  931. package/dist/core/graph/package-files.js +146 -0
  932. package/dist/core/graph/package-kinds.d.ts +22 -0
  933. package/dist/core/graph/package-kinds.js +49 -0
  934. package/dist/core/graph/package-reconcile.d.ts +17 -0
  935. package/dist/core/graph/package-reconcile.js +31 -0
  936. package/dist/core/graph/reader.d.ts +45 -0
  937. package/dist/core/graph/reader.js +218 -0
  938. package/dist/core/graph/receiver-url.d.ts +11 -0
  939. package/dist/core/graph/receiver-url.js +83 -0
  940. package/dist/core/graph/receivers.d.ts +28 -0
  941. package/dist/core/graph/receivers.js +66 -0
  942. package/dist/core/graph/repo-sync/exchange.d.ts +36 -0
  943. package/dist/core/graph/repo-sync/exchange.js +422 -0
  944. package/dist/core/graph/repo-sync/identity.d.ts +32 -0
  945. package/dist/core/graph/repo-sync/identity.js +147 -0
  946. package/dist/core/graph/repo-sync/index.d.ts +4 -0
  947. package/dist/core/graph/repo-sync/index.js +2 -0
  948. package/dist/core/graph/repo-sync/mirror.d.ts +30 -0
  949. package/dist/core/graph/repo-sync/mirror.js +170 -0
  950. package/dist/core/graph/repo-sync/ref-format.d.ts +80 -0
  951. package/dist/core/graph/repo-sync/ref-format.js +215 -0
  952. package/dist/core/graph/repo-sync/repos.d.ts +21 -0
  953. package/dist/core/graph/repo-sync/repos.js +57 -0
  954. package/dist/core/graph/repo-sync/sync.d.ts +40 -0
  955. package/dist/core/graph/repo-sync/sync.js +322 -0
  956. package/dist/core/graph/rules.d.ts +27 -0
  957. package/dist/core/graph/rules.js +134 -0
  958. package/dist/core/graph/types.d.ts +131 -0
  959. package/dist/core/graph/types.js +10 -0
  960. package/dist/core/graph/watches.d.ts +66 -0
  961. package/dist/core/graph/watches.js +177 -0
  962. package/dist/core/human/action-binding.d.ts +23 -0
  963. package/dist/core/human/action-binding.js +41 -0
  964. package/dist/core/human/answer-text.d.ts +5 -0
  965. package/dist/core/human/answer-text.js +100 -0
  966. package/dist/core/human/answer.d.ts +53 -0
  967. package/dist/core/human/answer.js +119 -0
  968. package/dist/core/human/claim.d.ts +23 -0
  969. package/dist/core/human/claim.js +67 -0
  970. package/dist/core/human/completion.d.ts +38 -0
  971. package/dist/core/human/completion.js +27 -0
  972. package/dist/core/human/component-docs.d.ts +18 -0
  973. package/dist/core/human/component-docs.js +442 -0
  974. package/dist/core/human/convention.d.ts +31 -0
  975. package/dist/core/human/convention.js +82 -0
  976. package/dist/core/human/feedback-companion.d.ts +19 -0
  977. package/dist/core/human/feedback-companion.js +92 -0
  978. package/dist/core/human/feedback.d.ts +62 -0
  979. package/dist/core/human/feedback.js +88 -0
  980. package/dist/core/human/page-authoring.d.ts +30 -0
  981. package/dist/core/human/page-authoring.js +19 -0
  982. package/dist/core/human/page-errors.d.ts +8 -0
  983. package/dist/core/human/page-errors.js +14 -0
  984. package/dist/core/human/page-eval.d.ts +25 -0
  985. package/dist/core/human/page-eval.js +125 -0
  986. package/dist/core/human/page-html-markdown.d.ts +8 -0
  987. package/dist/core/human/page-html-markdown.js +260 -0
  988. package/dist/core/human/page-markdown.d.ts +3 -0
  989. package/dist/core/human/page-markdown.js +295 -0
  990. package/dist/core/human/page-schema.d.ts +291 -0
  991. package/dist/core/human/page-schema.js +381 -0
  992. package/dist/core/human/page.d.ts +21 -0
  993. package/dist/core/human/page.js +251 -0
  994. package/dist/core/human/request-files.d.ts +14 -0
  995. package/dist/core/human/request-files.js +54 -0
  996. package/dist/core/human/requests.d.ts +156 -0
  997. package/dist/core/human/requests.js +619 -0
  998. package/dist/core/human/root.d.ts +4 -0
  999. package/dist/core/human/root.js +11 -0
  1000. package/dist/core/human/summary.d.ts +3 -0
  1001. package/dist/core/human/summary.js +5 -0
  1002. package/dist/core/human/tickets.d.ts +68 -0
  1003. package/dist/core/human/tickets.js +175 -0
  1004. package/dist/core/human/types.d.ts +118 -0
  1005. package/dist/core/human/types.js +1 -0
  1006. package/dist/core/human/visible-paths.d.ts +16 -0
  1007. package/dist/core/human/visible-paths.js +74 -0
  1008. package/dist/core/human-actions.d.ts +25 -0
  1009. package/dist/core/human-actions.js +101 -0
  1010. package/dist/core/import/bundle/blob-keys.d.ts +10 -0
  1011. package/dist/core/import/bundle/blob-keys.js +23 -0
  1012. package/dist/core/import/bundle/layout.d.ts +90 -0
  1013. package/dist/core/import/bundle/layout.js +117 -0
  1014. package/dist/core/import/export/archive.d.ts +11 -0
  1015. package/dist/core/import/export/archive.js +22 -0
  1016. package/dist/core/import/export/cloud.d.ts +23 -0
  1017. package/dist/core/import/export/cloud.js +47 -0
  1018. package/dist/core/import/export/dump.d.ts +34 -0
  1019. package/dist/core/import/export/dump.js +235 -0
  1020. package/dist/core/import/export/files.d.ts +22 -0
  1021. package/dist/core/import/export/files.js +107 -0
  1022. package/dist/core/import/export/inline.d.ts +3 -0
  1023. package/dist/core/import/export/inline.js +15 -0
  1024. package/dist/core/import/export/source.d.ts +2 -0
  1025. package/dist/core/import/export/source.js +5 -0
  1026. package/dist/core/import/export/stores.d.ts +9 -0
  1027. package/dist/core/import/export/stores.js +69 -0
  1028. package/dist/core/inspector/chrome.d.ts +6 -0
  1029. package/dist/core/inspector/chrome.js +14 -0
  1030. package/dist/core/inspector/contract.d.ts +105 -0
  1031. package/dist/core/inspector/contract.js +1 -0
  1032. package/dist/core/inspector/core.d.ts +39 -0
  1033. package/dist/core/inspector/core.js +296 -0
  1034. package/dist/core/inspector/host.d.ts +46 -0
  1035. package/dist/core/inspector/host.js +538 -0
  1036. package/dist/core/inspector/model.d.ts +88 -0
  1037. package/dist/core/inspector/model.js +225 -0
  1038. package/dist/core/inspector/text.d.ts +5 -0
  1039. package/dist/core/inspector/text.js +45 -0
  1040. package/dist/core/inspector/transport.d.ts +6 -0
  1041. package/dist/core/inspector/transport.js +36 -0
  1042. package/dist/core/inspector/tui.d.ts +3 -0
  1043. package/dist/core/inspector/tui.js +295 -0
  1044. package/dist/core/io.js +7 -0
  1045. package/dist/core/keybindings/background-bash.d.ts +13 -0
  1046. package/dist/core/keybindings/background-bash.js +33 -0
  1047. package/dist/core/keybindings/catalog.d.ts +1 -1
  1048. package/dist/core/keybindings/inbox.d.ts +18 -0
  1049. package/dist/core/keybindings/inbox.js +25 -0
  1050. package/dist/core/keybindings/index.d.ts +8 -0
  1051. package/dist/core/keybindings/index.js +7 -0
  1052. package/dist/core/keybindings/match.d.ts +44 -0
  1053. package/dist/core/keybindings/match.js +146 -0
  1054. package/dist/core/keybindings/persistence.d.ts +18 -0
  1055. package/dist/core/keybindings/persistence.js +49 -0
  1056. package/dist/core/keybindings/resolve.d.ts +28 -0
  1057. package/dist/core/keybindings/resolve.js +348 -0
  1058. package/dist/core/layout-migrate/index.d.ts +38 -0
  1059. package/dist/core/layout-migrate/index.js +523 -0
  1060. package/dist/core/layout-migrate/paths.d.ts +30 -0
  1061. package/dist/core/layout-migrate/paths.js +118 -0
  1062. package/dist/core/layout-migrate/stored-paths.d.ts +9 -0
  1063. package/dist/core/layout-migrate/stored-paths.js +424 -0
  1064. package/dist/core/layout-migrate/stores.d.ts +30 -0
  1065. package/dist/core/layout-migrate/stores.js +543 -0
  1066. package/dist/core/ledger/account.d.ts +12 -0
  1067. package/dist/core/ledger/account.js +13 -0
  1068. package/dist/core/ledger/charges.d.ts +16 -0
  1069. package/dist/core/ledger/charges.js +43 -0
  1070. package/dist/core/ledger/check.d.ts +48 -0
  1071. package/dist/core/ledger/check.js +38 -0
  1072. package/dist/core/ledger/chunks.d.ts +8 -0
  1073. package/dist/core/ledger/chunks.js +43 -0
  1074. package/dist/core/ledger/index.d.ts +9 -0
  1075. package/dist/core/ledger/index.js +10 -0
  1076. package/dist/core/ledger/infra-allowance.d.ts +7 -0
  1077. package/dist/core/ledger/infra-allowance.js +31 -0
  1078. package/dist/core/ledger/limits.d.ts +10 -0
  1079. package/dist/core/ledger/limits.js +35 -0
  1080. package/dist/core/ledger/months.d.ts +6 -0
  1081. package/dist/core/ledger/months.js +19 -0
  1082. package/dist/core/ledger/payer.d.ts +34 -0
  1083. package/dist/core/ledger/payer.js +14 -0
  1084. package/dist/core/ledger/read.d.ts +57 -0
  1085. package/dist/core/ledger/read.js +194 -0
  1086. package/dist/core/ledger/totals.d.ts +10 -0
  1087. package/dist/core/ledger/totals.js +34 -0
  1088. package/dist/core/ledger/types.d.ts +75 -0
  1089. package/dist/core/ledger/types.js +2 -0
  1090. package/dist/core/llm/app-rungs.d.ts +16 -0
  1091. package/dist/core/llm/app-rungs.js +59 -0
  1092. package/dist/core/llm/body-limits.d.ts +7 -0
  1093. package/dist/core/llm/body-limits.js +7 -0
  1094. package/dist/core/llm/refusal.d.ts +14 -0
  1095. package/dist/core/llm/refusal.js +22 -0
  1096. package/dist/core/locked-file.d.ts +27 -0
  1097. package/dist/core/locked-file.js +121 -0
  1098. package/dist/core/log.d.ts +2 -0
  1099. package/dist/core/log.js +5 -3
  1100. package/dist/core/manifest-stale.d.ts +18 -0
  1101. package/dist/core/manifest-stale.js +39 -0
  1102. package/dist/core/model-auth/api-credential-store.d.ts +10 -0
  1103. package/dist/core/model-auth/api-credential-store.js +40 -0
  1104. package/dist/core/model-auth/daemon-login.d.ts +13 -0
  1105. package/dist/core/model-auth/daemon-login.js +156 -0
  1106. package/dist/core/model-auth/readiness.d.ts +12 -0
  1107. package/dist/core/model-auth/readiness.js +48 -0
  1108. package/dist/core/model-routes-pool.d.ts +14 -0
  1109. package/dist/core/model-routes-pool.js +50 -0
  1110. package/dist/core/model-routes.d.ts +98 -0
  1111. package/dist/core/model-routes.js +190 -0
  1112. package/dist/core/northlight/previews.d.ts +22 -0
  1113. package/dist/core/northlight/previews.js +87 -0
  1114. package/dist/core/nvim-launch.d.ts +7 -0
  1115. package/dist/core/nvim-launch.js +45 -0
  1116. package/dist/core/output.d.ts +35 -0
  1117. package/dist/core/output.js +99 -0
  1118. package/dist/core/pagination.d.ts +35 -0
  1119. package/dist/core/pagination.js +88 -0
  1120. package/dist/core/peer/client.d.ts +61 -0
  1121. package/dist/core/peer/client.js +167 -0
  1122. package/dist/core/peer/directory.d.ts +71 -0
  1123. package/dist/core/peer/directory.js +167 -0
  1124. package/dist/core/peer/envelope.d.ts +46 -0
  1125. package/dist/core/peer/envelope.js +98 -0
  1126. package/dist/core/peer/names.d.ts +5 -0
  1127. package/dist/core/peer/names.js +8 -0
  1128. package/dist/core/peer/outbox-store.d.ts +76 -0
  1129. package/dist/core/peer/outbox-store.js +84 -0
  1130. package/dist/core/peer/receiver.d.ts +8 -0
  1131. package/dist/core/peer/receiver.js +54 -0
  1132. package/dist/core/peer/stubs.d.ts +90 -0
  1133. package/dist/core/peer/stubs.js +208 -0
  1134. package/dist/core/peer/token.d.ts +13 -0
  1135. package/dist/core/peer/token.js +29 -0
  1136. package/dist/core/peer/version.d.ts +16 -0
  1137. package/dist/core/peer/version.js +23 -0
  1138. package/dist/core/permissions/builtin.d.ts +8 -0
  1139. package/dist/core/permissions/builtin.js +27 -0
  1140. package/dist/core/permissions/ceiling.d.ts +57 -0
  1141. package/dist/core/permissions/ceiling.js +319 -0
  1142. package/dist/core/permissions/compile.d.ts +14 -0
  1143. package/dist/core/permissions/compile.js +175 -0
  1144. package/dist/core/permissions/errors.d.ts +7 -0
  1145. package/dist/core/permissions/errors.js +13 -0
  1146. package/dist/core/permissions/evaluator.d.ts +33 -0
  1147. package/dist/core/permissions/evaluator.js +96 -0
  1148. package/dist/core/permissions/facts.d.ts +56 -0
  1149. package/dist/core/permissions/facts.js +102 -0
  1150. package/dist/core/permissions/schema-parser.d.ts +29 -0
  1151. package/dist/core/permissions/schema-parser.js +151 -0
  1152. package/dist/core/permissions/schemas.d.ts +21 -0
  1153. package/dist/core/permissions/schemas.js +83 -0
  1154. package/dist/core/permissions/sql.d.ts +16 -0
  1155. package/dist/core/permissions/sql.js +31 -0
  1156. package/dist/core/plugin-app.d.ts +31 -0
  1157. package/dist/core/plugin-app.js +58 -0
  1158. package/dist/core/plugin-quarantine.d.ts +16 -0
  1159. package/dist/core/plugin-quarantine.js +70 -0
  1160. package/dist/core/pool-credential-store.d.ts +31 -0
  1161. package/dist/core/pool-credential-store.js +116 -0
  1162. package/dist/core/predicate.d.ts +65 -0
  1163. package/dist/core/predicate.js +191 -0
  1164. package/dist/core/preview-registry.d.ts +59 -0
  1165. package/dist/core/preview-registry.js +403 -0
  1166. package/dist/core/profiles/default-binding.d.ts +15 -0
  1167. package/dist/core/profiles/default-binding.js +29 -0
  1168. package/dist/core/profiles/deletion-reservation.d.ts +12 -0
  1169. package/dist/core/profiles/deletion-reservation.js +42 -0
  1170. package/dist/core/profiles/select.d.ts +46 -0
  1171. package/dist/core/profiles/select.js +738 -0
  1172. package/dist/core/provider-credential.d.ts +6 -0
  1173. package/dist/core/provider-credential.js +17 -0
  1174. package/dist/core/provider-error-recognition.d.ts +30 -0
  1175. package/dist/core/provider-error-recognition.js +82 -0
  1176. package/dist/core/provider-failure.d.ts +42 -0
  1177. package/dist/core/provider-failure.js +145 -0
  1178. package/dist/core/provider-management.d.ts +11 -0
  1179. package/dist/core/provider-management.js +9 -0
  1180. package/dist/core/providers/approval.d.ts +23 -0
  1181. package/dist/core/providers/approval.js +146 -0
  1182. package/dist/core/providers/audit.d.ts +30 -0
  1183. package/dist/core/providers/audit.js +52 -0
  1184. package/dist/core/providers/bundles.d.ts +66 -0
  1185. package/dist/core/providers/bundles.js +638 -0
  1186. package/dist/core/providers/call.d.ts +51 -0
  1187. package/dist/core/providers/call.js +480 -0
  1188. package/dist/core/providers/description.d.ts +34 -0
  1189. package/dist/core/providers/description.js +1 -0
  1190. package/dist/core/providers/device-libs.d.ts +71 -0
  1191. package/dist/core/providers/device-libs.js +202 -0
  1192. package/dist/core/providers/device.d.ts +42 -0
  1193. package/dist/core/providers/device.js +95 -0
  1194. package/dist/core/providers/errors.d.ts +99 -0
  1195. package/dist/core/providers/errors.js +136 -0
  1196. package/dist/core/providers/files.d.ts +90 -0
  1197. package/dist/core/providers/files.js +389 -0
  1198. package/dist/core/providers/inflight.d.ts +13 -0
  1199. package/dist/core/providers/inflight.js +14 -0
  1200. package/dist/core/providers/mint.d.ts +29 -0
  1201. package/dist/core/providers/mint.js +219 -0
  1202. package/dist/core/providers/receipts.d.ts +26 -0
  1203. package/dist/core/providers/receipts.js +61 -0
  1204. package/dist/core/providers/request.d.ts +27 -0
  1205. package/dist/core/providers/request.js +173 -0
  1206. package/dist/core/providers/roots.d.ts +23 -0
  1207. package/dist/core/providers/roots.js +118 -0
  1208. package/dist/core/providers/token-cache.d.ts +54 -0
  1209. package/dist/core/providers/token-cache.js +203 -0
  1210. package/dist/core/remote-canvas-target.d.ts +4 -0
  1211. package/dist/core/remote-canvas-target.js +30 -0
  1212. package/dist/core/review/comments.d.ts +69 -0
  1213. package/dist/core/review/comments.js +296 -0
  1214. package/dist/core/review/companion.d.ts +33 -0
  1215. package/dist/core/review/companion.js +208 -0
  1216. package/dist/core/review/signal.d.ts +5 -0
  1217. package/dist/core/review/signal.js +12 -0
  1218. package/dist/core/review/store.d.ts +44 -0
  1219. package/dist/core/review/store.js +178 -0
  1220. package/dist/core/review/types.d.ts +139 -0
  1221. package/dist/core/review/types.js +23 -0
  1222. package/dist/core/runs/activity.d.ts +11 -0
  1223. package/dist/core/runs/activity.js +57 -0
  1224. package/dist/core/runs/events.d.ts +41 -0
  1225. package/dist/core/runs/events.js +179 -0
  1226. package/dist/core/runs/operations.d.ts +85 -0
  1227. package/dist/core/runs/operations.js +741 -0
  1228. package/dist/core/runs/questions.d.ts +80 -0
  1229. package/dist/core/runs/questions.js +151 -0
  1230. package/dist/core/runtime/banner.d.ts +15 -0
  1231. package/dist/core/runtime/banner.js +53 -0
  1232. package/dist/core/runtime/bearings-render.d.ts +62 -0
  1233. package/dist/core/runtime/bearings-render.js +272 -0
  1234. package/dist/core/runtime/bearings.d.ts +56 -0
  1235. package/dist/core/runtime/bearings.js +199 -0
  1236. package/dist/core/runtime/bin-contributions.d.ts +44 -0
  1237. package/dist/core/runtime/bin-contributions.js +186 -0
  1238. package/dist/core/runtime/blaxel-environment.d.ts +2 -0
  1239. package/dist/core/runtime/blaxel-environment.js +8 -0
  1240. package/dist/core/runtime/broker/bash-job-launch.d.ts +12 -0
  1241. package/dist/core/runtime/broker/bash-job-launch.js +50 -0
  1242. package/dist/core/runtime/broker/model-adapter.d.ts +27 -0
  1243. package/dist/core/runtime/broker/model-adapter.js +413 -0
  1244. package/dist/core/runtime/broker/read-ops.d.ts +27 -0
  1245. package/dist/core/runtime/broker/read-ops.js +172 -0
  1246. package/dist/core/runtime/broker/turn-cause.d.ts +7 -0
  1247. package/dist/core/runtime/broker/turn-cause.js +30 -0
  1248. package/dist/core/runtime/broker-protocol.d.ts +727 -0
  1249. package/dist/core/runtime/broker-protocol.js +152 -0
  1250. package/dist/core/runtime/broker-request.d.ts +37 -0
  1251. package/dist/core/runtime/broker-request.js +86 -0
  1252. package/dist/core/runtime/broker-sdk.d.ts +36 -0
  1253. package/dist/core/runtime/broker-sdk.js +130 -0
  1254. package/dist/core/runtime/canvas-extensions.d.ts +34 -0
  1255. package/dist/core/runtime/canvas-extensions.js +100 -0
  1256. package/dist/core/runtime/close.d.ts +49 -0
  1257. package/dist/core/runtime/close.js +266 -0
  1258. package/dist/core/runtime/command-expansion.d.ts +19 -0
  1259. package/dist/core/runtime/command-expansion.js +104 -0
  1260. package/dist/core/runtime/command-surface.d.ts +38 -0
  1261. package/dist/core/runtime/command-surface.js +117 -0
  1262. package/dist/core/runtime/crtr-theme.d.ts +12 -0
  1263. package/dist/core/runtime/crtr-theme.js +146 -0
  1264. package/dist/core/runtime/deliver-live.d.ts +38 -0
  1265. package/dist/core/runtime/deliver-live.js +87 -0
  1266. package/dist/core/runtime/fault-recovery.d.ts +23 -0
  1267. package/dist/core/runtime/fault-recovery.js +83 -0
  1268. package/dist/core/runtime/fault.d.ts +6 -0
  1269. package/dist/core/runtime/fault.js +17 -0
  1270. package/dist/core/runtime/fleet.d.ts +106 -0
  1271. package/dist/core/runtime/fleet.js +75 -0
  1272. package/dist/core/runtime/focus-viewer.d.ts +45 -0
  1273. package/dist/core/runtime/focus-viewer.js +151 -0
  1274. package/dist/core/runtime/front-door-env.d.ts +5 -0
  1275. package/dist/core/runtime/front-door-env.js +16 -0
  1276. package/dist/core/runtime/headless-pi.d.ts +37 -0
  1277. package/dist/core/runtime/headless-pi.js +173 -0
  1278. package/dist/core/runtime/host.d.ts +74 -0
  1279. package/dist/core/runtime/host.js +695 -0
  1280. package/dist/core/runtime/interactive-deliver.d.ts +22 -0
  1281. package/dist/core/runtime/interactive-deliver.js +51 -0
  1282. package/dist/core/runtime/invocation.d.ts +15 -0
  1283. package/dist/core/runtime/invocation.js +10 -0
  1284. package/dist/core/runtime/kickoff.d.ts +37 -0
  1285. package/dist/core/runtime/kickoff.js +263 -0
  1286. package/dist/core/runtime/launch-prompt.d.ts +8 -0
  1287. package/dist/core/runtime/launch-prompt.js +13 -0
  1288. package/dist/core/runtime/launch-target.d.ts +43 -0
  1289. package/dist/core/runtime/launch-target.js +83 -0
  1290. package/dist/core/runtime/launch.d.ts +206 -0
  1291. package/dist/core/runtime/launch.js +498 -0
  1292. package/dist/core/runtime/ledger.d.ts +10 -0
  1293. package/dist/core/runtime/ledger.js +55 -0
  1294. package/dist/core/runtime/lifecycle.d.ts +47 -0
  1295. package/dist/core/runtime/lifecycle.js +283 -0
  1296. package/dist/core/runtime/managed-provider-cooling.d.ts +24 -0
  1297. package/dist/core/runtime/managed-provider-cooling.js +62 -0
  1298. package/dist/core/runtime/memory-admission.d.ts +38 -0
  1299. package/dist/core/runtime/memory-admission.js +68 -0
  1300. package/dist/core/runtime/model-registry.d.ts +3 -0
  1301. package/dist/core/runtime/model-registry.js +13 -0
  1302. package/dist/core/runtime/model-selection.d.ts +54 -0
  1303. package/dist/core/runtime/model-selection.js +135 -0
  1304. package/dist/core/runtime/model-swap.d.ts +26 -0
  1305. package/dist/core/runtime/model-swap.js +75 -0
  1306. package/dist/core/runtime/naming.d.ts +69 -0
  1307. package/dist/core/runtime/naming.js +298 -0
  1308. package/dist/core/runtime/nerd-font.d.ts +46 -0
  1309. package/dist/core/runtime/nerd-font.js +162 -0
  1310. package/dist/core/runtime/nodes.d.ts +140 -0
  1311. package/dist/core/runtime/nodes.js +506 -0
  1312. package/dist/core/runtime/outcome-document.d.ts +58 -0
  1313. package/dist/core/runtime/outcome-document.js +86 -0
  1314. package/dist/core/runtime/output-result.d.ts +15 -0
  1315. package/dist/core/runtime/output-result.js +32 -0
  1316. package/dist/core/runtime/output-schema-refs.d.ts +3 -0
  1317. package/dist/core/runtime/output-schema-refs.js +100 -0
  1318. package/dist/core/runtime/package-health.d.ts +34 -0
  1319. package/dist/core/runtime/package-health.js +100 -0
  1320. package/dist/core/runtime/persona.d.ts +21 -0
  1321. package/dist/core/runtime/persona.js +54 -0
  1322. package/dist/core/runtime/pi-cli.d.ts +8 -0
  1323. package/dist/core/runtime/pi-cli.js +65 -0
  1324. package/dist/core/runtime/pi-vendored.d.ts +28 -0
  1325. package/dist/core/runtime/pi-vendored.js +63 -0
  1326. package/dist/core/runtime/placement-tmux.d.ts +32 -0
  1327. package/dist/core/runtime/placement-tmux.js +81 -0
  1328. package/dist/core/runtime/placement.d.ts +116 -0
  1329. package/dist/core/runtime/placement.js +418 -0
  1330. package/dist/core/runtime/progress-bar.d.ts +13 -0
  1331. package/dist/core/runtime/progress-bar.js +50 -0
  1332. package/dist/core/runtime/provider-credential-gate.d.ts +8 -0
  1333. package/dist/core/runtime/provider-credential-gate.js +33 -0
  1334. package/dist/core/runtime/recovery-hold.d.ts +21 -0
  1335. package/dist/core/runtime/recovery-hold.js +46 -0
  1336. package/dist/core/runtime/reopen.d.ts +49 -0
  1337. package/dist/core/runtime/reopen.js +160 -0
  1338. package/dist/core/runtime/revive.d.ts +114 -0
  1339. package/dist/core/runtime/revive.js +739 -0
  1340. package/dist/core/runtime/roadmap.d.ts +24 -0
  1341. package/dist/core/runtime/roadmap.js +86 -0
  1342. package/dist/core/runtime/runner/blaxel/client.d.ts +83 -0
  1343. package/dist/core/runtime/runner/blaxel/client.js +140 -0
  1344. package/dist/core/runtime/runner/blaxel/image-build.d.ts +74 -0
  1345. package/dist/core/runtime/runner/blaxel/image-build.js +209 -0
  1346. package/dist/core/runtime/runner/index.d.ts +9 -0
  1347. package/dist/core/runtime/runner/index.js +37 -0
  1348. package/dist/core/runtime/runner/machine/call.d.ts +8 -0
  1349. package/dist/core/runtime/runner/machine/call.js +67 -0
  1350. package/dist/core/runtime/runner/machine/environment.d.ts +1 -0
  1351. package/dist/core/runtime/runner/machine/environment.js +7 -0
  1352. package/dist/core/runtime/runner/machine/ops.d.ts +127 -0
  1353. package/dist/core/runtime/runner/machine/ops.js +41 -0
  1354. package/dist/core/runtime/runner/machine/runner.d.ts +12 -0
  1355. package/dist/core/runtime/runner/machine/runner.js +90 -0
  1356. package/dist/core/runtime/runner/process.d.ts +11 -0
  1357. package/dist/core/runtime/runner/process.js +70 -0
  1358. package/dist/core/runtime/runner/types.d.ts +101 -0
  1359. package/dist/core/runtime/runner/types.js +16 -0
  1360. package/dist/core/runtime/session-branch.d.ts +7 -0
  1361. package/dist/core/runtime/session-branch.js +16 -0
  1362. package/dist/core/runtime/session-cycles.d.ts +45 -0
  1363. package/dist/core/runtime/session-cycles.js +110 -0
  1364. package/dist/core/runtime/session-list-cache.d.ts +37 -0
  1365. package/dist/core/runtime/session-list-cache.js +302 -0
  1366. package/dist/core/runtime/session-visibility.d.ts +37 -0
  1367. package/dist/core/runtime/session-visibility.js +99 -0
  1368. package/dist/core/runtime/setup-marker.d.ts +8 -0
  1369. package/dist/core/runtime/setup-marker.js +46 -0
  1370. package/dist/core/runtime/situational-context.d.ts +16 -0
  1371. package/dist/core/runtime/situational-context.js +54 -0
  1372. package/dist/core/runtime/situational-live.d.ts +9 -0
  1373. package/dist/core/runtime/situational-live.js +41 -0
  1374. package/dist/core/runtime/spawn-env-rows.d.ts +5 -0
  1375. package/dist/core/runtime/spawn-env-rows.js +15 -0
  1376. package/dist/core/runtime/spawn-env.d.ts +40 -0
  1377. package/dist/core/runtime/spawn-env.js +260 -0
  1378. package/dist/core/runtime/spawn.d.ts +160 -0
  1379. package/dist/core/runtime/spawn.js +699 -0
  1380. package/dist/core/runtime/stamp/protocol.d.ts +90 -0
  1381. package/dist/core/runtime/stamp/protocol.js +113 -0
  1382. package/dist/core/runtime/start-check.d.ts +15 -0
  1383. package/dist/core/runtime/start-check.js +31 -0
  1384. package/dist/core/runtime/stop-guard.d.ts +31 -0
  1385. package/dist/core/runtime/stop-guard.js +150 -0
  1386. package/dist/core/runtime/structured-output.d.ts +36 -0
  1387. package/dist/core/runtime/structured-output.js +112 -0
  1388. package/dist/core/runtime/surface-bg.d.ts +13 -0
  1389. package/dist/core/runtime/surface-bg.js +85 -0
  1390. package/dist/core/runtime/tmux-bindings.d.ts +30 -0
  1391. package/dist/core/runtime/tmux-bindings.js +743 -0
  1392. package/dist/core/runtime/tmux-chrome.d.ts +2 -0
  1393. package/dist/core/runtime/tmux-chrome.js +5 -0
  1394. package/dist/core/runtime/tmux-driver.d.ts +328 -0
  1395. package/dist/core/runtime/tmux-driver.js +713 -0
  1396. package/dist/core/runtime/unsandboxed.d.ts +3 -0
  1397. package/dist/core/runtime/unsandboxed.js +16 -0
  1398. package/dist/core/runtime/view-socket.d.ts +61 -0
  1399. package/dist/core/runtime/view-socket.js +194 -0
  1400. package/dist/core/runtime/warm-pool.d.ts +79 -0
  1401. package/dist/core/runtime/warm-pool.js +473 -0
  1402. package/dist/core/scoped-state/db.d.ts +17 -0
  1403. package/dist/core/scoped-state/db.js +261 -0
  1404. package/dist/core/scoped-state/legacy-profiles.d.ts +11 -0
  1405. package/dist/core/scoped-state/legacy-profiles.js +61 -0
  1406. package/dist/core/scoped-state/migrate.d.ts +15 -0
  1407. package/dist/core/scoped-state/migrate.js +332 -0
  1408. package/dist/core/scoped-state/person-rows.d.ts +10 -0
  1409. package/dist/core/scoped-state/person-rows.js +173 -0
  1410. package/dist/core/scoped-state/schema.d.ts +10 -0
  1411. package/dist/core/scoped-state/schema.js +47 -0
  1412. package/dist/core/scopes.d.ts +20 -0
  1413. package/dist/core/scopes.js +48 -0
  1414. package/dist/core/secrets/env-rows.d.ts +18 -0
  1415. package/dist/core/secrets/env-rows.js +40 -0
  1416. package/dist/core/secrets/environment-owner.d.ts +8 -0
  1417. package/dist/core/secrets/environment-owner.js +31 -0
  1418. package/dist/core/secrets/environment-secrets.d.ts +14 -0
  1419. package/dist/core/secrets/environment-secrets.js +14 -0
  1420. package/dist/core/secrets/index.d.ts +2 -0
  1421. package/dist/core/secrets/index.js +2 -0
  1422. package/dist/core/secrets/key.d.ts +3 -0
  1423. package/dist/core/secrets/key.js +33 -0
  1424. package/dist/core/secrets/seal.d.ts +18 -0
  1425. package/dist/core/secrets/seal.js +43 -0
  1426. package/dist/core/secrets.d.ts +50 -0
  1427. package/dist/core/secrets.js +147 -0
  1428. package/dist/core/self-update.d.ts +27 -0
  1429. package/dist/core/self-update.js +77 -0
  1430. package/dist/core/session-model/session-state.d.ts +53 -0
  1431. package/dist/core/session-model/session-state.js +180 -0
  1432. package/dist/core/shell-segments.d.ts +42 -0
  1433. package/dist/core/shell-segments.js +169 -0
  1434. package/dist/core/spaces/cache-env.d.ts +2 -0
  1435. package/dist/core/spaces/cache-env.js +15 -0
  1436. package/dist/core/spaces/file-root.d.ts +23 -0
  1437. package/dist/core/spaces/file-root.js +68 -0
  1438. package/dist/core/spaces/mounts.d.ts +41 -0
  1439. package/dist/core/spaces/mounts.js +126 -0
  1440. package/dist/core/spaces/permissions.d.ts +19 -0
  1441. package/dist/core/spaces/permissions.js +77 -0
  1442. package/dist/core/spaces/process.d.ts +61 -0
  1443. package/dist/core/spaces/process.js +172 -0
  1444. package/dist/core/spaces/runtime-home.d.ts +5 -0
  1445. package/dist/core/spaces/runtime-home.js +8 -0
  1446. package/dist/core/spaces/space.d.ts +9 -0
  1447. package/dist/core/spaces/space.js +58 -0
  1448. package/dist/core/spaces/stop.d.ts +24 -0
  1449. package/dist/core/spaces/stop.js +138 -0
  1450. package/dist/core/spaces/users.d.ts +20 -0
  1451. package/dist/core/spaces/users.js +43 -0
  1452. package/dist/core/sqlite-statements.d.ts +4 -0
  1453. package/dist/core/sqlite-statements.js +17 -0
  1454. package/dist/core/statements.d.ts +17 -0
  1455. package/dist/core/statements.js +81 -0
  1456. package/dist/core/storage/attachments.d.ts +36 -0
  1457. package/dist/core/storage/attachments.js +135 -0
  1458. package/dist/core/storage/client.d.ts +109 -0
  1459. package/dist/core/storage/client.js +231 -0
  1460. package/dist/core/storage/download.d.ts +24 -0
  1461. package/dist/core/storage/download.js +184 -0
  1462. package/dist/core/storage/purge.d.ts +6 -0
  1463. package/dist/core/storage/purge.js +52 -0
  1464. package/dist/core/storage/tables.d.ts +67 -0
  1465. package/dist/core/storage/tables.js +109 -0
  1466. package/dist/core/subscription-state.d.ts +96 -0
  1467. package/dist/core/subscription-state.js +438 -0
  1468. package/dist/core/substrate/delivery/corpus.d.ts +26 -0
  1469. package/dist/core/substrate/delivery/corpus.js +138 -0
  1470. package/dist/core/substrate/delivery/deliver.d.ts +71 -0
  1471. package/dist/core/substrate/delivery/deliver.js +333 -0
  1472. package/dist/core/substrate/delivery/listings.d.ts +30 -0
  1473. package/dist/core/substrate/delivery/listings.js +75 -0
  1474. package/dist/core/substrate/delivery/match.d.ts +28 -0
  1475. package/dist/core/substrate/delivery/match.js +146 -0
  1476. package/dist/core/substrate/delivery/plan.d.ts +57 -0
  1477. package/dist/core/substrate/delivery/plan.js +126 -0
  1478. package/dist/core/substrate/delivery/render-boot.d.ts +20 -0
  1479. package/dist/core/substrate/delivery/render-boot.js +329 -0
  1480. package/dist/core/substrate/delivery/render-event.d.ts +47 -0
  1481. package/dist/core/substrate/delivery/render-event.js +160 -0
  1482. package/dist/core/substrate/delivery/sub-persona-menu.d.ts +2 -0
  1483. package/dist/core/substrate/delivery/sub-persona-menu.js +24 -0
  1484. package/dist/core/substrate/delivery/types.d.ts +30 -0
  1485. package/dist/core/substrate/delivery/types.js +1 -0
  1486. package/dist/core/substrate/gate-explain.d.ts +35 -0
  1487. package/dist/core/substrate/gate-explain.js +397 -0
  1488. package/dist/core/substrate/schema.d.ts +29 -0
  1489. package/dist/core/substrate/schema.js +81 -0
  1490. package/dist/core/substrate/subject-fields.d.ts +52 -0
  1491. package/dist/core/substrate/subject-fields.js +39 -0
  1492. package/dist/core/substrate/subject.d.ts +13 -0
  1493. package/dist/core/substrate/subject.js +60 -0
  1494. package/dist/core/termrender/code-doc.d.ts +12 -0
  1495. package/dist/core/termrender/code-doc.js +92 -0
  1496. package/dist/core/termrender/display.d.ts +16 -0
  1497. package/dist/core/termrender/display.js +56 -0
  1498. package/dist/core/termrender/termrender.d.ts +71 -0
  1499. package/dist/core/termrender/termrender.js +719 -0
  1500. package/dist/core/termrender/version.d.ts +1 -0
  1501. package/dist/core/termrender/version.js +1 -0
  1502. package/dist/core/timing.d.ts +11 -0
  1503. package/dist/core/timing.js +94 -0
  1504. package/dist/core/tui/draw.d.ts +103 -0
  1505. package/dist/core/tui/draw.js +378 -0
  1506. package/dist/core/tui/fuzzy.d.ts +9 -0
  1507. package/dist/core/tui/fuzzy.js +38 -0
  1508. package/dist/core/tui/markdown.d.ts +17 -0
  1509. package/dist/core/tui/markdown.js +407 -0
  1510. package/dist/core/tui/page-host.d.ts +31 -0
  1511. package/dist/core/tui/page-host.js +74 -0
  1512. package/dist/core/tui/panel.d.ts +45 -0
  1513. package/dist/core/tui/panel.js +142 -0
  1514. package/dist/core/tui/terminal.d.ts +23 -0
  1515. package/dist/core/tui/terminal.js +100 -0
  1516. package/dist/core/wake.d.ts +89 -0
  1517. package/dist/core/wake.js +296 -0
  1518. package/dist/core/worktree-containment.d.ts +14 -0
  1519. package/dist/core/worktree-containment.js +48 -0
  1520. package/dist/core/worktree-landing.d.ts +44 -0
  1521. package/dist/core/worktree-landing.js +56 -0
  1522. package/dist/core/worktree-mutation-async.d.ts +23 -0
  1523. package/dist/core/worktree-mutation-async.js +335 -0
  1524. package/dist/core/worktree-remove.d.ts +15 -0
  1525. package/dist/core/worktree-remove.js +84 -0
  1526. package/dist/core/worktree.d.ts +121 -0
  1527. package/dist/core/worktree.js +909 -0
  1528. package/dist/daemon/api/deferred-head.d.ts +14 -0
  1529. package/dist/daemon/api/deferred-head.js +117 -0
  1530. package/dist/daemon/api/environment-of.d.ts +18 -0
  1531. package/dist/daemon/api/environment-of.js +40 -0
  1532. package/dist/daemon/api/handlers/git-credential.d.ts +11 -0
  1533. package/dist/daemon/api/handlers/git-credential.js +64 -0
  1534. package/dist/daemon/api/handlers/providers.d.ts +83 -0
  1535. package/dist/daemon/api/handlers/providers.js +283 -0
  1536. package/dist/daemon/api/handlers/validate.d.ts +23 -0
  1537. package/dist/daemon/api/handlers/validate.js +58 -0
  1538. package/dist/daemon/api/map.d.ts +167 -0
  1539. package/dist/daemon/api/map.js +764 -0
  1540. package/dist/daemon/api/operations.d.ts +18 -0
  1541. package/dist/daemon/api/operations.js +306 -0
  1542. package/dist/daemon/api/principal.d.ts +65 -0
  1543. package/dist/daemon/api/principal.js +143 -0
  1544. package/dist/daemon/api/reader.d.ts +24 -0
  1545. package/dist/daemon/api/reader.js +123 -0
  1546. package/dist/daemon/api/router.d.ts +193 -0
  1547. package/dist/daemon/api/router.js +536 -0
  1548. package/dist/daemon/api/sync-notice.d.ts +17 -0
  1549. package/dist/daemon/api/sync-notice.js +46 -0
  1550. package/dist/daemon/api/viewer-presence.d.ts +20 -0
  1551. package/dist/daemon/api/viewer-presence.js +100 -0
  1552. package/dist/daemon/broker-signals/bus.d.ts +3 -2
  1553. package/dist/daemon/broker-signals/bus.js +3 -2
  1554. package/dist/daemon/companion-retire.d.ts +4 -0
  1555. package/dist/daemon/companion-retire.js +44 -0
  1556. package/dist/daemon/control.d.ts +40 -0
  1557. package/dist/daemon/control.js +22 -0
  1558. package/dist/daemon/cron/authority.d.ts +38 -0
  1559. package/dist/daemon/cron/authority.js +90 -0
  1560. package/dist/daemon/cron/live-runs.d.ts +54 -0
  1561. package/dist/daemon/cron/live-runs.js +66 -0
  1562. package/dist/daemon/cron/run-socket.d.ts +30 -0
  1563. package/dist/daemon/cron/run-socket.js +170 -0
  1564. package/dist/daemon/drain.d.ts +25 -0
  1565. package/dist/daemon/drain.js +76 -0
  1566. package/dist/daemon/human/finish.d.ts +24 -0
  1567. package/dist/daemon/human/finish.js +178 -0
  1568. package/dist/daemon/human/settle.d.ts +44 -0
  1569. package/dist/daemon/human/settle.js +103 -0
  1570. package/dist/daemon/machine-link/config.d.ts +45 -0
  1571. package/dist/daemon/machine-link/config.js +63 -0
  1572. package/dist/daemon/machine-link/credential.d.ts +7 -0
  1573. package/dist/daemon/machine-link/credential.js +24 -0
  1574. package/dist/daemon/machine-link/forward.d.ts +16 -0
  1575. package/dist/daemon/machine-link/forward.js +181 -0
  1576. package/dist/daemon/machine-link/frames.d.ts +49 -0
  1577. package/dist/daemon/machine-link/frames.js +25 -0
  1578. package/dist/daemon/machine-link/holder.d.ts +73 -0
  1579. package/dist/daemon/machine-link/holder.js +272 -0
  1580. package/dist/daemon/machine-link/move-notify.d.ts +4 -0
  1581. package/dist/daemon/machine-link/move-notify.js +15 -0
  1582. package/dist/daemon/manage.d.ts +19 -3
  1583. package/dist/daemon/manage.js +21 -6
  1584. package/dist/daemon/park-activity.d.ts +10 -0
  1585. package/dist/daemon/park-activity.js +33 -0
  1586. package/dist/daemon/park-pending.d.ts +25 -0
  1587. package/dist/daemon/park-pending.js +76 -0
  1588. package/dist/daemon/postgres/binary.d.ts +17 -0
  1589. package/dist/daemon/postgres/binary.js +193 -0
  1590. package/dist/daemon/postgres/cluster.d.ts +37 -0
  1591. package/dist/daemon/postgres/cluster.js +111 -0
  1592. package/dist/daemon/postgres/pins.d.ts +7 -0
  1593. package/dist/daemon/postgres/pins.js +16 -0
  1594. package/dist/daemon/postgres/supervisor.d.ts +95 -0
  1595. package/dist/daemon/postgres/supervisor.js +177 -0
  1596. package/dist/daemon/readiness.d.ts +11 -0
  1597. package/dist/daemon/readiness.js +37 -0
  1598. package/dist/daemon/reconcilers/broker-supervision.d.ts +112 -0
  1599. package/dist/daemon/reconcilers/broker-supervision.js +842 -0
  1600. package/dist/daemon/reconcilers/ledger-sandbox.d.ts +54 -0
  1601. package/dist/daemon/reconcilers/ledger-sandbox.js +249 -0
  1602. package/dist/daemon/reconcilers/live-obligation.d.ts +77 -0
  1603. package/dist/daemon/reconcilers/live-obligation.js +114 -0
  1604. package/dist/daemon/reconcilers/node-lifecycle/launch-failure.d.ts +1 -0
  1605. package/dist/daemon/reconcilers/node-lifecycle/launch-failure.js +8 -0
  1606. package/dist/daemon/reconcilers/node-lifecycle/node-person.d.ts +9 -0
  1607. package/dist/daemon/reconcilers/node-lifecycle/node-person.js +40 -0
  1608. package/dist/daemon/reconcilers/node-lifecycle/remote-wake.d.ts +32 -0
  1609. package/dist/daemon/reconcilers/node-lifecycle/remote-wake.js +124 -0
  1610. package/dist/daemon/reconcilers/recipe-image.d.ts +49 -0
  1611. package/dist/daemon/reconcilers/recipe-image.js +145 -0
  1612. package/dist/daemon/reconcilers/throttled-lane.d.ts +11 -0
  1613. package/dist/daemon/reconcilers/throttled-lane.js +63 -0
  1614. package/dist/daemon/runs/append-section.d.ts +9 -0
  1615. package/dist/daemon/runs/append-section.js +135 -0
  1616. package/dist/daemon/runs/observer.d.ts +17 -0
  1617. package/dist/daemon/runs/observer.js +441 -0
  1618. package/dist/daemon/runs/view-transport.d.ts +19 -0
  1619. package/dist/daemon/runs/view-transport.js +81 -0
  1620. package/dist/daemon/structured-requests/sidecar.d.ts +4 -0
  1621. package/dist/daemon/structured-requests/sidecar.js +5 -0
  1622. package/dist/hook-authoring.d.ts +130 -0
  1623. package/dist/hook-authoring.js +447 -0
  1624. package/dist/hook-process.d.ts +7 -0
  1625. package/dist/hook-process.js +34 -0
  1626. package/dist/launcher/client.d.ts +6 -0
  1627. package/dist/launcher/client.js +52 -0
  1628. package/dist/launcher/limits/policy.d.ts +141 -0
  1629. package/dist/launcher/limits/policy.js +142 -0
  1630. package/dist/launcher/limits/settings.d.ts +19 -0
  1631. package/dist/launcher/limits/settings.js +94 -0
  1632. package/dist/launcher/spec.d.ts +181 -0
  1633. package/dist/launcher/spec.js +10 -0
  1634. package/dist/migrations/004-canvas-documents/apply.d.ts +8 -0
  1635. package/dist/migrations/004-canvas-documents/apply.js +113 -0
  1636. package/dist/migrations/004-canvas-documents/fields.d.ts +24 -0
  1637. package/dist/migrations/004-canvas-documents/fields.js +52 -0
  1638. package/dist/migrations/004-canvas-documents/index.d.ts +16 -0
  1639. package/dist/migrations/004-canvas-documents/index.js +88 -0
  1640. package/dist/migrations/004-canvas-documents/legacy/discover.d.ts +16 -0
  1641. package/dist/migrations/004-canvas-documents/legacy/discover.js +251 -0
  1642. package/dist/migrations/004-canvas-documents/legacy/history.d.ts +5 -0
  1643. package/dist/migrations/004-canvas-documents/legacy/history.js +37 -0
  1644. package/dist/migrations/004-canvas-documents/legacy/nested.d.ts +7 -0
  1645. package/dist/migrations/004-canvas-documents/legacy/nested.js +37 -0
  1646. package/dist/migrations/004-canvas-documents/legacy/parse.d.ts +14 -0
  1647. package/dist/migrations/004-canvas-documents/legacy/parse.js +24 -0
  1648. package/dist/migrations/004-canvas-documents/legacy/types.d.ts +91 -0
  1649. package/dist/migrations/004-canvas-documents/legacy/types.js +3 -0
  1650. package/dist/migrations/004-canvas-documents/plan.d.ts +102 -0
  1651. package/dist/migrations/004-canvas-documents/plan.js +410 -0
  1652. package/dist/migrations/004-canvas-documents/pointers.d.ts +23 -0
  1653. package/dist/migrations/004-canvas-documents/pointers.js +95 -0
  1654. package/dist/migrations/activation.d.ts +17 -0
  1655. package/dist/migrations/activation.js +46 -0
  1656. package/dist/shared/crtr-version.d.ts +2 -0
  1657. package/dist/shared/crtr-version.js +18 -0
  1658. package/dist/shared/inbox-entry-body.js +6 -2
  1659. package/dist/shared/inline-ref-grammar.d.ts +53 -0
  1660. package/dist/shared/inline-ref-grammar.js +99 -0
  1661. package/dist/shared/shell-quote.d.ts +3 -0
  1662. package/dist/shared/shell-quote.js +5 -0
  1663. package/dist/shared/strip-cd-prefix.d.ts +1 -0
  1664. package/dist/shared/strip-cd-prefix.js +13 -0
  1665. package/dist/shared/tool-groups.d.ts +26 -0
  1666. package/dist/shared/tool-groups.js +64 -0
  1667. package/dist/shared/traceparent.d.ts +6 -0
  1668. package/dist/shared/traceparent.js +28 -0
  1669. package/dist/shared/turn-replies.d.ts +27 -0
  1670. package/dist/shared/turn-replies.js +71 -0
  1671. package/package.json +1 -1
@@ -0,0 +1,125 @@
1
+ export interface Execution {
2
+ executionId: string;
3
+ nodeId: string;
4
+ daemonEpoch: string | null;
5
+ pid: number | null;
6
+ processIdentity: string | null;
7
+ state: 'launching' | 'running' | 'exited';
8
+ startedAt: string;
9
+ endedAt: string | null;
10
+ exitReason: string | null;
11
+ runner: 'process' | 'blaxel' | 'machine';
12
+ sandboxName: string | null;
13
+ attempt: number;
14
+ /** The release the wake accepted. */
15
+ release: string | null;
16
+ heartbeatAt: string | null;
17
+ awakeSince: string | null;
18
+ idleAt: string | null;
19
+ exitedAt: string | null;
20
+ /** The launch recipe the wake wrote: invocation argv and env, config snapshot, system prompt text, scopes. */
21
+ launchJson: string | null;
22
+ stopRequestedAt: string | null;
23
+ stopAfterTurn: boolean;
24
+ stopReason: string | null;
25
+ }
26
+ /** Reasons that end a launch the broker never reported `running` for; nothing the broker owned needs cleanup. */
27
+ export type ExecutionEndReason = 'launch_lost' | 'launch_timeout' | (string & {});
28
+ export declare function liveExecutionForNode(nodeId: string): Promise<Execution | null>;
29
+ export interface BeginExecutionInput {
30
+ daemonEpoch: string | null;
31
+ runner?: Execution['runner'];
32
+ /** Defaults to one above the node's highest attempt. */
33
+ attempt?: number;
34
+ sandboxName?: string | null;
35
+ release?: string | null;
36
+ launchJson?: string | null;
37
+ /** The broker cap. The count of other nodes' live rows and this insert are one step under a database-wide lock,
38
+ * so two processes beginning at cap-1 cannot both take the last slot. */
39
+ cap?: number;
40
+ }
41
+ /** Thrown by `beginExecution` when `cap` other nodes already hold a live execution row. */
42
+ export declare class ExecutionCapReached extends Error {
43
+ readonly cap: number;
44
+ readonly live: number;
45
+ constructor(cap: number, live: number);
46
+ }
47
+ /** Thrown by `beginExecution` when the node already holds a live execution another caller owns: a remote one, or a process
48
+ * one this daemon epoch began. The holder keeps its row and token; the caller adopts it or backs off, never replaces it. */
49
+ export declare class ExecutionAlreadyLive extends Error {
50
+ readonly nodeId: string;
51
+ readonly executionId: string;
52
+ constructor(nodeId: string, executionId: string);
53
+ }
54
+ /** Inserts the `launching` row. It mints no token: the runner mints inside `start` (design D74). */
55
+ export declare function beginExecution(nodeId: string, input: BeginExecutionInput): Promise<string>;
56
+ /** Persist the complete launch recipe before handing the execution to a runner. */
57
+ export declare function setExecutionLaunchJson(executionId: string, launchJson: string): Promise<void>;
58
+ /** The broker went idle with nothing holding it (design D18): stamps `idle_at` on its running execution, once per awake period. */
59
+ export declare function recordExecutionIdle(executionId: string): Promise<boolean>;
60
+ /** A thawed resident broker starts a new awake period: `awake_since` is now and `idle_at` is cleared. */
61
+ export declare function recordExecutionAwake(executionId: string): Promise<void>;
62
+ /** Returns shutdown when a late broker references an execution no longer live. */
63
+ export declare function recordExecutionPid(executionId: string, nodeId: string, pid: number): Promise<'recorded' | 'shutdown'>;
64
+ /**
65
+ * Ends the execution, revokes its token and clears the node's supervision marks in one transaction.
66
+ * `launch_lost` and `launch_timeout` are the recovery ends of a `launching` row (design, Execution token hand-off).
67
+ */
68
+ export declare function endExecution(executionId: string, input: {
69
+ reason: ExecutionEndReason;
70
+ }): Promise<boolean>;
71
+ /** Ends the execution only while it is still `launching`: false when a `session.bound` already made it `running`, so a stale
72
+ * timeout decision never kills a broker that bound. The caller stops the external process only on true. */
73
+ export declare function endLaunchingExecution(executionId: string, input: {
74
+ reason: ExecutionEndReason;
75
+ }): Promise<boolean>;
76
+ export declare function abortExecution(executionId: string, input: {
77
+ reason: string;
78
+ }): Promise<boolean>;
79
+ export declare function endLiveExecution(nodeId: string, input: {
80
+ reason: ExecutionEndReason;
81
+ }): Promise<boolean>;
82
+ export declare function migrateLegacyExecutionIdentities(captureIdentity?: (pid: number) => string | undefined): Promise<{
83
+ migrated: string[];
84
+ }>;
85
+ /** Records a stop request on the node's live execution; the first request's time and reason stand. */
86
+ export declare function requestExecutionStop(nodeId: string, input: {
87
+ afterTurn: boolean;
88
+ reason: string;
89
+ }): Promise<boolean>;
90
+ /** Live executions with a stop requested at or before `requestedBefore` (ISO time). A request this old has outlived the
91
+ * process that queued it, whose own teardown runs within seconds. */
92
+ export declare function executionsWithStopRequestedBefore(requestedBefore: string): Promise<Execution[]>;
93
+ /** The node's most recent execution row, live or ended. */
94
+ export declare function latestExecutionForNode(nodeId: string): Promise<Execution | null>;
95
+ /** True when the node has a `running` execution on a runner other than the process runner: the row is its only liveness record. */
96
+ export declare function hasRunningRemoteExecution(nodeId: string): Promise<boolean>;
97
+ /** True when a `launching` execution is in flight: any runner's, or a process runner's started by this daemon epoch. */
98
+ export declare function hasLaunchingExecution(nodeId: string, epoch: string): Promise<boolean>;
99
+ /** Node ids with a live process-runner execution begun by this daemon epoch. */
100
+ export declare function liveProcessExecutionNodeIds(epoch: string): Promise<Set<string>>;
101
+ /** Every node with a live (not exited) execution row, whichever process or runner holds it. */
102
+ export declare function liveExecutionNodeIds(): Promise<Set<string>>;
103
+ export declare const PROFILE_PAUSE_STOP_REASON = "profile_pause";
104
+ /** Marks the node's live execution as stopped by a profile pause, so the exit it causes is not read as a crash. */
105
+ export declare function markProfilePauseStop(nodeId: string): Promise<void>;
106
+ export declare function hasProfilePauseStop(nodeId: string): Promise<boolean>;
107
+ /** Consumes the pause stop once: true for the single dead-row pass that must absorb it. */
108
+ export declare function absorbProfilePauseStop(nodeId: string): Promise<boolean>;
109
+ /** Whether the execution's profile-pause stop was absorbed by a policy pass, the exit it caused already forgiven. */
110
+ export declare function hasAbsorbedProfilePauseStop(execution: Execution): boolean;
111
+ /** Records a child's observed exit status on its execution without ending it; the next dead-row pass reads it once. The first recorded reason stands. */
112
+ export declare function recordExecutionExit(executionId: string, status: {
113
+ code: number | null;
114
+ signal: string | null;
115
+ oomKilled?: boolean;
116
+ }): Promise<void>;
117
+ export interface ObservedExit {
118
+ code: number | null;
119
+ signal: NodeJS.Signals | null;
120
+ oomKilled?: boolean;
121
+ }
122
+ /** Whether the execution holds an observed exit no dead-row pass has consumed yet. */
123
+ export declare function hasObservedExit(execution: Execution): boolean;
124
+ /** Reads and consumes the latest execution's unhandled observed exit, once. */
125
+ export declare function takeObservedExit(nodeId: string): Promise<ObservedExit | undefined>;
@@ -0,0 +1,279 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { openDb, withCanvasWrite } from './db.js';
3
+ import { capturePidIdentities, captureLivenessSnapshot, identitiesMatch, isBootScopedIdentity, isLegacyTicksIdentity } from './pid.js';
4
+ import { existsSync, readFileSync } from 'node:fs';
5
+ import { LAUNCHER_SOCKET } from '../../launcher/spec.js';
6
+ import { revokeNodeTokens } from './node-tokens.js';
7
+ import { clearPendingParkIn } from '../../daemon/park-pending.js';
8
+ function now() {
9
+ return new Date().toISOString();
10
+ }
11
+ function hydrate(row) {
12
+ return {
13
+ executionId: row['execution_id'],
14
+ nodeId: row['node_id'],
15
+ daemonEpoch: row['daemon_epoch'] ?? null,
16
+ pid: row['pid'] ?? null,
17
+ processIdentity: row['process_identity'] ?? null,
18
+ state: row['state'],
19
+ startedAt: row['started_at'],
20
+ endedAt: row['ended_at'] ?? null,
21
+ exitReason: row['exit_reason'] ?? null,
22
+ runner: row['runner'],
23
+ sandboxName: row['sandbox_name'] ?? null,
24
+ attempt: Number(row['attempt']),
25
+ release: row['release'] ?? null,
26
+ heartbeatAt: row['heartbeat_at'] ?? null,
27
+ awakeSince: row['awake_since'] ?? null,
28
+ idleAt: row['idle_at'] ?? null,
29
+ exitedAt: row['exited_at'] ?? null,
30
+ launchJson: row['launch_json'] ?? null,
31
+ stopRequestedAt: row['stop_requested_at'] ?? null,
32
+ stopAfterTurn: Number(row['stop_after_turn']) === 1,
33
+ stopReason: row['stop_reason'] ?? null,
34
+ };
35
+ }
36
+ export async function liveExecutionForNode(nodeId) {
37
+ const row = await (await openDb()).prepare("SELECT * FROM executions WHERE node_id = ? AND state != 'exited'").get(nodeId);
38
+ return row === undefined ? null : hydrate(row);
39
+ }
40
+ /** Thrown by `beginExecution` when `cap` other nodes already hold a live execution row. */
41
+ export class ExecutionCapReached extends Error {
42
+ cap;
43
+ live;
44
+ constructor(cap, live) {
45
+ super(`no broker slot is free — ${live} live executions at the cap of ${cap}.`);
46
+ this.cap = cap;
47
+ this.live = live;
48
+ this.name = 'ExecutionCapReached';
49
+ }
50
+ }
51
+ /** Thrown by `beginExecution` when the node already holds a live execution another caller owns: a remote one, or a process
52
+ * one this daemon epoch began. The holder keeps its row and token; the caller adopts it or backs off, never replaces it. */
53
+ export class ExecutionAlreadyLive extends Error {
54
+ nodeId;
55
+ executionId;
56
+ constructor(nodeId, executionId) {
57
+ super(`${nodeId} already has a live execution ${executionId}.`);
58
+ this.nodeId = nodeId;
59
+ this.executionId = executionId;
60
+ this.name = 'ExecutionAlreadyLive';
61
+ }
62
+ }
63
+ /** Fixed key for the transaction-scoped lock that serializes cap checks across processes. */
64
+ const EXECUTION_CAP_LOCK_KEY = 7_340_001;
65
+ /** Inserts the `launching` row. It mints no token: the runner mints inside `start` (design D74). */
66
+ export async function beginExecution(nodeId, input) {
67
+ return await withCanvasWrite(async (db) => {
68
+ const at = now();
69
+ // Serialize attempts for one node, including its first execution with no prior row to lock.
70
+ const owner = await db.prepare('SELECT node_id FROM nodes WHERE node_id = ? FOR UPDATE').get(nodeId);
71
+ if (!owner)
72
+ throw new Error(`cannot begin execution: missing node ${nodeId}`);
73
+ if (input.cap !== undefined) {
74
+ await db.prepare(`SELECT pg_advisory_xact_lock(${EXECUTION_CAP_LOCK_KEY})`).get();
75
+ const live = Number((await db.prepare("SELECT COUNT(*) AS n FROM executions WHERE state != 'exited' AND node_id != ?").get(nodeId)).n);
76
+ if (live >= input.cap)
77
+ throw new ExecutionCapReached(input.cap, live);
78
+ }
79
+ // Under the node lock, a live row another caller is launching or a remote broker owns is refused, not replaced:
80
+ // replacing it would revoke the token its owner just handed to a broker. A `running` process row is checked by pid
81
+ // and replaced as before, as is a process row an earlier daemon epoch left behind.
82
+ const live = await db.prepare("SELECT execution_id, runner, daemon_epoch, state FROM executions WHERE node_id = ? AND state != 'exited'").all(nodeId);
83
+ const owned = live.find((row) => row.state === 'launching' ? row.runner !== 'process' || (input.daemonEpoch !== null && row.daemon_epoch === input.daemonEpoch) : row.runner !== 'process');
84
+ if (owned !== undefined)
85
+ throw new ExecutionAlreadyLive(nodeId, owned.execution_id);
86
+ const superseded = await db.prepare("UPDATE executions SET state = 'exited', ended_at = ?, exited_at = ?, exit_reason = 'superseded' WHERE node_id = ? AND state != 'exited'").run(at, at, nodeId);
87
+ if (superseded.changes > 0)
88
+ await clearPendingParkIn(db, nodeId);
89
+ await revokeNodeTokens(db, 'node_id', nodeId, at);
90
+ const executionId = randomUUID();
91
+ const attempt = input.attempt ?? Number((await db.prepare('SELECT COALESCE(MAX(attempt), 0) + 1 AS next FROM executions WHERE node_id = ?').get(nodeId)).next);
92
+ await db.prepare("INSERT INTO executions (execution_id, node_id, daemon_epoch, pid, process_identity, state, started_at, ended_at, exit_reason, runner, sandbox_name, attempt, release, launch_json) VALUES (?, ?, ?, NULL, NULL, 'launching', ?, NULL, NULL, ?, ?, ?, ?, ?)")
93
+ .run(executionId, nodeId, input.daemonEpoch, at, input.runner ?? 'process', input.sandboxName ?? null, attempt, input.release ?? null, input.launchJson ?? null);
94
+ return executionId;
95
+ });
96
+ }
97
+ /** Persist the complete launch recipe before handing the execution to a runner. */
98
+ export async function setExecutionLaunchJson(executionId, launchJson) {
99
+ const updated = await (await openDb()).prepare("UPDATE executions SET launch_json = ? WHERE execution_id = ? AND state = 'launching'").run(launchJson, executionId);
100
+ if (Number(updated.changes) !== 1)
101
+ throw new Error(`cannot set launch recipe for execution ${executionId}: no launching execution`);
102
+ }
103
+ /** The broker went idle with nothing holding it (design D18): stamps `idle_at` on its running execution, once per awake period. */
104
+ export async function recordExecutionIdle(executionId) {
105
+ const updated = await (await openDb()).prepare("UPDATE executions SET idle_at = ? WHERE execution_id = ? AND state = 'running' AND idle_at IS NULL").run(now(), executionId);
106
+ return Number(updated.changes) === 1;
107
+ }
108
+ /** A thawed resident broker starts a new awake period: `awake_since` is now and `idle_at` is cleared. */
109
+ export async function recordExecutionAwake(executionId) {
110
+ await (await openDb()).prepare("UPDATE executions SET awake_since = ?, idle_at = NULL WHERE execution_id = ? AND state = 'running'").run(now(), executionId);
111
+ }
112
+ /** Returns shutdown when a late broker references an execution no longer live. */
113
+ export async function recordExecutionPid(executionId, nodeId, pid) {
114
+ const identity = capturePidIdentities([pid])?.get(pid) ?? null;
115
+ return await withCanvasWrite(async (db) => {
116
+ const launching = await db.prepare("UPDATE executions SET pid = ?, process_identity = ?, state = 'running', awake_since = ? WHERE execution_id = ? AND node_id = ? AND state = 'launching'").run(pid, identity, now(), executionId, nodeId);
117
+ if (launching.changes > 0)
118
+ return 'recorded';
119
+ const running = await db.prepare("SELECT pid FROM executions WHERE execution_id = ? AND node_id = ? AND state = 'running'").get(executionId, nodeId);
120
+ if (running?.pid === pid)
121
+ return 'recorded';
122
+ if (process.platform === 'linux' && existsSync(LAUNCHER_SOCKET) && running?.pid != null) {
123
+ const snapshot = captureLivenessSnapshot();
124
+ const descendants = [running.pid];
125
+ for (let i = 0; i < descendants.length; i++)
126
+ descendants.push(...(snapshot?.childrenOf.get(descendants[i]) ?? []));
127
+ if (descendants.includes(pid))
128
+ return 'recorded';
129
+ for (const descendant of descendants) {
130
+ try {
131
+ const status = readFileSync(`/proc/${descendant}/status`, 'utf8');
132
+ const namespacePids = /^NSpid:\s*(.+)$/m.exec(status)?.[1]?.trim().split(/\s+/).map(Number) ?? [];
133
+ if (namespacePids.length > 1 && namespacePids.at(-1) === pid)
134
+ return 'recorded';
135
+ }
136
+ catch {
137
+ // A process that exited during the snapshot cannot establish identity.
138
+ }
139
+ }
140
+ }
141
+ return 'shutdown';
142
+ });
143
+ }
144
+ /**
145
+ * Ends the execution, revokes its token and clears the node's supervision marks in one transaction.
146
+ * `launch_lost` and `launch_timeout` are the recovery ends of a `launching` row (design, Execution token hand-off).
147
+ */
148
+ export async function endExecution(executionId, input) {
149
+ return await withCanvasWrite(async (db) => {
150
+ const at = now();
151
+ const ended = await db.prepare("UPDATE executions SET state = 'exited', ended_at = ?, exited_at = ?, exit_reason = COALESCE(exit_reason, ?) WHERE execution_id = ? AND state != 'exited' RETURNING node_id").get(at, at, input.reason, executionId);
152
+ await revokeNodeTokens(db, 'broker_process_id', executionId, at);
153
+ if (ended !== undefined)
154
+ await clearPendingParkIn(db, ended.node_id);
155
+ return ended !== undefined;
156
+ });
157
+ }
158
+ /** Ends the execution only while it is still `launching`: false when a `session.bound` already made it `running`, so a stale
159
+ * timeout decision never kills a broker that bound. The caller stops the external process only on true. */
160
+ export async function endLaunchingExecution(executionId, input) {
161
+ return await withCanvasWrite(async (db) => {
162
+ const at = now();
163
+ const ended = await db.prepare("UPDATE executions SET state = 'exited', ended_at = ?, exited_at = ?, exit_reason = COALESCE(exit_reason, ?) WHERE execution_id = ? AND state = 'launching' RETURNING node_id").get(at, at, input.reason, executionId);
164
+ if (ended === undefined)
165
+ return false;
166
+ await revokeNodeTokens(db, 'broker_process_id', executionId, at);
167
+ await clearPendingParkIn(db, ended.node_id);
168
+ return true;
169
+ });
170
+ }
171
+ export async function abortExecution(executionId, input) {
172
+ return await endExecution(executionId, input);
173
+ }
174
+ export async function endLiveExecution(nodeId, input) {
175
+ return await withCanvasWrite(async (db) => {
176
+ const at = now();
177
+ const ended = await db.prepare("UPDATE executions SET state = 'exited', ended_at = ?, exited_at = ?, exit_reason = COALESCE(exit_reason, ?) WHERE node_id = ? AND state != 'exited'").run(at, at, input.reason, nodeId);
178
+ await revokeNodeTokens(db, 'node_id', nodeId, at);
179
+ if (Number(ended.changes) > 0)
180
+ await clearPendingParkIn(db, nodeId);
181
+ return Number(ended.changes) === 1;
182
+ });
183
+ }
184
+ export async function migrateLegacyExecutionIdentities(captureIdentity = (pid) => capturePidIdentities([pid])?.get(pid)) {
185
+ const db = await openDb();
186
+ const rows = await db.prepare("SELECT execution_id, pid, process_identity FROM executions WHERE state = 'running' AND pid IS NOT NULL AND process_identity IS NOT NULL").all();
187
+ const update = db.prepare("UPDATE executions SET process_identity = ? WHERE execution_id = ? AND pid = ? AND process_identity = ? AND state = 'running'");
188
+ const migrated = [];
189
+ for (const row of rows) {
190
+ if (!isLegacyTicksIdentity(row.process_identity))
191
+ continue;
192
+ const current = captureIdentity(row.pid);
193
+ if (current === undefined || !isBootScopedIdentity(current) || !identitiesMatch(current, row.process_identity))
194
+ continue;
195
+ if ((await update.run(current, row.execution_id, row.pid, row.process_identity)).changes > 0)
196
+ migrated.push(row.execution_id);
197
+ }
198
+ return { migrated };
199
+ }
200
+ /** Records a stop request on the node's live execution; the first request's time and reason stand. */
201
+ export async function requestExecutionStop(nodeId, input) {
202
+ const updated = await (await openDb()).prepare("UPDATE executions SET stop_requested_at = COALESCE(stop_requested_at, ?), stop_after_turn = CASE WHEN stop_requested_at IS NULL THEN ? ELSE stop_after_turn END, stop_reason = COALESCE(stop_reason, ?) WHERE node_id = ? AND state != 'exited'").run(now(), input.afterTurn ? 1 : 0, input.reason, nodeId);
203
+ return Number(updated.changes) > 0;
204
+ }
205
+ /** Live executions with a stop requested at or before `requestedBefore` (ISO time). A request this old has outlived the
206
+ * process that queued it, whose own teardown runs within seconds. */
207
+ export async function executionsWithStopRequestedBefore(requestedBefore) {
208
+ const rows = await (await openDb()).prepare("SELECT * FROM executions WHERE state != 'exited' AND stop_requested_at IS NOT NULL AND stop_requested_at <= ? ORDER BY stop_requested_at").all(requestedBefore);
209
+ return rows.map(hydrate);
210
+ }
211
+ /** The node's most recent execution row, live or ended. */
212
+ export async function latestExecutionForNode(nodeId) {
213
+ const row = await (await openDb()).prepare('SELECT * FROM executions WHERE node_id = ? ORDER BY started_at DESC, attempt DESC LIMIT 1').get(nodeId);
214
+ return row === undefined ? null : hydrate(row);
215
+ }
216
+ /** True when the node has a `running` execution on a runner other than the process runner: the row is its only liveness record. */
217
+ export async function hasRunningRemoteExecution(nodeId) {
218
+ return await (await openDb()).prepare("SELECT 1 AS x FROM executions WHERE node_id = ? AND state = 'running' AND runner != 'process'").get(nodeId) !== undefined;
219
+ }
220
+ /** True when a `launching` execution is in flight: any runner's, or a process runner's started by this daemon epoch. */
221
+ export async function hasLaunchingExecution(nodeId, epoch) {
222
+ return await (await openDb()).prepare("SELECT 1 AS x FROM executions WHERE node_id = ? AND state = 'launching' AND (runner != 'process' OR daemon_epoch = ?)").get(nodeId, epoch) !== undefined;
223
+ }
224
+ /** Node ids with a live process-runner execution begun by this daemon epoch. */
225
+ export async function liveProcessExecutionNodeIds(epoch) {
226
+ const rows = await (await openDb()).prepare("SELECT node_id FROM executions WHERE state != 'exited' AND runner = 'process' AND daemon_epoch = ?").all(epoch);
227
+ return new Set(rows.map((row) => row.node_id));
228
+ }
229
+ /** Every node with a live (not exited) execution row, whichever process or runner holds it. */
230
+ export async function liveExecutionNodeIds() {
231
+ const rows = await (await openDb()).prepare("SELECT node_id FROM executions WHERE state != 'exited'").all();
232
+ return new Set(rows.map((row) => row.node_id));
233
+ }
234
+ export const PROFILE_PAUSE_STOP_REASON = 'profile_pause';
235
+ const PROFILE_PAUSE_ABSORBED = 'profile_pause_absorbed';
236
+ /** Marks the node's live execution as stopped by a profile pause, so the exit it causes is not read as a crash. */
237
+ export async function markProfilePauseStop(nodeId) {
238
+ await (await openDb()).prepare("UPDATE executions SET stop_requested_at = COALESCE(stop_requested_at, ?), stop_reason = ? WHERE node_id = ? AND state != 'exited'").run(now(), PROFILE_PAUSE_STOP_REASON, nodeId);
239
+ }
240
+ export async function hasProfilePauseStop(nodeId) {
241
+ return (await latestExecutionForNode(nodeId))?.stopReason === PROFILE_PAUSE_STOP_REASON;
242
+ }
243
+ /** Consumes the pause stop once: true for the single dead-row pass that must absorb it. */
244
+ export async function absorbProfilePauseStop(nodeId) {
245
+ const absorbed = await (await openDb()).prepare('UPDATE executions SET stop_reason = ? WHERE execution_id = (SELECT execution_id FROM executions WHERE node_id = ? ORDER BY started_at DESC, attempt DESC LIMIT 1) AND stop_reason = ?').run(PROFILE_PAUSE_ABSORBED, nodeId, PROFILE_PAUSE_STOP_REASON);
246
+ return Number(absorbed.changes) > 0;
247
+ }
248
+ /** Whether the execution's profile-pause stop was absorbed by a policy pass, the exit it caused already forgiven. */
249
+ export function hasAbsorbedProfilePauseStop(execution) {
250
+ return execution.stopReason === PROFILE_PAUSE_ABSORBED;
251
+ }
252
+ const EXIT_PREFIX = 'exited:';
253
+ /** Records a child's observed exit status on its execution without ending it; the next dead-row pass reads it once. The first recorded reason stands. */
254
+ export async function recordExecutionExit(executionId, status) {
255
+ const reason = status.oomKilled === true ? 'out_of_memory' : `${EXIT_PREFIX}${status.code ?? ''}:${status.signal ?? ''}`;
256
+ await (await openDb()).prepare('UPDATE executions SET exit_reason = ? WHERE execution_id = ? AND exit_reason IS NULL').run(reason, executionId);
257
+ }
258
+ /** Whether the execution holds an observed exit no dead-row pass has consumed yet. */
259
+ export function hasObservedExit(execution) {
260
+ const reason = execution.exitReason;
261
+ return reason != null && (reason === 'out_of_memory' || reason.startsWith(EXIT_PREFIX));
262
+ }
263
+ /** Reads and consumes the latest execution's unhandled observed exit, once. */
264
+ export async function takeObservedExit(nodeId) {
265
+ const latest = await latestExecutionForNode(nodeId);
266
+ const reason = latest?.exitReason;
267
+ if (latest === null || reason == null)
268
+ return undefined;
269
+ const oom = reason === 'out_of_memory';
270
+ if (!oom && !reason.startsWith(EXIT_PREFIX))
271
+ return undefined;
272
+ const taken = await (await openDb()).prepare("UPDATE executions SET exit_reason = 'exit_handled' WHERE execution_id = ? AND exit_reason = ?").run(latest.executionId, reason);
273
+ if (Number(taken.changes) === 0)
274
+ return undefined;
275
+ if (oom)
276
+ return { code: null, signal: null, oomKilled: true };
277
+ const [code, signal] = reason.slice(EXIT_PREFIX.length).split(':');
278
+ return { code: code === '' ? null : Number(code), signal: signal === '' ? null : signal };
279
+ }
@@ -0,0 +1,9 @@
1
+ export declare const CANVAS_EXTENSION_NAMES: readonly ["canvas-inbox-watcher", "canvas-review-boundary", "canvas-stophook", "canvas-recap", "canvas-goal-capture", "canvas-passive-context", "canvas-context-intro", "canvas-tool-guide", "canvas-doc-substrate", "canvas-structured-output", "canvas-bash-valve", "canvas-preview-result", "canvas-prompt-scrub", "canvas-stamp", "canvas-elapsed"];
2
+ /** Structural shipped-hook identity: a canvas-hook stem directly under a
3
+ * `pi-extensions` directory. A user's own extension elsewhere may share the
4
+ * stem and is not shipped. */
5
+ export declare function isShippedCanvasExtension(path: string): boolean;
6
+ /** Remove persisted shipped canvas extensions while retaining genuine
7
+ * caller/kind extras, including a custom extension whose basename happens to
8
+ * resemble a canvas hook outside a pi-extensions directory. */
9
+ export declare function customExtensionPaths(extensions: readonly string[] | undefined): string[];
@@ -0,0 +1,90 @@
1
+ import { extname } from 'node:path';
2
+ // Canvas-extension identity is structural, not basename-based: old runtime roots
3
+ // are recognized only when they carry a complete shipped canvas prefix.
4
+ // canvas-inbox-watcher must load before canvas-stophook: at agent_settled it
5
+ // commits the cursor the stophook then reads to decide idle release.
6
+ export const CANVAS_EXTENSION_NAMES = [
7
+ 'canvas-inbox-watcher', 'canvas-review-boundary', 'canvas-stophook', 'canvas-recap',
8
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
9
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
10
+ 'canvas-bash-valve', 'canvas-preview-result', 'canvas-prompt-scrub', 'canvas-stamp',
11
+ 'canvas-elapsed',
12
+ ];
13
+ const HISTORICAL_CANVAS_EXTENSION_PREFIXES = [
14
+ [
15
+ 'canvas-inbox-watcher', 'canvas-review-boundary', 'canvas-stophook', 'canvas-recap',
16
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
17
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
18
+ 'canvas-bash-valve', 'canvas-preview-result', 'canvas-prompt-scrub', 'canvas-stamp',
19
+ ],
20
+ [
21
+ 'canvas-inbox-watcher', 'canvas-review-boundary', 'canvas-stophook', 'canvas-recap',
22
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
23
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
24
+ 'canvas-bash-valve', 'canvas-preview-result', 'canvas-prompt-scrub',
25
+ ],
26
+ [
27
+ 'canvas-inbox-watcher', 'canvas-review-boundary', 'canvas-stophook', 'canvas-recap',
28
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
29
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
30
+ 'canvas-bash-valve', 'canvas-preview-result',
31
+ ],
32
+ [
33
+ 'canvas-inbox-watcher', 'canvas-review-boundary', 'canvas-stophook', 'canvas-recap',
34
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
35
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
36
+ 'canvas-bash-valve',
37
+ ],
38
+ [
39
+ 'canvas-inbox-watcher', 'canvas-stophook', 'canvas-recap',
40
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-review-boundary',
41
+ 'canvas-context-intro',
42
+ 'canvas-tool-guide', 'canvas-doc-substrate', 'canvas-structured-output',
43
+ 'canvas-bash-valve',
44
+ ],
45
+ [
46
+ 'canvas-inbox-watcher', 'canvas-stophook', 'canvas-recap',
47
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
48
+ 'canvas-doc-substrate', 'canvas-structured-output', 'canvas-bash-valve',
49
+ ],
50
+ [
51
+ 'canvas-stophook', 'canvas-inbox-watcher', 'canvas-recap',
52
+ 'canvas-goal-capture', 'canvas-passive-context', 'canvas-context-intro',
53
+ 'canvas-doc-substrate', 'canvas-structured-output', 'canvas-bash-valve',
54
+ ],
55
+ ];
56
+ function matchesExtensionPrefix(extensions, names) {
57
+ if (extensions.length < names.length)
58
+ return false;
59
+ const paths = extensions.slice(0, names.length);
60
+ const first = paths[0].replaceAll('\\', '/');
61
+ const marker = '/pi-extensions/';
62
+ const markerIndex = first.lastIndexOf(marker);
63
+ const suffix = first.endsWith('.js') ? '.js' : first.endsWith('.ts') ? '.ts' : null;
64
+ if (markerIndex < 1 || suffix === null)
65
+ return false;
66
+ const root = first.slice(0, markerIndex + marker.length);
67
+ return names.every((name, index) => paths[index].replaceAll('\\', '/') === `${root}${name}${suffix}`);
68
+ }
69
+ function extensionPrefixLength(extensions) {
70
+ const prefixes = [CANVAS_EXTENSION_NAMES, ...HISTORICAL_CANVAS_EXTENSION_PREFIXES];
71
+ return prefixes.find((names) => matchesExtensionPrefix(extensions, names))?.length ?? 0;
72
+ }
73
+ /** Structural shipped-hook identity: a canvas-hook stem directly under a
74
+ * `pi-extensions` directory. A user's own extension elsewhere may share the
75
+ * stem and is not shipped. */
76
+ export function isShippedCanvasExtension(path) {
77
+ const normalized = path.replaceAll('\\', '/');
78
+ const lastSlash = normalized.lastIndexOf('/');
79
+ const parent = normalized.slice(0, lastSlash).split('/').at(-1);
80
+ const filename = normalized.slice(lastSlash + 1);
81
+ const name = filename.slice(0, filename.length - extname(filename).length);
82
+ return parent === 'pi-extensions' && CANVAS_EXTENSION_NAMES.includes(name);
83
+ }
84
+ /** Remove persisted shipped canvas extensions while retaining genuine
85
+ * caller/kind extras, including a custom extension whose basename happens to
86
+ * resemble a canvas hook outside a pi-extensions directory. */
87
+ export function customExtensionPaths(extensions) {
88
+ const paths = extensions ?? [];
89
+ return paths.slice(extensionPrefixLength(paths)).filter((path) => !isShippedCanvasExtension(path));
90
+ }
@@ -0,0 +1,26 @@
1
+ import type { FocusRow } from './types.js';
2
+ /** INSERT a viewport. Throws on UNIQUE(node_id) if `node_id` already occupies
3
+ * another focus (or on PK conflict if `focus_id` exists) — by design. */
4
+ export declare function openFocusRow(focus_id: string, pane: string | null, session: string | null, node_id: string): Promise<void>;
5
+ /** Hot-swap a focus's occupant — single-statement UPDATE. Respects
6
+ * UNIQUE(node_id): if `node_id` already occupies ANOTHER focus this throws
7
+ * (correct — vacate-first is placement.focus()'s job, not this setter's). */
8
+ export declare function setFocusOccupant(focus_id: string, node_id: string): Promise<void>;
9
+ /** Re-point a viewer row's durable pane + its derived session cache after the
10
+ * pane moves. Single-statement UPDATE. */
11
+ export declare function setFocusPane(focus_id: string, pane: string | null, session: string | null): Promise<void>;
12
+ /** DELETE a viewport. */
13
+ export declare function closeFocusRow(focus_id: string): Promise<void>;
14
+ /** DELETE a viewport only while it still sits on `pane`: a row re-pointed to another pane since `pane` was probed is kept. */
15
+ export declare function closeFocusRowOnPane(focus_id: string, pane: string): Promise<boolean>;
16
+ /** The focus a node occupies (≤1, UNIQUE node_id), or null. */
17
+ export declare function getFocusByNode(node_id: string): Promise<FocusRow | null>;
18
+ /** {@link getFocusByNode} taking the row's lock: call inside `withCanvasWrite`, where a concurrent re-point or close of the row waits for the commit. */
19
+ export declare function getFocusByNodeForUpdate(node_id: string): Promise<FocusRow | null>;
20
+ /** The focus realized by a given pane (`%id`), or null. */
21
+ export declare function getFocusByPane(pane: string): Promise<FocusRow | null>;
22
+ /** A focus by its stable id, or null. Used by placement to read a row back by id
23
+ * after openFocusRow registers a viewer. */
24
+ export declare function getFocusById(focus_id: string): Promise<FocusRow | null>;
25
+ /** Every focus row, ordered by id. */
26
+ export declare function listFocuses(): Promise<FocusRow[]>;
@@ -0,0 +1,82 @@
1
+ // focuses.ts — the FOCUS table data-access layer (canvas.db, migration v6).
2
+ //
3
+ // Part of the canvas data-access layer: Q7 widens canvas.db from "topology" to
4
+ // "topology + focuses", so the focus-row SQL lives here beside the node+edge
5
+ // model, never in the runtime layer. A FOCUS is one durable on-screen viewport
6
+ // bound to one node; the table is PLURAL (many focuses across windows/sessions),
7
+ // the generalization of the old single focus pointer. It is the CANONICAL focus
8
+ // store — there is no focus.ptr file and no dual-write bridge.
9
+ //
10
+ // placement.ts COMPOSES over these atomic setters/reads (the same way it calls
11
+ // setPresence) — it never runs raw focus SQL itself.
12
+ //
13
+ // Each setter is a single atomic statement. UNIQUE(node_id) upholds "a node
14
+ // occupies at most one viewer" (Q5): a second focus row (or an occupant UPDATE)
15
+ // for an already-viewed node throws — that is correct, the vacate-first
16
+ // orchestration is placement.focus()'s job, not these setters'.
17
+ import { openDb } from './db.js';
18
+ function focusFrom(r) {
19
+ return {
20
+ focus_id: r['focus_id'],
21
+ pane: r['pane'] ?? null,
22
+ session: r['session'] ?? null,
23
+ node_id: r['node_id'],
24
+ };
25
+ }
26
+ // Atomic setters — each one a single-statement INSERT/UPDATE/DELETE.
27
+ /** INSERT a viewport. Throws on UNIQUE(node_id) if `node_id` already occupies
28
+ * another focus (or on PK conflict if `focus_id` exists) — by design. */
29
+ export async function openFocusRow(focus_id, pane, session, node_id) {
30
+ await (await openDb()).prepare('INSERT INTO focuses (focus_id, pane, session, node_id) VALUES (?, ?, ?, ?)')
31
+ .run(focus_id, pane, session, node_id);
32
+ }
33
+ /** Hot-swap a focus's occupant — single-statement UPDATE. Respects
34
+ * UNIQUE(node_id): if `node_id` already occupies ANOTHER focus this throws
35
+ * (correct — vacate-first is placement.focus()'s job, not this setter's). */
36
+ export async function setFocusOccupant(focus_id, node_id) {
37
+ await (await openDb()).prepare('UPDATE focuses SET node_id = ? WHERE focus_id = ?').run(node_id, focus_id);
38
+ }
39
+ /** Re-point a viewer row's durable pane + its derived session cache after the
40
+ * pane moves. Single-statement UPDATE. */
41
+ export async function setFocusPane(focus_id, pane, session) {
42
+ await (await openDb()).prepare('UPDATE focuses SET pane = ?, session = ? WHERE focus_id = ?')
43
+ .run(pane, session, focus_id);
44
+ }
45
+ /** DELETE a viewport. */
46
+ export async function closeFocusRow(focus_id) {
47
+ await (await openDb()).prepare('DELETE FROM focuses WHERE focus_id = ?').run(focus_id);
48
+ }
49
+ /** DELETE a viewport only while it still sits on `pane`: a row re-pointed to another pane since `pane` was probed is kept. */
50
+ export async function closeFocusRowOnPane(focus_id, pane) {
51
+ return (await (await openDb()).prepare('DELETE FROM focuses WHERE focus_id = ? AND pane = ?').run(focus_id, pane)).changes > 0;
52
+ }
53
+ // Reads.
54
+ /** The focus a node occupies (≤1, UNIQUE node_id), or null. */
55
+ export async function getFocusByNode(node_id) {
56
+ const r = await (await openDb()).prepare('SELECT * FROM focuses WHERE node_id = ?')
57
+ .get(node_id);
58
+ return r ? focusFrom(r) : null;
59
+ }
60
+ /** {@link getFocusByNode} taking the row's lock: call inside `withCanvasWrite`, where a concurrent re-point or close of the row waits for the commit. */
61
+ export async function getFocusByNodeForUpdate(node_id) {
62
+ const r = await (await openDb()).prepare('SELECT * FROM focuses WHERE node_id = ? FOR UPDATE')
63
+ .get(node_id);
64
+ return r ? focusFrom(r) : null;
65
+ }
66
+ /** The focus realized by a given pane (`%id`), or null. */
67
+ export async function getFocusByPane(pane) {
68
+ const r = await (await openDb()).prepare('SELECT * FROM focuses WHERE pane = ?')
69
+ .get(pane);
70
+ return r ? focusFrom(r) : null;
71
+ }
72
+ /** A focus by its stable id, or null. Used by placement to read a row back by id
73
+ * after openFocusRow registers a viewer. */
74
+ export async function getFocusById(focus_id) {
75
+ const r = await (await openDb()).prepare('SELECT * FROM focuses WHERE focus_id = ?')
76
+ .get(focus_id);
77
+ return r ? focusFrom(r) : null;
78
+ }
79
+ /** Every focus row, ordered by id. */
80
+ export async function listFocuses() {
81
+ return (await (await openDb()).prepare('SELECT * FROM focuses ORDER BY focus_id').all()).map(focusFrom);
82
+ }