@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.
- package/dist/api/client.d.ts +9 -2
- package/dist/api/client.js +22 -0
- package/dist/api/contract.d.ts +1 -1
- package/dist/api/contract.js +1 -1
- package/dist/api/dto/bash-jobs.d.ts +17 -0
- package/dist/api/dto/bash-jobs.js +2 -0
- package/dist/api/dto/execution-start.d.ts +14 -0
- package/dist/api/dto/health.d.ts +22 -0
- package/dist/api/dto/imports.d.ts +142 -0
- package/dist/api/dto/imports.js +2 -0
- package/dist/api/error-codes.d.ts +5 -0
- package/dist/api/error-codes.js +2 -0
- package/dist/api/errors.js +2 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.js +1 -0
- package/dist/api/routes.d.ts +3 -0
- package/dist/api/routes.js +3 -0
- package/dist/build-root.d.ts +66 -0
- package/dist/build-root.js +401 -0
- package/dist/clients/attach/ansi-cells.d.ts +44 -0
- package/dist/clients/attach/ansi-cells.js +137 -0
- package/dist/clients/attach/chrome/bash-jobs.d.ts +16 -0
- package/dist/clients/attach/chrome/bash-jobs.js +34 -0
- package/dist/clients/attach/chrome/canvas-panels.d.ts +43 -0
- package/dist/clients/attach/chrome/canvas-panels.js +227 -0
- package/dist/clients/attach/chrome/completion-bell.d.ts +10 -0
- package/dist/clients/attach/chrome/completion-bell.js +89 -0
- package/dist/clients/attach/chrome/cron-wait.d.ts +3 -0
- package/dist/clients/attach/chrome/cron-wait.js +34 -0
- package/dist/clients/attach/chrome/git-info.d.ts +20 -0
- package/dist/clients/attach/chrome/git-info.js +44 -0
- package/dist/clients/attach/chrome/header.d.ts +10 -0
- package/dist/clients/attach/chrome/header.js +30 -0
- package/dist/clients/attach/chrome/inbox-strip.d.ts +36 -0
- package/dist/clients/attach/chrome/inbox-strip.js +219 -0
- package/dist/clients/attach/chrome/key-hint.d.ts +9 -0
- package/dist/clients/attach/chrome/key-hint.js +16 -0
- package/dist/clients/attach/chrome/object-wait.d.ts +4 -0
- package/dist/clients/attach/chrome/object-wait.js +24 -0
- package/dist/clients/attach/chrome/recap.d.ts +7 -0
- package/dist/clients/attach/chrome/recap.js +19 -0
- package/dist/clients/attach/chrome/review-wait.d.ts +6 -0
- package/dist/clients/attach/chrome/review-wait.js +22 -0
- package/dist/clients/attach/chrome/roster.d.ts +39 -0
- package/dist/clients/attach/chrome/roster.js +294 -0
- package/dist/clients/attach/chrome/status-line.d.ts +38 -0
- package/dist/clients/attach/chrome/status-line.js +127 -0
- package/dist/clients/attach/chrome/ticket-panel.d.ts +29 -0
- package/dist/clients/attach/chrome/ticket-panel.js +280 -0
- package/dist/clients/attach/chrome/widgets.d.ts +9 -0
- package/dist/clients/attach/chrome/widgets.js +51 -0
- package/dist/clients/attach/command.d.ts +3 -0
- package/dist/clients/attach/command.js +107 -0
- package/dist/clients/attach/config.d.ts +95 -0
- package/dist/clients/attach/config.js +275 -0
- package/dist/clients/attach/input/capabilities.d.ts +30 -0
- package/dist/clients/attach/input/capabilities.js +112 -0
- package/dist/clients/attach/input/clipboard-image.d.ts +55 -0
- package/dist/clients/attach/input/clipboard-image.js +237 -0
- package/dist/clients/attach/input/completion-frecency.d.ts +45 -0
- package/dist/clients/attach/input/completion-frecency.js +141 -0
- package/dist/clients/attach/input/controller.d.ts +92 -0
- package/dist/clients/attach/input/controller.js +383 -0
- package/dist/clients/attach/input/overlay-owner.d.ts +41 -0
- package/dist/clients/attach/input/overlay-owner.js +199 -0
- package/dist/clients/attach/input/ref-autocomplete.d.ts +77 -0
- package/dist/clients/attach/input/ref-autocomplete.js +176 -0
- package/dist/clients/attach/input/titled-editor.d.ts +225 -0
- package/dist/clients/attach/input/titled-editor.js +859 -0
- package/dist/clients/attach/overlays/auth.d.ts +13 -0
- package/dist/clients/attach/overlays/auth.js +247 -0
- package/dist/clients/attach/overlays/dialogs.d.ts +27 -0
- package/dist/clients/attach/overlays/dialogs.js +102 -0
- package/dist/clients/attach/overlays/file-review.d.ts +10 -0
- package/dist/clients/attach/overlays/file-review.js +146 -0
- package/dist/clients/attach/overlays/graph.d.ts +83 -0
- package/dist/clients/attach/overlays/graph.js +725 -0
- package/dist/clients/attach/overlays/help.d.ts +33 -0
- package/dist/clients/attach/overlays/help.js +214 -0
- package/dist/clients/attach/overlays/mcp.d.ts +32 -0
- package/dist/clients/attach/overlays/mcp.js +302 -0
- package/dist/clients/attach/overlays/pickers.d.ts +56 -0
- package/dist/clients/attach/overlays/pickers.js +163 -0
- package/dist/clients/attach/render/activity-slot.d.ts +4 -0
- package/dist/clients/attach/render/activity-slot.js +13 -0
- package/dist/clients/attach/render/assistant-message.d.ts +13 -0
- package/dist/clients/attach/render/assistant-message.js +56 -0
- package/dist/clients/attach/render/card-presentation.d.ts +36 -0
- package/dist/clients/attach/render/card-presentation.js +222 -0
- package/dist/clients/attach/render/chat-view.d.ts +409 -0
- package/dist/clients/attach/render/chat-view.js +2108 -0
- package/dist/clients/attach/render/condensed-history.d.ts +21 -0
- package/dist/clients/attach/render/condensed-history.js +60 -0
- package/dist/clients/attach/render/context-message.d.ts +22 -0
- package/dist/clients/attach/render/context-message.js +63 -0
- package/dist/clients/attach/render/crtr-output.d.ts +52 -0
- package/dist/clients/attach/render/crtr-output.js +721 -0
- package/dist/clients/attach/render/diagram.d.ts +4 -0
- package/dist/clients/attach/render/diagram.js +111 -0
- package/dist/clients/attach/render/doc-links.d.ts +36 -0
- package/dist/clients/attach/render/doc-links.js +78 -0
- package/dist/clients/attach/render/edit-diff.d.ts +12 -0
- package/dist/clients/attach/render/edit-diff.js +304 -0
- package/dist/clients/attach/render/glyph-codepoints.d.ts +3 -0
- package/dist/clients/attach/render/glyph-codepoints.js +42 -0
- package/dist/clients/attach/render/group-activity.d.ts +84 -0
- package/dist/clients/attach/render/group-activity.js +276 -0
- package/dist/clients/attach/render/group-recap.d.ts +13 -0
- package/dist/clients/attach/render/group-recap.js +146 -0
- package/dist/clients/attach/render/markdown-source.d.ts +21 -0
- package/dist/clients/attach/render/markdown-source.js +279 -0
- package/dist/clients/attach/render/measured-container.d.ts +96 -0
- package/dist/clients/attach/render/measured-container.js +322 -0
- package/dist/clients/attach/render/page-block.d.ts +39 -0
- package/dist/clients/attach/render/page-block.js +187 -0
- package/dist/clients/attach/render/scroll-animation.d.ts +8 -0
- package/dist/clients/attach/render/scroll-animation.js +80 -0
- package/dist/clients/attach/render/tool-calls.d.ts +53 -0
- package/dist/clients/attach/render/tool-calls.js +350 -0
- package/dist/clients/attach/render/transcript-copy.d.ts +9 -0
- package/dist/clients/attach/render/transcript-copy.js +81 -0
- package/dist/clients/attach/render/transcript-search.d.ts +28 -0
- package/dist/clients/attach/render/transcript-search.js +152 -0
- package/dist/clients/attach/render/viewport.d.ts +38 -0
- package/dist/clients/attach/render/viewport.js +184 -0
- package/dist/clients/attach/session/banner.d.ts +13 -0
- package/dist/clients/attach/session/banner.js +33 -0
- package/dist/clients/attach/session/bindings.d.ts +20 -0
- package/dist/clients/attach/session/bindings.js +71 -0
- package/dist/clients/attach/session/chrome-refresh.d.ts +49 -0
- package/dist/clients/attach/session/chrome-refresh.js +154 -0
- package/dist/clients/attach/session/connection.d.ts +54 -0
- package/dist/clients/attach/session/connection.js +204 -0
- package/dist/clients/attach/session/context.d.ts +59 -0
- package/dist/clients/attach/session/context.js +16 -0
- package/dist/clients/attach/session/document-links.d.ts +12 -0
- package/dist/clients/attach/session/document-links.js +43 -0
- package/dist/clients/attach/session/editor-frame.d.ts +47 -0
- package/dist/clients/attach/session/editor-frame.js +142 -0
- package/dist/clients/attach/session/editor-inventory.d.ts +63 -0
- package/dist/clients/attach/session/editor-inventory.js +156 -0
- package/dist/clients/attach/session/file-links.d.ts +22 -0
- package/dist/clients/attach/session/file-links.js +73 -0
- package/dist/clients/attach/session/focus-events.d.ts +4 -0
- package/dist/clients/attach/session/focus-events.js +12 -0
- package/dist/clients/attach/session/frame.d.ts +46 -0
- package/dist/clients/attach/session/frame.js +214 -0
- package/dist/clients/attach/session/frames.d.ts +51 -0
- package/dist/clients/attach/session/frames.js +203 -0
- package/dist/clients/attach/session/identity.d.ts +16 -0
- package/dist/clients/attach/session/identity.js +26 -0
- package/dist/clients/attach/session/input-wiring.d.ts +53 -0
- package/dist/clients/attach/session/input-wiring.js +146 -0
- package/dist/clients/attach/session/invariant.d.ts +9 -0
- package/dist/clients/attach/session/invariant.js +15 -0
- package/dist/clients/attach/session/keys.d.ts +46 -0
- package/dist/clients/attach/session/keys.js +77 -0
- package/dist/clients/attach/session/layout.d.ts +22 -0
- package/dist/clients/attach/session/layout.js +59 -0
- package/dist/clients/attach/session/mouse.d.ts +27 -0
- package/dist/clients/attach/session/mouse.js +78 -0
- package/dist/clients/attach/session/pane-focus.d.ts +8 -0
- package/dist/clients/attach/session/pane-focus.js +42 -0
- package/dist/clients/attach/session/pane-tag.d.ts +44 -0
- package/dist/clients/attach/session/pane-tag.js +112 -0
- package/dist/clients/attach/session/pi-assets.d.ts +1 -0
- package/dist/clients/attach/session/pi-assets.js +24 -0
- package/dist/clients/attach/session/pi-oauth-flows.d.ts +1 -0
- package/dist/clients/attach/session/pi-oauth-flows.js +21 -0
- package/dist/clients/attach/session/profile-files.d.ts +17 -0
- package/dist/clients/attach/session/profile-files.js +207 -0
- package/dist/clients/attach/session/readonly-popup.d.ts +15 -0
- package/dist/clients/attach/session/readonly-popup.js +25 -0
- package/dist/clients/attach/session/reconnect.d.ts +46 -0
- package/dist/clients/attach/session/reconnect.js +195 -0
- package/dist/clients/attach/session/selection.d.ts +28 -0
- package/dist/clients/attach/session/selection.js +108 -0
- package/dist/clients/attach/session/state-sync.d.ts +38 -0
- package/dist/clients/attach/session/state-sync.js +67 -0
- package/dist/clients/attach/session/surface-frame.d.ts +20 -0
- package/dist/clients/attach/session/surface-frame.js +73 -0
- package/dist/clients/attach/session/surface-host.d.ts +65 -0
- package/dist/clients/attach/session/surface-host.js +256 -0
- package/dist/clients/attach/session/teardown.d.ts +30 -0
- package/dist/clients/attach/session/teardown.js +94 -0
- package/dist/clients/attach/session/transcript-search.d.ts +20 -0
- package/dist/clients/attach/session/transcript-search.js +151 -0
- package/dist/clients/attach/session/whip-achievements.d.ts +4 -0
- package/dist/clients/attach/session/whip-achievements.js +145 -0
- package/dist/clients/attach/session/whip.d.ts +20 -0
- package/dist/clients/attach/session/whip.js +362 -0
- package/dist/clients/attach/slash/dispatch.d.ts +120 -0
- package/dist/clients/attach/slash/dispatch.js +748 -0
- package/dist/clients/attach/slash/prompt-preview.d.ts +30 -0
- package/dist/clients/attach/slash/prompt-preview.js +121 -0
- package/dist/clients/attach/viewer.d.ts +8 -0
- package/dist/clients/attach/viewer.js +873 -0
- package/dist/clients/conversation/projection.d.ts +79 -0
- package/dist/clients/conversation/projection.js +324 -0
- package/dist/clients/conversation/submit.d.ts +38 -0
- package/dist/clients/conversation/submit.js +51 -0
- package/dist/clients/dashboard/app.d.ts +7 -0
- package/dist/clients/dashboard/app.js +438 -0
- package/dist/clients/dashboard/model.d.ts +39 -0
- package/dist/clients/dashboard/model.js +77 -0
- package/dist/clients/dashboard/render.d.ts +29 -0
- package/dist/clients/dashboard/render.js +148 -0
- package/dist/clients/inbox/controller.d.ts +174 -0
- package/dist/clients/inbox/controller.js +816 -0
- package/dist/clients/inbox/dto-adapt.d.ts +28 -0
- package/dist/clients/inbox/dto-adapt.js +93 -0
- package/dist/clients/inbox/layout.d.ts +8 -0
- package/dist/clients/inbox/layout.js +9 -0
- package/dist/clients/inbox/page-adapter.d.ts +33 -0
- package/dist/clients/inbox/page-adapter.js +55 -0
- package/dist/clients/inbox/resolve.d.ts +16 -0
- package/dist/clients/inbox/resolve.js +35 -0
- package/dist/clients/inbox/review/anchors.d.ts +41 -0
- package/dist/clients/inbox/review/anchors.js +89 -0
- package/dist/clients/inbox/review/comments-client.d.ts +74 -0
- package/dist/clients/inbox/review/comments-client.js +103 -0
- package/dist/clients/inbox/review/companion-pane.d.ts +47 -0
- package/dist/clients/inbox/review/companion-pane.js +109 -0
- package/dist/clients/inbox/review/document-surface.d.ts +212 -0
- package/dist/clients/inbox/review/document-surface.js +1268 -0
- package/dist/clients/inbox/review/frame.d.ts +57 -0
- package/dist/clients/inbox/review/frame.js +309 -0
- package/dist/clients/inbox/review/keys.d.ts +69 -0
- package/dist/clients/inbox/review/keys.js +133 -0
- package/dist/clients/inbox/review/launch.d.ts +16 -0
- package/dist/clients/inbox/review/launch.js +170 -0
- package/dist/clients/inbox/review/live-source.d.ts +24 -0
- package/dist/clients/inbox/review/live-source.js +160 -0
- package/dist/clients/inbox/review/nvim.d.ts +15 -0
- package/dist/clients/inbox/review/nvim.js +43 -0
- package/dist/clients/inbox/review/remap.d.ts +51 -0
- package/dist/clients/inbox/review/remap.js +157 -0
- package/dist/clients/inbox/review/review-client.d.ts +43 -0
- package/dist/clients/inbox/review/review-client.js +123 -0
- package/dist/clients/inbox/review/roundtrip.d.ts +5 -0
- package/dist/clients/inbox/review/roundtrip.js +41 -0
- package/dist/clients/inbox/review/state.d.ts +153 -0
- package/dist/clients/inbox/review/state.js +315 -0
- package/dist/clients/inbox/review-adapter.d.ts +17 -0
- package/dist/clients/inbox/review-adapter.js +43 -0
- package/dist/clients/inbox/surface.d.ts +25 -0
- package/dist/clients/inbox/surface.js +190 -0
- package/dist/clients/inbox/tui/ansi.d.ts +68 -0
- package/dist/clients/inbox/tui/ansi.js +321 -0
- package/dist/clients/inbox/tui/input.d.ts +5 -0
- package/dist/clients/inbox/tui/input.js +392 -0
- package/dist/clients/inbox/tui/keys.d.ts +28 -0
- package/dist/clients/inbox/tui/keys.js +104 -0
- package/dist/clients/inbox/tui/page-body.d.ts +10 -0
- package/dist/clients/inbox/tui/page-body.js +69 -0
- package/dist/clients/inbox/tui/panel.d.ts +4 -0
- package/dist/clients/inbox/tui/panel.js +84 -0
- package/dist/clients/inbox/tui/render.d.ts +23 -0
- package/dist/clients/inbox/tui/render.js +378 -0
- package/dist/clients/inbox/tui/slots.d.ts +33 -0
- package/dist/clients/inbox/tui/slots.js +134 -0
- package/dist/clients/inbox/tui/types.d.ts +73 -0
- package/dist/clients/inbox/tui/types.js +1 -0
- package/dist/clients/inbox/tui.d.ts +17 -0
- package/dist/clients/inbox/tui.js +92 -0
- package/dist/clients/surfaces/host.d.ts +74 -0
- package/dist/clients/surfaces/host.js +1 -0
- package/dist/commands/api-client.d.ts +113 -0
- package/dist/commands/api-client.js +427 -0
- package/dist/commands/attention.d.ts +2 -0
- package/dist/commands/attention.js +215 -0
- package/dist/commands/canvas/edges.d.ts +2 -0
- package/dist/commands/canvas/edges.js +41 -0
- package/dist/commands/canvas/list.d.ts +4 -0
- package/dist/commands/canvas/list.js +79 -0
- package/dist/commands/canvas/read.d.ts +14 -0
- package/dist/commands/canvas/read.js +95 -0
- package/dist/commands/canvas/search.d.ts +2 -0
- package/dist/commands/canvas/search.js +49 -0
- package/dist/commands/canvas/share.d.ts +2 -0
- package/dist/commands/canvas/share.js +80 -0
- package/dist/commands/canvas/unwatch.d.ts +2 -0
- package/dist/commands/canvas/unwatch.js +42 -0
- package/dist/commands/canvas/watch.d.ts +3 -0
- package/dist/commands/canvas/watch.js +63 -0
- package/dist/commands/canvas-analytics/chart.d.ts +52 -0
- package/dist/commands/canvas-analytics/chart.js +124 -0
- package/dist/commands/canvas-analytics/drilldown.d.ts +34 -0
- package/dist/commands/canvas-analytics/drilldown.js +96 -0
- package/dist/commands/canvas-analytics/format.d.ts +29 -0
- package/dist/commands/canvas-analytics/format.js +106 -0
- package/dist/commands/canvas-analytics/graph-detail.d.ts +2 -0
- package/dist/commands/canvas-analytics/graph-detail.js +307 -0
- package/dist/commands/canvas-analytics/graphs.d.ts +9 -0
- package/dist/commands/canvas-analytics/graphs.js +365 -0
- package/dist/commands/canvas-analytics/memory.d.ts +2 -0
- package/dist/commands/canvas-analytics/memory.js +211 -0
- package/dist/commands/canvas-analytics/overview.d.ts +2 -0
- package/dist/commands/canvas-analytics/overview.js +189 -0
- package/dist/commands/canvas-analytics/shell.d.ts +60 -0
- package/dist/commands/canvas-analytics/shell.js +416 -0
- package/dist/commands/canvas-analytics/time.d.ts +2 -0
- package/dist/commands/canvas-analytics/time.js +228 -0
- package/dist/commands/canvas-analytics/usage.d.ts +2 -0
- package/dist/commands/canvas-analytics/usage.js +305 -0
- package/dist/commands/canvas-analytics/view.d.ts +85 -0
- package/dist/commands/canvas-analytics/view.js +102 -0
- package/dist/commands/canvas-analytics.d.ts +2 -0
- package/dist/commands/canvas-analytics.js +28 -0
- package/dist/commands/canvas-browse.d.ts +2 -0
- package/dist/commands/canvas-browse.js +71 -0
- package/dist/commands/canvas-config.d.ts +2 -0
- package/dist/commands/canvas-config.js +192 -0
- package/dist/commands/canvas-history/grep.d.ts +1 -0
- package/dist/commands/canvas-history/grep.js +85 -0
- package/dist/commands/canvas-history/read.d.ts +1 -0
- package/dist/commands/canvas-history/read.js +48 -0
- package/dist/commands/canvas-history/search.d.ts +1 -0
- package/dist/commands/canvas-history/search.js +99 -0
- package/dist/commands/canvas-history/shared.d.ts +34 -0
- package/dist/commands/canvas-history/shared.js +135 -0
- package/dist/commands/canvas-history/stats.d.ts +1 -0
- package/dist/commands/canvas-history/stats.js +68 -0
- package/dist/commands/canvas-history.d.ts +2 -0
- package/dist/commands/canvas-history.js +29 -0
- package/dist/commands/canvas-issue.d.ts +2 -0
- package/dist/commands/canvas-issue.js +148 -0
- package/dist/commands/canvas-prune.d.ts +2 -0
- package/dist/commands/canvas-prune.js +111 -0
- package/dist/commands/canvas-roster.d.ts +2 -0
- package/dist/commands/canvas-roster.js +69 -0
- package/dist/commands/canvas-snapshot.d.ts +2 -0
- package/dist/commands/canvas-snapshot.js +34 -0
- package/dist/commands/canvas-use.d.ts +1 -0
- package/dist/commands/canvas-use.js +61 -0
- package/dist/commands/canvas.d.ts +3 -0
- package/dist/commands/canvas.js +57 -0
- package/dist/commands/chord.d.ts +2 -0
- package/dist/commands/chord.js +241 -0
- package/dist/commands/cron.d.ts +2 -0
- package/dist/commands/cron.js +541 -0
- package/dist/commands/custom-object/ack.d.ts +2 -0
- package/dist/commands/custom-object/ack.js +30 -0
- package/dist/commands/custom-object/publish.d.ts +2 -0
- package/dist/commands/custom-object/publish.js +39 -0
- package/dist/commands/custom-object/receive.d.ts +2 -0
- package/dist/commands/custom-object/receive.js +69 -0
- package/dist/commands/custom-object/register.d.ts +2 -0
- package/dist/commands/custom-object/register.js +69 -0
- package/dist/commands/custom-object/shared.d.ts +5 -0
- package/dist/commands/custom-object/shared.js +14 -0
- package/dist/commands/custom-object/unregister.d.ts +2 -0
- package/dist/commands/custom-object/unregister.js +26 -0
- package/dist/commands/custom-object.d.ts +2 -0
- package/dist/commands/custom-object.js +21 -0
- package/dist/commands/dashboard.d.ts +2 -0
- package/dist/commands/dashboard.js +86 -0
- package/dist/commands/doc/delete.d.ts +2 -0
- package/dist/commands/doc/delete.js +30 -0
- package/dist/commands/doc/edit.d.ts +2 -0
- package/dist/commands/doc/edit.js +82 -0
- package/dist/commands/doc/history.d.ts +2 -0
- package/dist/commands/doc/history.js +38 -0
- package/dist/commands/doc/lint.d.ts +2 -0
- package/dist/commands/doc/lint.js +36 -0
- package/dist/commands/doc/list.d.ts +2 -0
- package/dist/commands/doc/list.js +19 -0
- package/dist/commands/doc/move.d.ts +2 -0
- package/dist/commands/doc/move.js +37 -0
- package/dist/commands/doc/read.d.ts +2 -0
- package/dist/commands/doc/read.js +19 -0
- package/dist/commands/doc/replace-blocks.d.ts +6 -0
- package/dist/commands/doc/replace-blocks.js +40 -0
- package/dist/commands/doc/shared.d.ts +25 -0
- package/dist/commands/doc/shared.js +160 -0
- package/dist/commands/doc/write.d.ts +2 -0
- package/dist/commands/doc/write.js +52 -0
- package/dist/commands/doc.d.ts +2 -0
- package/dist/commands/doc.js +27 -0
- package/dist/commands/human/components.d.ts +4 -0
- package/dist/commands/human/components.js +78 -0
- package/dist/commands/human/feedback.d.ts +2 -0
- package/dist/commands/human/feedback.js +112 -0
- package/dist/commands/human/prompts.d.ts +21 -0
- package/dist/commands/human/prompts.js +326 -0
- package/dist/commands/human/queue.d.ts +3 -0
- package/dist/commands/human/queue.js +191 -0
- package/dist/commands/human/request.d.ts +2 -0
- package/dist/commands/human/request.js +266 -0
- package/dist/commands/human/review.d.ts +2 -0
- package/dist/commands/human/review.js +288 -0
- package/dist/commands/human/shared.d.ts +16 -0
- package/dist/commands/human/shared.js +67 -0
- package/dist/commands/human.d.ts +2 -0
- package/dist/commands/human.js +63 -0
- package/dist/commands/node/bash.d.ts +1 -0
- package/dist/commands/node/bash.js +390 -0
- package/dist/commands/node/create.d.ts +6 -0
- package/dist/commands/node/create.js +363 -0
- package/dist/commands/node/inspect.d.ts +2 -0
- package/dist/commands/node/inspect.js +288 -0
- package/dist/commands/node/lifecycle.d.ts +4 -0
- package/dist/commands/node/lifecycle.js +577 -0
- package/dist/commands/node/message.d.ts +1 -0
- package/dist/commands/node/message.js +170 -0
- package/dist/commands/node/outcome.d.ts +2 -0
- package/dist/commands/node/outcome.js +133 -0
- package/dist/commands/node/pyramid.d.ts +2 -0
- package/dist/commands/node/pyramid.js +79 -0
- package/dist/commands/node/subscription.d.ts +1 -0
- package/dist/commands/node/subscription.js +78 -0
- package/dist/commands/node/wait.d.ts +1 -0
- package/dist/commands/node/wait.js +165 -0
- package/dist/commands/node-context.d.ts +2 -0
- package/dist/commands/node-context.js +145 -0
- package/dist/commands/node-lifecycle-revive.d.ts +12 -0
- package/dist/commands/node-lifecycle-revive.js +217 -0
- package/dist/commands/node-snapshot.d.ts +2 -0
- package/dist/commands/node-snapshot.js +37 -0
- package/dist/commands/node-transcript.d.ts +2 -0
- package/dist/commands/node-transcript.js +59 -0
- package/dist/commands/node-worktree.d.ts +2 -0
- package/dist/commands/node-worktree.js +138 -0
- package/dist/commands/node.d.ts +2 -0
- package/dist/commands/node.js +29 -0
- package/dist/commands/person-settings.d.ts +1 -0
- package/dist/commands/person-settings.js +23 -0
- package/dist/commands/pkg/browse/actions.d.ts +7 -0
- package/dist/commands/pkg/browse/actions.js +198 -0
- package/dist/commands/pkg/browse/catalog.d.ts +9 -0
- package/dist/commands/pkg/browse/catalog.js +461 -0
- package/dist/commands/pkg/browse/command-view.d.ts +3 -0
- package/dist/commands/pkg/browse/command-view.js +217 -0
- package/dist/commands/pkg/browse/detail-panel.d.ts +66 -0
- package/dist/commands/pkg/browse/detail-panel.js +402 -0
- package/dist/commands/pkg/browse/doc-view.d.ts +3 -0
- package/dist/commands/pkg/browse/doc-view.js +84 -0
- package/dist/commands/pkg/browse/list-panel.d.ts +28 -0
- package/dist/commands/pkg/browse/list-panel.js +168 -0
- package/dist/commands/pkg/browse/model.d.ts +223 -0
- package/dist/commands/pkg/browse/model.js +36 -0
- package/dist/commands/pkg/browse/shell.d.ts +93 -0
- package/dist/commands/pkg/browse/shell.js +640 -0
- package/dist/commands/pkg/browse.d.ts +2 -0
- package/dist/commands/pkg/browse.js +27 -0
- package/dist/commands/pkg/market-inspect.d.ts +2 -0
- package/dist/commands/pkg/market-inspect.js +141 -0
- package/dist/commands/pkg/market-manage.d.ts +16 -0
- package/dist/commands/pkg/market-manage.js +327 -0
- package/dist/commands/pkg/market.d.ts +1 -0
- package/dist/commands/pkg/market.js +14 -0
- package/dist/commands/pkg/plugin-env.d.ts +3 -0
- package/dist/commands/pkg/plugin-env.js +65 -0
- package/dist/commands/pkg/plugin-inspect.d.ts +2 -0
- package/dist/commands/pkg/plugin-inspect.js +168 -0
- package/dist/commands/pkg/plugin-manage.d.ts +98 -0
- package/dist/commands/pkg/plugin-manage.js +1024 -0
- package/dist/commands/pkg/plugin.d.ts +1 -0
- package/dist/commands/pkg/plugin.js +14 -0
- package/dist/commands/pkg/shared.d.ts +13 -0
- package/dist/commands/pkg/shared.js +62 -0
- package/dist/commands/pkg.d.ts +2 -0
- package/dist/commands/pkg.js +21 -0
- package/dist/commands/profile/daemon-profiles.d.ts +13 -0
- package/dist/commands/profile/daemon-profiles.js +38 -0
- package/dist/commands/profile/default.d.ts +2 -0
- package/dist/commands/profile/default.js +183 -0
- package/dist/commands/profile/delete.d.ts +1 -0
- package/dist/commands/profile/delete.js +66 -0
- package/dist/commands/profile/env.d.ts +8 -0
- package/dist/commands/profile/env.js +188 -0
- package/dist/commands/profile/kind.d.ts +1 -0
- package/dist/commands/profile/kind.js +27 -0
- package/dist/commands/profile/list.d.ts +1 -0
- package/dist/commands/profile/list.js +45 -0
- package/dist/commands/profile/meta.d.ts +4 -0
- package/dist/commands/profile/meta.js +65 -0
- package/dist/commands/profile/new.d.ts +1 -0
- package/dist/commands/profile/new.js +95 -0
- package/dist/commands/profile/pause.d.ts +2 -0
- package/dist/commands/profile/pause.js +59 -0
- package/dist/commands/profile/project.d.ts +2 -0
- package/dist/commands/profile/project.js +134 -0
- package/dist/commands/profile/rename.d.ts +1 -0
- package/dist/commands/profile/rename.js +41 -0
- package/dist/commands/profile/show.d.ts +1 -0
- package/dist/commands/profile/show.js +55 -0
- package/dist/commands/profile.d.ts +2 -0
- package/dist/commands/profile.js +35 -0
- package/dist/commands/push.d.ts +2 -0
- package/dist/commands/push.js +263 -0
- package/dist/commands/revive.d.ts +2 -0
- package/dist/commands/revive.js +183 -0
- package/dist/commands/surface/node/cycle.d.ts +1 -0
- package/dist/commands/surface/node/cycle.js +83 -0
- package/dist/commands/surface/node/focus.d.ts +1 -0
- package/dist/commands/surface/node/focus.js +60 -0
- package/dist/commands/surface/node/id.d.ts +1 -0
- package/dist/commands/surface/node/id.js +38 -0
- package/dist/commands/surface/node/pin.d.ts +1 -0
- package/dist/commands/surface/node/pin.js +42 -0
- package/dist/commands/surface/node/placement.d.ts +30 -0
- package/dist/commands/surface/node/placement.js +49 -0
- package/dist/commands/surface-dashboard.d.ts +2 -0
- package/dist/commands/surface-dashboard.js +138 -0
- package/dist/commands/surface-edit.d.ts +2 -0
- package/dist/commands/surface-edit.js +157 -0
- package/dist/commands/surface-inbox.d.ts +2 -0
- package/dist/commands/surface-inbox.js +98 -0
- package/dist/commands/surface-inspect.d.ts +2 -0
- package/dist/commands/surface-inspect.js +41 -0
- package/dist/commands/surface-node.d.ts +2 -0
- package/dist/commands/surface-node.js +19 -0
- package/dist/commands/surface-reload.d.ts +7 -0
- package/dist/commands/surface-reload.js +129 -0
- package/dist/commands/surface-tmux-spread.d.ts +2 -0
- package/dist/commands/surface-tmux-spread.js +214 -0
- package/dist/commands/surface.d.ts +2 -0
- package/dist/commands/surface.js +29 -0
- package/dist/commands/sys/branch.d.ts +2 -0
- package/dist/commands/sys/branch.js +19 -0
- package/dist/commands/sys/config.d.ts +1 -0
- package/dist/commands/sys/config.js +353 -0
- package/dist/commands/sys/connect.d.ts +1 -0
- package/dist/commands/sys/connect.js +185 -0
- package/dist/commands/sys/context/admin/actions.d.ts +23 -0
- package/dist/commands/sys/context/admin/actions.js +89 -0
- package/dist/commands/sys/context/admin/detail-panel.d.ts +73 -0
- package/dist/commands/sys/context/admin/detail-panel.js +233 -0
- package/dist/commands/sys/context/admin/docs-panel.d.ts +63 -0
- package/dist/commands/sys/context/admin/docs-panel.js +185 -0
- package/dist/commands/sys/context/admin/list-view.d.ts +62 -0
- package/dist/commands/sys/context/admin/list-view.js +170 -0
- package/dist/commands/sys/context/admin/model.d.ts +123 -0
- package/dist/commands/sys/context/admin/model.js +179 -0
- package/dist/commands/sys/context/admin/rail-panel.d.ts +84 -0
- package/dist/commands/sys/context/admin/rail-panel.js +229 -0
- package/dist/commands/sys/context/admin/read-view.d.ts +27 -0
- package/dist/commands/sys/context/admin/read-view.js +172 -0
- package/dist/commands/sys/context/admin/shell.d.ts +125 -0
- package/dist/commands/sys/context/admin/shell.js +870 -0
- package/dist/commands/sys/context/admin.d.ts +1 -0
- package/dist/commands/sys/context/admin.js +148 -0
- package/dist/commands/sys/context/doc.d.ts +1 -0
- package/dist/commands/sys/context/doc.js +126 -0
- package/dist/commands/sys/context/expose.d.ts +1 -0
- package/dist/commands/sys/context/expose.js +66 -0
- package/dist/commands/sys/context/prompt-review.d.ts +1 -0
- package/dist/commands/sys/context/prompt-review.js +244 -0
- package/dist/commands/sys/context/resolve.d.ts +115 -0
- package/dist/commands/sys/context/resolve.js +326 -0
- package/dist/commands/sys/context/sysprompt.d.ts +1 -0
- package/dist/commands/sys/context/sysprompt.js +95 -0
- package/dist/commands/sys/context.d.ts +2 -0
- package/dist/commands/sys/context.js +21 -0
- package/dist/commands/sys/daemon.d.ts +4 -0
- package/dist/commands/sys/daemon.js +334 -0
- package/dist/commands/sys/db.d.ts +1 -0
- package/dist/commands/sys/db.js +69 -0
- package/dist/commands/sys/desktop.d.ts +5 -0
- package/dist/commands/sys/desktop.js +201 -0
- package/dist/commands/sys/doctor.d.ts +36 -0
- package/dist/commands/sys/doctor.js +633 -0
- package/dist/commands/sys/env.d.ts +1 -0
- package/dist/commands/sys/env.js +39 -0
- package/dist/commands/sys/feedback.d.ts +1 -0
- package/dist/commands/sys/feedback.js +228 -0
- package/dist/commands/sys/import/move.d.ts +55 -0
- package/dist/commands/sys/import/move.js +391 -0
- package/dist/commands/sys/import/resume.d.ts +1 -0
- package/dist/commands/sys/import/resume.js +23 -0
- package/dist/commands/sys/import/start.d.ts +4 -0
- package/dist/commands/sys/import/start.js +92 -0
- package/dist/commands/sys/join.d.ts +3 -0
- package/dist/commands/sys/join.js +85 -0
- package/dist/commands/sys/limits.d.ts +1 -0
- package/dist/commands/sys/limits.js +133 -0
- package/dist/commands/sys/logs.d.ts +1 -0
- package/dist/commands/sys/logs.js +129 -0
- package/dist/commands/sys/machine/rotate.d.ts +1 -0
- package/dist/commands/sys/machine/rotate.js +49 -0
- package/dist/commands/sys/migrate.d.ts +1 -0
- package/dist/commands/sys/migrate.js +79 -0
- package/dist/commands/sys/panels/broker-limits-panel.d.ts +17 -0
- package/dist/commands/sys/panels/broker-limits-panel.js +110 -0
- package/dist/commands/sys/panels/dependencies-panel.d.ts +14 -0
- package/dist/commands/sys/panels/dependencies-panel.js +80 -0
- package/dist/commands/sys/panels/keybindings-panel.d.ts +56 -0
- package/dist/commands/sys/panels/keybindings-panel.js +703 -0
- package/dist/commands/sys/panels/models-panel.d.ts +106 -0
- package/dist/commands/sys/panels/models-panel.js +1160 -0
- package/dist/commands/sys/panels/plugin-env-panel.d.ts +19 -0
- package/dist/commands/sys/panels/plugin-env-panel.js +70 -0
- package/dist/commands/sys/panels/plugins-panel.d.ts +16 -0
- package/dist/commands/sys/panels/plugins-panel.js +87 -0
- package/dist/commands/sys/panels/prefs-panel.d.ts +22 -0
- package/dist/commands/sys/panels/prefs-panel.js +97 -0
- package/dist/commands/sys/panels/profiles-panel.d.ts +70 -0
- package/dist/commands/sys/panels/profiles-panel.js +655 -0
- package/dist/commands/sys/panels/provider-panel.d.ts +74 -0
- package/dist/commands/sys/panels/provider-panel.js +534 -0
- package/dist/commands/sys/panels/terminal-panel.d.ts +19 -0
- package/dist/commands/sys/panels/terminal-panel.js +67 -0
- package/dist/commands/sys/provider-login.d.ts +8 -0
- package/dist/commands/sys/provider-login.js +99 -0
- package/dist/commands/sys/retry-delivery.d.ts +1 -0
- package/dist/commands/sys/retry-delivery.js +33 -0
- package/dist/commands/sys/settings-shell.d.ts +54 -0
- package/dist/commands/sys/settings-shell.js +400 -0
- package/dist/commands/sys/settings.d.ts +2 -0
- package/dist/commands/sys/settings.js +46 -0
- package/dist/commands/sys/setup-core.d.ts +121 -0
- package/dist/commands/sys/setup-core.js +890 -0
- package/dist/commands/sys/setup-settings-runner.d.ts +13 -0
- package/dist/commands/sys/setup-settings-runner.js +15 -0
- package/dist/commands/sys/setup-wizard.d.ts +52 -0
- package/dist/commands/sys/setup-wizard.js +351 -0
- package/dist/commands/sys/setup.d.ts +6 -0
- package/dist/commands/sys/setup.js +41 -0
- package/dist/commands/sys/shared.d.ts +51 -0
- package/dist/commands/sys/shared.js +81 -0
- package/dist/commands/sys/signin.d.ts +7 -0
- package/dist/commands/sys/signin.js +149 -0
- package/dist/commands/sys/spaces.d.ts +1 -0
- package/dist/commands/sys/spaces.js +22 -0
- package/dist/commands/sys/spend.d.ts +1 -0
- package/dist/commands/sys/spend.js +144 -0
- package/dist/commands/sys/support/prepare.d.ts +13 -0
- package/dist/commands/sys/support/prepare.js +239 -0
- package/dist/commands/sys/support/submit.d.ts +19 -0
- package/dist/commands/sys/support/submit.js +524 -0
- package/dist/commands/sys/support.d.ts +2 -0
- package/dist/commands/sys/support.js +18 -0
- package/dist/commands/sys/sync-deps.d.ts +16 -0
- package/dist/commands/sys/sync-deps.js +445 -0
- package/dist/commands/sys/sync-project-guidance.d.ts +1 -0
- package/dist/commands/sys/sync-project-guidance.js +319 -0
- package/dist/commands/sys/sync-shared.d.ts +44 -0
- package/dist/commands/sys/sync-shared.js +139 -0
- package/dist/commands/sys/sync-skills.d.ts +1 -0
- package/dist/commands/sys/sync-skills.js +297 -0
- package/dist/commands/sys/sync.d.ts +2 -0
- package/dist/commands/sys/sync.js +17 -0
- package/dist/commands/sys/terminal-option.d.ts +112 -0
- package/dist/commands/sys/terminal-option.js +542 -0
- package/dist/commands/sys/tutorial/branch.d.ts +1 -0
- package/dist/commands/sys/tutorial/branch.js +15 -0
- package/dist/commands/sys/tutorial/lessons.d.ts +5 -0
- package/dist/commands/sys/tutorial/lessons.js +107 -0
- package/dist/commands/sys/tutorial/scenario.d.ts +1 -0
- package/dist/commands/sys/tutorial/scenario.js +431 -0
- package/dist/commands/sys/tutorial/tracks.d.ts +1 -0
- package/dist/commands/sys/tutorial/tracks.js +96 -0
- package/dist/commands/sys/update.d.ts +2 -0
- package/dist/commands/sys/update.js +157 -0
- package/dist/commands/sys/worktrees.d.ts +2 -0
- package/dist/commands/sys/worktrees.js +53 -0
- package/dist/commands/sys.d.ts +2 -0
- package/dist/commands/sys.js +31 -0
- package/dist/core/activity-signal.d.ts +7 -0
- package/dist/core/activity-signal.js +38 -0
- package/dist/core/async-array.d.ts +7 -0
- package/dist/core/async-array.js +48 -0
- package/dist/core/auth-file.d.ts +35 -0
- package/dist/core/auth-file.js +161 -0
- package/dist/core/auth-interaction.d.ts +19 -0
- package/dist/core/auth-interaction.js +94 -0
- package/dist/core/bash-guard.d.ts +6 -0
- package/dist/core/bash-guard.js +527 -0
- package/dist/core/bash-job-supervisor.d.ts +5 -0
- package/dist/core/bash-job-supervisor.js +144 -0
- package/dist/core/bash-jobs.d.ts +168 -0
- package/dist/core/bash-jobs.js +455 -0
- package/dist/core/blobs/directory.d.ts +11 -0
- package/dist/core/blobs/directory.js +216 -0
- package/dist/core/blobs/fault.d.ts +3 -0
- package/dist/core/blobs/fault.js +6 -0
- package/dist/core/blobs/index.d.ts +21 -0
- package/dist/core/blobs/index.js +30 -0
- package/dist/core/blobs/r2.d.ts +13 -0
- package/dist/core/blobs/r2.js +104 -0
- package/dist/core/broker-client/client.d.ts +89 -0
- package/dist/core/broker-client/client.js +184 -0
- package/dist/core/broker-client/index.d.ts +2 -0
- package/dist/core/broker-client/index.js +14 -0
- package/dist/core/broker-client/transport-relay.d.ts +47 -0
- package/dist/core/broker-client/transport-relay.js +165 -0
- package/dist/core/broker-client/transport-socket.d.ts +35 -0
- package/dist/core/broker-client/transport-socket.js +187 -0
- package/dist/core/broker-client/transport.d.ts +46 -0
- package/dist/core/broker-client/transport.js +40 -0
- package/dist/core/canvas/app-run.d.ts +3 -0
- package/dist/core/canvas/app-run.js +4 -0
- package/dist/core/canvas/attention.d.ts +18 -0
- package/dist/core/canvas/attention.js +47 -0
- package/dist/core/canvas/browse/app.d.ts +29 -0
- package/dist/core/canvas/browse/app.js +1050 -0
- package/dist/core/canvas/browse/model.d.ts +176 -0
- package/dist/core/canvas/browse/model.js +477 -0
- package/dist/core/canvas/browse/pins.d.ts +4 -0
- package/dist/core/canvas/browse/pins.js +29 -0
- package/dist/core/canvas/browse/render.d.ts +103 -0
- package/dist/core/canvas/browse/render.js +1058 -0
- package/dist/core/canvas/canvas.d.ts +409 -0
- package/dist/core/canvas/canvas.js +1206 -0
- package/dist/core/canvas/crons.d.ts +322 -0
- package/dist/core/canvas/crons.js +541 -0
- package/dist/core/canvas/daemon-actions.d.ts +42 -0
- package/dist/core/canvas/daemon-actions.js +98 -0
- package/dist/core/canvas/db.d.ts +60 -0
- package/dist/core/canvas/db.js +426 -0
- package/dist/core/canvas/deliveries.d.ts +125 -0
- package/dist/core/canvas/deliveries.js +393 -0
- package/dist/core/canvas/delivery-contract.d.ts +37 -0
- package/dist/core/canvas/delivery-contract.js +30 -0
- package/dist/core/canvas/executions.d.ts +125 -0
- package/dist/core/canvas/executions.js +279 -0
- package/dist/core/canvas/extensions.d.ts +9 -0
- package/dist/core/canvas/extensions.js +90 -0
- package/dist/core/canvas/focuses.d.ts +26 -0
- package/dist/core/canvas/focuses.js +82 -0
- package/dist/core/canvas/history.d.ts +104 -0
- package/dist/core/canvas/history.js +480 -0
- package/dist/core/canvas/index.d.ts +14 -0
- package/dist/core/canvas/index.js +16 -0
- package/dist/core/canvas/install-id.d.ts +9 -0
- package/dist/core/canvas/install-id.js +64 -0
- package/dist/core/canvas/labels.d.ts +30 -0
- package/dist/core/canvas/labels.js +43 -0
- package/dist/core/canvas/legacy-person.d.ts +4 -0
- package/dist/core/canvas/legacy-person.js +4 -0
- package/dist/core/canvas/memory-reads.d.ts +24 -0
- package/dist/core/canvas/memory-reads.js +36 -0
- package/dist/core/canvas/meta-file.d.ts +20 -0
- package/dist/core/canvas/meta-file.js +89 -0
- package/dist/core/canvas/nav-render.d.ts +136 -0
- package/dist/core/canvas/nav-render.js +224 -0
- package/dist/core/canvas/node-agent-paths.d.ts +8 -0
- package/dist/core/canvas/node-agent-paths.js +30 -0
- package/dist/core/canvas/node-order.d.ts +24 -0
- package/dist/core/canvas/node-order.js +37 -0
- package/dist/core/canvas/node-recap.d.ts +23 -0
- package/dist/core/canvas/node-recap.js +62 -0
- package/dist/core/canvas/node-tokens.d.ts +19 -0
- package/dist/core/canvas/node-tokens.js +53 -0
- package/dist/core/canvas/outcome-actions.d.ts +23 -0
- package/dist/core/canvas/outcome-actions.js +71 -0
- package/dist/core/canvas/person.d.ts +32 -0
- package/dist/core/canvas/person.js +244 -0
- package/dist/core/canvas/pid.d.ts +6 -0
- package/dist/core/canvas/pid.js +20 -10
- package/dist/core/canvas/reconciler-leases.d.ts +12 -0
- package/dist/core/canvas/reconciler-leases.js +40 -0
- package/dist/core/canvas/recovery.d.ts +127 -0
- package/dist/core/canvas/recovery.js +713 -0
- package/dist/core/canvas/remote-canvas-source.d.ts +71 -0
- package/dist/core/canvas/remote-canvas-source.js +290 -0
- package/dist/core/canvas/remote-transport.d.ts +7 -0
- package/dist/core/canvas/remote-transport.js +57 -0
- package/dist/core/canvas/render-source.d.ts +193 -0
- package/dist/core/canvas/render-source.js +518 -0
- package/dist/core/canvas/schema-chain.d.ts +33 -0
- package/dist/core/canvas/schema-chain.js +110 -0
- package/dist/core/canvas/schema-version.d.ts +30 -0
- package/dist/core/canvas/schema-version.js +58 -0
- package/dist/core/canvas/sessions.d.ts +54 -0
- package/dist/core/canvas/sessions.js +128 -0
- package/dist/core/canvas/source.d.ts +52 -0
- package/dist/core/canvas/source.js +57 -0
- package/dist/core/canvas/status-glyph.d.ts +52 -0
- package/dist/core/canvas/status-glyph.js +132 -0
- package/dist/core/canvas/structured-requests.d.ts +69 -0
- package/dist/core/canvas/structured-requests.js +176 -0
- package/dist/core/canvas/telemetry.d.ts +14 -0
- package/dist/core/canvas/telemetry.js +35 -0
- package/dist/core/canvas/tree.d.ts +33 -0
- package/dist/core/canvas/tree.js +128 -0
- package/dist/core/canvas/types.d.ts +461 -0
- package/dist/core/canvas/types.js +6 -0
- package/dist/core/canvas/waits.d.ts +39 -0
- package/dist/core/canvas/waits.js +104 -0
- package/dist/core/canvas/worktrees.d.ts +41 -0
- package/dist/core/canvas/worktrees.js +97 -0
- package/dist/core/clipboard-text.d.ts +11 -0
- package/dist/core/clipboard-text.js +57 -0
- package/dist/core/command-hooks/artifact.d.ts +16 -0
- package/dist/core/command-hooks/artifact.js +145 -0
- package/dist/core/command-hooks/catalog.d.ts +14 -0
- package/dist/core/command-hooks/catalog.js +38 -0
- package/dist/core/command-hooks/compose.d.ts +15 -0
- package/dist/core/command-hooks/compose.js +101 -0
- package/dist/core/command-hooks/discovery.d.ts +133 -0
- package/dist/core/command-hooks/discovery.js +246 -0
- package/dist/core/command-hooks/help.d.ts +5 -0
- package/dist/core/command-hooks/help.js +18 -0
- package/dist/core/command-hooks/lifecycle-catalog.d.ts +21 -0
- package/dist/core/command-hooks/lifecycle-catalog.js +9 -0
- package/dist/core/command-hooks/lifecycle-create.d.ts +4 -0
- package/dist/core/command-hooks/lifecycle-create.js +51 -0
- package/dist/core/command-hooks/report.d.ts +32 -0
- package/dist/core/command-hooks/report.js +28 -0
- package/dist/core/command-hooks/schema.d.ts +42 -0
- package/dist/core/command-hooks/schema.js +157 -0
- package/dist/core/command-hooks/transport/exec-invoke.d.ts +24 -0
- package/dist/core/command-hooks/transport/exec-invoke.js +315 -0
- package/dist/core/command-hooks/transport/exec-lifecycle.d.ts +23 -0
- package/dist/core/command-hooks/transport/exec-lifecycle.js +248 -0
- package/dist/core/command-hooks/transport/plan.d.ts +3 -0
- package/dist/core/command-hooks/transport/plan.js +30 -0
- package/dist/core/command-manifests/registry.d.ts +68 -0
- package/dist/core/command-manifests/registry.js +118 -0
- package/dist/core/command-plugins/caller-header.d.ts +10 -0
- package/dist/core/command-plugins/caller-header.js +15 -0
- package/dist/core/command-plugins/compose.d.ts +11 -0
- package/dist/core/command-plugins/compose.js +241 -0
- package/dist/core/command-plugins/discovery.d.ts +49 -0
- package/dist/core/command-plugins/discovery.js +240 -0
- package/dist/core/command-plugins/extensions.d.ts +20 -0
- package/dist/core/command-plugins/extensions.js +166 -0
- package/dist/core/command-plugins/help-addenda.d.ts +25 -0
- package/dist/core/command-plugins/help-addenda.js +55 -0
- package/dist/core/command-plugins/presence.d.ts +4 -0
- package/dist/core/command-plugins/presence.js +36 -0
- package/dist/core/command-plugins/transport/exec-invoke.d.ts +42 -0
- package/dist/core/command-plugins/transport/exec-invoke.js +138 -0
- package/dist/core/command-plugins/transport/http-fetch.d.ts +41 -0
- package/dist/core/command-plugins/transport/http-fetch.js +68 -0
- package/dist/core/command-plugins/transport/http-invoke.d.ts +22 -0
- package/dist/core/command-plugins/transport/http-invoke.js +333 -0
- package/dist/core/command-plugins/transport/http-plan.d.ts +75 -0
- package/dist/core/command-plugins/transport/http-plan.js +349 -0
- package/dist/core/command-plugins/transport/sign.d.ts +55 -0
- package/dist/core/command-plugins/transport/sign.js +115 -0
- package/dist/core/command.d.ts +238 -0
- package/dist/core/command.js +848 -0
- package/dist/core/conversation-store/row-store.d.ts +14 -0
- package/dist/core/conversation-store/row-store.js +337 -0
- package/dist/core/directory/issuer.d.ts +8 -0
- package/dist/core/directory/issuer.js +15 -0
- package/dist/core/directory/join.d.ts +57 -0
- package/dist/core/directory/join.js +218 -0
- package/dist/core/directory/person-credential.d.ts +61 -0
- package/dist/core/directory/person-credential.js +220 -0
- package/dist/core/directory/reach.d.ts +3 -0
- package/dist/core/directory/reach.js +19 -0
- package/dist/core/document-lines.d.ts +4 -0
- package/dist/core/document-lines.js +6 -0
- package/dist/core/editor-resolver.d.ts +28 -0
- package/dist/core/editor-resolver.js +77 -0
- package/dist/core/environments.d.ts +21 -0
- package/dist/core/environments.js +56 -0
- package/dist/core/events/outbound.d.ts +21 -0
- package/dist/core/events/outbound.js +92 -0
- package/dist/core/events/read.d.ts +40 -0
- package/dist/core/events/read.js +625 -0
- package/dist/core/fault-classifier.d.ts +36 -0
- package/dist/core/fault-classifier.js +101 -0
- package/dist/core/feed/feed.d.ts +63 -0
- package/dist/core/feed/feed.js +190 -0
- package/dist/core/feed/inbox.d.ts +34 -0
- package/dist/core/feed/inbox.js +93 -0
- package/dist/core/feed/messages.d.ts +88 -0
- package/dist/core/feed/messages.js +206 -0
- package/dist/core/feed/reports.d.ts +10 -0
- package/dist/core/feed/reports.js +58 -0
- package/dist/core/frontmatter.d.ts +8 -0
- package/dist/core/frontmatter.js +35 -0
- package/dist/core/grants/cover.d.ts +14 -0
- package/dist/core/grants/cover.js +66 -0
- package/dist/core/grants/local.d.ts +4 -0
- package/dist/core/grants/local.js +26 -0
- package/dist/core/grants/mirror.d.ts +155 -0
- package/dist/core/grants/mirror.js +379 -0
- package/dist/core/grants/on-sync.d.ts +26 -0
- package/dist/core/grants/on-sync.js +161 -0
- package/dist/core/grants/sandboxes.d.ts +7 -0
- package/dist/core/grants/sandboxes.js +24 -0
- package/dist/core/grants/sync.d.ts +46 -0
- package/dist/core/grants/sync.js +195 -0
- package/dist/core/grants/terminal.d.ts +10 -0
- package/dist/core/grants/terminal.js +25 -0
- package/dist/core/graph/access.d.ts +13 -0
- package/dist/core/graph/access.js +37 -0
- package/dist/core/graph/bodies.d.ts +22 -0
- package/dist/core/graph/bodies.js +68 -0
- package/dist/core/graph/custom.d.ts +98 -0
- package/dist/core/graph/custom.js +298 -0
- package/dist/core/graph/deletion.d.ts +16 -0
- package/dist/core/graph/deletion.js +104 -0
- package/dist/core/graph/documents.d.ts +181 -0
- package/dist/core/graph/documents.js +653 -0
- package/dist/core/graph/edges.d.ts +41 -0
- package/dist/core/graph/edges.js +83 -0
- package/dist/core/graph/events.d.ts +49 -0
- package/dist/core/graph/events.js +315 -0
- package/dist/core/graph/exposures.d.ts +53 -0
- package/dist/core/graph/exposures.js +152 -0
- package/dist/core/graph/jobs.d.ts +107 -0
- package/dist/core/graph/jobs.js +184 -0
- package/dist/core/graph/kinds/action.d.ts +3 -0
- package/dist/core/graph/kinds/action.js +20 -0
- package/dist/core/graph/kinds/custom.d.ts +8 -0
- package/dist/core/graph/kinds/custom.js +25 -0
- package/dist/core/graph/kinds/document.d.ts +20 -0
- package/dist/core/graph/kinds/document.js +133 -0
- package/dist/core/graph/kinds/dto.d.ts +5 -0
- package/dist/core/graph/kinds/dto.js +11 -0
- package/dist/core/graph/kinds/environment.d.ts +2 -0
- package/dist/core/graph/kinds/environment.js +21 -0
- package/dist/core/graph/kinds/job.d.ts +2 -0
- package/dist/core/graph/kinds/job.js +24 -0
- package/dist/core/graph/kinds/kind.d.ts +67 -0
- package/dist/core/graph/kinds/kind.js +15 -0
- package/dist/core/graph/kinds/live-read.d.ts +5 -0
- package/dist/core/graph/kinds/live-read.js +11 -0
- package/dist/core/graph/kinds/node.d.ts +12 -0
- package/dist/core/graph/kinds/node.js +87 -0
- package/dist/core/graph/kinds/owner.d.ts +2 -0
- package/dist/core/graph/kinds/owner.js +26 -0
- package/dist/core/graph/kinds/registry.d.ts +10 -0
- package/dist/core/graph/kinds/registry.js +58 -0
- package/dist/core/graph/kinds/render.d.ts +9 -0
- package/dist/core/graph/kinds/render.js +17 -0
- package/dist/core/graph/names.d.ts +57 -0
- package/dist/core/graph/names.js +183 -0
- package/dist/core/graph/objects.d.ts +88 -0
- package/dist/core/graph/objects.js +273 -0
- package/dist/core/graph/package-docs.d.ts +41 -0
- package/dist/core/graph/package-docs.js +198 -0
- package/dist/core/graph/package-files.d.ts +20 -0
- package/dist/core/graph/package-files.js +146 -0
- package/dist/core/graph/package-kinds.d.ts +22 -0
- package/dist/core/graph/package-kinds.js +49 -0
- package/dist/core/graph/package-reconcile.d.ts +17 -0
- package/dist/core/graph/package-reconcile.js +31 -0
- package/dist/core/graph/reader.d.ts +45 -0
- package/dist/core/graph/reader.js +218 -0
- package/dist/core/graph/receiver-url.d.ts +11 -0
- package/dist/core/graph/receiver-url.js +83 -0
- package/dist/core/graph/receivers.d.ts +28 -0
- package/dist/core/graph/receivers.js +66 -0
- package/dist/core/graph/repo-sync/exchange.d.ts +36 -0
- package/dist/core/graph/repo-sync/exchange.js +422 -0
- package/dist/core/graph/repo-sync/identity.d.ts +32 -0
- package/dist/core/graph/repo-sync/identity.js +147 -0
- package/dist/core/graph/repo-sync/index.d.ts +4 -0
- package/dist/core/graph/repo-sync/index.js +2 -0
- package/dist/core/graph/repo-sync/mirror.d.ts +30 -0
- package/dist/core/graph/repo-sync/mirror.js +170 -0
- package/dist/core/graph/repo-sync/ref-format.d.ts +80 -0
- package/dist/core/graph/repo-sync/ref-format.js +215 -0
- package/dist/core/graph/repo-sync/repos.d.ts +21 -0
- package/dist/core/graph/repo-sync/repos.js +57 -0
- package/dist/core/graph/repo-sync/sync.d.ts +40 -0
- package/dist/core/graph/repo-sync/sync.js +322 -0
- package/dist/core/graph/rules.d.ts +27 -0
- package/dist/core/graph/rules.js +134 -0
- package/dist/core/graph/types.d.ts +131 -0
- package/dist/core/graph/types.js +10 -0
- package/dist/core/graph/watches.d.ts +66 -0
- package/dist/core/graph/watches.js +177 -0
- package/dist/core/human/action-binding.d.ts +23 -0
- package/dist/core/human/action-binding.js +41 -0
- package/dist/core/human/answer-text.d.ts +5 -0
- package/dist/core/human/answer-text.js +100 -0
- package/dist/core/human/answer.d.ts +53 -0
- package/dist/core/human/answer.js +119 -0
- package/dist/core/human/claim.d.ts +23 -0
- package/dist/core/human/claim.js +67 -0
- package/dist/core/human/completion.d.ts +38 -0
- package/dist/core/human/completion.js +27 -0
- package/dist/core/human/component-docs.d.ts +18 -0
- package/dist/core/human/component-docs.js +442 -0
- package/dist/core/human/convention.d.ts +31 -0
- package/dist/core/human/convention.js +82 -0
- package/dist/core/human/feedback-companion.d.ts +19 -0
- package/dist/core/human/feedback-companion.js +92 -0
- package/dist/core/human/feedback.d.ts +62 -0
- package/dist/core/human/feedback.js +88 -0
- package/dist/core/human/page-authoring.d.ts +30 -0
- package/dist/core/human/page-authoring.js +19 -0
- package/dist/core/human/page-errors.d.ts +8 -0
- package/dist/core/human/page-errors.js +14 -0
- package/dist/core/human/page-eval.d.ts +25 -0
- package/dist/core/human/page-eval.js +125 -0
- package/dist/core/human/page-html-markdown.d.ts +8 -0
- package/dist/core/human/page-html-markdown.js +260 -0
- package/dist/core/human/page-markdown.d.ts +3 -0
- package/dist/core/human/page-markdown.js +295 -0
- package/dist/core/human/page-schema.d.ts +291 -0
- package/dist/core/human/page-schema.js +381 -0
- package/dist/core/human/page.d.ts +21 -0
- package/dist/core/human/page.js +251 -0
- package/dist/core/human/request-files.d.ts +14 -0
- package/dist/core/human/request-files.js +54 -0
- package/dist/core/human/requests.d.ts +156 -0
- package/dist/core/human/requests.js +619 -0
- package/dist/core/human/root.d.ts +4 -0
- package/dist/core/human/root.js +11 -0
- package/dist/core/human/summary.d.ts +3 -0
- package/dist/core/human/summary.js +5 -0
- package/dist/core/human/tickets.d.ts +68 -0
- package/dist/core/human/tickets.js +175 -0
- package/dist/core/human/types.d.ts +118 -0
- package/dist/core/human/types.js +1 -0
- package/dist/core/human/visible-paths.d.ts +16 -0
- package/dist/core/human/visible-paths.js +74 -0
- package/dist/core/human-actions.d.ts +25 -0
- package/dist/core/human-actions.js +101 -0
- package/dist/core/import/bundle/blob-keys.d.ts +10 -0
- package/dist/core/import/bundle/blob-keys.js +23 -0
- package/dist/core/import/bundle/layout.d.ts +90 -0
- package/dist/core/import/bundle/layout.js +117 -0
- package/dist/core/import/export/archive.d.ts +11 -0
- package/dist/core/import/export/archive.js +22 -0
- package/dist/core/import/export/cloud.d.ts +23 -0
- package/dist/core/import/export/cloud.js +47 -0
- package/dist/core/import/export/dump.d.ts +34 -0
- package/dist/core/import/export/dump.js +235 -0
- package/dist/core/import/export/files.d.ts +22 -0
- package/dist/core/import/export/files.js +107 -0
- package/dist/core/import/export/inline.d.ts +3 -0
- package/dist/core/import/export/inline.js +15 -0
- package/dist/core/import/export/source.d.ts +2 -0
- package/dist/core/import/export/source.js +5 -0
- package/dist/core/import/export/stores.d.ts +9 -0
- package/dist/core/import/export/stores.js +69 -0
- package/dist/core/inspector/chrome.d.ts +6 -0
- package/dist/core/inspector/chrome.js +14 -0
- package/dist/core/inspector/contract.d.ts +105 -0
- package/dist/core/inspector/contract.js +1 -0
- package/dist/core/inspector/core.d.ts +39 -0
- package/dist/core/inspector/core.js +296 -0
- package/dist/core/inspector/host.d.ts +46 -0
- package/dist/core/inspector/host.js +538 -0
- package/dist/core/inspector/model.d.ts +88 -0
- package/dist/core/inspector/model.js +225 -0
- package/dist/core/inspector/text.d.ts +5 -0
- package/dist/core/inspector/text.js +45 -0
- package/dist/core/inspector/transport.d.ts +6 -0
- package/dist/core/inspector/transport.js +36 -0
- package/dist/core/inspector/tui.d.ts +3 -0
- package/dist/core/inspector/tui.js +295 -0
- package/dist/core/io.js +7 -0
- package/dist/core/keybindings/background-bash.d.ts +13 -0
- package/dist/core/keybindings/background-bash.js +33 -0
- package/dist/core/keybindings/catalog.d.ts +1 -1
- package/dist/core/keybindings/inbox.d.ts +18 -0
- package/dist/core/keybindings/inbox.js +25 -0
- package/dist/core/keybindings/index.d.ts +8 -0
- package/dist/core/keybindings/index.js +7 -0
- package/dist/core/keybindings/match.d.ts +44 -0
- package/dist/core/keybindings/match.js +146 -0
- package/dist/core/keybindings/persistence.d.ts +18 -0
- package/dist/core/keybindings/persistence.js +49 -0
- package/dist/core/keybindings/resolve.d.ts +28 -0
- package/dist/core/keybindings/resolve.js +348 -0
- package/dist/core/layout-migrate/index.d.ts +38 -0
- package/dist/core/layout-migrate/index.js +523 -0
- package/dist/core/layout-migrate/paths.d.ts +30 -0
- package/dist/core/layout-migrate/paths.js +118 -0
- package/dist/core/layout-migrate/stored-paths.d.ts +9 -0
- package/dist/core/layout-migrate/stored-paths.js +424 -0
- package/dist/core/layout-migrate/stores.d.ts +30 -0
- package/dist/core/layout-migrate/stores.js +543 -0
- package/dist/core/ledger/account.d.ts +12 -0
- package/dist/core/ledger/account.js +13 -0
- package/dist/core/ledger/charges.d.ts +16 -0
- package/dist/core/ledger/charges.js +43 -0
- package/dist/core/ledger/check.d.ts +48 -0
- package/dist/core/ledger/check.js +38 -0
- package/dist/core/ledger/chunks.d.ts +8 -0
- package/dist/core/ledger/chunks.js +43 -0
- package/dist/core/ledger/index.d.ts +9 -0
- package/dist/core/ledger/index.js +10 -0
- package/dist/core/ledger/infra-allowance.d.ts +7 -0
- package/dist/core/ledger/infra-allowance.js +31 -0
- package/dist/core/ledger/limits.d.ts +10 -0
- package/dist/core/ledger/limits.js +35 -0
- package/dist/core/ledger/months.d.ts +6 -0
- package/dist/core/ledger/months.js +19 -0
- package/dist/core/ledger/payer.d.ts +34 -0
- package/dist/core/ledger/payer.js +14 -0
- package/dist/core/ledger/read.d.ts +57 -0
- package/dist/core/ledger/read.js +194 -0
- package/dist/core/ledger/totals.d.ts +10 -0
- package/dist/core/ledger/totals.js +34 -0
- package/dist/core/ledger/types.d.ts +75 -0
- package/dist/core/ledger/types.js +2 -0
- package/dist/core/llm/app-rungs.d.ts +16 -0
- package/dist/core/llm/app-rungs.js +59 -0
- package/dist/core/llm/body-limits.d.ts +7 -0
- package/dist/core/llm/body-limits.js +7 -0
- package/dist/core/llm/refusal.d.ts +14 -0
- package/dist/core/llm/refusal.js +22 -0
- package/dist/core/locked-file.d.ts +27 -0
- package/dist/core/locked-file.js +121 -0
- package/dist/core/log.d.ts +2 -0
- package/dist/core/log.js +5 -3
- package/dist/core/manifest-stale.d.ts +18 -0
- package/dist/core/manifest-stale.js +39 -0
- package/dist/core/model-auth/api-credential-store.d.ts +10 -0
- package/dist/core/model-auth/api-credential-store.js +40 -0
- package/dist/core/model-auth/daemon-login.d.ts +13 -0
- package/dist/core/model-auth/daemon-login.js +156 -0
- package/dist/core/model-auth/readiness.d.ts +12 -0
- package/dist/core/model-auth/readiness.js +48 -0
- package/dist/core/model-routes-pool.d.ts +14 -0
- package/dist/core/model-routes-pool.js +50 -0
- package/dist/core/model-routes.d.ts +98 -0
- package/dist/core/model-routes.js +190 -0
- package/dist/core/northlight/previews.d.ts +22 -0
- package/dist/core/northlight/previews.js +87 -0
- package/dist/core/nvim-launch.d.ts +7 -0
- package/dist/core/nvim-launch.js +45 -0
- package/dist/core/output.d.ts +35 -0
- package/dist/core/output.js +99 -0
- package/dist/core/pagination.d.ts +35 -0
- package/dist/core/pagination.js +88 -0
- package/dist/core/peer/client.d.ts +61 -0
- package/dist/core/peer/client.js +167 -0
- package/dist/core/peer/directory.d.ts +71 -0
- package/dist/core/peer/directory.js +167 -0
- package/dist/core/peer/envelope.d.ts +46 -0
- package/dist/core/peer/envelope.js +98 -0
- package/dist/core/peer/names.d.ts +5 -0
- package/dist/core/peer/names.js +8 -0
- package/dist/core/peer/outbox-store.d.ts +76 -0
- package/dist/core/peer/outbox-store.js +84 -0
- package/dist/core/peer/receiver.d.ts +8 -0
- package/dist/core/peer/receiver.js +54 -0
- package/dist/core/peer/stubs.d.ts +90 -0
- package/dist/core/peer/stubs.js +208 -0
- package/dist/core/peer/token.d.ts +13 -0
- package/dist/core/peer/token.js +29 -0
- package/dist/core/peer/version.d.ts +16 -0
- package/dist/core/peer/version.js +23 -0
- package/dist/core/permissions/builtin.d.ts +8 -0
- package/dist/core/permissions/builtin.js +27 -0
- package/dist/core/permissions/ceiling.d.ts +57 -0
- package/dist/core/permissions/ceiling.js +319 -0
- package/dist/core/permissions/compile.d.ts +14 -0
- package/dist/core/permissions/compile.js +175 -0
- package/dist/core/permissions/errors.d.ts +7 -0
- package/dist/core/permissions/errors.js +13 -0
- package/dist/core/permissions/evaluator.d.ts +33 -0
- package/dist/core/permissions/evaluator.js +96 -0
- package/dist/core/permissions/facts.d.ts +56 -0
- package/dist/core/permissions/facts.js +102 -0
- package/dist/core/permissions/schema-parser.d.ts +29 -0
- package/dist/core/permissions/schema-parser.js +151 -0
- package/dist/core/permissions/schemas.d.ts +21 -0
- package/dist/core/permissions/schemas.js +83 -0
- package/dist/core/permissions/sql.d.ts +16 -0
- package/dist/core/permissions/sql.js +31 -0
- package/dist/core/plugin-app.d.ts +31 -0
- package/dist/core/plugin-app.js +58 -0
- package/dist/core/plugin-quarantine.d.ts +16 -0
- package/dist/core/plugin-quarantine.js +70 -0
- package/dist/core/pool-credential-store.d.ts +31 -0
- package/dist/core/pool-credential-store.js +116 -0
- package/dist/core/predicate.d.ts +65 -0
- package/dist/core/predicate.js +191 -0
- package/dist/core/preview-registry.d.ts +59 -0
- package/dist/core/preview-registry.js +403 -0
- package/dist/core/profiles/default-binding.d.ts +15 -0
- package/dist/core/profiles/default-binding.js +29 -0
- package/dist/core/profiles/deletion-reservation.d.ts +12 -0
- package/dist/core/profiles/deletion-reservation.js +42 -0
- package/dist/core/profiles/select.d.ts +46 -0
- package/dist/core/profiles/select.js +738 -0
- package/dist/core/provider-credential.d.ts +6 -0
- package/dist/core/provider-credential.js +17 -0
- package/dist/core/provider-error-recognition.d.ts +30 -0
- package/dist/core/provider-error-recognition.js +82 -0
- package/dist/core/provider-failure.d.ts +42 -0
- package/dist/core/provider-failure.js +145 -0
- package/dist/core/provider-management.d.ts +11 -0
- package/dist/core/provider-management.js +9 -0
- package/dist/core/providers/approval.d.ts +23 -0
- package/dist/core/providers/approval.js +146 -0
- package/dist/core/providers/audit.d.ts +30 -0
- package/dist/core/providers/audit.js +52 -0
- package/dist/core/providers/bundles.d.ts +66 -0
- package/dist/core/providers/bundles.js +638 -0
- package/dist/core/providers/call.d.ts +51 -0
- package/dist/core/providers/call.js +480 -0
- package/dist/core/providers/description.d.ts +34 -0
- package/dist/core/providers/description.js +1 -0
- package/dist/core/providers/device-libs.d.ts +71 -0
- package/dist/core/providers/device-libs.js +202 -0
- package/dist/core/providers/device.d.ts +42 -0
- package/dist/core/providers/device.js +95 -0
- package/dist/core/providers/errors.d.ts +99 -0
- package/dist/core/providers/errors.js +136 -0
- package/dist/core/providers/files.d.ts +90 -0
- package/dist/core/providers/files.js +389 -0
- package/dist/core/providers/inflight.d.ts +13 -0
- package/dist/core/providers/inflight.js +14 -0
- package/dist/core/providers/mint.d.ts +29 -0
- package/dist/core/providers/mint.js +219 -0
- package/dist/core/providers/receipts.d.ts +26 -0
- package/dist/core/providers/receipts.js +61 -0
- package/dist/core/providers/request.d.ts +27 -0
- package/dist/core/providers/request.js +173 -0
- package/dist/core/providers/roots.d.ts +23 -0
- package/dist/core/providers/roots.js +118 -0
- package/dist/core/providers/token-cache.d.ts +54 -0
- package/dist/core/providers/token-cache.js +203 -0
- package/dist/core/remote-canvas-target.d.ts +4 -0
- package/dist/core/remote-canvas-target.js +30 -0
- package/dist/core/review/comments.d.ts +69 -0
- package/dist/core/review/comments.js +296 -0
- package/dist/core/review/companion.d.ts +33 -0
- package/dist/core/review/companion.js +208 -0
- package/dist/core/review/signal.d.ts +5 -0
- package/dist/core/review/signal.js +12 -0
- package/dist/core/review/store.d.ts +44 -0
- package/dist/core/review/store.js +178 -0
- package/dist/core/review/types.d.ts +139 -0
- package/dist/core/review/types.js +23 -0
- package/dist/core/runs/activity.d.ts +11 -0
- package/dist/core/runs/activity.js +57 -0
- package/dist/core/runs/events.d.ts +41 -0
- package/dist/core/runs/events.js +179 -0
- package/dist/core/runs/operations.d.ts +85 -0
- package/dist/core/runs/operations.js +741 -0
- package/dist/core/runs/questions.d.ts +80 -0
- package/dist/core/runs/questions.js +151 -0
- package/dist/core/runtime/banner.d.ts +15 -0
- package/dist/core/runtime/banner.js +53 -0
- package/dist/core/runtime/bearings-render.d.ts +62 -0
- package/dist/core/runtime/bearings-render.js +272 -0
- package/dist/core/runtime/bearings.d.ts +56 -0
- package/dist/core/runtime/bearings.js +199 -0
- package/dist/core/runtime/bin-contributions.d.ts +44 -0
- package/dist/core/runtime/bin-contributions.js +186 -0
- package/dist/core/runtime/blaxel-environment.d.ts +2 -0
- package/dist/core/runtime/blaxel-environment.js +8 -0
- package/dist/core/runtime/broker/bash-job-launch.d.ts +12 -0
- package/dist/core/runtime/broker/bash-job-launch.js +50 -0
- package/dist/core/runtime/broker/model-adapter.d.ts +27 -0
- package/dist/core/runtime/broker/model-adapter.js +413 -0
- package/dist/core/runtime/broker/read-ops.d.ts +27 -0
- package/dist/core/runtime/broker/read-ops.js +172 -0
- package/dist/core/runtime/broker/turn-cause.d.ts +7 -0
- package/dist/core/runtime/broker/turn-cause.js +30 -0
- package/dist/core/runtime/broker-protocol.d.ts +727 -0
- package/dist/core/runtime/broker-protocol.js +152 -0
- package/dist/core/runtime/broker-request.d.ts +37 -0
- package/dist/core/runtime/broker-request.js +86 -0
- package/dist/core/runtime/broker-sdk.d.ts +36 -0
- package/dist/core/runtime/broker-sdk.js +130 -0
- package/dist/core/runtime/canvas-extensions.d.ts +34 -0
- package/dist/core/runtime/canvas-extensions.js +100 -0
- package/dist/core/runtime/close.d.ts +49 -0
- package/dist/core/runtime/close.js +266 -0
- package/dist/core/runtime/command-expansion.d.ts +19 -0
- package/dist/core/runtime/command-expansion.js +104 -0
- package/dist/core/runtime/command-surface.d.ts +38 -0
- package/dist/core/runtime/command-surface.js +117 -0
- package/dist/core/runtime/crtr-theme.d.ts +12 -0
- package/dist/core/runtime/crtr-theme.js +146 -0
- package/dist/core/runtime/deliver-live.d.ts +38 -0
- package/dist/core/runtime/deliver-live.js +87 -0
- package/dist/core/runtime/fault-recovery.d.ts +23 -0
- package/dist/core/runtime/fault-recovery.js +83 -0
- package/dist/core/runtime/fault.d.ts +6 -0
- package/dist/core/runtime/fault.js +17 -0
- package/dist/core/runtime/fleet.d.ts +106 -0
- package/dist/core/runtime/fleet.js +75 -0
- package/dist/core/runtime/focus-viewer.d.ts +45 -0
- package/dist/core/runtime/focus-viewer.js +151 -0
- package/dist/core/runtime/front-door-env.d.ts +5 -0
- package/dist/core/runtime/front-door-env.js +16 -0
- package/dist/core/runtime/headless-pi.d.ts +37 -0
- package/dist/core/runtime/headless-pi.js +173 -0
- package/dist/core/runtime/host.d.ts +74 -0
- package/dist/core/runtime/host.js +695 -0
- package/dist/core/runtime/interactive-deliver.d.ts +22 -0
- package/dist/core/runtime/interactive-deliver.js +51 -0
- package/dist/core/runtime/invocation.d.ts +15 -0
- package/dist/core/runtime/invocation.js +10 -0
- package/dist/core/runtime/kickoff.d.ts +37 -0
- package/dist/core/runtime/kickoff.js +263 -0
- package/dist/core/runtime/launch-prompt.d.ts +8 -0
- package/dist/core/runtime/launch-prompt.js +13 -0
- package/dist/core/runtime/launch-target.d.ts +43 -0
- package/dist/core/runtime/launch-target.js +83 -0
- package/dist/core/runtime/launch.d.ts +206 -0
- package/dist/core/runtime/launch.js +498 -0
- package/dist/core/runtime/ledger.d.ts +10 -0
- package/dist/core/runtime/ledger.js +55 -0
- package/dist/core/runtime/lifecycle.d.ts +47 -0
- package/dist/core/runtime/lifecycle.js +283 -0
- package/dist/core/runtime/managed-provider-cooling.d.ts +24 -0
- package/dist/core/runtime/managed-provider-cooling.js +62 -0
- package/dist/core/runtime/memory-admission.d.ts +38 -0
- package/dist/core/runtime/memory-admission.js +68 -0
- package/dist/core/runtime/model-registry.d.ts +3 -0
- package/dist/core/runtime/model-registry.js +13 -0
- package/dist/core/runtime/model-selection.d.ts +54 -0
- package/dist/core/runtime/model-selection.js +135 -0
- package/dist/core/runtime/model-swap.d.ts +26 -0
- package/dist/core/runtime/model-swap.js +75 -0
- package/dist/core/runtime/naming.d.ts +69 -0
- package/dist/core/runtime/naming.js +298 -0
- package/dist/core/runtime/nerd-font.d.ts +46 -0
- package/dist/core/runtime/nerd-font.js +162 -0
- package/dist/core/runtime/nodes.d.ts +140 -0
- package/dist/core/runtime/nodes.js +506 -0
- package/dist/core/runtime/outcome-document.d.ts +58 -0
- package/dist/core/runtime/outcome-document.js +86 -0
- package/dist/core/runtime/output-result.d.ts +15 -0
- package/dist/core/runtime/output-result.js +32 -0
- package/dist/core/runtime/output-schema-refs.d.ts +3 -0
- package/dist/core/runtime/output-schema-refs.js +100 -0
- package/dist/core/runtime/package-health.d.ts +34 -0
- package/dist/core/runtime/package-health.js +100 -0
- package/dist/core/runtime/persona.d.ts +21 -0
- package/dist/core/runtime/persona.js +54 -0
- package/dist/core/runtime/pi-cli.d.ts +8 -0
- package/dist/core/runtime/pi-cli.js +65 -0
- package/dist/core/runtime/pi-vendored.d.ts +28 -0
- package/dist/core/runtime/pi-vendored.js +63 -0
- package/dist/core/runtime/placement-tmux.d.ts +32 -0
- package/dist/core/runtime/placement-tmux.js +81 -0
- package/dist/core/runtime/placement.d.ts +116 -0
- package/dist/core/runtime/placement.js +418 -0
- package/dist/core/runtime/progress-bar.d.ts +13 -0
- package/dist/core/runtime/progress-bar.js +50 -0
- package/dist/core/runtime/provider-credential-gate.d.ts +8 -0
- package/dist/core/runtime/provider-credential-gate.js +33 -0
- package/dist/core/runtime/recovery-hold.d.ts +21 -0
- package/dist/core/runtime/recovery-hold.js +46 -0
- package/dist/core/runtime/reopen.d.ts +49 -0
- package/dist/core/runtime/reopen.js +160 -0
- package/dist/core/runtime/revive.d.ts +114 -0
- package/dist/core/runtime/revive.js +739 -0
- package/dist/core/runtime/roadmap.d.ts +24 -0
- package/dist/core/runtime/roadmap.js +86 -0
- package/dist/core/runtime/runner/blaxel/client.d.ts +83 -0
- package/dist/core/runtime/runner/blaxel/client.js +140 -0
- package/dist/core/runtime/runner/blaxel/image-build.d.ts +74 -0
- package/dist/core/runtime/runner/blaxel/image-build.js +209 -0
- package/dist/core/runtime/runner/index.d.ts +9 -0
- package/dist/core/runtime/runner/index.js +37 -0
- package/dist/core/runtime/runner/machine/call.d.ts +8 -0
- package/dist/core/runtime/runner/machine/call.js +67 -0
- package/dist/core/runtime/runner/machine/environment.d.ts +1 -0
- package/dist/core/runtime/runner/machine/environment.js +7 -0
- package/dist/core/runtime/runner/machine/ops.d.ts +127 -0
- package/dist/core/runtime/runner/machine/ops.js +41 -0
- package/dist/core/runtime/runner/machine/runner.d.ts +12 -0
- package/dist/core/runtime/runner/machine/runner.js +90 -0
- package/dist/core/runtime/runner/process.d.ts +11 -0
- package/dist/core/runtime/runner/process.js +70 -0
- package/dist/core/runtime/runner/types.d.ts +101 -0
- package/dist/core/runtime/runner/types.js +16 -0
- package/dist/core/runtime/session-branch.d.ts +7 -0
- package/dist/core/runtime/session-branch.js +16 -0
- package/dist/core/runtime/session-cycles.d.ts +45 -0
- package/dist/core/runtime/session-cycles.js +110 -0
- package/dist/core/runtime/session-list-cache.d.ts +37 -0
- package/dist/core/runtime/session-list-cache.js +302 -0
- package/dist/core/runtime/session-visibility.d.ts +37 -0
- package/dist/core/runtime/session-visibility.js +99 -0
- package/dist/core/runtime/setup-marker.d.ts +8 -0
- package/dist/core/runtime/setup-marker.js +46 -0
- package/dist/core/runtime/situational-context.d.ts +16 -0
- package/dist/core/runtime/situational-context.js +54 -0
- package/dist/core/runtime/situational-live.d.ts +9 -0
- package/dist/core/runtime/situational-live.js +41 -0
- package/dist/core/runtime/spawn-env-rows.d.ts +5 -0
- package/dist/core/runtime/spawn-env-rows.js +15 -0
- package/dist/core/runtime/spawn-env.d.ts +40 -0
- package/dist/core/runtime/spawn-env.js +260 -0
- package/dist/core/runtime/spawn.d.ts +160 -0
- package/dist/core/runtime/spawn.js +699 -0
- package/dist/core/runtime/stamp/protocol.d.ts +90 -0
- package/dist/core/runtime/stamp/protocol.js +113 -0
- package/dist/core/runtime/start-check.d.ts +15 -0
- package/dist/core/runtime/start-check.js +31 -0
- package/dist/core/runtime/stop-guard.d.ts +31 -0
- package/dist/core/runtime/stop-guard.js +150 -0
- package/dist/core/runtime/structured-output.d.ts +36 -0
- package/dist/core/runtime/structured-output.js +112 -0
- package/dist/core/runtime/surface-bg.d.ts +13 -0
- package/dist/core/runtime/surface-bg.js +85 -0
- package/dist/core/runtime/tmux-bindings.d.ts +30 -0
- package/dist/core/runtime/tmux-bindings.js +743 -0
- package/dist/core/runtime/tmux-chrome.d.ts +2 -0
- package/dist/core/runtime/tmux-chrome.js +5 -0
- package/dist/core/runtime/tmux-driver.d.ts +328 -0
- package/dist/core/runtime/tmux-driver.js +713 -0
- package/dist/core/runtime/unsandboxed.d.ts +3 -0
- package/dist/core/runtime/unsandboxed.js +16 -0
- package/dist/core/runtime/view-socket.d.ts +61 -0
- package/dist/core/runtime/view-socket.js +194 -0
- package/dist/core/runtime/warm-pool.d.ts +79 -0
- package/dist/core/runtime/warm-pool.js +473 -0
- package/dist/core/scoped-state/db.d.ts +17 -0
- package/dist/core/scoped-state/db.js +261 -0
- package/dist/core/scoped-state/legacy-profiles.d.ts +11 -0
- package/dist/core/scoped-state/legacy-profiles.js +61 -0
- package/dist/core/scoped-state/migrate.d.ts +15 -0
- package/dist/core/scoped-state/migrate.js +332 -0
- package/dist/core/scoped-state/person-rows.d.ts +10 -0
- package/dist/core/scoped-state/person-rows.js +173 -0
- package/dist/core/scoped-state/schema.d.ts +10 -0
- package/dist/core/scoped-state/schema.js +47 -0
- package/dist/core/scopes.d.ts +20 -0
- package/dist/core/scopes.js +48 -0
- package/dist/core/secrets/env-rows.d.ts +18 -0
- package/dist/core/secrets/env-rows.js +40 -0
- package/dist/core/secrets/environment-owner.d.ts +8 -0
- package/dist/core/secrets/environment-owner.js +31 -0
- package/dist/core/secrets/environment-secrets.d.ts +14 -0
- package/dist/core/secrets/environment-secrets.js +14 -0
- package/dist/core/secrets/index.d.ts +2 -0
- package/dist/core/secrets/index.js +2 -0
- package/dist/core/secrets/key.d.ts +3 -0
- package/dist/core/secrets/key.js +33 -0
- package/dist/core/secrets/seal.d.ts +18 -0
- package/dist/core/secrets/seal.js +43 -0
- package/dist/core/secrets.d.ts +50 -0
- package/dist/core/secrets.js +147 -0
- package/dist/core/self-update.d.ts +27 -0
- package/dist/core/self-update.js +77 -0
- package/dist/core/session-model/session-state.d.ts +53 -0
- package/dist/core/session-model/session-state.js +180 -0
- package/dist/core/shell-segments.d.ts +42 -0
- package/dist/core/shell-segments.js +169 -0
- package/dist/core/spaces/cache-env.d.ts +2 -0
- package/dist/core/spaces/cache-env.js +15 -0
- package/dist/core/spaces/file-root.d.ts +23 -0
- package/dist/core/spaces/file-root.js +68 -0
- package/dist/core/spaces/mounts.d.ts +41 -0
- package/dist/core/spaces/mounts.js +126 -0
- package/dist/core/spaces/permissions.d.ts +19 -0
- package/dist/core/spaces/permissions.js +77 -0
- package/dist/core/spaces/process.d.ts +61 -0
- package/dist/core/spaces/process.js +172 -0
- package/dist/core/spaces/runtime-home.d.ts +5 -0
- package/dist/core/spaces/runtime-home.js +8 -0
- package/dist/core/spaces/space.d.ts +9 -0
- package/dist/core/spaces/space.js +58 -0
- package/dist/core/spaces/stop.d.ts +24 -0
- package/dist/core/spaces/stop.js +138 -0
- package/dist/core/spaces/users.d.ts +20 -0
- package/dist/core/spaces/users.js +43 -0
- package/dist/core/sqlite-statements.d.ts +4 -0
- package/dist/core/sqlite-statements.js +17 -0
- package/dist/core/statements.d.ts +17 -0
- package/dist/core/statements.js +81 -0
- package/dist/core/storage/attachments.d.ts +36 -0
- package/dist/core/storage/attachments.js +135 -0
- package/dist/core/storage/client.d.ts +109 -0
- package/dist/core/storage/client.js +231 -0
- package/dist/core/storage/download.d.ts +24 -0
- package/dist/core/storage/download.js +184 -0
- package/dist/core/storage/purge.d.ts +6 -0
- package/dist/core/storage/purge.js +52 -0
- package/dist/core/storage/tables.d.ts +67 -0
- package/dist/core/storage/tables.js +109 -0
- package/dist/core/subscription-state.d.ts +96 -0
- package/dist/core/subscription-state.js +438 -0
- package/dist/core/substrate/delivery/corpus.d.ts +26 -0
- package/dist/core/substrate/delivery/corpus.js +138 -0
- package/dist/core/substrate/delivery/deliver.d.ts +71 -0
- package/dist/core/substrate/delivery/deliver.js +333 -0
- package/dist/core/substrate/delivery/listings.d.ts +30 -0
- package/dist/core/substrate/delivery/listings.js +75 -0
- package/dist/core/substrate/delivery/match.d.ts +28 -0
- package/dist/core/substrate/delivery/match.js +146 -0
- package/dist/core/substrate/delivery/plan.d.ts +57 -0
- package/dist/core/substrate/delivery/plan.js +126 -0
- package/dist/core/substrate/delivery/render-boot.d.ts +20 -0
- package/dist/core/substrate/delivery/render-boot.js +329 -0
- package/dist/core/substrate/delivery/render-event.d.ts +47 -0
- package/dist/core/substrate/delivery/render-event.js +160 -0
- package/dist/core/substrate/delivery/sub-persona-menu.d.ts +2 -0
- package/dist/core/substrate/delivery/sub-persona-menu.js +24 -0
- package/dist/core/substrate/delivery/types.d.ts +30 -0
- package/dist/core/substrate/delivery/types.js +1 -0
- package/dist/core/substrate/gate-explain.d.ts +35 -0
- package/dist/core/substrate/gate-explain.js +397 -0
- package/dist/core/substrate/schema.d.ts +29 -0
- package/dist/core/substrate/schema.js +81 -0
- package/dist/core/substrate/subject-fields.d.ts +52 -0
- package/dist/core/substrate/subject-fields.js +39 -0
- package/dist/core/substrate/subject.d.ts +13 -0
- package/dist/core/substrate/subject.js +60 -0
- package/dist/core/termrender/code-doc.d.ts +12 -0
- package/dist/core/termrender/code-doc.js +92 -0
- package/dist/core/termrender/display.d.ts +16 -0
- package/dist/core/termrender/display.js +56 -0
- package/dist/core/termrender/termrender.d.ts +71 -0
- package/dist/core/termrender/termrender.js +719 -0
- package/dist/core/termrender/version.d.ts +1 -0
- package/dist/core/termrender/version.js +1 -0
- package/dist/core/timing.d.ts +11 -0
- package/dist/core/timing.js +94 -0
- package/dist/core/tui/draw.d.ts +103 -0
- package/dist/core/tui/draw.js +378 -0
- package/dist/core/tui/fuzzy.d.ts +9 -0
- package/dist/core/tui/fuzzy.js +38 -0
- package/dist/core/tui/markdown.d.ts +17 -0
- package/dist/core/tui/markdown.js +407 -0
- package/dist/core/tui/page-host.d.ts +31 -0
- package/dist/core/tui/page-host.js +74 -0
- package/dist/core/tui/panel.d.ts +45 -0
- package/dist/core/tui/panel.js +142 -0
- package/dist/core/tui/terminal.d.ts +23 -0
- package/dist/core/tui/terminal.js +100 -0
- package/dist/core/wake.d.ts +89 -0
- package/dist/core/wake.js +296 -0
- package/dist/core/worktree-containment.d.ts +14 -0
- package/dist/core/worktree-containment.js +48 -0
- package/dist/core/worktree-landing.d.ts +44 -0
- package/dist/core/worktree-landing.js +56 -0
- package/dist/core/worktree-mutation-async.d.ts +23 -0
- package/dist/core/worktree-mutation-async.js +335 -0
- package/dist/core/worktree-remove.d.ts +15 -0
- package/dist/core/worktree-remove.js +84 -0
- package/dist/core/worktree.d.ts +121 -0
- package/dist/core/worktree.js +909 -0
- package/dist/daemon/api/deferred-head.d.ts +14 -0
- package/dist/daemon/api/deferred-head.js +117 -0
- package/dist/daemon/api/environment-of.d.ts +18 -0
- package/dist/daemon/api/environment-of.js +40 -0
- package/dist/daemon/api/handlers/git-credential.d.ts +11 -0
- package/dist/daemon/api/handlers/git-credential.js +64 -0
- package/dist/daemon/api/handlers/providers.d.ts +83 -0
- package/dist/daemon/api/handlers/providers.js +283 -0
- package/dist/daemon/api/handlers/validate.d.ts +23 -0
- package/dist/daemon/api/handlers/validate.js +58 -0
- package/dist/daemon/api/map.d.ts +167 -0
- package/dist/daemon/api/map.js +764 -0
- package/dist/daemon/api/operations.d.ts +18 -0
- package/dist/daemon/api/operations.js +306 -0
- package/dist/daemon/api/principal.d.ts +65 -0
- package/dist/daemon/api/principal.js +143 -0
- package/dist/daemon/api/reader.d.ts +24 -0
- package/dist/daemon/api/reader.js +123 -0
- package/dist/daemon/api/router.d.ts +193 -0
- package/dist/daemon/api/router.js +536 -0
- package/dist/daemon/api/sync-notice.d.ts +17 -0
- package/dist/daemon/api/sync-notice.js +46 -0
- package/dist/daemon/api/viewer-presence.d.ts +20 -0
- package/dist/daemon/api/viewer-presence.js +100 -0
- package/dist/daemon/broker-signals/bus.d.ts +3 -2
- package/dist/daemon/broker-signals/bus.js +3 -2
- package/dist/daemon/companion-retire.d.ts +4 -0
- package/dist/daemon/companion-retire.js +44 -0
- package/dist/daemon/control.d.ts +40 -0
- package/dist/daemon/control.js +22 -0
- package/dist/daemon/cron/authority.d.ts +38 -0
- package/dist/daemon/cron/authority.js +90 -0
- package/dist/daemon/cron/live-runs.d.ts +54 -0
- package/dist/daemon/cron/live-runs.js +66 -0
- package/dist/daemon/cron/run-socket.d.ts +30 -0
- package/dist/daemon/cron/run-socket.js +170 -0
- package/dist/daemon/drain.d.ts +25 -0
- package/dist/daemon/drain.js +76 -0
- package/dist/daemon/human/finish.d.ts +24 -0
- package/dist/daemon/human/finish.js +178 -0
- package/dist/daemon/human/settle.d.ts +44 -0
- package/dist/daemon/human/settle.js +103 -0
- package/dist/daemon/machine-link/config.d.ts +45 -0
- package/dist/daemon/machine-link/config.js +63 -0
- package/dist/daemon/machine-link/credential.d.ts +7 -0
- package/dist/daemon/machine-link/credential.js +24 -0
- package/dist/daemon/machine-link/forward.d.ts +16 -0
- package/dist/daemon/machine-link/forward.js +181 -0
- package/dist/daemon/machine-link/frames.d.ts +49 -0
- package/dist/daemon/machine-link/frames.js +25 -0
- package/dist/daemon/machine-link/holder.d.ts +73 -0
- package/dist/daemon/machine-link/holder.js +272 -0
- package/dist/daemon/machine-link/move-notify.d.ts +4 -0
- package/dist/daemon/machine-link/move-notify.js +15 -0
- package/dist/daemon/manage.d.ts +19 -3
- package/dist/daemon/manage.js +21 -6
- package/dist/daemon/park-activity.d.ts +10 -0
- package/dist/daemon/park-activity.js +33 -0
- package/dist/daemon/park-pending.d.ts +25 -0
- package/dist/daemon/park-pending.js +76 -0
- package/dist/daemon/postgres/binary.d.ts +17 -0
- package/dist/daemon/postgres/binary.js +193 -0
- package/dist/daemon/postgres/cluster.d.ts +37 -0
- package/dist/daemon/postgres/cluster.js +111 -0
- package/dist/daemon/postgres/pins.d.ts +7 -0
- package/dist/daemon/postgres/pins.js +16 -0
- package/dist/daemon/postgres/supervisor.d.ts +95 -0
- package/dist/daemon/postgres/supervisor.js +177 -0
- package/dist/daemon/readiness.d.ts +11 -0
- package/dist/daemon/readiness.js +37 -0
- package/dist/daemon/reconcilers/broker-supervision.d.ts +112 -0
- package/dist/daemon/reconcilers/broker-supervision.js +842 -0
- package/dist/daemon/reconcilers/ledger-sandbox.d.ts +54 -0
- package/dist/daemon/reconcilers/ledger-sandbox.js +249 -0
- package/dist/daemon/reconcilers/live-obligation.d.ts +77 -0
- package/dist/daemon/reconcilers/live-obligation.js +114 -0
- package/dist/daemon/reconcilers/node-lifecycle/launch-failure.d.ts +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/launch-failure.js +8 -0
- package/dist/daemon/reconcilers/node-lifecycle/node-person.d.ts +9 -0
- package/dist/daemon/reconcilers/node-lifecycle/node-person.js +40 -0
- package/dist/daemon/reconcilers/node-lifecycle/remote-wake.d.ts +32 -0
- package/dist/daemon/reconcilers/node-lifecycle/remote-wake.js +124 -0
- package/dist/daemon/reconcilers/recipe-image.d.ts +49 -0
- package/dist/daemon/reconcilers/recipe-image.js +145 -0
- package/dist/daemon/reconcilers/throttled-lane.d.ts +11 -0
- package/dist/daemon/reconcilers/throttled-lane.js +63 -0
- package/dist/daemon/runs/append-section.d.ts +9 -0
- package/dist/daemon/runs/append-section.js +135 -0
- package/dist/daemon/runs/observer.d.ts +17 -0
- package/dist/daemon/runs/observer.js +441 -0
- package/dist/daemon/runs/view-transport.d.ts +19 -0
- package/dist/daemon/runs/view-transport.js +81 -0
- package/dist/daemon/structured-requests/sidecar.d.ts +4 -0
- package/dist/daemon/structured-requests/sidecar.js +5 -0
- package/dist/hook-authoring.d.ts +130 -0
- package/dist/hook-authoring.js +447 -0
- package/dist/hook-process.d.ts +7 -0
- package/dist/hook-process.js +34 -0
- package/dist/launcher/client.d.ts +6 -0
- package/dist/launcher/client.js +52 -0
- package/dist/launcher/limits/policy.d.ts +141 -0
- package/dist/launcher/limits/policy.js +142 -0
- package/dist/launcher/limits/settings.d.ts +19 -0
- package/dist/launcher/limits/settings.js +94 -0
- package/dist/launcher/spec.d.ts +181 -0
- package/dist/launcher/spec.js +10 -0
- package/dist/migrations/004-canvas-documents/apply.d.ts +8 -0
- package/dist/migrations/004-canvas-documents/apply.js +113 -0
- package/dist/migrations/004-canvas-documents/fields.d.ts +24 -0
- package/dist/migrations/004-canvas-documents/fields.js +52 -0
- package/dist/migrations/004-canvas-documents/index.d.ts +16 -0
- package/dist/migrations/004-canvas-documents/index.js +88 -0
- package/dist/migrations/004-canvas-documents/legacy/discover.d.ts +16 -0
- package/dist/migrations/004-canvas-documents/legacy/discover.js +251 -0
- package/dist/migrations/004-canvas-documents/legacy/history.d.ts +5 -0
- package/dist/migrations/004-canvas-documents/legacy/history.js +37 -0
- package/dist/migrations/004-canvas-documents/legacy/nested.d.ts +7 -0
- package/dist/migrations/004-canvas-documents/legacy/nested.js +37 -0
- package/dist/migrations/004-canvas-documents/legacy/parse.d.ts +14 -0
- package/dist/migrations/004-canvas-documents/legacy/parse.js +24 -0
- package/dist/migrations/004-canvas-documents/legacy/types.d.ts +91 -0
- package/dist/migrations/004-canvas-documents/legacy/types.js +3 -0
- package/dist/migrations/004-canvas-documents/plan.d.ts +102 -0
- package/dist/migrations/004-canvas-documents/plan.js +410 -0
- package/dist/migrations/004-canvas-documents/pointers.d.ts +23 -0
- package/dist/migrations/004-canvas-documents/pointers.js +95 -0
- package/dist/migrations/activation.d.ts +17 -0
- package/dist/migrations/activation.js +46 -0
- package/dist/shared/crtr-version.d.ts +2 -0
- package/dist/shared/crtr-version.js +18 -0
- package/dist/shared/inbox-entry-body.js +6 -2
- package/dist/shared/inline-ref-grammar.d.ts +53 -0
- package/dist/shared/inline-ref-grammar.js +99 -0
- package/dist/shared/shell-quote.d.ts +3 -0
- package/dist/shared/shell-quote.js +5 -0
- package/dist/shared/strip-cd-prefix.d.ts +1 -0
- package/dist/shared/strip-cd-prefix.js +13 -0
- package/dist/shared/tool-groups.d.ts +26 -0
- package/dist/shared/tool-groups.js +64 -0
- package/dist/shared/traceparent.d.ts +6 -0
- package/dist/shared/traceparent.js +28 -0
- package/dist/shared/turn-replies.d.ts +27 -0
- package/dist/shared/turn-replies.js +71 -0
- package/package.json +1 -1
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import { createHash, randomBytes, timingSafeEqual } from 'node:crypto';
|
|
2
|
+
import { CrtrError, usage } from '../errors.js';
|
|
3
|
+
import { ExitCode } from '../../types.js';
|
|
4
|
+
import { createObject, liveDocumentNamed } from './objects.js';
|
|
5
|
+
import { invalidateCustomKind } from './kinds/registry.js';
|
|
6
|
+
import { publish, HOP_LIMIT, HopLimitError } from './events.js';
|
|
7
|
+
import { checkoutsForCwd } from './repo-sync/repos.js';
|
|
8
|
+
import { onQueueSignal, signalQueue } from './receivers.js';
|
|
9
|
+
import { receiverEndpoint, isPublicReceiverAddress } from './receiver-url.js';
|
|
10
|
+
import { isIP } from 'node:net';
|
|
11
|
+
import { KIND, LOCAL, MAX_KIND_EVENTS, RESERVED_KIND_ROOTS, eventCatalogReasons } from '../plugin-objects-manifest.js';
|
|
12
|
+
import { check } from '../permissions/evaluator.js';
|
|
13
|
+
import { userOf } from '../permissions/evaluator.js';
|
|
14
|
+
import { nodePlace } from '../permissions/ceiling.js';
|
|
15
|
+
import { PermissionError } from '../permissions/errors.js';
|
|
16
|
+
import { writeActsFor } from '../permissions/facts.js';
|
|
17
|
+
/** Whether this reader may register, publish or watch as an object owned by `owner`. */
|
|
18
|
+
export async function mayActAs(db, reader, owner) {
|
|
19
|
+
// An app (a root shared by every account) carries no `acts_for`, so no user holds `edit` on it; its own server and runs act as it.
|
|
20
|
+
if (reader.class !== 'person' && reader.app.id === owner.id)
|
|
21
|
+
return true;
|
|
22
|
+
return await check(db, reader, 'edit', owner.id);
|
|
23
|
+
}
|
|
24
|
+
/** Whether the reader reaches the custom object: it may read it. */
|
|
25
|
+
export async function customReachable(db, reader, object) {
|
|
26
|
+
return await check(db, reader, 'read', object.id);
|
|
27
|
+
}
|
|
28
|
+
export { onQueueSignal };
|
|
29
|
+
const PRIVACY = ['public', 'private'];
|
|
30
|
+
function conflict(code, message) { throw new CrtrError(code, message, ExitCode.GENERAL); }
|
|
31
|
+
function hash(token) { return createHash('sha256').update(token).digest('hex'); }
|
|
32
|
+
function issueToken() { return `crtr_pub_${randomBytes(32).toString('base64url')}`; }
|
|
33
|
+
function receiverJson(receiver) {
|
|
34
|
+
if (receiver == null)
|
|
35
|
+
return null;
|
|
36
|
+
if (receiver === 'queue')
|
|
37
|
+
return JSON.stringify(receiver);
|
|
38
|
+
if (typeof receiver !== 'object' || Array.isArray(receiver))
|
|
39
|
+
throw usage('invalid custom receiver; expected queue, an https url, or argv and absolute cwd');
|
|
40
|
+
if ('url' in receiver && typeof receiver.url === 'string') {
|
|
41
|
+
try {
|
|
42
|
+
const url = receiverEndpoint(receiver.url);
|
|
43
|
+
const literal = url.hostname.replace(/^\[|\]$/g, '');
|
|
44
|
+
if (isIP(literal) && !isPublicReceiverAddress(literal))
|
|
45
|
+
throw new Error('non-public IP address');
|
|
46
|
+
return JSON.stringify({ url: receiver.url });
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
throw usage(`invalid custom receiver: ${String(error)}`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if ('argv' in receiver && Array.isArray(receiver.argv) && receiver.argv.length > 0 &&
|
|
53
|
+
receiver.argv.every((arg) => typeof arg === 'string') && typeof receiver.cwd === 'string' && receiver.cwd.startsWith('/'))
|
|
54
|
+
return JSON.stringify(receiver);
|
|
55
|
+
throw usage('invalid custom receiver; url must be https and argv requires a command and absolute cwd');
|
|
56
|
+
}
|
|
57
|
+
/** Whether the reader is a node of an isolated run, or an app call or stub reader carrying an isolated run place. */
|
|
58
|
+
async function inIsolatedRun(db, reader) {
|
|
59
|
+
if (reader.class === 'node')
|
|
60
|
+
return (await nodePlace(db, reader.node.id))?.isolated === true;
|
|
61
|
+
if (reader.class === 'app' || reader.class === 'object')
|
|
62
|
+
return reader.place?.isolated === true;
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
/** Register a kind and a named instance in the caller's write transaction. */
|
|
66
|
+
export async function registerCustomObject(db, reader, input) {
|
|
67
|
+
const { kind, name, owner, description, events, receiver, rotateToken, privacy } = input;
|
|
68
|
+
if (privacy !== undefined && !PRIVACY.includes(privacy))
|
|
69
|
+
throw usage(`invalid privacy ${JSON.stringify(privacy)}`);
|
|
70
|
+
if (!await mayActAs(db, reader, owner))
|
|
71
|
+
conflict('forbidden', `cannot act as ${owner.id}`);
|
|
72
|
+
if (await inIsolatedRun(db, reader))
|
|
73
|
+
throw new PermissionError(403, 'isolated_run', 'a custom object cannot be registered from an isolated run');
|
|
74
|
+
if (!KIND.test(kind) || RESERVED_KIND_ROOTS.includes(kind.split('.')[0]))
|
|
75
|
+
throw usage(`invalid or reserved kind ${kind}`);
|
|
76
|
+
if (!name.trim() || name !== name.trim() || name.includes('\0'))
|
|
77
|
+
throw usage(`invalid object name ${JSON.stringify(name)}`);
|
|
78
|
+
const json = receiverJson(receiver);
|
|
79
|
+
if (receiver !== 'queue' && receiver !== null && receiver !== undefined && 'argv' in receiver && reader.class !== 'person' && reader.class !== 'node')
|
|
80
|
+
conflict('argv_forbidden', 'argv receiver requires a person or node principal');
|
|
81
|
+
if (events === undefined) {
|
|
82
|
+
const declared = await db.prepare('SELECT source FROM object_kinds WHERE name = ?').get(kind);
|
|
83
|
+
if (declared?.source !== 'manifest' && declared?.source !== 'peer')
|
|
84
|
+
throw usage('events is required unless the kind is declared by an installed plugin');
|
|
85
|
+
}
|
|
86
|
+
else if (Object.keys(events).length > MAX_KIND_EVENTS || Object.entries(events).some(([local, spec]) => !LOCAL.test(local) || !Number.isInteger(spec?.level) || spec.level < 1 || spec.level > 10 ||
|
|
87
|
+
(spec.supersedes !== undefined && typeof spec.supersedes !== 'boolean') ||
|
|
88
|
+
(spec.ends_wait !== undefined && typeof spec.ends_wait !== 'boolean')))
|
|
89
|
+
throw usage('invalid custom event catalog');
|
|
90
|
+
const holder = await liveDocumentNamed(db, owner.id, name);
|
|
91
|
+
if (holder && !await customReachable(db, reader, holder))
|
|
92
|
+
conflict('forbidden', `cannot act as ${owner.id}`);
|
|
93
|
+
if (holder && reader.class !== 'person' && reader.class !== 'node') {
|
|
94
|
+
const prior = (await db.prepare('SELECT receiver_json FROM custom_objects WHERE object = ?').get(holder.id))?.receiver_json;
|
|
95
|
+
if (prior && typeof JSON.parse(prior) === 'object' && 'argv' in JSON.parse(prior))
|
|
96
|
+
conflict('argv_forbidden', 'argv receiver requires a person or node principal');
|
|
97
|
+
}
|
|
98
|
+
if (holder && holder.type !== kind)
|
|
99
|
+
conflict('name_taken', `${owner.name}/${name} is already held by ${holder.id}`);
|
|
100
|
+
const upserted = events === undefined ? null : await upsertKind(db, { name: kind, owner, description, events, read: null, source: 'register' });
|
|
101
|
+
if (!holder) {
|
|
102
|
+
const object = await createObject(db, { type: kind, kind: null, owner: owner.id, privacy: privacy ?? 'public', name, preview: '' });
|
|
103
|
+
if (owner.type === 'app')
|
|
104
|
+
await writeActsFor(db, object.id, await userOf(db, reader));
|
|
105
|
+
const token = issueToken();
|
|
106
|
+
await db.prepare(`INSERT INTO custom_objects (object, description, receiver_json, token_hash)
|
|
107
|
+
VALUES (?, ?, ?, ?)`).run(object.id, description, json, hash(token));
|
|
108
|
+
// A custom object a node registers reads from that node's run (Silas, 2026-09-30).
|
|
109
|
+
if (reader.class === 'node')
|
|
110
|
+
await db.prepare('UPDATE custom_objects SET registered_by = ? WHERE object = ?').run(reader.node.id, object.id);
|
|
111
|
+
if (json !== null)
|
|
112
|
+
await db.prepare('UPDATE objects SET reception = 2 WHERE id = ?').run(object.id);
|
|
113
|
+
await publish(db, { event: 'created', object, actor: reader.class === 'object' ? reader.object : reader.class === 'person' ? reader.person : reader.class === 'app' ? reader.app : reader.node, attrs: {} }, async (cwd) => await checkoutsForCwd(db, cwd));
|
|
114
|
+
return { object, token, created: true, changed: [] };
|
|
115
|
+
}
|
|
116
|
+
const current = await db.prepare('SELECT description, receiver_json FROM custom_objects WHERE object = ?').get(holder.id);
|
|
117
|
+
if (!current)
|
|
118
|
+
conflict('name_taken', `${owner.name}/${name} is not a custom object`);
|
|
119
|
+
const changed = [];
|
|
120
|
+
if (current.description !== description)
|
|
121
|
+
changed.push('description');
|
|
122
|
+
if (current.receiver_json !== json)
|
|
123
|
+
changed.push('receiver');
|
|
124
|
+
if (upserted?.changed.includes('events'))
|
|
125
|
+
changed.push('events');
|
|
126
|
+
if (upserted?.changed.includes('description') && !changed.includes('description'))
|
|
127
|
+
changed.push('description');
|
|
128
|
+
if (privacy !== undefined && holder.privacy !== privacy)
|
|
129
|
+
changed.push('privacy');
|
|
130
|
+
if (rotateToken)
|
|
131
|
+
changed.push('token');
|
|
132
|
+
if (changed.length === 0)
|
|
133
|
+
return { object: holder, created: false, changed };
|
|
134
|
+
const token = rotateToken ? issueToken() : undefined;
|
|
135
|
+
const object = changed.includes('privacy') ? { ...holder, privacy: privacy } : holder;
|
|
136
|
+
if (object !== holder)
|
|
137
|
+
await db.prepare('UPDATE objects SET privacy = ? WHERE id = ?').run(privacy, holder.id);
|
|
138
|
+
await db.prepare('UPDATE custom_objects SET description = ?, receiver_json = ?, token_hash = COALESCE(?, token_hash) WHERE object = ?')
|
|
139
|
+
.run(description, json, token === undefined ? null : hash(token), holder.id);
|
|
140
|
+
await db.prepare('UPDATE objects SET reception = ? WHERE id = ?').run(json === null ? 0 : 2, holder.id);
|
|
141
|
+
if (current.receiver_json !== json) {
|
|
142
|
+
const nowMs = Date.now();
|
|
143
|
+
if (json === null) {
|
|
144
|
+
const canceled = await db.prepare(`UPDATE deliveries SET canceled_at = ?, updated_at = ?
|
|
145
|
+
WHERE destination_id = ? AND state = 'pending' AND canceled_at IS NULL`).run(nowMs, nowMs, holder.id);
|
|
146
|
+
await db.prepare('UPDATE custom_objects SET dropped = dropped + ? WHERE object = ?').run(canceled.changes, holder.id);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
await db.prepare(`UPDATE deliveries SET next_attempt_at = ?, updated_at = ?
|
|
150
|
+
WHERE destination_id = ? AND state = 'pending' AND canceled_at IS NULL`)
|
|
151
|
+
.run(json === '"queue"' ? null : nowMs, nowMs, holder.id);
|
|
152
|
+
}
|
|
153
|
+
signalQueue(holder.id);
|
|
154
|
+
}
|
|
155
|
+
if (rotateToken)
|
|
156
|
+
signalQueue(holder.id);
|
|
157
|
+
await publish(db, { event: 'configured', object, actor: reader.class === 'object' ? reader.object : reader.class === 'person' ? reader.person : reader.class === 'app' ? reader.app : reader.node, attrs: { changed: changed.join(',') } }, async (cwd) => await checkoutsForCwd(db, cwd));
|
|
158
|
+
return { object, ...(token === undefined ? {} : { token }), created: false, changed };
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* The only writer of `object_kinds`. `source` says who is writing: an app's `register` call, an installed plugin's
|
|
162
|
+
* manifest, or a declaration that crossed from another machine (`peer`). Precedence: `manifest` and `register` rows
|
|
163
|
+
* are never overwritten by `peer`; a `manifest` write takes over a row it already owns and replaces a `peer` row;
|
|
164
|
+
* a `register` write leaves a `manifest` row alone (`skipped`) and replaces a `peer` row; another owner's
|
|
165
|
+
* `manifest` or `register` row is `kind_owned`. `read_json` is written only by `manifest`. A catalog is replaced,
|
|
166
|
+
* never merged. Runs in the caller's write transaction.
|
|
167
|
+
*/
|
|
168
|
+
export async function upsertKind(db, input) {
|
|
169
|
+
const { name, owner, description, events, read, source } = input;
|
|
170
|
+
if (!KIND.test(name))
|
|
171
|
+
throw usage(`invalid kind ${name}`);
|
|
172
|
+
if (eventCatalogReasons(events, name).length > 0)
|
|
173
|
+
throw usage('invalid custom event catalog');
|
|
174
|
+
// Concurrent writers of one new kind take turns: the later waits for the earlier commit, then updates instead of failing on the primary key.
|
|
175
|
+
await db.prepare('SELECT pg_advisory_xact_lock(hashtext(?))').get(`kind:${name}`);
|
|
176
|
+
const existing = await db.prepare('SELECT owner, description, events_json, read_json, source, declared FROM object_kinds WHERE name = ?').get(name);
|
|
177
|
+
const catalog = canonicalEvents(events);
|
|
178
|
+
const readJson = source === 'manifest' && read !== null ? JSON.stringify({ command: read.command }) : null;
|
|
179
|
+
const now = new Date().toISOString();
|
|
180
|
+
if (!existing) {
|
|
181
|
+
await db.prepare(`INSERT INTO object_kinds (name, owner, description, events_json, created_at, updated_at, read_json, source, declared)
|
|
182
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, 1)`).run(name, owner.id, description, catalog, now, now, readJson, source);
|
|
183
|
+
invalidateCustomKind(db, name);
|
|
184
|
+
return { outcome: 'inserted', changed: [] };
|
|
185
|
+
}
|
|
186
|
+
const sameOwner = existing.owner === owner.id;
|
|
187
|
+
if (source === 'peer') {
|
|
188
|
+
if (existing.source !== 'peer')
|
|
189
|
+
return { outcome: 'skipped', changed: [] };
|
|
190
|
+
}
|
|
191
|
+
else if (existing.source !== 'peer') {
|
|
192
|
+
if (!sameOwner)
|
|
193
|
+
conflict('kind_owned', `${name} belongs to another owner`);
|
|
194
|
+
if (source === 'register' && existing.source === 'manifest')
|
|
195
|
+
return { outcome: 'skipped', changed: [] };
|
|
196
|
+
}
|
|
197
|
+
const changed = [];
|
|
198
|
+
if (canonicalEvents(JSON.parse(existing.events_json)) !== catalog)
|
|
199
|
+
changed.push('events');
|
|
200
|
+
if (existing.description !== description)
|
|
201
|
+
changed.push('description');
|
|
202
|
+
if ((existing.read_json ?? null) !== readJson)
|
|
203
|
+
changed.push('read');
|
|
204
|
+
if (changed.length === 0 && sameOwner && existing.source === source && existing.declared === 1)
|
|
205
|
+
return { outcome: 'unchanged', changed };
|
|
206
|
+
await db.prepare('UPDATE object_kinds SET owner = ?, description = ?, events_json = ?, read_json = ?, source = ?, declared = 1, updated_at = ? WHERE name = ?')
|
|
207
|
+
.run(owner.id, description, catalog, readJson, source, now, name);
|
|
208
|
+
invalidateCustomKind(db, name);
|
|
209
|
+
return { outcome: 'updated', changed };
|
|
210
|
+
}
|
|
211
|
+
export async function publishCustom(db, object, actor, input) {
|
|
212
|
+
const kind = await db.prepare('SELECT events_json FROM object_kinds WHERE name = ?').get(object.type);
|
|
213
|
+
if (!kind || object.deleted_at !== null)
|
|
214
|
+
throw usage(`${object.id} is not a live custom object`);
|
|
215
|
+
const declared = JSON.parse(kind.events_json);
|
|
216
|
+
if (!LOCAL.test(input.event) || !Object.hasOwn(declared, input.event))
|
|
217
|
+
throw new CrtrError('unknown_event', `${object.type} declares ${Object.keys(declared).join(', ')}, not ${input.event}`, ExitCode.USAGE, { declared: Object.keys(declared), event: input.event });
|
|
218
|
+
if (typeof input.summary !== 'string')
|
|
219
|
+
throw usage('summary must be text');
|
|
220
|
+
const state = input.state === undefined ? null : JSON.stringify(input.state);
|
|
221
|
+
if (input.state !== undefined && state === undefined)
|
|
222
|
+
throw usage('state must be JSON-serializable');
|
|
223
|
+
if (Buffer.byteLength(JSON.stringify({ summary: input.summary, ...(input.state === undefined ? {} : { state: input.state }) })) > 64 * 1024)
|
|
224
|
+
throw new CrtrError('body_too_large', 'custom event summary and state exceed 64 KiB', ExitCode.USAGE);
|
|
225
|
+
if (state !== null && Buffer.byteLength(state) > 64 * 1024)
|
|
226
|
+
throw usage('state exceeds 64 KiB');
|
|
227
|
+
// Validate cause/hop before mutating the object's current value. Only a named cause carries depth.
|
|
228
|
+
const cause = input.cause ?? null;
|
|
229
|
+
const parent = cause === null ? null : await db.prepare(`SELECT depth FROM messages WHERE message_id = ?
|
|
230
|
+
UNION ALL SELECT depth FROM message_causes WHERE message_id = ? LIMIT 1`).get(cause, cause);
|
|
231
|
+
if (cause !== null && parent === undefined)
|
|
232
|
+
throw new CrtrError('unknown_cause', `no message ${cause}`, ExitCode.USAGE);
|
|
233
|
+
if (parent && parent.depth >= HOP_LIMIT)
|
|
234
|
+
throw new HopLimitError(parent.depth + 1);
|
|
235
|
+
const now = new Date().toISOString();
|
|
236
|
+
await db.prepare('UPDATE custom_objects SET summary = ?, state_json = ?, published_at = ? WHERE object = ?').run(input.summary, state, now, object.id);
|
|
237
|
+
await db.prepare('UPDATE objects SET preview = ? WHERE id = ?').run(input.summary.split('\n')[0], object.id);
|
|
238
|
+
return await publish(db, { event: `${object.type}.${input.event}`, object, actor, attrs: {}, messageBody: { summary: input.summary, ...(input.state === undefined ? {} : { state: input.state }) }, ...(input.cause === undefined ? {} : { cause: input.cause }) }, async (cwd) => await checkoutsForCwd(db, cwd));
|
|
239
|
+
}
|
|
240
|
+
export async function unregisterCustomObject(db, object, actor) {
|
|
241
|
+
if (object.deleted_at !== null)
|
|
242
|
+
return;
|
|
243
|
+
await publish(db, { event: 'deleted', object, actor, attrs: {} }, async (cwd) => await checkoutsForCwd(db, cwd));
|
|
244
|
+
const now = new Date().toISOString();
|
|
245
|
+
await db.prepare('UPDATE objects SET deleted_at = ?, reception = 0 WHERE id = ?').run(now, object.id);
|
|
246
|
+
await db.prepare("UPDATE deliveries SET canceled_at = ?, updated_at = ? WHERE destination_id = ? AND state = 'pending' AND canceled_at IS NULL")
|
|
247
|
+
.run(Date.now(), Date.now(), object.id);
|
|
248
|
+
signalQueue(object.id);
|
|
249
|
+
}
|
|
250
|
+
function canonicalEvents(events) {
|
|
251
|
+
return JSON.stringify(Object.fromEntries(Object.entries(events).sort(([a], [b]) => a.localeCompare(b))
|
|
252
|
+
.map(([name, spec]) => [name, { level: spec.level, ...(spec.supersedes === undefined ? {} : { supersedes: spec.supersedes }), ...(spec.ends_wait === undefined ? {} : { ends_wait: spec.ends_wait }) }])));
|
|
253
|
+
}
|
|
254
|
+
export async function pendingFor(db, object, afterSeq = 0) {
|
|
255
|
+
return await queueLines(db, object.id, afterSeq, 'pending');
|
|
256
|
+
}
|
|
257
|
+
/** A claimed push delivery has the identical document as a pending queue delivery. */
|
|
258
|
+
export async function pushLineFor(db, deliveryId) {
|
|
259
|
+
const row = await db.prepare('SELECT destination_id FROM deliveries WHERE delivery_id = ?').get(deliveryId);
|
|
260
|
+
if (!row)
|
|
261
|
+
return null;
|
|
262
|
+
return (await queueLines(db, row.destination_id, -1, 'handed_off')).find((line) => line.delivery_id === deliveryId) ?? null;
|
|
263
|
+
}
|
|
264
|
+
async function queueLines(db, destinationId, afterSeq, state) {
|
|
265
|
+
const rows = await db.prepare(`SELECT d.delivery_id, m.message_id, m.seq, m.event, m.level, m.object_id, m.actor_id, m.body_json, m.body_ref, m.depth, m.created_at,
|
|
266
|
+
o.type, o.name, owner.id AS owner_id
|
|
267
|
+
FROM deliveries d JOIN messages m ON m.message_id = d.message_id JOIN objects o ON o.id = m.object_id
|
|
268
|
+
LEFT JOIN objects owner ON owner.id = o.owner
|
|
269
|
+
WHERE d.destination_id = ? AND d.state = ? AND d.canceled_at IS NULL AND m.seq > ? ORDER BY m.seq`).all(destinationId, state, afterSeq);
|
|
270
|
+
return rows.map((row) => {
|
|
271
|
+
const body = row.body_json ? JSON.parse(row.body_json) : {};
|
|
272
|
+
return { delivery_id: row.delivery_id, message_id: row.message_id, seq: row.seq, event: row.event, level: row.level,
|
|
273
|
+
object: { id: row.object_id, type: row.type, name: row.name, owner: row.owner_id }, actor: row.actor_id,
|
|
274
|
+
attrs: body.push?.attrs ?? {}, ...(body.summary === undefined ? {} : { summary: body.summary }),
|
|
275
|
+
...(body.state === undefined ? {} : { state: body.state }), ...(body.push?.pointer === undefined ? {} : { pointer: body.push.pointer }),
|
|
276
|
+
depth: row.depth, created_at: row.created_at };
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
export async function acknowledge(db, object, deliveryIds) {
|
|
280
|
+
const now = Date.now();
|
|
281
|
+
const unknown = [];
|
|
282
|
+
let acknowledged = 0;
|
|
283
|
+
for (const id of deliveryIds) {
|
|
284
|
+
const changed = await db.prepare(`UPDATE deliveries SET state = 'acknowledged', acknowledged_at = ?, updated_at = ?
|
|
285
|
+
WHERE delivery_id = ? AND destination_id = ? AND state = 'pending' AND canceled_at IS NULL`).run(now, now, id, object.id);
|
|
286
|
+
if (Number(changed.changes))
|
|
287
|
+
acknowledged++;
|
|
288
|
+
else
|
|
289
|
+
unknown.push(id);
|
|
290
|
+
}
|
|
291
|
+
return { acknowledged, ...(unknown.length ? { unknown } : {}) };
|
|
292
|
+
}
|
|
293
|
+
export async function verifyPublishToken(db, object, token) {
|
|
294
|
+
const row = await db.prepare('SELECT token_hash FROM custom_objects WHERE object = ?').get(object.id);
|
|
295
|
+
const expected = Buffer.from(row?.token_hash ?? ''.padEnd(64, '0'), 'hex');
|
|
296
|
+
const actual = Buffer.from(hash(token), 'hex');
|
|
297
|
+
return token.startsWith('crtr_pub_') && object.deleted_at === null && expected.length === actual.length && timingSafeEqual(expected, actual) && row?.token_hash != null;
|
|
298
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ObjectRow, Reader } from './types.js';
|
|
2
|
+
import { type CanvasDb } from '../canvas/db.js';
|
|
3
|
+
/** Mark the node and everything it owns deleted except kept documents, which stay owned by the
|
|
4
|
+
* deleted node; drop the node's watches (both ends) and its `nodes` row. One savepoint, so it runs as one
|
|
5
|
+
* transaction or inside the caller's. Refuses a node whose managed worktree is unreconciled. */
|
|
6
|
+
export declare function deleteNodeWithOwned(db: CanvasDb, node: ObjectRow): Promise<void>;
|
|
7
|
+
/** Delete a profile object with what it owns, in the same flow as the profile's own deletion
|
|
8
|
+
* (`crtr profile delete`): its documents follow the node rule — deleted, except one a live document
|
|
9
|
+
* outside the deletion links to, which stays owned by the deleted profile until its last link goes.
|
|
10
|
+
* The object row stays with `deleted_at` (kept documents still name it); its handle is released so
|
|
11
|
+
* a new profile can take the name, and its identity row stays so a kept document's permission
|
|
12
|
+
* string still names the profile id. Returns whether a profile object existed for `profileId`. */
|
|
13
|
+
export declare function deleteProfileWithOwned(db: CanvasDb, profileId: string): Promise<boolean>;
|
|
14
|
+
/** The owner's undelete, inside the 30 days before the purge pass may take the row (`core/storage/purge.ts`). Only a document comes back:
|
|
15
|
+
* a deleted node has lost its `nodes` row and everything that cascaded from it, and a deleted profile has lost its handle. */
|
|
16
|
+
export declare function undeleteObject(db: CanvasDb, reader: Reader | null, object: ObjectRow): Promise<ObjectRow>;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/** Deleting a node with what it owns (spec §6 "Deletion follows the owner", A9). Rows are kept
|
|
2
|
+
* with `deleted_at` so every pointer resolves to "deleted" with the last preview. A document a
|
|
3
|
+
* live document outside the deletion links to is kept: it stays owned by the deleted node, under
|
|
4
|
+
* its name and rules, and is collected when its last link goes (`collectUnlinked`). */
|
|
5
|
+
import { hasUnreconciledWorktree } from '../canvas/worktrees.js';
|
|
6
|
+
import { usage } from '../errors.js';
|
|
7
|
+
import { deleteDocument, undeleteDocument } from './documents.js';
|
|
8
|
+
import { publish } from './events.js';
|
|
9
|
+
import { getById } from './objects.js';
|
|
10
|
+
import { writeActsFor } from '../permissions/facts.js';
|
|
11
|
+
import { rememberDeletedIsolated } from '../permissions/ceiling.js';
|
|
12
|
+
import { withCanvasWrite } from '../canvas/db.js';
|
|
13
|
+
/** Mark the node and everything it owns deleted except kept documents, which stay owned by the
|
|
14
|
+
* deleted node; drop the node's watches (both ends) and its `nodes` row. One savepoint, so it runs as one
|
|
15
|
+
* transaction or inside the caller's. Refuses a node whose managed worktree is unreconciled. */
|
|
16
|
+
export async function deleteNodeWithOwned(db, node) {
|
|
17
|
+
if (node.type !== 'node')
|
|
18
|
+
throw new Error(`deleteNodeWithOwned: ${node.id} is a ${node.type}, not a node`);
|
|
19
|
+
if (await hasUnreconciledWorktree(node.id))
|
|
20
|
+
throw new Error(`refusing to delete node ${node.id}: its managed worktree is not reconciled`);
|
|
21
|
+
await withCanvasWrite(async () => await deleteInside(db, node), { savepoint: true });
|
|
22
|
+
}
|
|
23
|
+
/** Delete a profile object with what it owns, in the same flow as the profile's own deletion
|
|
24
|
+
* (`crtr profile delete`): its documents follow the node rule — deleted, except one a live document
|
|
25
|
+
* outside the deletion links to, which stays owned by the deleted profile until its last link goes.
|
|
26
|
+
* The object row stays with `deleted_at` (kept documents still name it); its handle is released so
|
|
27
|
+
* a new profile can take the name, and its identity row stays so a kept document's permission
|
|
28
|
+
* string still names the profile id. Returns whether a profile object existed for `profileId`. */
|
|
29
|
+
export async function deleteProfileWithOwned(db, profileId) {
|
|
30
|
+
const profile = await db.prepare(`SELECT o.* FROM identities i JOIN objects o ON o.id = i.object
|
|
31
|
+
WHERE i.scheme = 'profile' AND i.external_id = ? AND o.type = 'profile' AND o.deleted_at IS NULL`)
|
|
32
|
+
.get(profileId);
|
|
33
|
+
if (!profile)
|
|
34
|
+
return false;
|
|
35
|
+
await withCanvasWrite(async () => {
|
|
36
|
+
// Nodes under the profile are never deleted with it: each goes back under its app, readable by the person it ran for.
|
|
37
|
+
const moved = await db.prepare(`UPDATE objects o SET owner = n.app FROM nodes n WHERE n.node_id = o.id AND o.owner = ? AND n.app IS NOT NULL
|
|
38
|
+
RETURNING o.id, n.sub`).all(profile.id);
|
|
39
|
+
for (const { id, sub } of moved)
|
|
40
|
+
if (sub)
|
|
41
|
+
await writeActsFor(db, id, sub);
|
|
42
|
+
await deleteOwned(db, profile);
|
|
43
|
+
await db.prepare('UPDATE objects SET deleted_at = ?, name = ? WHERE id = ?')
|
|
44
|
+
.run(new Date().toISOString(), `${profile.name}.deleted-${profile.id}`, profile.id);
|
|
45
|
+
await publish(db, { event: 'deleted', object: (await getById(db, profile.id)), actor: null, attrs: {} });
|
|
46
|
+
await db.prepare('DELETE FROM watches WHERE object = ? OR watcher = ?').run(profile.id, profile.id);
|
|
47
|
+
}, { savepoint: true });
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
/** The owner's undelete, inside the 30 days before the purge pass may take the row (`core/storage/purge.ts`). Only a document comes back:
|
|
51
|
+
* a deleted node has lost its `nodes` row and everything that cascaded from it, and a deleted profile has lost its handle. */
|
|
52
|
+
export async function undeleteObject(db, reader, object) {
|
|
53
|
+
if (object.type !== 'document')
|
|
54
|
+
throw usage(`${object.type} ${object.name} cannot be undeleted; only documents can`, { id: object.id });
|
|
55
|
+
return await undeleteDocument(db, reader, object);
|
|
56
|
+
}
|
|
57
|
+
async function deleteInside(db, node) {
|
|
58
|
+
const now = await deleteOwned(db, node);
|
|
59
|
+
await db.prepare('UPDATE objects SET deleted_at = ? WHERE id = ?').run(now, node.id);
|
|
60
|
+
await publish(db, { event: 'deleted', object: (await getById(db, node.id)), actor: null, attrs: {} });
|
|
61
|
+
await db.prepare('DELETE FROM watches WHERE object = ? OR watcher = ?').run(node.id, node.id);
|
|
62
|
+
// The run of a node of an isolated run outlives its row, so what it keeps stays confined (Silas, 2026-09-30).
|
|
63
|
+
await rememberDeletedIsolated(node.id, db);
|
|
64
|
+
// A surviving member of a run whose root goes joins no run: a `run_id` naming no row fails every event append
|
|
65
|
+
// for it. A member of an isolated run keeps its `run_id`, which confinement resolves through the tombstones above.
|
|
66
|
+
await db.prepare('UPDATE nodes SET run_id = NULL WHERE run_id = ? AND node_id != ? AND isolated = 0').run(node.id, node.id);
|
|
67
|
+
await db.prepare('DELETE FROM nodes WHERE node_id = ?').run(node.id);
|
|
68
|
+
}
|
|
69
|
+
/** Delete everything `owner` owns except kept documents; returns the deletion timestamp. */
|
|
70
|
+
async function deleteOwned(db, node) {
|
|
71
|
+
const owned = await db.prepare(`WITH RECURSIVE sub(id) AS (
|
|
72
|
+
SELECT id FROM objects WHERE owner = ?
|
|
73
|
+
UNION SELECT o.id FROM objects o JOIN sub ON o.owner = sub.id)
|
|
74
|
+
SELECT o.* FROM objects o JOIN sub ON sub.id = o.id WHERE o.deleted_at IS NULL`)
|
|
75
|
+
.all(node.id);
|
|
76
|
+
const deleting = new Set(owned.map((o) => o.id));
|
|
77
|
+
// A document a kept document links to is kept; keeping it can keep what it links to.
|
|
78
|
+
const linkers = db.prepare(`SELECT e.src FROM edges e JOIN objects s ON s.id = e.src
|
|
79
|
+
WHERE e.type = 'links-to' AND e.dst = ? AND s.deleted_at IS NULL`);
|
|
80
|
+
for (let changed = true; changed;) {
|
|
81
|
+
changed = false;
|
|
82
|
+
for (const o of owned) {
|
|
83
|
+
if (o.type !== 'document' || !deleting.has(o.id))
|
|
84
|
+
continue;
|
|
85
|
+
if ((await linkers.all(o.id)).some(({ src }) => !deleting.has(src))) {
|
|
86
|
+
deleting.delete(o.id);
|
|
87
|
+
changed = true;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
const now = new Date().toISOString();
|
|
92
|
+
for (const o of owned) {
|
|
93
|
+
if (!deleting.has(o.id))
|
|
94
|
+
continue;
|
|
95
|
+
if (o.type === 'document') {
|
|
96
|
+
await deleteDocument(db, null, o);
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
await db.prepare('UPDATE objects SET deleted_at = ? WHERE id = ?').run(now, o.id);
|
|
100
|
+
await publish(db, { event: 'deleted', object: (await getById(db, o.id)), actor: null, attrs: {} });
|
|
101
|
+
await db.prepare('DELETE FROM watches WHERE object = ? OR watcher = ?').run(o.id, o.id);
|
|
102
|
+
}
|
|
103
|
+
return now;
|
|
104
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { type ReposFn } from './reader.js';
|
|
2
|
+
import type { ObjectRow, Privacy, Reader, Revision, RuleSpec } from './types.js';
|
|
3
|
+
import { type CanvasDb } from '../canvas/db.js';
|
|
4
|
+
export interface DocumentFields {
|
|
5
|
+
preview?: string;
|
|
6
|
+
summary?: string | null;
|
|
7
|
+
privacy?: Privacy;
|
|
8
|
+
rules?: readonly RuleSpec[];
|
|
9
|
+
whyItExists?: string | null;
|
|
10
|
+
unlisted?: boolean;
|
|
11
|
+
lintIgnore?: readonly string[] | null;
|
|
12
|
+
extensions?: Record<string, Record<string, unknown>> | null;
|
|
13
|
+
}
|
|
14
|
+
export interface WriteSpec extends DocumentFields {
|
|
15
|
+
owner: ObjectRow;
|
|
16
|
+
name: string;
|
|
17
|
+
kind: string;
|
|
18
|
+
preview: string;
|
|
19
|
+
privacy: Privacy;
|
|
20
|
+
/** The permission schema type the document is evaluated under (`firstlight/memory`); omitted = `crtr/object`. */
|
|
21
|
+
schemaType?: string;
|
|
22
|
+
/** Facts written on the new document in the same transaction (`{ relation: 'editor', subject: 'user:abc' }`); they need a `schemaType`. */
|
|
23
|
+
relations?: Array<{
|
|
24
|
+
relation: string;
|
|
25
|
+
subject: string;
|
|
26
|
+
}>;
|
|
27
|
+
}
|
|
28
|
+
export type DocumentChange = {
|
|
29
|
+
body: string;
|
|
30
|
+
verbatim?: boolean;
|
|
31
|
+
} | {
|
|
32
|
+
replace: ReadonlyArray<{
|
|
33
|
+
old: string;
|
|
34
|
+
new: string;
|
|
35
|
+
}>;
|
|
36
|
+
verbatim?: boolean;
|
|
37
|
+
};
|
|
38
|
+
export interface DocumentRecord {
|
|
39
|
+
summary: string | null;
|
|
40
|
+
heads_key: string;
|
|
41
|
+
revision: number;
|
|
42
|
+
why_it_exists: string | null;
|
|
43
|
+
unlisted: boolean;
|
|
44
|
+
lint_ignore: string[] | null;
|
|
45
|
+
extensions: Record<string, Record<string, unknown>> | null;
|
|
46
|
+
source_path: string | null;
|
|
47
|
+
}
|
|
48
|
+
export interface Head extends Revision {
|
|
49
|
+
body: string;
|
|
50
|
+
}
|
|
51
|
+
export interface RenderedLink {
|
|
52
|
+
written_as: string;
|
|
53
|
+
object: ObjectRow;
|
|
54
|
+
deleted: boolean;
|
|
55
|
+
}
|
|
56
|
+
export interface DocumentRead {
|
|
57
|
+
object: ObjectRow;
|
|
58
|
+
record: DocumentRecord;
|
|
59
|
+
heads: Head[];
|
|
60
|
+
needsMerge: boolean;
|
|
61
|
+
links: RenderedLink[];
|
|
62
|
+
}
|
|
63
|
+
/** The object a reader acts as: its node, its app, or the person. */
|
|
64
|
+
export declare function actorOf(reader: Reader): ObjectRow;
|
|
65
|
+
/** Head revisions (no child), highest number first. More than one means the document needs a merge. */
|
|
66
|
+
export declare function heads(db: CanvasDb, doc: ObjectRow): Promise<Revision[]>;
|
|
67
|
+
export declare function documentRecord(db: CanvasDb, doc: ObjectRow): Promise<DocumentRecord>;
|
|
68
|
+
/** The `[[name]]` links a body names, in order, each once. */
|
|
69
|
+
export declare function linksIn(body: string): string[];
|
|
70
|
+
/** Derive the document's `links-to` edges from `body`, resolving each name in the writer's
|
|
71
|
+
* view. A name that resolves to nothing or to several objects stays text and is returned,
|
|
72
|
+
* and remembered so {@link linkNewlyNamed} can link it when a document by that name appears;
|
|
73
|
+
* one that may live on another runtime is neither linked nor reported. */
|
|
74
|
+
export declare function setRevisionLinks(db: CanvasDb, reader: Reader, doc: ObjectRow, body: string): Promise<string[]>;
|
|
75
|
+
/** `body` with each `[[link]]` the document's `links-to` edges resolved shown under its target's
|
|
76
|
+
* current name, so a rename rewrites no stored body yet every read shows the new name (spec §4).
|
|
77
|
+
* A link written as the target's id, or to a deleted target, stays as written. */
|
|
78
|
+
export declare function withCurrentNames(db: CanvasDb, doc: ObjectRow, body: string): Promise<string>;
|
|
79
|
+
/** Write the record fields that are present; `null` clears a nullable one. Rules are
|
|
80
|
+
* replaced when given. Does not publish; callers publish the act the fields belong to. */
|
|
81
|
+
export declare function applyDocumentFields(db: CanvasDb, doc: ObjectRow, fields: DocumentFields): Promise<ObjectRow>;
|
|
82
|
+
/** Create a document with its first revision. The actor becomes a watcher whose read base is
|
|
83
|
+
* the new revision; `created` is published. Returns the names that stayed text. */
|
|
84
|
+
export declare function writeDocument(db: CanvasDb, reader: Reader, spec: WriteSpec, body: string, reposFn?: ReposFn): Promise<{
|
|
85
|
+
object: ObjectRow;
|
|
86
|
+
revision: number;
|
|
87
|
+
unresolved: string[];
|
|
88
|
+
}>;
|
|
89
|
+
/** The base of the reader's next edit: the heads it last read or wrote, or null when it never has. */
|
|
90
|
+
export declare function readBase(db: CanvasDb, reader: Reader, doc: ObjectRow): Promise<string | null>;
|
|
91
|
+
/** Apply exact-text replacements to one head's body; each `old` must occur exactly once. */
|
|
92
|
+
export declare function applyReplacements(body: string, replace: ReadonlyArray<{
|
|
93
|
+
old: string;
|
|
94
|
+
new: string;
|
|
95
|
+
}>): string;
|
|
96
|
+
/**
|
|
97
|
+
* Commit a new revision made from `base` — the editor's read heads captured when it computed
|
|
98
|
+
* the change. No base → `read_first`. The commit is CAS on `documents.heads_key`: a base that is
|
|
99
|
+
* no longer current returns `{stale}` and writes nothing. The new revision's parents are every
|
|
100
|
+
* head, so an edit from a read that showed several heads merges them. `fields` are record
|
|
101
|
+
* changes applied with the edit.
|
|
102
|
+
*/
|
|
103
|
+
export declare function editDocument(db: CanvasDb, reader: Reader, doc: ObjectRow, change: DocumentChange, rationale: string, base: string | null, fields?: DocumentFields, reposFn?: ReposFn): Promise<{
|
|
104
|
+
revision: number;
|
|
105
|
+
heads_key: string;
|
|
106
|
+
unresolved: string[];
|
|
107
|
+
} | {
|
|
108
|
+
stale: {
|
|
109
|
+
heads_key: string;
|
|
110
|
+
revision: number;
|
|
111
|
+
};
|
|
112
|
+
}>;
|
|
113
|
+
/** Change record fields (preview, summary, privacy, rules, …). A null reader is repo sync, which carries no reader, checks no access and
|
|
114
|
+
* records no history. Any other caller's change is recorded as a revision with the current body, so `history` attributes it (author,
|
|
115
|
+
* `acting_app`, `acting_for`) with the rationale. It descends from the highest head only, so a document that needs a merge still does. A caller
|
|
116
|
+
* that held the heads before keeps holding them; one that had not read the body does not gain a read base it never earned. */
|
|
117
|
+
export declare function setDocumentRecord(db: CanvasDb, reader: Reader | null, doc: ObjectRow, fields: DocumentFields, rationale?: string): Promise<ObjectRow>;
|
|
118
|
+
/** Record that the reader holds the document's current heads: a `read` watch with that read
|
|
119
|
+
* base, and a `read` push. Delivery's content load calls this without reading the body. */
|
|
120
|
+
export declare function recordRead(db: CanvasDb, reader: Reader, doc: ObjectRow, reposFn?: ReposFn): Promise<void>;
|
|
121
|
+
/** The document's record, each head with its body (several = needs merge) and its links under
|
|
122
|
+
* their current names; records the read. */
|
|
123
|
+
export declare function readDocument(db: CanvasDb, reader: Reader, doc: ObjectRow, reposFn?: ReposFn): Promise<DocumentRead>;
|
|
124
|
+
/** Every revision, newest first, with authors, rationales and parents. Records nothing. */
|
|
125
|
+
export declare function history(db: CanvasDb, reader: Reader, doc: ObjectRow): Promise<Revision[]>;
|
|
126
|
+
/** Rename and/or re-own a document. Only `objects` changes: links point at the id, so no body is
|
|
127
|
+
* rewritten. A null actor is repo sync, which carries no reader and checks no access. */
|
|
128
|
+
export declare function moveDocument(db: CanvasDb, reader: Reader | null, doc: ObjectRow, to: {
|
|
129
|
+
name?: string;
|
|
130
|
+
owner?: ObjectRow;
|
|
131
|
+
}, reposFn?: ReposFn): Promise<ObjectRow>;
|
|
132
|
+
/** Mark the document deleted; the row stays with its last preview. Publishes `deleted`
|
|
133
|
+
* (level 8), then ends the watches on it and drops its rules. A null actor is repo sync or
|
|
134
|
+
* node deletion; `deletedAt` is the tombstone's own time when sync imports one. What it linked to is re-checked by {@link collectUnlinked}. */
|
|
135
|
+
export declare function deleteDocument(db: CanvasDb, reader: Reader | null, doc: ObjectRow, reposFn?: ReposFn, deletedAt?: string): Promise<ObjectRow>;
|
|
136
|
+
/** Repo sync: bring a deleted document back under `name` (checked free first). Revisions, record
|
|
137
|
+
* and links are untouched; the watches and rules deletion dropped are not recreated here. */
|
|
138
|
+
export declare function restoreDocument(db: CanvasDb, doc: ObjectRow, name: string, reposFn?: ReposFn): Promise<ObjectRow>;
|
|
139
|
+
/** The owner's undelete: bring a deleted document back under its own name inside the 30-day window (past it the purge pass may take the
|
|
140
|
+
* row). Its owner must be live. Revisions, record and links are untouched; the rules, watches and facts deletion dropped are not
|
|
141
|
+
* recreated (as {@link restoreDocument}). */
|
|
142
|
+
export declare function undeleteDocument(db: CanvasDb, reader: Reader | null, doc: ObjectRow, now?: number): Promise<ObjectRow>;
|
|
143
|
+
/** Delete each of `targets` that is a kept document nothing links to any more: a live document
|
|
144
|
+
* whose owner is deleted (node deletion kept it because a live document linked to it) and that
|
|
145
|
+
* no other live document links to. Each one deleted re-checks what it linked to, so chains of
|
|
146
|
+
* kept documents collapse; a cycle of kept documents keeps itself. Call it after a document
|
|
147
|
+
* stops linking to `targets` — it was deleted, or an edit dropped the links. */
|
|
148
|
+
export declare function collectUnlinked(db: CanvasDb, targets: Iterable<string>, reposFn?: ReposFn): Promise<void>;
|
|
149
|
+
export interface ImportedRevision {
|
|
150
|
+
rev_id?: string;
|
|
151
|
+
body_hash: string;
|
|
152
|
+
author: ObjectRow | null;
|
|
153
|
+
rationale: string | null;
|
|
154
|
+
created_at: string;
|
|
155
|
+
verbatim?: boolean;
|
|
156
|
+
}
|
|
157
|
+
export interface ImportSpec extends WriteSpec {
|
|
158
|
+
id?: string;
|
|
159
|
+
revisions: readonly ImportedRevision[];
|
|
160
|
+
}
|
|
161
|
+
/** Migration: a document with its linear history (oldest first; bodies already in the body
|
|
162
|
+
* store). Explicit authors and times; records no edge or watch and publishes nothing — the
|
|
163
|
+
* caller adds links (`setRevisionLinks`), acted-on edges and watches. */
|
|
164
|
+
export declare function importDocument(db: CanvasDb, spec: ImportSpec, reposFn?: ReposFn): Promise<ObjectRow>;
|
|
165
|
+
export interface SyncedRevision {
|
|
166
|
+
rev_id: string;
|
|
167
|
+
parents: readonly string[];
|
|
168
|
+
body_hash: string;
|
|
169
|
+
rationale: string | null;
|
|
170
|
+
created_at: string;
|
|
171
|
+
verbatim?: boolean;
|
|
172
|
+
}
|
|
173
|
+
/** Repo sync: add revisions that arrived from another runtime, skipping known `rev_id`s. No
|
|
174
|
+
* CAS, author NULL, publishes nothing; the caller publishes `edited` (with `needs_merge`
|
|
175
|
+
* when `headCount > 1`) and re-derives links from the head it trusts. */
|
|
176
|
+
export declare function insertImportedRevisions(db: CanvasDb, doc: ObjectRow, revs: readonly SyncedRevision[]): Promise<{
|
|
177
|
+
heads_key: string;
|
|
178
|
+
headCount: number;
|
|
179
|
+
}>;
|
|
180
|
+
/** Look up a live document by id (convenience for handlers and importers). */
|
|
181
|
+
export declare function documentById(db: CanvasDb, id: string): Promise<ObjectRow>;
|