@north-light/crouter 0.3.173 → 0.3.174
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/bin/runtime-selector.mjs +8 -1
- package/dist/api/__tests__/{client.test.js → serial/client.test.js} +2 -135
- package/dist/api/client.d.ts +12 -21
- package/dist/api/client.js +22 -31
- package/dist/api/dto/broker-ops.d.ts +158 -0
- package/dist/api/dto/broker-ops.js +6 -0
- package/dist/api/dto/crons.d.ts +6 -0
- package/dist/api/dto/human.d.ts +7 -1
- package/dist/api/dto/inbox.d.ts +1 -71
- package/dist/api/dto/inbox.js +1 -9
- package/dist/api/dto/nodes.d.ts +6 -7
- package/dist/api/dto/reviews.d.ts +1 -11
- package/dist/api/routes.d.ts +7 -4
- package/dist/api/routes.js +8 -5
- package/dist/build-root.js +3 -3
- package/dist/builtin-memory/04-base-worker.md +1 -4
- package/dist/builtin-memory/05-kinds/advisor/00-base.md +1 -5
- package/dist/builtin-memory/05-kinds/advisor/01-orchestrator.md +2 -7
- package/dist/builtin-memory/05-kinds/design/00-base.md +1 -6
- package/dist/builtin-memory/05-kinds/developer/00-base.md +1 -6
- package/dist/builtin-memory/05-kinds/explore/00-base.md +1 -4
- package/dist/builtin-memory/05-kinds/explore/01-orchestrator.md +1 -2
- package/dist/builtin-memory/05-kinds/general/00-base.md +1 -3
- package/dist/builtin-memory/05-kinds/plan/00-base.md +1 -6
- package/dist/builtin-memory/05-kinds/plan/reviewers/00-base.md +1 -2
- package/dist/builtin-memory/05-kinds/plan/reviewers/architecture-fit.md +1 -3
- package/dist/builtin-memory/05-kinds/plan/reviewers/code-smells.md +1 -3
- package/dist/builtin-memory/05-kinds/plan/reviewers/pattern-consistency.md +1 -3
- package/dist/builtin-memory/05-kinds/plan/reviewers/requirements-coverage.md +1 -3
- package/dist/builtin-memory/05-kinds/plan/reviewers/security.md +1 -4
- package/dist/builtin-memory/05-kinds/review/companion/00-base.md +2 -3
- package/dist/builtin-memory/05-kinds/spec/00-base.md +1 -2
- package/dist/builtin-memory/advisor/council.md +1 -6
- package/dist/builtin-memory/design.md +2 -7
- package/dist/builtin-memory/development.md +9 -14
- package/dist/builtin-memory/internal/marketplaces.md +2 -6
- package/dist/builtin-memory/internal/nodes-and-canvas.md +1 -1
- package/dist/builtin-memory/internal/plugins.md +2 -8
- package/dist/builtin-memory/internal/storage-tiers.md +1 -2
- package/dist/builtin-memory/testing.md +41 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/{provider-rotation.test.ts → serial/provider-rotation.test.ts} +27 -179
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/claude-plugin-commands.ts +5 -15
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/index.ts +1 -28
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/memory-slash-commands.ts +43 -88
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.js +7 -1
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.ts +9 -1
- package/dist/cli.js +2 -2
- package/dist/clients/attach/__tests__/attach-remote-readonly.test.js +37 -131
- package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.js +71 -152
- package/dist/clients/attach/__tests__/context-message.test.js +16 -174
- package/dist/clients/attach/__tests__/crtr-output.test.js +36 -2069
- package/dist/clients/attach/__tests__/diagram.test.js +2 -2
- package/dist/clients/attach/__tests__/edit-diff.test.js +0 -4
- package/dist/clients/attach/__tests__/file-review-focus.test.js +2 -1
- package/dist/clients/attach/__tests__/group-activity.test.js +40 -229
- package/dist/clients/attach/__tests__/oauth-dialog-lifecycle.test.js +26 -76
- package/dist/clients/attach/__tests__/prompt-preview.test.js +4 -70
- package/dist/clients/attach/__tests__/ref-autocomplete.test.js +11 -125
- package/dist/clients/attach/__tests__/titled-editor-preview.test.js +14 -205
- package/dist/clients/attach/command.d.ts +2 -1
- package/dist/clients/attach/command.js +81 -76
- package/dist/clients/attach/input/capabilities.d.ts +27 -0
- package/dist/clients/attach/input/capabilities.js +96 -0
- package/dist/clients/attach/input/controller.d.ts +20 -182
- package/dist/clients/attach/input/controller.js +128 -537
- 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/overlays/file-review.d.ts +0 -4
- package/dist/clients/attach/overlays/file-review.js +13 -5
- package/dist/clients/attach/overlays/graph.js +2 -10
- package/dist/clients/attach/render/chat-view.d.ts +4 -3
- package/dist/clients/attach/render/chat-view.js +39 -33
- package/dist/clients/attach/render/group-activity.d.ts +1 -0
- package/dist/clients/attach/render/group-activity.js +20 -13
- package/dist/clients/attach/render/group-recap.js +12 -3
- package/dist/clients/attach/session/connection.js +9 -15
- package/dist/clients/attach/session/editor-inventory.d.ts +6 -5
- package/dist/clients/attach/session/editor-inventory.js +7 -8
- package/dist/clients/attach/session/file-links.d.ts +13 -0
- package/dist/clients/attach/session/file-links.js +107 -0
- package/dist/clients/attach/session/frame.d.ts +3 -0
- package/dist/clients/attach/session/frame.js +10 -1
- package/dist/clients/attach/session/frames.js +2 -3
- package/dist/clients/attach/session/input-wiring.d.ts +4 -1
- package/dist/clients/attach/session/input-wiring.js +15 -14
- package/dist/clients/attach/session/mouse.d.ts +6 -1
- package/dist/clients/attach/session/mouse.js +8 -5
- package/dist/clients/attach/session/profile-files.js +18 -12
- package/dist/clients/attach/session/reconnect.js +1 -1
- package/dist/clients/attach/session/state-sync.js +1 -2
- package/dist/clients/attach/session/surface-host.d.ts +3 -2
- package/dist/clients/attach/session/surface-host.js +4 -4
- package/dist/clients/attach/slash/dispatch.d.ts +8 -31
- package/dist/clients/attach/slash/dispatch.js +34 -81
- package/dist/clients/attach/viewer.js +820 -860
- package/dist/clients/conversation/projection.d.ts +79 -0
- package/dist/clients/conversation/projection.js +341 -0
- package/dist/clients/inbox/__tests__/serial/inbox-controller.test.js +159 -0
- package/dist/clients/inbox/__tests__/serial/mount-panel.test.js +151 -0
- package/dist/clients/inbox/controller.d.ts +0 -4
- package/dist/clients/inbox/controller.js +0 -2
- package/dist/clients/inbox/review/__tests__/review-core.test.js +4 -293
- package/dist/clients/inbox/review/__tests__/teardown-notice.test.js +100 -0
- package/dist/clients/inbox/review/comments-client.d.ts +3 -2
- package/dist/clients/inbox/review/comments-client.js +12 -12
- package/dist/clients/inbox/review/companion-pane.d.ts +30 -0
- package/dist/clients/inbox/review/companion-pane.js +86 -0
- package/dist/clients/inbox/review/document-surface.d.ts +182 -0
- package/dist/clients/inbox/review/{document-region.js → document-surface.js} +252 -48
- package/dist/clients/inbox/review/frame.js +5 -4
- package/dist/clients/inbox/review/launch.d.ts +8 -8
- package/dist/clients/inbox/review/launch.js +52 -92
- package/dist/clients/inbox/review/nvim.d.ts +2 -0
- package/dist/clients/inbox/review/nvim.js +14 -12
- package/dist/clients/inbox/review/review-client.d.ts +12 -8
- package/dist/clients/inbox/review/review-client.js +46 -35
- package/dist/clients/inbox/review-adapter.d.ts +3 -10
- package/dist/clients/inbox/review-adapter.js +27 -19
- package/dist/clients/inbox/surface.d.ts +0 -4
- package/dist/clients/inbox/surface.js +0 -2
- package/dist/clients/surfaces/host.d.ts +11 -3
- package/dist/commands/__tests__/api-client-cold-start-diagnostic.test.js +7 -34
- package/dist/commands/__tests__/human.test.js +11 -322
- package/dist/commands/api-client.d.ts +5 -5
- package/dist/commands/api-client.js +6 -85
- package/dist/commands/canvas-browse.js +3 -29
- package/dist/commands/canvas-config.js +1 -1
- package/dist/commands/canvas-use.js +3 -3
- package/dist/commands/canvas.js +1 -1
- package/dist/commands/cron.js +5 -1
- package/dist/commands/human/queue.d.ts +0 -4
- package/dist/commands/human/queue.js +7 -40
- package/dist/commands/memory/list.d.ts +14 -0
- package/dist/commands/memory/list.js +35 -31
- package/dist/commands/memory/read.d.ts +7 -0
- package/dist/commands/memory/read.js +14 -8
- package/dist/commands/node/bash.d.ts +1 -0
- package/dist/commands/node/bash.js +198 -0
- package/dist/commands/node/create.d.ts +23 -0
- package/dist/commands/node/create.js +207 -0
- package/dist/commands/node/inspect.d.ts +2 -0
- package/dist/commands/node/inspect.js +302 -0
- package/dist/commands/node/lifecycle.d.ts +4 -0
- package/dist/commands/node/lifecycle.js +415 -0
- package/dist/commands/node/message.d.ts +1 -0
- package/dist/commands/node/message.js +164 -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 +82 -0
- package/dist/commands/node/wait.d.ts +1 -0
- package/dist/commands/node/wait.js +159 -0
- package/dist/commands/node-lifecycle-revive.js +10 -57
- package/dist/commands/node.d.ts +0 -42
- package/dist/commands/node.js +11 -2065
- package/dist/commands/search.js +1 -1
- 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 +67 -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 +46 -0
- package/dist/commands/surface/node/placement.js +124 -0
- package/dist/commands/surface-node.js +4 -1
- package/dist/commands/surface-reload.js +1 -2
- package/dist/commands/surface-tmux-spread.js +1 -1
- package/dist/commands/surface.js +5 -20
- package/dist/commands/sys/__tests__/setup-core.test.js +18 -271
- package/dist/commands/sys/config.js +6 -6
- package/dist/commands/sys/logs.js +1 -1
- package/dist/commands/sys/panels/broker-limits-panel.d.ts +17 -0
- package/dist/commands/sys/panels/broker-limits-panel.js +104 -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/keys-panel.d.ts +16 -0
- package/dist/commands/sys/panels/keys-panel.js +60 -0
- package/dist/commands/sys/panels/models-panel.d.ts +77 -0
- package/dist/commands/sys/panels/models-panel.js +647 -0
- package/dist/commands/sys/panels/panel.d.ts +45 -0
- package/dist/commands/sys/panels/panel.js +137 -0
- package/dist/commands/sys/panels/plugins-panel.d.ts +16 -0
- package/dist/commands/sys/panels/plugins-panel.js +80 -0
- package/dist/commands/sys/panels/prefs-panel.d.ts +21 -0
- package/dist/commands/sys/panels/prefs-panel.js +85 -0
- package/dist/commands/sys/panels/provider-panel.d.ts +62 -0
- package/dist/commands/sys/panels/provider-panel.js +538 -0
- package/dist/commands/sys/settings-shell.d.ts +55 -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 +31 -0
- package/dist/commands/sys/setup-core.d.ts +3 -33
- package/dist/commands/sys/setup-core.js +27 -78
- package/dist/commands/sys/setup-settings-runner.d.ts +24 -0
- package/dist/commands/sys/setup-settings-runner.js +63 -0
- package/dist/commands/sys/setup-wizard.d.ts +26 -125
- package/dist/commands/sys/setup-wizard.js +209 -2473
- package/dist/commands/sys/setup.js +5 -7
- package/dist/commands/sys.js +3 -2
- package/dist/core/__tests__/broker-extension-canvas-db-boundary.test.js +50 -0
- package/dist/core/__tests__/broker-launch-candidates.test.js +20 -9
- package/dist/core/__tests__/broker-preflight.test.js +1 -1
- package/dist/core/__tests__/canvas-inbox-watcher-hold.test.js +108 -27
- package/dist/core/__tests__/canvas-inbox-watcher.test.js +14 -0
- package/dist/core/__tests__/canvas.test.js +2 -36
- package/dist/core/__tests__/close.test.js +14 -3
- package/dist/core/__tests__/context-intro.test.js +32 -143
- package/dist/core/__tests__/cron-broker-capacity.test.js +22 -3
- package/dist/core/__tests__/daemon-boot.test.js +2 -20
- package/dist/core/__tests__/daemon-wedge.test.js +1 -1
- package/dist/core/__tests__/dead-node-policy-table.test.js +1 -18
- package/dist/core/__tests__/fixtures/fake-engine.d.ts +1 -1
- package/dist/core/__tests__/fixtures/fake-engine.js +2 -2
- package/dist/core/__tests__/fixtures/fake-pi-host.js +2 -2
- package/dist/core/__tests__/focuses.test.js +4 -98
- package/dist/core/__tests__/helpers/broker-clients.d.ts +0 -3
- package/dist/core/__tests__/helpers/broker-clients.js +0 -14
- package/dist/core/__tests__/helpers/harness.d.ts +0 -8
- package/dist/core/__tests__/helpers/harness.js +7 -87
- package/dist/core/__tests__/helpers/viewer-panes.js +1 -1
- package/dist/core/__tests__/inline-memory-refs.test.js +5 -134
- package/dist/core/__tests__/kickoff.test.js +1 -1
- package/dist/core/__tests__/memory-resolver-precedence.test.js +29 -1
- package/dist/core/__tests__/migration.test.js +35 -48
- package/dist/core/__tests__/on-read-dedup-resume.test.js +22 -12
- package/dist/core/__tests__/passive-subscription.test.js +26 -49
- package/dist/core/__tests__/preview-registry-sync.test.js +1 -2
- package/dist/core/__tests__/prune.test.js +94 -1
- package/dist/core/__tests__/review-model-floor.test.js +0 -32
- package/dist/core/__tests__/seam/broker-attach-multiclient.test.js +255 -0
- package/dist/core/__tests__/{full → seam}/broker-attach-stream.test.js +39 -7
- package/dist/core/__tests__/{full → seam}/broker-crash-teardown.test.js +30 -29
- package/dist/core/__tests__/{full → seam}/broker-pane-resolution.test.js +54 -5
- package/dist/core/__tests__/{full → seam}/broker-provider-retry.test.js +134 -82
- package/dist/core/__tests__/{full → seam}/broker-whip-interrupt.test.js +15 -4
- package/dist/core/__tests__/{full/idle-release-settlement.test.js → seam/dormancy-release.test.js} +69 -17
- package/dist/core/__tests__/{full/yield-message-transaction.test.js → seam/yield-refresh-transaction.test.js} +31 -9
- package/dist/core/__tests__/secrets.test.js +1 -7
- package/dist/core/__tests__/{broker-fork-seam.test.js → serial/broker-fork-seam.test.js} +58 -7
- package/dist/core/__tests__/{broker-sdk-wiring.test.js → serial/broker-sdk-wiring.test.js} +18 -162
- package/dist/core/__tests__/{broker-snapshot-history.test.js → serial/broker-snapshot-history.test.js} +9 -9
- package/dist/core/__tests__/{command-plugins.test.js → serial/command-plugins.test.js} +105 -15
- package/dist/core/__tests__/{deferred-no-wake.test.js → serial/deferred-no-wake.test.js} +23 -20
- package/dist/core/__tests__/{flagship-lifecycle.test.js → serial/flagship-lifecycle.test.js} +7 -7
- package/dist/core/__tests__/{host-teardown-process-group.test.js → serial/host-teardown-process-group.test.js} +6 -6
- package/dist/core/__tests__/{human-deliver-e2e.test.js → serial/human-deliver-e2e.test.js} +12 -12
- package/dist/core/__tests__/{live-mutation.test.js → serial/live-mutation.test.js} +5 -5
- package/dist/core/__tests__/{refresh-stall-recycle.test.js → serial/refresh-stall-recycle.test.js} +5 -14
- package/dist/core/__tests__/{revive.test.js → serial/revive.test.js} +15 -100
- package/dist/core/__tests__/{spawn-root.test.js → serial/spawn-root.test.js} +32 -15
- package/dist/core/__tests__/serial/subscription-delivery.test.js +126 -0
- package/dist/core/__tests__/serial/tmux-surface.test.js +256 -0
- package/dist/core/__tests__/{worktree.test.js → serial/worktree.test.js} +15 -15
- package/dist/core/__tests__/session-model.test.js +0 -18
- package/dist/core/__tests__/spawn-worktree-id-conflict.test.js +9 -0
- package/dist/core/__tests__/watchdog-abort-arms-retry.test.js +50 -0
- package/dist/core/broker-client/__tests__/transport-relay.test.js +15 -16
- package/dist/core/broker-client/__tests__/transport-socket.test.js +28 -0
- package/dist/core/broker-client/client.d.ts +2 -2
- package/dist/core/broker-client/client.js +4 -7
- package/dist/core/broker-client/transport-relay.d.ts +13 -19
- package/dist/core/broker-client/transport-relay.js +19 -34
- package/dist/core/broker-client/transport-socket.d.ts +2 -2
- package/dist/core/broker-client/transport-socket.js +9 -2
- package/dist/core/broker-client/transport.d.ts +7 -3
- package/dist/core/broker-client/transport.js +4 -4
- package/dist/core/canvas/__tests__/attention.test.js +1 -18
- package/dist/core/canvas/__tests__/remote-canvas-source.test.js +7 -64
- package/dist/core/canvas/__tests__/remote-transport.test.js +2 -3
- package/dist/core/canvas/__tests__/render-remote.test.js +7 -52
- package/dist/core/canvas/browse/app.d.ts +2 -17
- package/dist/core/canvas/browse/app.js +16 -88
- package/dist/core/canvas/browse/model.d.ts +0 -4
- package/dist/core/canvas/browse/model.js +1 -12
- package/dist/core/canvas/browse/render.js +6 -3
- package/dist/core/canvas/crons.d.ts +8 -5
- package/dist/core/canvas/crons.js +7 -6
- package/dist/core/canvas/extensions.d.ts +7 -3
- package/dist/core/canvas/extensions.js +16 -4
- package/dist/core/canvas/nav-model.d.ts +0 -4
- package/dist/core/canvas/nav-model.js +2 -14
- package/dist/core/canvas/node-order.d.ts +3 -0
- package/dist/core/canvas/node-order.js +12 -0
- package/dist/core/canvas/remote-canvas-source.d.ts +3 -6
- package/dist/core/canvas/remote-canvas-source.js +8 -15
- package/dist/core/command.js +11 -4
- package/dist/core/config.js +3 -1
- package/dist/core/events/envelope.js +1 -1
- package/dist/core/events/read.js +7 -21
- package/dist/core/events/source.d.ts +0 -2
- package/dist/core/events/source.js +0 -16
- package/dist/core/events/types.d.ts +1 -1
- package/dist/core/fault-classifier.d.ts +1 -1
- package/dist/core/feed/passive.d.ts +0 -11
- package/dist/core/feed/passive.js +1 -62
- package/dist/core/human/__tests__/{inbox-core.test.js → serial/inbox-core.test.js} +6 -6
- package/dist/core/keybindings/__tests__/resolve.test.js +1 -96
- package/dist/core/keybindings/background-bash.js +3 -4
- package/dist/core/keybindings/catalog.js +1 -1
- package/dist/core/memory/inline-ref-grammar.js +3 -3
- package/dist/core/memory-resolver.d.ts +11 -25
- package/dist/core/memory-resolver.js +51 -33
- package/dist/core/model-routes.d.ts +15 -0
- package/dist/core/model-routes.js +12 -0
- package/dist/core/pool-credential-store.js +1 -1
- package/dist/core/preview-registry.js +8 -9
- package/dist/core/profiles/__tests__/root-profile.test.js +4 -14
- package/dist/core/review/realize.d.ts +0 -13
- package/dist/core/review/realize.js +0 -40
- package/dist/core/review/types.d.ts +1 -1
- package/dist/core/runtime/__tests__/engine-route.test.js +2 -2
- package/dist/core/runtime/bearings.js +1 -11
- package/dist/core/runtime/broker/client-registry.d.ts +33 -0
- package/dist/core/runtime/broker/client-registry.js +164 -0
- package/dist/core/runtime/broker/daemon-ops.d.ts +19 -0
- package/dist/core/runtime/broker/daemon-ops.js +49 -0
- package/dist/core/runtime/broker/event-projection.d.ts +42 -0
- package/dist/core/runtime/broker/event-projection.js +178 -0
- package/dist/core/runtime/broker/fault-retry.d.ts +39 -0
- package/dist/core/runtime/broker/fault-retry.js +277 -0
- package/dist/core/runtime/broker/frame-dispatch.d.ts +238 -0
- package/dist/core/runtime/broker/frame-dispatch.js +1537 -0
- package/dist/core/runtime/broker/inbox.d.ts +22 -0
- package/dist/core/runtime/broker/inbox.js +167 -0
- package/dist/core/runtime/broker/passive.d.ts +16 -0
- package/dist/core/runtime/broker/passive.js +44 -0
- package/dist/core/runtime/broker/read-ops.d.ts +23 -0
- package/dist/core/runtime/broker/read-ops.js +150 -0
- package/dist/core/runtime/broker/rebind.d.ts +74 -0
- package/dist/core/runtime/broker/rebind.js +211 -0
- package/dist/core/runtime/broker/tool-groups.d.ts +39 -0
- package/dist/core/runtime/broker/tool-groups.js +244 -0
- package/dist/core/runtime/broker-extension-render.d.ts +11 -0
- package/dist/core/runtime/broker-extension-render.js +181 -0
- package/dist/core/runtime/broker-persona-guidance.d.ts +13 -0
- package/dist/core/runtime/broker-persona-guidance.js +58 -0
- package/dist/core/runtime/broker-protocol.d.ts +1 -1
- package/dist/core/runtime/broker-protocol.js +1 -1
- package/dist/core/runtime/broker.d.ts +5 -196
- package/dist/core/runtime/broker.js +276 -3059
- package/dist/core/runtime/canvas-extensions.js +11 -2
- package/dist/core/runtime/fault.js +1 -1
- package/dist/core/runtime/model-selection.d.ts +9 -0
- package/dist/core/runtime/model-selection.js +12 -0
- package/dist/core/runtime/model-swap.d.ts +3 -3
- package/dist/core/runtime/model-swap.js +33 -25
- package/dist/core/runtime/placement-tmux.d.ts +3 -14
- package/dist/core/runtime/placement-tmux.js +11 -80
- package/dist/core/runtime/placement.d.ts +4 -2
- package/dist/core/runtime/placement.js +7 -12
- package/dist/core/runtime/promote.d.ts +14 -1
- package/dist/core/runtime/promote.js +1 -1
- package/dist/core/runtime/reset.d.ts +1 -1
- package/dist/core/runtime/roadmap.js +1 -1
- package/dist/core/runtime/spawn.d.ts +8 -0
- package/dist/core/runtime/spawn.js +36 -6
- package/dist/core/runtime/stop-guard.d.ts +4 -3
- package/dist/core/runtime/stop-guard.js +36 -18
- package/dist/core/runtime/stop-signals.d.ts +4 -1
- package/dist/core/runtime/stream-watchdog.js +4 -5
- package/dist/core/runtime/structured-output.d.ts +15 -2
- package/dist/core/runtime/structured-output.js +35 -12
- package/dist/core/runtime/tmux-bindings.d.ts +25 -0
- package/dist/core/runtime/tmux-bindings.js +682 -0
- package/dist/core/runtime/tmux-chrome.d.ts +2 -1
- package/dist/core/runtime/tmux-chrome.js +3 -2
- package/dist/core/runtime/{tmux.d.ts → tmux-driver.d.ts} +18 -26
- package/dist/core/runtime/tmux-driver.js +598 -0
- package/dist/core/runtime/view-socket.d.ts +14 -0
- package/dist/core/runtime/view-socket.js +83 -0
- package/dist/core/session-model/session-state.d.ts +1 -2
- package/dist/core/session-model/session-state.js +5 -8
- package/dist/core/spawn.d.ts +1 -1
- package/dist/core/spawn.js +2 -2
- package/dist/core/substrate/gate.d.ts +1 -1
- package/dist/core/substrate/on-read-pure.d.ts +7 -0
- package/dist/core/substrate/on-read-pure.js +272 -0
- package/dist/core/termrender/termrender.js +32 -2
- package/dist/core/user-settings.d.ts +23 -1
- package/dist/core/user-settings.js +18 -1
- package/dist/daemon/api/__tests__/node-model-validation.test.js +134 -0
- package/dist/daemon/api/__tests__/review-terminal-conflict.test.js +98 -0
- package/dist/daemon/api/__tests__/{full → seam}/api-server.test.js +6 -48
- package/dist/daemon/api/__tests__/{full → seam}/b10-attach-modelauth.test.js +17 -44
- package/dist/daemon/api/__tests__/{full/push-parity.test.js → seam/leaf-api-parity.test.js} +61 -42
- package/dist/daemon/api/bridge.js +40 -81
- package/dist/daemon/api/handlers/broker-ops.d.ts +2 -0
- package/dist/daemon/api/handlers/broker-ops.js +383 -0
- package/dist/daemon/api/handlers/crons.js +9 -4
- package/dist/daemon/api/handlers/files.js +6 -7
- package/dist/daemon/api/handlers/inbox.js +2 -340
- package/dist/daemon/api/handlers/nodes.d.ts +10 -1
- package/dist/daemon/api/handlers/nodes.js +74 -39
- package/dist/daemon/api/handlers/review-comments.js +5 -1
- package/dist/daemon/api/handlers/reviews.js +0 -19
- package/dist/daemon/api/map.js +25 -4
- package/dist/daemon/api/router.js +2 -3
- package/dist/daemon/api/server.js +5 -7
- package/dist/daemon/cron-run.d.ts +4 -0
- package/dist/daemon/cron-run.js +30 -13
- package/dist/daemon/crtrd.d.ts +3 -58
- package/dist/daemon/crtrd.js +28 -1244
- package/dist/daemon/manage.js +0 -1
- package/dist/daemon/reconcilers/broker-supervision.d.ts +50 -0
- package/dist/daemon/reconcilers/broker-supervision.js +549 -0
- package/dist/daemon/reconcilers/cron-lane.d.ts +10 -0
- package/dist/daemon/reconcilers/cron-lane.js +32 -0
- package/dist/daemon/reconcilers/dormant-inbox.d.ts +18 -0
- package/dist/daemon/reconcilers/dormant-inbox.js +143 -0
- package/dist/daemon/reconcilers/storage-maintenance.d.ts +22 -0
- package/dist/daemon/reconcilers/storage-maintenance.js +213 -0
- package/dist/daemon/review/finish.js +2 -5
- package/dist/pi-extensions/__tests__/canvas-context-intro.test.js +34 -53
- package/dist/pi-extensions/__tests__/canvas-recap.test.js +16 -113
- package/dist/pi-extensions/__tests__/canvas-stophook-agentend.test.js +72 -99
- package/dist/pi-extensions/__tests__/canvas-stophook-context-nudge.test.js +29 -12
- package/dist/pi-extensions/broker-local.d.ts +20 -0
- package/dist/pi-extensions/broker-local.js +89 -0
- package/dist/pi-extensions/canvas-context-intro.d.ts +3 -3
- package/dist/pi-extensions/canvas-context-intro.js +22 -11
- package/dist/pi-extensions/canvas-doc-substrate.js +17 -34
- package/dist/pi-extensions/canvas-goal-capture.js +7 -12
- package/dist/pi-extensions/canvas-inbox-watcher.js +124 -139
- package/dist/pi-extensions/canvas-passive-context.d.ts +3 -3
- package/dist/pi-extensions/canvas-passive-context.js +22 -18
- package/dist/pi-extensions/canvas-recap.d.ts +2 -2
- package/dist/pi-extensions/canvas-recap.js +48 -21
- package/dist/pi-extensions/canvas-review-boundary.js +10 -4
- package/dist/pi-extensions/canvas-stophook.d.ts +0 -5
- package/dist/pi-extensions/canvas-stophook.js +149 -431
- package/dist/pi-extensions/canvas-structured-output.js +52 -30
- package/dist/pi-extensions/envelope-merge.d.ts +13 -0
- package/dist/pi-extensions/envelope-merge.js +29 -0
- package/dist/shared/working-activity.d.ts +3 -2
- package/dist/shared/working-activity.js +3 -2
- package/dist/types.d.ts +6 -5
- package/dist/types.js +2 -2
- package/docs/compat/hearth-crtr-v1.md +4 -12
- package/docs/compat/hearth-crtr-v2.md +3 -11
- package/docs/compat/hearth-crtr-v3.md +4 -12
- package/docs/compat/hearth-crtr-v4.md +3 -11
- package/docs/compat/hearth-crtr-v5.md +3 -11
- package/docs/public-api.md +3 -7
- package/package.json +7 -49
- package/runtime.lock.json +2766 -14533
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/claude-plugin-commands.test.ts +0 -49
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/memory-slash-commands.test.ts +0 -194
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/statusline.test.ts +0 -68
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/test.ts +0 -119
- package/dist/clients/attach/__tests__/attach-chrome-remote.test.js +0 -439
- package/dist/clients/attach/__tests__/attach-keybindings.test.js +0 -170
- package/dist/clients/attach/__tests__/crtr-output-coverage.test.js +0 -57
- package/dist/clients/attach/__tests__/editor-frame-title.test.js +0 -19
- package/dist/clients/attach/__tests__/input-controller-extension-command.test.js +0 -32
- package/dist/clients/attach/__tests__/markdown-headings.test.js +0 -35
- package/dist/clients/attach/__tests__/session-identity-refresh.test.js +0 -32
- package/dist/clients/conversation/conversation.d.ts +0 -65
- package/dist/clients/conversation/conversation.js +0 -318
- package/dist/clients/conversation/frames.d.ts +0 -30
- package/dist/clients/conversation/frames.js +0 -52
- package/dist/clients/conversation/region.d.ts +0 -51
- package/dist/clients/conversation/region.js +0 -265
- package/dist/clients/inbox/__tests__/inbox-controller.test.js +0 -247
- package/dist/clients/inbox/__tests__/mount-panel.test.js +0 -776
- package/dist/clients/inbox/review/__tests__/remap.test.js +0 -196
- package/dist/clients/inbox/review/columns.d.ts +0 -22
- package/dist/clients/inbox/review/columns.js +0 -40
- package/dist/clients/inbox/review/composition.d.ts +0 -60
- package/dist/clients/inbox/review/composition.js +0 -278
- package/dist/clients/inbox/review/document-region.d.ts +0 -120
- package/dist/clients/surfaces/region.d.ts +0 -16
- package/dist/clients/web/__tests__/push-engine.test.js +0 -158
- package/dist/clients/web/__tests__/push-registry.test.d.ts +0 -1
- package/dist/clients/web/__tests__/push-registry.test.js +0 -177
- package/dist/clients/web/dev-server.d.ts +0 -7
- package/dist/clients/web/dev-server.js +0 -46
- package/dist/clients/web/events.d.ts +0 -19
- package/dist/clients/web/events.js +0 -163
- package/dist/clients/web/push-engine.d.ts +0 -44
- package/dist/clients/web/push-engine.js +0 -125
- package/dist/clients/web/push-registry.d.ts +0 -85
- package/dist/clients/web/push-registry.js +0 -373
- package/dist/clients/web/server.d.ts +0 -19
- package/dist/clients/web/server.js +0 -661
- package/dist/clients/web/web-client/shared/protocol.d.ts +0 -214
- package/dist/clients/web/web-client/shared/protocol.js +0 -8
- package/dist/clients/web/web-cmd.d.ts +0 -2
- package/dist/clients/web/web-cmd.js +0 -141
- package/dist/commands/__tests__/api-canvas-source.test.d.ts +0 -1
- package/dist/commands/__tests__/api-canvas-source.test.js +0 -37
- package/dist/commands/__tests__/canvas-config.test.d.ts +0 -1
- package/dist/commands/__tests__/canvas-config.test.js +0 -107
- package/dist/commands/__tests__/node-no-kickoff-flag.test.d.ts +0 -1
- package/dist/commands/__tests__/node-no-kickoff-flag.test.js +0 -73
- package/dist/commands/__tests__/node-worktree-flag.test.d.ts +0 -1
- package/dist/commands/__tests__/node-worktree-flag.test.js +0 -49
- package/dist/commands/__tests__/search-contents.test.d.ts +0 -1
- package/dist/commands/__tests__/search-contents.test.js +0 -52
- package/dist/commands/memory/__tests__/lint.test.d.ts +0 -1
- package/dist/commands/memory/__tests__/lint.test.js +0 -15
- package/dist/commands/sys/__tests__/config-broker-thresholds.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/config-broker-thresholds.test.js +0 -95
- package/dist/commands/sys/__tests__/config-keybindings.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/config-keybindings.test.js +0 -55
- package/dist/commands/sys/__tests__/helpers/setup-runtime.d.ts +0 -5
- package/dist/commands/sys/__tests__/helpers/setup-runtime.js +0 -19
- package/dist/commands/sys/__tests__/setup-front-door.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/setup-front-door.test.js +0 -102
- package/dist/commands/sys/__tests__/setup-models.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/setup-models.test.js +0 -205
- package/dist/commands/sys/__tests__/setup-providers-viewport.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/setup-providers-viewport.test.js +0 -155
- package/dist/commands/sys/__tests__/sync-deps.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/sync-deps.test.js +0 -179
- package/dist/commands/sys/__tests__/sync-import.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/sync-import.test.js +0 -315
- package/dist/core/__tests__/base-worker-prompt.test.d.ts +0 -1
- package/dist/core/__tests__/base-worker-prompt.test.js +0 -57
- package/dist/core/__tests__/command-plugins-surfaces.test.d.ts +0 -1
- package/dist/core/__tests__/command-plugins-surfaces.test.js +0 -359
- package/dist/core/__tests__/connection-reconnect-resume.test.d.ts +0 -1
- package/dist/core/__tests__/connection-reconnect-resume.test.js +0 -36
- package/dist/core/__tests__/finalization-migration.test.d.ts +0 -1
- package/dist/core/__tests__/finalization-migration.test.js +0 -38
- package/dist/core/__tests__/fixtures/extra-extension.d.ts +0 -1
- package/dist/core/__tests__/fixtures/extra-extension.js +0 -3
- package/dist/core/__tests__/fixtures/spawn-proof-target.test.d.ts +0 -1
- package/dist/core/__tests__/fixtures/spawn-proof-target.test.js +0 -15
- package/dist/core/__tests__/fork.test.d.ts +0 -1
- package/dist/core/__tests__/fork.test.js +0 -108
- package/dist/core/__tests__/full/broker-attach-limits.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-attach-limits.test.js +0 -147
- package/dist/core/__tests__/full/broker-deliver-ack.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-deliver-ack.test.js +0 -73
- package/dist/core/__tests__/full/broker-dialogs.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-dialogs.test.js +0 -180
- package/dist/core/__tests__/full/broker-display-snapshot.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-display-snapshot.test.js +0 -75
- package/dist/core/__tests__/full/broker-dormant-wake.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-dormant-wake.test.js +0 -130
- package/dist/core/__tests__/full/broker-model-changed-broadcast.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-model-changed-broadcast.test.js +0 -57
- package/dist/core/__tests__/full/broker-navigate-tree-rewelcome.test.d.ts +0 -1
- package/dist/core/__tests__/full/broker-navigate-tree-rewelcome.test.js +0 -80
- package/dist/core/__tests__/full/cascade-close.test.d.ts +0 -1
- package/dist/core/__tests__/full/cascade-close.test.js +0 -240
- package/dist/core/__tests__/full/detach-focus.test.d.ts +0 -1
- package/dist/core/__tests__/full/detach-focus.test.js +0 -126
- package/dist/core/__tests__/full/idle-release-settlement.test.d.ts +0 -1
- package/dist/core/__tests__/full/issue-146-yield-spawn-focus.test.d.ts +0 -1
- package/dist/core/__tests__/full/issue-146-yield-spawn-focus.test.js +0 -107
- package/dist/core/__tests__/full/park-clock-release.test.d.ts +0 -1
- package/dist/core/__tests__/full/park-clock-release.test.js +0 -56
- package/dist/core/__tests__/full/yield-message-transaction.test.d.ts +0 -1
- package/dist/core/__tests__/memory-index-render.test.d.ts +0 -1
- package/dist/core/__tests__/memory-index-render.test.js +0 -60
- package/dist/core/__tests__/model-routes.test.d.ts +0 -1
- package/dist/core/__tests__/model-routes.test.js +0 -41
- package/dist/core/__tests__/on-read-identity.test.d.ts +0 -1
- package/dist/core/__tests__/on-read-identity.test.js +0 -61
- package/dist/core/__tests__/phase4-review-migration.test.d.ts +0 -1
- package/dist/core/__tests__/phase4-review-migration.test.js +0 -100
- package/dist/core/__tests__/prune-to-limit.test.d.ts +0 -1
- package/dist/core/__tests__/prune-to-limit.test.js +0 -126
- package/dist/core/__tests__/reset.test.d.ts +0 -1
- package/dist/core/__tests__/reset.test.js +0 -69
- package/dist/core/__tests__/spawn-no-kickoff.test.d.ts +0 -1
- package/dist/core/__tests__/spawn-no-kickoff.test.js +0 -115
- package/dist/core/__tests__/steer-note.test.d.ts +0 -1
- package/dist/core/__tests__/steer-note.test.js +0 -41
- package/dist/core/__tests__/subcommand-tier.test.d.ts +0 -1
- package/dist/core/__tests__/subcommand-tier.test.js +0 -99
- package/dist/core/__tests__/subscription-delivery.test.js +0 -211
- package/dist/core/__tests__/test-runner-cheap-sharding.test.d.ts +0 -1
- package/dist/core/__tests__/test-runner-cheap-sharding.test.js +0 -97
- package/dist/core/__tests__/tmux-surface.test.js +0 -484
- package/dist/core/__tests__/wake-bearings.test.d.ts +0 -1
- package/dist/core/__tests__/wake-bearings.test.js +0 -102
- package/dist/core/canvas/__tests__/remote-event-stream.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/remote-event-stream.test.js +0 -146
- package/dist/core/canvas/__tests__/source-resolve.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/source-resolve.test.js +0 -77
- package/dist/core/canvas/browse/__tests__/model.test.d.ts +0 -1
- package/dist/core/canvas/browse/__tests__/model.test.js +0 -290
- package/dist/core/canvas/browse/__tests__/rebuild-coalescer.test.d.ts +0 -1
- package/dist/core/canvas/browse/__tests__/rebuild-coalescer.test.js +0 -134
- package/dist/core/canvas/browse/__tests__/render.test.d.ts +0 -1
- package/dist/core/canvas/browse/__tests__/render.test.js +0 -111
- package/dist/core/canvas/browse/rebuild-coalescer.d.ts +0 -7
- package/dist/core/canvas/browse/rebuild-coalescer.js +0 -61
- package/dist/core/canvas/remote-event-stream.d.ts +0 -24
- package/dist/core/canvas/remote-event-stream.js +0 -94
- package/dist/core/feed/__tests__/coalesce-human.test.d.ts +0 -1
- package/dist/core/feed/__tests__/coalesce-human.test.js +0 -36
- package/dist/core/feed/__tests__/empty-node-guard.test.d.ts +0 -1
- package/dist/core/feed/__tests__/empty-node-guard.test.js +0 -45
- package/dist/core/host-exports/__tests__/export-prunes-boot-skill.test.d.ts +0 -1
- package/dist/core/host-exports/__tests__/export-prunes-boot-skill.test.js +0 -84
- package/dist/core/human/__tests__/visible-paths.test.d.ts +0 -1
- package/dist/core/human/__tests__/visible-paths.test.js +0 -28
- package/dist/core/keybindings/__tests__/inbox-affordance.test.d.ts +0 -1
- package/dist/core/keybindings/__tests__/inbox-affordance.test.js +0 -38
- package/dist/core/review/__tests__/project.test.d.ts +0 -1
- package/dist/core/review/__tests__/project.test.js +0 -71
- package/dist/core/runtime/__tests__/command-expansion.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/command-expansion.test.js +0 -25
- package/dist/core/runtime/__tests__/session-visibility.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/session-visibility.test.js +0 -119
- package/dist/core/runtime/__tests__/spawn-at-given-id.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/spawn-at-given-id.test.js +0 -34
- package/dist/core/runtime/tmux.js +0 -1314
- package/dist/daemon/api/__tests__/full/push-parity.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/full/worktree-parity.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/full/worktree-parity.test.js +0 -160
- package/dist/daemon/api/__tests__/inbox.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/inbox.test.js +0 -489
- package/dist/web-client/apple-touch-icon.png +0 -0
- package/dist/web-client/assets/fragment-mono-latin-400-normal-BYwT3kSJ.woff +0 -0
- package/dist/web-client/assets/fragment-mono-latin-400-normal-yxdJ5AmL.woff2 +0 -0
- package/dist/web-client/assets/fragment-mono-latin-ext-400-normal-BbKYyvR9.woff2 +0 -0
- package/dist/web-client/assets/fragment-mono-latin-ext-400-normal-CT4YFKeK.woff +0 -0
- package/dist/web-client/assets/index-CCPaLeW7.css +0 -2
- package/dist/web-client/assets/index-kyOWsnZK.js +0 -86
- package/dist/web-client/assets/martian-mono-cyrillic-wght-normal-B84CD5C_.woff2 +0 -0
- package/dist/web-client/assets/martian-mono-latin-ext-wght-normal-DlL6xMw5.woff2 +0 -0
- package/dist/web-client/assets/martian-mono-latin-wght-normal-5W32yIyr.woff2 +0 -0
- package/dist/web-client/assets/workbox-window.prod.es5-Bd17z0YL.js +0 -2
- package/dist/web-client/icon-192.png +0 -0
- package/dist/web-client/icon-512.png +0 -0
- package/dist/web-client/icon-maskable-512.png +0 -0
- package/dist/web-client/index.html +0 -17
- package/dist/web-client/manifest.webmanifest +0 -1
- package/dist/web-client/sw.js +0 -1
- /package/dist/api/__tests__/{client.test.d.ts → serial/client.test.d.ts} +0 -0
- /package/dist/clients/inbox/__tests__/{inbox-controller.test.d.ts → serial/inbox-controller.test.d.ts} +0 -0
- /package/dist/clients/inbox/__tests__/{mount-panel.test.d.ts → serial/mount-panel.test.d.ts} +0 -0
- /package/dist/clients/{attach/__tests__/attach-chrome-remote.test.d.ts → inbox/review/__tests__/teardown-notice.test.d.ts} +0 -0
- /package/dist/{clients/attach/__tests__/attach-keybindings.test.d.ts → core/__tests__/broker-extension-canvas-db-boundary.test.d.ts} +0 -0
- /package/dist/{clients/attach/__tests__/crtr-output-coverage.test.d.ts → core/__tests__/seam/broker-attach-multiclient.test.d.ts} +0 -0
- /package/dist/core/__tests__/{full → seam}/broker-attach-stream.test.d.ts +0 -0
- /package/dist/core/__tests__/{full → seam}/broker-crash-teardown.test.d.ts +0 -0
- /package/dist/core/__tests__/{full → seam}/broker-pane-resolution.test.d.ts +0 -0
- /package/dist/core/__tests__/{full → seam}/broker-provider-retry.test.d.ts +0 -0
- /package/dist/core/__tests__/{full → seam}/broker-whip-interrupt.test.d.ts +0 -0
- /package/dist/{clients/attach/__tests__/editor-frame-title.test.d.ts → core/__tests__/seam/dormancy-release.test.d.ts} +0 -0
- /package/dist/{clients/attach/__tests__/input-controller-extension-command.test.d.ts → core/__tests__/seam/yield-refresh-transaction.test.d.ts} +0 -0
- /package/dist/core/__tests__/{broker-fork-seam.test.d.ts → serial/broker-fork-seam.test.d.ts} +0 -0
- /package/dist/core/__tests__/{broker-sdk-wiring.test.d.ts → serial/broker-sdk-wiring.test.d.ts} +0 -0
- /package/dist/core/__tests__/{broker-snapshot-history.test.d.ts → serial/broker-snapshot-history.test.d.ts} +0 -0
- /package/dist/core/__tests__/{command-plugins.test.d.ts → serial/command-plugins.test.d.ts} +0 -0
- /package/dist/core/__tests__/{deferred-no-wake.test.d.ts → serial/deferred-no-wake.test.d.ts} +0 -0
- /package/dist/core/__tests__/{flagship-lifecycle.test.d.ts → serial/flagship-lifecycle.test.d.ts} +0 -0
- /package/dist/core/__tests__/{host-teardown-process-group.test.d.ts → serial/host-teardown-process-group.test.d.ts} +0 -0
- /package/dist/core/__tests__/{human-deliver-e2e.test.d.ts → serial/human-deliver-e2e.test.d.ts} +0 -0
- /package/dist/core/__tests__/{live-mutation.test.d.ts → serial/live-mutation.test.d.ts} +0 -0
- /package/dist/core/__tests__/{refresh-stall-recycle.test.d.ts → serial/refresh-stall-recycle.test.d.ts} +0 -0
- /package/dist/core/__tests__/{revive.test.d.ts → serial/revive.test.d.ts} +0 -0
- /package/dist/core/__tests__/{spawn-root.test.d.ts → serial/spawn-root.test.d.ts} +0 -0
- /package/dist/core/__tests__/{subscription-delivery.test.d.ts → serial/subscription-delivery.test.d.ts} +0 -0
- /package/dist/core/__tests__/{tmux-surface.test.d.ts → serial/tmux-surface.test.d.ts} +0 -0
- /package/dist/core/__tests__/{worktree.test.d.ts → serial/worktree.test.d.ts} +0 -0
- /package/dist/{clients/attach/__tests__/markdown-headings.test.d.ts → core/__tests__/watchdog-abort-arms-retry.test.d.ts} +0 -0
- /package/dist/{clients/attach/__tests__/session-identity-refresh.test.d.ts → core/broker-client/__tests__/transport-socket.test.d.ts} +0 -0
- /package/dist/core/human/__tests__/{inbox-core.test.d.ts → serial/inbox-core.test.d.ts} +0 -0
- /package/dist/{clients/inbox/review/__tests__/remap.test.d.ts → daemon/api/__tests__/node-model-validation.test.d.ts} +0 -0
- /package/dist/{clients/surfaces/region.js → daemon/api/__tests__/review-terminal-conflict.test.d.ts} +0 -0
- /package/dist/daemon/api/__tests__/{full → seam}/api-server.test.d.ts +0 -0
- /package/dist/daemon/api/__tests__/{full → seam}/b10-attach-modelauth.test.d.ts +0 -0
- /package/dist/{clients/web/__tests__/push-engine.test.d.ts → daemon/api/__tests__/seam/leaf-api-parity.test.d.ts} +0 -0
package/dist/daemon/api/map.js
CHANGED
|
@@ -10,13 +10,15 @@
|
|
|
10
10
|
// reasonable projections; this module is what makes them concrete, so any DTO
|
|
11
11
|
// field that projection proves wrong is corrected here at the source.
|
|
12
12
|
import { ReviewOperationError as ReviewOperationErrorClass } from '../../core/review/types.js';
|
|
13
|
-
import { contextDir, inboxPath, nodeDir, nodeMetaPath, reportsDir, transcriptPath, viewSocketPath, } from '../../core/canvas/paths.js';
|
|
13
|
+
import { contextDir, inboxPath, nodeDir, nodeMetaPath, reportsDir, reviewResultPath, transcriptPath, viewSocketPath, } from '../../core/canvas/paths.js';
|
|
14
14
|
import { FinalizationError } from '../../core/feed/feed.js';
|
|
15
15
|
import { NodeIdConflictError } from '../../core/runtime/nodes.js';
|
|
16
16
|
import { readContextTokens } from '../../core/canvas/telemetry.js';
|
|
17
17
|
import { CrtrError } from '../../core/errors.js';
|
|
18
18
|
import { ExitCode } from '../../types.js';
|
|
19
19
|
import { sinkDisplay } from '../cron-sink.js';
|
|
20
|
+
import { responsePath } from '../../core/human/convention.js';
|
|
21
|
+
import { ticketDir } from '../../core/human/root.js';
|
|
20
22
|
// ---------------------------------------------------------------------------
|
|
21
23
|
// Node projections
|
|
22
24
|
// ---------------------------------------------------------------------------
|
|
@@ -37,6 +39,10 @@ export function toNodeSummaryDTO(row) {
|
|
|
37
39
|
intent: row.intent,
|
|
38
40
|
waiting_for: row.waiting_for,
|
|
39
41
|
pi_pid: row.pi_pid,
|
|
42
|
+
pi_pid_identity: row.pi_pid_identity,
|
|
43
|
+
window: row.window,
|
|
44
|
+
tmux_session: row.tmux_session,
|
|
45
|
+
pane: row.pane,
|
|
40
46
|
final_report: row.final_report ?? null,
|
|
41
47
|
finalized_at: row.finalized_at ?? null,
|
|
42
48
|
};
|
|
@@ -99,6 +105,10 @@ export function toNodeDetailDTO(meta, edges) {
|
|
|
99
105
|
intent: (meta.intent ?? null),
|
|
100
106
|
waiting_for: meta.waiting_for ?? null,
|
|
101
107
|
pi_pid: meta.pi_pid ?? null,
|
|
108
|
+
pi_pid_identity: meta.pi_pid_identity ?? null,
|
|
109
|
+
window: meta.window ?? null,
|
|
110
|
+
tmux_session: meta.tmux_session ?? null,
|
|
111
|
+
pane: meta.pane ?? null,
|
|
102
112
|
final_report: meta.final_report ?? null,
|
|
103
113
|
finalized_at: meta.finalized_at ?? null,
|
|
104
114
|
edges: toNodeEdgesDTO(meta, edges),
|
|
@@ -111,7 +121,6 @@ export function toNodeDetailDTO(meta, edges) {
|
|
|
111
121
|
if (meta.cycles !== undefined)
|
|
112
122
|
dto.cycles = meta.cycles;
|
|
113
123
|
dto.context_tokens = readContextTokens(meta.node_id);
|
|
114
|
-
dto.pi_pid_identity = meta.pi_pid_identity ?? null;
|
|
115
124
|
if (meta.pi_session_id !== undefined)
|
|
116
125
|
dto.pi_session_id = meta.pi_session_id ?? null;
|
|
117
126
|
dto.model_override = meta.model_override ?? null;
|
|
@@ -375,7 +384,6 @@ export const REVIEW_ERROR_MAP = Object.freeze({
|
|
|
375
384
|
source_unreadable: { status: 409, code: 'review_source_unreadable' },
|
|
376
385
|
delivery_unroutable: { status: 409, code: 'review_delivery_unroutable' },
|
|
377
386
|
unknown_review: { status: 404, code: 'unknown_review' },
|
|
378
|
-
review_not_open: { status: 409, code: 'review_not_open' },
|
|
379
387
|
review_terminal: { status: 409, code: 'review_terminal_conflict' },
|
|
380
388
|
review_required: { status: 400, code: 'review_required' },
|
|
381
389
|
stale_document: { status: 409, code: 'stale_document' },
|
|
@@ -454,9 +462,22 @@ function reviewErrorDetails(err) {
|
|
|
454
462
|
const { review, ...detail } = err.detail;
|
|
455
463
|
return {
|
|
456
464
|
...detail,
|
|
457
|
-
review:
|
|
465
|
+
review: terminalConflictReviewDTO(review),
|
|
458
466
|
};
|
|
459
467
|
}
|
|
468
|
+
function terminalConflictReviewDTO(review) {
|
|
469
|
+
if (review.state !== 'approved')
|
|
470
|
+
return toReviewDTO(review);
|
|
471
|
+
const result_path = review.origin_kind === 'inline'
|
|
472
|
+
? reviewResultPath(review.review_id)
|
|
473
|
+
: responsePath(ticketDir(requireBridgeNodeId(review)));
|
|
474
|
+
return toReviewDTO(review, { result_path });
|
|
475
|
+
}
|
|
476
|
+
function requireBridgeNodeId(review) {
|
|
477
|
+
if (review.bridge_node_id === null)
|
|
478
|
+
throw new Error(`approved ticket review lacks its bridge node: ${review.review_id}`);
|
|
479
|
+
return review.bridge_node_id;
|
|
480
|
+
}
|
|
460
481
|
function statusForExitCode(exitCode) {
|
|
461
482
|
switch (exitCode) {
|
|
462
483
|
case ExitCode.NOT_FOUND:
|
|
@@ -7,10 +7,9 @@
|
|
|
7
7
|
// on '/'; a `:name` segment captures into `params`. `handle(req, res)` resolves
|
|
8
8
|
// the JSON body, dispatches to the matched handler, and wraps EVERY handler so a
|
|
9
9
|
// thrown error becomes a JSON `ErrorBody` with the mapped status (map.ts §8) —
|
|
10
|
-
// a handler throw NEVER crashes the daemon
|
|
11
|
-
// `clients/web/server.ts`'s request-listener boundary).
|
|
10
|
+
// a handler throw NEVER crashes the daemon.
|
|
12
11
|
//
|
|
13
|
-
// The WS attach upgrade (`GET /nodes/:id/attach` with `Upgrade: websocket`) is
|
|
12
|
+
// The WS attach upgrade (`GET /v1/nodes/:id/attach` with `Upgrade: websocket`) is
|
|
14
13
|
// NOT routed here — the server (A-9) owns the upgrade handshake and hands it to
|
|
15
14
|
// `bridge.ts` (A-8). This router serves only non-upgrade HTTP requests.
|
|
16
15
|
import { toErrorBody } from './map.js';
|
|
@@ -10,12 +10,8 @@
|
|
|
10
10
|
// Non-upgrade requests flow through the hand-rolled `Router` (A-6) loaded with
|
|
11
11
|
// every handler route table (A-7). `GET /v1/nodes/:id/attach` upgrades are
|
|
12
12
|
// handed to `handleAttachUpgrade` (A-8, the WS attach bridge with
|
|
13
|
-
// attach-implies-revive); every
|
|
14
|
-
// unhandled upgrade error destroys the socket
|
|
15
|
-
// server's belt-and-suspenders upgrade guard, `clients/web/server.ts`).
|
|
16
|
-
//
|
|
17
|
-
// The structural template is `clients/web/server.ts:566,708-747`: one
|
|
18
|
-
// `createServer` + a manual `upgrade` handler routing only attach paths.
|
|
13
|
+
// attach-implies-revive); every other upgrade path destroys the socket, and an
|
|
14
|
+
// unhandled upgrade error destroys the socket without throwing.
|
|
19
15
|
import { createServer } from 'node:http';
|
|
20
16
|
import { chmodSync, existsSync, unlinkSync } from 'node:fs';
|
|
21
17
|
import { apiSocketPath } from '../../core/canvas/paths.js';
|
|
@@ -23,6 +19,7 @@ import { emitEvent } from '../../core/events/emit.js';
|
|
|
23
19
|
import { Router } from './router.js';
|
|
24
20
|
import { handleAttachUpgrade } from './bridge.js';
|
|
25
21
|
import { attachRoutes } from './handlers/attach.js';
|
|
22
|
+
import { brokerOperationRoutes } from './handlers/broker-ops.js';
|
|
26
23
|
import { canvasRoutes } from './handlers/canvas.js';
|
|
27
24
|
import { daemonRoutes } from './handlers/daemon.js';
|
|
28
25
|
import { fileRoutes } from './handlers/files.js';
|
|
@@ -48,6 +45,7 @@ function buildRouter() {
|
|
|
48
45
|
.registerAll(healthRoutes)
|
|
49
46
|
.registerAll(daemonRoutes)
|
|
50
47
|
.registerAll(nodeRoutes)
|
|
48
|
+
.registerAll(brokerOperationRoutes)
|
|
51
49
|
.registerAll(worktreeRoutes)
|
|
52
50
|
.registerAll(messageRoutes)
|
|
53
51
|
.registerAll(reportRoutes)
|
|
@@ -189,7 +187,7 @@ export function createApiServer(opts = {}) {
|
|
|
189
187
|
};
|
|
190
188
|
const bindErrorHandler = (server) => {
|
|
191
189
|
// A bind failure or post-listen accept error must not be an unhandled
|
|
192
|
-
// 'error' that crashes the process — emit and carry on
|
|
190
|
+
// 'error' that crashes the process — emit and carry on.
|
|
193
191
|
server.on('error', (err) => {
|
|
194
192
|
emitEvent({ event: 'api.server.failed', level: 'error', error: err });
|
|
195
193
|
});
|
|
@@ -21,6 +21,10 @@ export interface RunDueCronOptions {
|
|
|
21
21
|
* that merely runs a shell command or sends a message reads false and is
|
|
22
22
|
* never gated. */
|
|
23
23
|
export declare function cronLaunchesNode(c: Cron): boolean;
|
|
24
|
+
/** Mark a cancellation as originating from the live cron run it names. Only
|
|
25
|
+
* that exact process may finish after its row is removed, so an external cancel
|
|
26
|
+
* retains its normal process-group kill behavior. */
|
|
27
|
+
export declare function markSelfCanceledCronRun(cronId: string, runId: string): boolean;
|
|
24
28
|
/** Recover stale 'running' rows left by a PRIOR daemon instance: a pid that is
|
|
25
29
|
* not VERIFIABLY still the process this lease launched resets straight to
|
|
26
30
|
* idle; a confirmed-live process group past its own run_timeout_s is killed
|
package/dist/daemon/cron-run.js
CHANGED
|
@@ -124,6 +124,16 @@ export function cronLaunchesNode(c) {
|
|
|
124
124
|
return NODE_LAUNCHING_COMMAND.test(c.command);
|
|
125
125
|
}
|
|
126
126
|
const liveRuns = new Map();
|
|
127
|
+
/** Mark a cancellation as originating from the live cron run it names. Only
|
|
128
|
+
* that exact process may finish after its row is removed, so an external cancel
|
|
129
|
+
* retains its normal process-group kill behavior. */
|
|
130
|
+
export function markSelfCanceledCronRun(cronId, runId) {
|
|
131
|
+
const live = liveRuns.get(cronId);
|
|
132
|
+
if (live === undefined || live.runId !== runId)
|
|
133
|
+
return false;
|
|
134
|
+
live.selfCanceled = true;
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
127
137
|
/** The cron's profile, re-validated at delivery time and returned in canonical
|
|
128
138
|
* id form when its manifest still resolves, else null (root fallback per spec). */
|
|
129
139
|
function resolveLiveProfile(c) {
|
|
@@ -321,13 +331,16 @@ async function escalateFailure(c, ctx, deliveryFailure) {
|
|
|
321
331
|
/** Apply the cron's output disposition to one settled run: hash bookkeeping,
|
|
322
332
|
* sink delivery, and the failure path. `outOfBand` runs deliver but never
|
|
323
333
|
* pause/escalate — the invoker sees the result directly. */
|
|
324
|
-
async function disposeSettledRun(c, ctx, outOfBand) {
|
|
334
|
+
async function disposeSettledRun(c, ctx, outOfBand, selfCanceled = false) {
|
|
325
335
|
const prefix = outOfBand ? 'out-of-band: ' : '';
|
|
326
|
-
// Re-read the row: last_output_hash/state must be current
|
|
327
|
-
//
|
|
336
|
+
// Re-read the row: last_output_hash/state must be current. An external
|
|
337
|
+
// cancellation suppresses delivery as before. A cancellation made by this
|
|
338
|
+
// exact run is different: the process has already produced its output and
|
|
339
|
+
// the documented self-cancel pattern must deliver that final observation.
|
|
328
340
|
const fresh = getCron(c.cron_id);
|
|
329
|
-
if (fresh === null)
|
|
341
|
+
if (fresh === null && !selfCanceled)
|
|
330
342
|
return { delivered: `${prefix}cron canceled mid-run — nothing delivered`, paused: false };
|
|
343
|
+
const effective = fresh ?? c;
|
|
331
344
|
const failed = ctx.timedOut || ctx.processErrorMessage !== null || ctx.exitCode !== 0;
|
|
332
345
|
// on-change bookkeeping happens for every SCHEDULED settled run (delivered or
|
|
333
346
|
// not, failed or not) so the next comparison is against the latest
|
|
@@ -335,19 +348,21 @@ async function disposeSettledRun(c, ctx, outOfBand) {
|
|
|
335
348
|
// verification, and a baseline it rewrote would make the next scheduled run
|
|
336
349
|
// report "unchanged" and skip a delivery the user should have received.
|
|
337
350
|
let changed = true;
|
|
338
|
-
if (
|
|
339
|
-
changed =
|
|
340
|
-
|
|
351
|
+
if (effective.on_output === 'on-change') {
|
|
352
|
+
changed = effective.last_output_hash !== ctx.stdoutSha256;
|
|
353
|
+
// The row is intentionally gone after an in-run self-cancel, so there is
|
|
354
|
+
// no baseline to persist. It cannot fire again to need one.
|
|
355
|
+
if (!outOfBand && fresh !== null)
|
|
341
356
|
setCronLastOutputHash(c.cron_id, ctx.stdoutSha256);
|
|
342
357
|
}
|
|
343
358
|
if (failed) {
|
|
344
|
-
if (
|
|
359
|
+
if (effective.on_output === 'silent')
|
|
345
360
|
return { delivered: `${prefix}silent`, paused: false };
|
|
346
361
|
if (outOfBand)
|
|
347
362
|
return { delivered: `out-of-band: ${failureSummary(ctx, null)} — not escalated`, paused: false };
|
|
348
|
-
return { delivered: await escalateFailure(
|
|
363
|
+
return { delivered: await escalateFailure(effective, ctx, null), paused: true };
|
|
349
364
|
}
|
|
350
|
-
switch (
|
|
365
|
+
switch (effective.on_output) {
|
|
351
366
|
case 'silent':
|
|
352
367
|
return { delivered: `${prefix}silent`, paused: false };
|
|
353
368
|
case 'on-failure':
|
|
@@ -355,9 +370,9 @@ async function disposeSettledRun(c, ctx, outOfBand) {
|
|
|
355
370
|
case 'on-change':
|
|
356
371
|
if (!changed)
|
|
357
372
|
return { delivered: `${prefix}unchanged — not delivered (on-change)`, paused: false };
|
|
358
|
-
return deliverOrEscalate(
|
|
373
|
+
return deliverOrEscalate(effective, ctx, outOfBand, prefix);
|
|
359
374
|
case 'always':
|
|
360
|
-
return deliverOrEscalate(
|
|
375
|
+
return deliverOrEscalate(effective, ctx, outOfBand, prefix);
|
|
361
376
|
}
|
|
362
377
|
}
|
|
363
378
|
/** The shared delivering tail of `always` and a CHANGED `on-change`: push
|
|
@@ -694,6 +709,7 @@ export function executeCron(c, opts) {
|
|
|
694
709
|
const stderrHead = stderr.decode();
|
|
695
710
|
const live = liveRuns.get(c.cron_id);
|
|
696
711
|
const wasReplaced = live !== undefined && live.runId === runId && live.replaced;
|
|
712
|
+
const wasSelfCanceled = live !== undefined && live.runId === runId && live.selfCanceled;
|
|
697
713
|
if (live !== undefined && live.runId === runId)
|
|
698
714
|
liveRuns.delete(c.cron_id);
|
|
699
715
|
void (async () => {
|
|
@@ -722,7 +738,7 @@ export function executeCron(c, opts) {
|
|
|
722
738
|
stdoutHead,
|
|
723
739
|
stdoutSha256: stdoutHash.digest('hex'),
|
|
724
740
|
stderrHead,
|
|
725
|
-
}, outOfBand);
|
|
741
|
+
}, outOfBand, wasSelfCanceled);
|
|
726
742
|
delivered = disposition.delivered;
|
|
727
743
|
paused = disposition.paused;
|
|
728
744
|
}
|
|
@@ -766,6 +782,7 @@ export function executeCron(c, opts) {
|
|
|
766
782
|
liveRuns.set(c.cron_id, {
|
|
767
783
|
runId,
|
|
768
784
|
replaced: false,
|
|
785
|
+
selfCanceled: false,
|
|
769
786
|
kill: () => {
|
|
770
787
|
if (child.pid != null)
|
|
771
788
|
killWithEscalation(child.pid);
|
package/dist/daemon/crtrd.d.ts
CHANGED
|
@@ -1,14 +1,5 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import {
|
|
3
|
-
export { readPidfile, isDaemonRunning } from './pidfile.js';
|
|
4
|
-
export { FAULT_QUIET_MS };
|
|
5
|
-
import { isPidAlive } from '../core/canvas/pid.js';
|
|
6
|
-
import { DaemonFleet, retryResumeMode } from './fleet.js';
|
|
7
|
-
export { retryResumeMode };
|
|
8
|
-
export declare function brokerThresholdsForDaemon(): {
|
|
9
|
-
warning: number;
|
|
10
|
-
automaticReviveCap: number;
|
|
11
|
-
};
|
|
1
|
+
import { type DetachedWorkLifecycle } from './reconcilers/broker-supervision.js';
|
|
2
|
+
import { DaemonFleet } from './fleet.js';
|
|
12
3
|
export declare function brokerCommandDeclaresCanvasHome(command: string, home: string): boolean;
|
|
13
4
|
/** The `--epoch <id>` tag host.ts stamps into every broker's argv, or null
|
|
14
5
|
* for a legacy/untagged broker (which the census treats as prior-epoch). */
|
|
@@ -22,53 +13,7 @@ export declare function brokerCommandEpoch(command: string): string | null;
|
|
|
22
13
|
* no-op. Capacity-gated: past the automatic-revive cap the sweep stops — the
|
|
23
14
|
* tick's pass-2 inbox wakes own the remainder as capacity frees up. */
|
|
24
15
|
export declare function runStartupRecoverySweep(fleet: DaemonFleet): Promise<void>;
|
|
25
|
-
|
|
26
|
-
/** Refresh-stall decision (§H refresh-authority; audit 2026-06-09, Bug 1 — node
|
|
27
|
-
* mq5v9hfa-74493d45 and siblings; stuck-refresh — parent mq7s5o93): a `node
|
|
28
|
-
* yield` / refresh records intent='refresh' and relies on the in-process
|
|
29
|
-
* stophook to call shutdown at stop, but the engine can be left ALIVE — either
|
|
30
|
-
* it HANGS instead of exiting (very large contexts) or a STALE stophook (pi
|
|
31
|
-
* extensions never reload) ignores intent='refresh' entirely and never calls
|
|
32
|
-
* shutdown. Either way: engine alive, turn over, intent pending forever. The
|
|
33
|
-
* daemon only revives DEAD engines, so without this verdict the node is
|
|
34
|
-
* permanently stuck (no revive, no wake). Pure core, mirroring wedgeVerdict;
|
|
35
|
-
* the kill side effects live in handleYieldStall.
|
|
36
|
-
*
|
|
37
|
-
* 'kill' ONLY when ALL of: engine alive, intent='refresh', the turn is over
|
|
38
|
-
* (busy marker absent — a node may legitimately keep working for many minutes
|
|
39
|
-
* after running `node yield` mid-turn, and a working engine must never be
|
|
40
|
-
* killed), and the state has persisted past YIELD_STALL_GRACE_MS. */
|
|
41
|
-
export declare function yieldStallVerdict(piPidAlive: boolean | null, intent: NodeRow['intent'], busy: boolean, stalledFor: number | null): 'leave' | 'pending' | 'kill';
|
|
42
|
-
export declare const WEDGE_QUIET_MS: number;
|
|
43
|
-
export declare const WEDGE_CPU_MAX_PERCENT = 2;
|
|
44
|
-
export type WedgeVerdict = 'leave' | 'pending' | 'wedged';
|
|
45
|
-
/** Pure wedge decision — mirrors yieldStallVerdict: a total
|
|
46
|
-
* function of the observed signals, no clock or process access of its own.
|
|
47
|
-
* `busy` false — the turn already ended (however it routed) — is never a
|
|
48
|
-
* wedge, regardless of how stale the marker looks. `quietForMs` null means
|
|
49
|
-
* the heartbeat marker couldn't be read (treated as “not enough evidence”, not
|
|
50
|
-
* “wedged”). `cpuPercent` null (sample failed/unavailable) or above the
|
|
51
|
-
* ceiling — EITHER keeps the verdict at 'pending' (keep watching next tick)
|
|
52
|
-
* rather than firing on an unconfirmed or contradicted signal. */
|
|
53
|
-
export declare function wedgeVerdict(input: {
|
|
54
|
-
busy: boolean;
|
|
55
|
-
quietForMs: number | null;
|
|
56
|
-
cpuPercent: number | null;
|
|
57
|
-
}): WedgeVerdict;
|
|
58
|
-
export declare function sumTreeCpu(psOutput: string, rootPid: number): number | null;
|
|
59
|
-
/** Pure (issue #119): does `rootPid` have ANY descendant in this ps snapshot
|
|
60
|
-
* — a runaway subprocess to kill — or does the broker stand ALONE in its own
|
|
61
|
-
* tree (nothing to kill; the engine itself stalled)? Shares `parsePsTree`
|
|
62
|
-
* with `sumTreeCpu` so the two facts the wedge remediation needs come from
|
|
63
|
-
* one `ps` sample. Null when `rootPid` isn't in the sample at all (can't
|
|
64
|
-
* tell — same "unknown, never treated as a fact" stance `sumTreeCpu` takes on
|
|
65
|
-
* a missing root). Exported for direct unit testing. */
|
|
66
|
-
export declare function treeHasDescendants(psOutput: string, rootPid: number): boolean | null;
|
|
67
|
-
export declare const DEAD_REAP_GRACE_MS: number;
|
|
68
|
-
export { isPidAlive };
|
|
69
|
-
interface DaemonTickLifecycle {
|
|
70
|
-
acceptsDetachedWork(): boolean;
|
|
71
|
-
registerDetached(work: Promise<void>): void;
|
|
16
|
+
interface DaemonTickLifecycle extends DetachedWorkLifecycle {
|
|
72
17
|
}
|
|
73
18
|
/** Supervision tick over the daemon's current live set. */
|
|
74
19
|
export declare function superviseTick(now?: number, lifecycle?: DaemonTickLifecycle): Promise<void>;
|