@north-light/crouter 0.3.318 → 0.3.319
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/README.md +0 -3
- package/dist/api/client.js +2 -912
- package/dist/api/dto/attach.js +0 -13
- package/dist/api/dto/bash-jobs.js +1 -9
- package/dist/api/dto/broker-ops.js +0 -6
- package/dist/api/dto/broker.js +0 -20
- package/dist/api/dto/canvas.js +0 -2
- package/dist/api/dto/chat-inventory.js +0 -11
- package/dist/api/dto/common.js +1 -15
- package/dist/api/dto/config.js +0 -3
- package/dist/api/dto/crons.js +1 -10
- package/dist/api/dto/files.js +0 -7
- package/dist/api/dto/focus.js +0 -10
- package/dist/api/dto/health.js +0 -2
- package/dist/api/dto/human-requests.js +0 -4
- package/dist/api/dto/human.js +0 -4
- package/dist/api/dto/inbox.js +0 -4
- package/dist/api/dto/lifecycle.js +0 -3
- package/dist/api/dto/mail.js +0 -1
- package/dist/api/dto/memory.js +0 -6
- package/dist/api/dto/messages.js +0 -2
- package/dist/api/dto/model-config.js +0 -1
- package/dist/api/dto/modelauth.js +0 -4
- package/dist/api/dto/node-outcomes.js +0 -2
- package/dist/api/dto/nodes.js +0 -3
- package/dist/api/dto/profiles.js +1 -4
- package/dist/api/dto/recovery.js +0 -1
- package/dist/api/dto/reports.js +0 -2
- package/dist/api/dto/review-comments.js +0 -5
- package/dist/api/dto/reviews.js +0 -5
- package/dist/api/dto/subscriptions.js +0 -2
- package/dist/api/dto/worktree.js +0 -6
- package/dist/api/errors.js +1 -40
- package/dist/api/index.js +1 -33
- package/dist/api/plugin-manifest-schema.js +0 -23
- package/dist/api/routes.js +1 -147
- package/dist/build-root.js +1 -198
- package/dist/cli.js +3 -99
- package/dist/clients/attach/ansi-cells.js +1 -137
- package/dist/clients/attach/chrome/bash-jobs.js +1 -31
- package/dist/clients/attach/chrome/canvas-panels.js +1 -194
- package/dist/clients/attach/chrome/completion-bell.js +1 -89
- package/dist/clients/attach/chrome/cron-wait.js +1 -34
- package/dist/clients/attach/chrome/git-info.js +2 -44
- package/dist/clients/attach/chrome/header.js +1 -30
- package/dist/clients/attach/chrome/inbox-strip.js +1 -199
- package/dist/clients/attach/chrome/recap.js +1 -19
- package/dist/clients/attach/chrome/review-wait.js +1 -22
- package/dist/clients/attach/chrome/roster.js +4 -275
- package/dist/clients/attach/chrome/status-line.js +1 -117
- package/dist/clients/attach/chrome/ticket-panel.js +1 -280
- package/dist/clients/attach/chrome/widgets.js +1 -51
- package/dist/clients/attach/command.js +1 -107
- package/dist/clients/attach/config.js +1 -274
- package/dist/clients/attach/input/capabilities.js +1 -104
- package/dist/clients/attach/input/clipboard-image.js +3 -220
- package/dist/clients/attach/input/completion-frecency.js +1 -141
- package/dist/clients/attach/input/controller.js +7 -377
- package/dist/clients/attach/input/overlay-owner.js +1 -199
- package/dist/clients/attach/input/ref-autocomplete.js +2 -176
- package/dist/clients/attach/input/titled-editor.js +4 -859
- package/dist/clients/attach/overlays/auth.js +2 -271
- package/dist/clients/attach/overlays/dialogs.js +2 -102
- package/dist/clients/attach/overlays/file-review.js +2 -128
- package/dist/clients/attach/overlays/graph.js +1 -661
- package/dist/clients/attach/overlays/help.js +1 -211
- package/dist/clients/attach/overlays/mcp.js +1 -302
- package/dist/clients/attach/overlays/pickers.js +1 -163
- package/dist/clients/attach/render/activity-slot.js +1 -13
- package/dist/clients/attach/render/assistant-message.js +1 -56
- package/dist/clients/attach/render/card-presentation.js +5 -218
- package/dist/clients/attach/render/chat-view.js +5 -1708
- package/dist/clients/attach/render/condensed-history.js +1 -60
- package/dist/clients/attach/render/context-message.js +1 -63
- package/dist/clients/attach/render/crtr-output.js +17 -905
- package/dist/clients/attach/render/diagram.js +7 -111
- package/dist/clients/attach/render/edit-diff.js +5 -304
- package/dist/clients/attach/render/glyph-codepoints.js +1 -42
- package/dist/clients/attach/render/group-activity.js +2 -263
- package/dist/clients/attach/render/group-recap.js +1 -152
- package/dist/clients/attach/render/markdown-source.js +5 -266
- package/dist/clients/attach/render/measured-container.js +1 -322
- package/dist/clients/attach/render/page-block.js +1 -183
- package/dist/clients/attach/render/scroll-animation.js +1 -80
- package/dist/clients/attach/render/tool-calls.js +3 -361
- package/dist/clients/attach/render/transcript-copy.js +2 -81
- package/dist/clients/attach/render/transcript-search.js +1 -152
- package/dist/clients/attach/render/viewport.js +1 -184
- package/dist/clients/attach/session/banner.js +1 -29
- package/dist/clients/attach/session/bindings.js +1 -71
- package/dist/clients/attach/session/chrome-refresh.js +1 -94
- package/dist/clients/attach/session/connection.js +1 -186
- package/dist/clients/attach/session/context.js +0 -16
- package/dist/clients/attach/session/editor-frame.js +1 -142
- package/dist/clients/attach/session/editor-inventory.js +6 -160
- package/dist/clients/attach/session/file-links.js +1 -68
- package/dist/clients/attach/session/focus-events.js +1 -12
- package/dist/clients/attach/session/frame.js +1 -214
- package/dist/clients/attach/session/frames.js +1 -188
- package/dist/clients/attach/session/identity.js +1 -26
- package/dist/clients/attach/session/input-wiring.js +1 -140
- package/dist/clients/attach/session/invariant.js +1 -15
- package/dist/clients/attach/session/keys.js +1 -77
- package/dist/clients/attach/session/layout.js +1 -59
- package/dist/clients/attach/session/mouse.js +1 -78
- package/dist/clients/attach/session/pane-focus.js +1 -42
- package/dist/clients/attach/session/pane-tag.js +1 -112
- package/dist/clients/attach/session/pi-assets.js +1 -24
- package/dist/clients/attach/session/pi-oauth-flows.js +1 -21
- package/dist/clients/attach/session/profile-files.js +1 -228
- package/dist/clients/attach/session/reconnect.js +1 -175
- package/dist/clients/attach/session/selection.js +3 -108
- package/dist/clients/attach/session/state-sync.js +1 -67
- package/dist/clients/attach/session/surface-frame.js +1 -73
- package/dist/clients/attach/session/surface-host.js +1 -255
- package/dist/clients/attach/session/teardown.js +5 -94
- package/dist/clients/attach/session/transcript-search.js +3 -151
- package/dist/clients/attach/session/whip-achievements.js +2 -145
- package/dist/clients/attach/session/whip.js +1 -362
- package/dist/clients/attach/slash/dispatch.js +1 -706
- package/dist/clients/attach/slash/prompt-preview.js +1 -121
- package/dist/clients/attach/viewer.js +441 -441
- package/dist/clients/conversation/projection.js +1 -324
- package/dist/clients/conversation/submit.js +1 -51
- package/dist/clients/inbox/controller.js +1 -701
- package/dist/clients/inbox/dto-adapt.js +1 -93
- package/dist/clients/inbox/layout.js +1 -9
- package/dist/clients/inbox/page-adapter.js +1 -55
- package/dist/clients/inbox/resolve.js +1 -35
- package/dist/clients/inbox/review/anchors.js +1 -89
- package/dist/clients/inbox/review/comments-client.js +1 -98
- package/dist/clients/inbox/review/companion-pane.js +1 -82
- package/dist/clients/inbox/review/document-surface.js +2 -1188
- package/dist/clients/inbox/review/frame.js +1 -216
- package/dist/clients/inbox/review/keys.js +1 -123
- package/dist/clients/inbox/review/launch.js +1 -151
- package/dist/clients/inbox/review/live-source.js +1 -160
- package/dist/clients/inbox/review/nvim.js +1 -44
- package/dist/clients/inbox/review/remap.js +1 -157
- package/dist/clients/inbox/review/review-client.js +1 -123
- package/dist/clients/inbox/review/roundtrip.js +3 -36
- package/dist/clients/inbox/review/state.js +4 -315
- package/dist/clients/inbox/review-adapter.js +1 -43
- package/dist/clients/inbox/surface.js +1 -152
- package/dist/clients/inbox/tui/ansi.js +3 -321
- package/dist/clients/inbox/tui/input.js +5 -392
- package/dist/clients/inbox/tui/keys.js +1 -104
- package/dist/clients/inbox/tui/page-body.js +1 -66
- package/dist/clients/inbox/tui/panel.js +1 -84
- package/dist/clients/inbox/tui/render.js +2 -368
- package/dist/clients/inbox/tui/slots.js +3 -134
- package/dist/clients/inbox/tui/types.js +0 -1
- package/dist/clients/inbox/tui.js +1 -86
- package/dist/clients/surfaces/host.js +0 -1
- package/dist/commands/api-client.js +4 -290
- package/dist/commands/attention.js +1 -215
- package/dist/commands/canvas-browse.js +1 -70
- package/dist/commands/canvas-config.js +2 -192
- package/dist/commands/canvas-history/grep.js +7 -85
- package/dist/commands/canvas-history/read.js +3 -50
- package/dist/commands/canvas-history/search.js +10 -99
- package/dist/commands/canvas-history/shared.js +1 -139
- package/dist/commands/canvas-history/stats.js +6 -68
- package/dist/commands/canvas-history.js +1 -32
- package/dist/commands/canvas-issue.js +14 -149
- package/dist/commands/canvas-prune.js +1 -108
- package/dist/commands/canvas-roster.js +1 -69
- package/dist/commands/canvas-snapshot.js +1 -34
- package/dist/commands/canvas-use.js +1 -61
- package/dist/commands/canvas.js +1 -49
- package/dist/commands/chord.js +1 -241
- package/dist/commands/cron.js +11 -534
- package/dist/commands/dashboard.js +1 -85
- package/dist/commands/human/components.js +3 -77
- package/dist/commands/human/feedback.js +1 -112
- package/dist/commands/human/prompts.js +1 -331
- package/dist/commands/human/queue.js +1 -191
- package/dist/commands/human/request.js +1 -266
- package/dist/commands/human/review.js +1 -288
- package/dist/commands/human/shared.js +1 -67
- package/dist/commands/human.js +4 -60
- package/dist/commands/memory/delete.js +1 -100
- package/dist/commands/memory/edit.js +21 -219
- package/dist/commands/memory/find.js +2 -244
- package/dist/commands/memory/history.js +5 -199
- package/dist/commands/memory/lint.js +1 -107
- package/dist/commands/memory/list.js +1 -142
- package/dist/commands/memory/move.js +1 -223
- package/dist/commands/memory/origin.js +1 -130
- package/dist/commands/memory/read.js +6 -232
- package/dist/commands/memory/shared.js +12 -802
- package/dist/commands/memory/write.js +13 -235
- package/dist/commands/memory.js +1 -30
- package/dist/commands/node/bash.js +5 -245
- package/dist/commands/node/create.js +3 -332
- package/dist/commands/node/inspect.js +12 -300
- package/dist/commands/node/lifecycle.js +2 -453
- package/dist/commands/node/message.js +1 -161
- package/dist/commands/node/outcome.js +4 -134
- package/dist/commands/node/pyramid.js +2 -79
- package/dist/commands/node/subscription.js +1 -78
- package/dist/commands/node/wait.js +7 -163
- package/dist/commands/node-context.js +2 -159
- package/dist/commands/node-inspect-artifacts.js +8 -109
- package/dist/commands/node-lifecycle-revive.js +1 -217
- package/dist/commands/node-snapshot.js +1 -37
- package/dist/commands/node-transcript.js +1 -62
- package/dist/commands/node-worktree.js +1 -138
- package/dist/commands/node.js +1 -29
- package/dist/commands/pkg/browse/actions.js +1 -198
- package/dist/commands/pkg/browse/catalog.js +1 -466
- package/dist/commands/pkg/browse/command-view.js +1 -191
- package/dist/commands/pkg/browse/detail-panel.js +1 -402
- package/dist/commands/pkg/browse/doc-view.js +1 -89
- package/dist/commands/pkg/browse/list-panel.js +2 -168
- package/dist/commands/pkg/browse/model.js +1 -36
- package/dist/commands/pkg/browse/shell.js +1 -640
- package/dist/commands/pkg/browse.js +1 -27
- package/dist/commands/pkg/market-inspect.js +1 -141
- package/dist/commands/pkg/market-manage.js +1 -327
- package/dist/commands/pkg/market.js +1 -14
- package/dist/commands/pkg/plugin-inspect.js +1 -168
- package/dist/commands/pkg/plugin-manage.js +17 -1109
- package/dist/commands/pkg/plugin.js +1 -14
- package/dist/commands/pkg/shared.js +1 -62
- package/dist/commands/pkg.js +1 -21
- package/dist/commands/profile/default.js +1 -139
- package/dist/commands/profile/delete.js +1 -66
- package/dist/commands/profile/env.js +3 -188
- package/dist/commands/profile/kind.js +2 -35
- package/dist/commands/profile/list.js +1 -43
- package/dist/commands/profile/meta.js +1 -67
- package/dist/commands/profile/new.js +1 -115
- package/dist/commands/profile/pause.js +1 -59
- package/dist/commands/profile/project.js +1 -113
- package/dist/commands/profile/rename.js +1 -38
- package/dist/commands/profile/show.js +1 -52
- package/dist/commands/profile.js +1 -35
- package/dist/commands/push.js +9 -265
- package/dist/commands/revive.js +10 -181
- package/dist/commands/surface/node/cycle.js +1 -83
- package/dist/commands/surface/node/focus.js +1 -81
- package/dist/commands/surface/node/id.js +1 -38
- package/dist/commands/surface/node/pin.js +1 -42
- package/dist/commands/surface/node/placement.js +1 -134
- package/dist/commands/surface-edit.js +1 -157
- package/dist/commands/surface-inbox.js +1 -98
- package/dist/commands/surface-inspect.js +1 -39
- package/dist/commands/surface-node.js +1 -19
- package/dist/commands/surface-reload.js +2 -134
- package/dist/commands/surface-tmux-spread.js +1 -214
- package/dist/commands/surface.js +1 -28
- package/dist/commands/sys/branch.js +1 -19
- package/dist/commands/sys/config.js +1 -353
- package/dist/commands/sys/context/admin/actions.js +2 -246
- package/dist/commands/sys/context/admin/detail-panel.js +1 -247
- package/dist/commands/sys/context/admin/docs-panel.js +1 -191
- package/dist/commands/sys/context/admin/list-view.js +1 -183
- package/dist/commands/sys/context/admin/model.js +1 -229
- package/dist/commands/sys/context/admin/rail-panel.js +1 -227
- package/dist/commands/sys/context/admin/read-view.js +2 -194
- package/dist/commands/sys/context/admin/shell.js +1 -910
- package/dist/commands/sys/context/admin.js +2 -126
- package/dist/commands/sys/context/doc.js +3 -197
- package/dist/commands/sys/context/prompt-review.js +11 -291
- package/dist/commands/sys/context/resolve.js +10 -489
- package/dist/commands/sys/context/sysprompt.js +5 -96
- package/dist/commands/sys/context.js +1 -20
- package/dist/commands/sys/daemon.js +1 -313
- package/dist/commands/sys/doctor.js +1 -617
- package/dist/commands/sys/feedback.js +7 -228
- package/dist/commands/sys/logs.js +3 -129
- package/dist/commands/sys/migrate.js +1 -94
- package/dist/commands/sys/panels/broker-limits-panel.js +2 -110
- package/dist/commands/sys/panels/dependencies-panel.js +1 -80
- package/dist/commands/sys/panels/keybindings-panel.js +1 -703
- package/dist/commands/sys/panels/models-panel.js +1 -1133
- package/dist/commands/sys/panels/plugins-panel.js +1 -80
- package/dist/commands/sys/panels/prefs-panel.js +1 -85
- package/dist/commands/sys/panels/profiles-panel.js +1 -601
- package/dist/commands/sys/panels/provider-panel.js +1 -538
- package/dist/commands/sys/settings-shell.js +1 -400
- package/dist/commands/sys/settings.js +1 -46
- package/dist/commands/sys/setup-core.js +6 -579
- package/dist/commands/sys/setup-settings-runner.js +1 -16
- package/dist/commands/sys/setup-wizard.js +1 -279
- package/dist/commands/sys/setup.js +1 -34
- package/dist/commands/sys/shared.js +1 -81
- package/dist/commands/sys/support/prepare.js +3 -239
- package/dist/commands/sys/support/submit.js +6 -524
- package/dist/commands/sys/support.js +1 -18
- package/dist/commands/sys/sync-deps.js +15 -498
- package/dist/commands/sys/sync-project-guidance.js +4 -481
- package/dist/commands/sys/sync-shared.js +1 -49
- package/dist/commands/sys/sync-skills.js +2 -311
- package/dist/commands/sys/sync.js +1 -18
- package/dist/commands/sys/update.js +1 -147
- package/dist/commands/sys/worktrees.js +5 -53
- package/dist/commands/sys.js +1 -18
- package/dist/core/activity-signal.js +2 -38
- package/dist/core/asset-root.js +1 -18
- package/dist/core/auth-file.js +2 -179
- package/dist/core/auth-interaction.js +3 -94
- package/dist/core/auto-update.js +4 -94
- package/dist/core/bash-guard.js +11 -393
- package/dist/core/bash-jobs.js +7 -411
- package/dist/core/bootstrap.js +2 -53
- package/dist/core/broker-client/client.js +1 -184
- package/dist/core/broker-client/index.js +1 -13
- package/dist/core/broker-client/transport-relay.js +1 -157
- package/dist/core/broker-client/transport-socket.js +1 -179
- package/dist/core/broker-client/transport.js +1 -26
- package/dist/core/canvas/attention.js +1 -47
- package/dist/core/canvas/boot-id.js +1 -26
- package/dist/core/canvas/boot.js +1 -186
- package/dist/core/canvas/browse/app.js +3 -919
- package/dist/core/canvas/browse/model.js +1 -477
- package/dist/core/canvas/browse/pins.js +1 -29
- package/dist/core/canvas/browse/render.js +3 -1055
- package/dist/core/canvas/canvas.js +15 -922
- package/dist/core/canvas/crons.js +11 -481
- package/dist/core/canvas/daemon-owner.js +2 -146
- package/dist/core/canvas/db.js +2 -100
- package/dist/core/canvas/deliveries.js +22 -283
- package/dist/core/canvas/delivery-contract.js +1 -8
- package/dist/core/canvas/executions.js +1 -68
- package/dist/core/canvas/extensions.js +1 -83
- package/dist/core/canvas/focuses.js +1 -77
- package/dist/core/canvas/history.js +24 -860
- package/dist/core/canvas/index.js +1 -15
- package/dist/core/canvas/install-id.js +1 -84
- package/dist/core/canvas/labels.js +1 -43
- package/dist/core/canvas/meta-file.js +1 -89
- package/dist/core/canvas/migrations.js +41 -1150
- package/dist/core/canvas/nav-model.js +1 -231
- package/dist/core/canvas/nav-render.js +1 -260
- package/dist/core/canvas/node-order.js +1 -37
- package/dist/core/canvas/node-recap.js +2 -67
- package/dist/core/canvas/node-sql-migration.js +2 -209
- package/dist/core/canvas/paths.js +1 -153
- package/dist/core/canvas/pid.js +4 -683
- package/dist/core/canvas/recovery.js +3 -565
- package/dist/core/canvas/remote-canvas-source.js +1 -288
- package/dist/core/canvas/remote-transport.js +1 -57
- package/dist/core/canvas/render-source.js +10 -635
- package/dist/core/canvas/sessions.js +1 -78
- package/dist/core/canvas/source.js +1 -47
- package/dist/core/canvas/status-glyph.js +1 -132
- package/dist/core/canvas/telemetry.js +1 -35
- package/dist/core/canvas/types.js +1 -6
- package/dist/core/canvas/waits.js +4 -68
- package/dist/core/canvas/worktrees.js +1 -93
- package/dist/core/clipboard-text.js +1 -57
- package/dist/core/command-hooks/artifact.js +1 -145
- package/dist/core/command-hooks/catalog.js +1 -38
- package/dist/core/command-hooks/compose.js +1 -99
- package/dist/core/command-hooks/discovery.js +1 -228
- package/dist/core/command-hooks/help.js +1 -18
- package/dist/core/command-hooks/index.js +1 -7
- package/dist/core/command-hooks/lifecycle-catalog.js +1 -9
- package/dist/core/command-hooks/lifecycle-create.js +1 -51
- package/dist/core/command-hooks/report.js +1 -28
- package/dist/core/command-hooks/schema.js +1 -157
- package/dist/core/command-hooks/transport/exec-invoke.js +1 -276
- package/dist/core/command-hooks/transport/exec-lifecycle.js +1 -211
- package/dist/core/command-manifests/manifest.js +1 -324
- package/dist/core/command-manifests/registry.js +1 -118
- package/dist/core/command-manifests/schema.js +1 -736
- package/dist/core/command-plugins/bundle.js +1 -261
- package/dist/core/command-plugins/compose.js +1 -65
- package/dist/core/command-plugins/discovery.js +1 -245
- package/dist/core/command-plugins/endpoint.js +1 -48
- package/dist/core/command-plugins/extensions.js +1 -166
- package/dist/core/command-plugins/help-addenda.js +1 -44
- package/dist/core/command-plugins/presence.js +1 -17
- package/dist/core/command-plugins/revalidate.js +2 -152
- package/dist/core/command-plugins/transport/exec-invoke.js +1 -215
- package/dist/core/command-plugins/transport/http-fetch.js +1 -68
- package/dist/core/command-plugins/transport/http-invoke.js +3 -546
- package/dist/core/command.js +10 -739
- package/dist/core/config.js +1 -1059
- package/dist/core/document-lines.js +3 -6
- package/dist/core/env-name.js +1 -9
- package/dist/core/errors.js +1 -52
- package/dist/core/events/emit.js +1 -17
- package/dist/core/events/envelope.js +1 -84
- package/dist/core/events/errors.js +1 -69
- package/dist/core/events/index.js +1 -4
- package/dist/core/events/operation-id.js +1 -24
- package/dist/core/events/read.js +1 -623
- package/dist/core/events/serialize.js +1 -199
- package/dist/core/events/source.js +1 -31
- package/dist/core/events/types.js +1 -11
- package/dist/core/exclusive-lock.js +1 -197
- package/dist/core/fault-classifier.js +1 -96
- package/dist/core/feed/feed.js +7 -202
- package/dist/core/feed/inbox-migrate.js +3 -135
- package/dist/core/feed/inbox.js +10 -122
- package/dist/core/feed/messages.js +6 -212
- package/dist/core/frontmatter.js +1 -35
- package/dist/core/fs-utils.js +3 -202
- package/dist/core/git.js +2 -103
- package/dist/core/help.js +9 -310
- package/dist/core/host-exports/builtins.js +9 -68
- package/dist/core/host-exports/export.js +3 -124
- package/dist/core/human/action-binding.js +1 -40
- package/dist/core/human/answer-text.js +5 -100
- package/dist/core/human/answer.js +1 -119
- package/dist/core/human/claim.js +3 -67
- package/dist/core/human/completion.js +1 -27
- package/dist/core/human/component-docs.js +78 -272
- package/dist/core/human/convention.js +2 -82
- package/dist/core/human/feedback-companion.js +1 -106
- package/dist/core/human/feedback.js +1 -88
- package/dist/core/human/page-authoring.js +1 -19
- package/dist/core/human/page-catalog.js +1 -172
- package/dist/core/human/page-errors.js +1 -7
- package/dist/core/human/page-eval.js +1 -125
- package/dist/core/human/page-html-markdown.js +8 -260
- package/dist/core/human/page-markdown.js +17 -295
- package/dist/core/human/page-schema.js +1 -373
- package/dist/core/human/page-synth.js +8 -27
- package/dist/core/human/page.js +1 -198
- package/dist/core/human/requests.js +15 -466
- package/dist/core/human/review-schema.js +1 -34
- package/dist/core/human/root.js +1 -11
- package/dist/core/human/scan.js +1 -69
- package/dist/core/human/summary.js +1 -5
- package/dist/core/human/tickets.js +1 -171
- package/dist/core/human/types.js +0 -1
- package/dist/core/human/visible-paths.js +1 -77
- package/dist/core/human-actions.js +1 -101
- package/dist/core/inspector/chrome.js +1 -14
- package/dist/core/inspector/contract.js +0 -1
- package/dist/core/inspector/core.js +2 -295
- package/dist/core/inspector/host.js +4 -538
- package/dist/core/inspector/model.js +2 -226
- package/dist/core/inspector/text.js +6 -45
- package/dist/core/inspector/transport.js +1 -36
- package/dist/core/inspector/tui.js +2 -295
- package/dist/core/installed-plugins.js +1 -78
- package/dist/core/io.js +7 -356
- package/dist/core/keybindings/attach-control.js +1 -42
- package/dist/core/keybindings/background-bash.js +1 -33
- package/dist/core/keybindings/catalog.js +1 -256
- package/dist/core/keybindings/inbox.js +1 -25
- package/dist/core/keybindings/index.js +1 -7
- package/dist/core/keybindings/match.js +1 -127
- package/dist/core/keybindings/persistence.js +1 -49
- package/dist/core/keybindings/resolve.js +1 -348
- package/dist/core/keybindings/types.js +0 -1
- package/dist/core/locked-file.js +1 -118
- package/dist/core/log.js +3 -27
- package/dist/core/manifest-recovery.js +1 -72
- package/dist/core/manifest-stale.js +1 -39
- package/dist/core/manifest.js +1 -20
- package/dist/core/memory/doc-link-grammar.js +2 -109
- package/dist/core/memory/extensions.js +1 -221
- package/dist/core/memory/history.js +6 -268
- package/dist/core/memory/identity.js +1 -181
- package/dist/core/memory/inline-ref-grammar.js +1 -98
- package/dist/core/memory/inline-ref-guidance.js +2 -35
- package/dist/core/memory/inline-ref-inventory.js +1 -59
- package/dist/core/memory/lint.js +2 -671
- package/dist/core/memory/project-namespace.js +2 -85
- package/dist/core/memory/repository-association.js +1 -129
- package/dist/core/memory/tree.js +1 -93
- package/dist/core/memory-resolver.js +2 -611
- package/dist/core/model-config.js +1 -107
- package/dist/core/model-routes.js +1 -201
- package/dist/core/nested-stores.js +2 -166
- package/dist/core/output.js +7 -99
- package/dist/core/pagination.js +1 -88
- package/dist/core/plugin-swap-lock.js +1 -31
- package/dist/core/pool-credential-store.js +1 -116
- package/dist/core/predicate.js +1 -191
- package/dist/core/preview-registry.js +2 -411
- package/dist/core/preview-result-path.js +1 -26
- package/dist/core/profiles/default-binding.js +1 -24
- package/dist/core/profiles/deletion-reservation.js +1 -42
- package/dist/core/profiles/env-store.js +2 -162
- package/dist/core/profiles/fuzzy-match.js +1 -92
- package/dist/core/profiles/manifest.js +1 -574
- package/dist/core/profiles/select.js +35 -741
- package/dist/core/profiles/state-block.js +3 -17
- package/dist/core/provider-error-recognition.js +1 -74
- package/dist/core/provider-failure.js +1 -86
- package/dist/core/provider-management.js +1 -22
- package/dist/core/remote-canvas-target.js +1 -30
- package/dist/core/render.js +18 -138
- package/dist/core/resolver.js +1 -111
- package/dist/core/review/birth.js +1 -52
- package/dist/core/review/comments.js +5 -279
- package/dist/core/review/companion.js +1 -215
- package/dist/core/review/document.js +2 -138
- package/dist/core/review/project.js +1 -36
- package/dist/core/review/realize.js +1 -71
- package/dist/core/review/remap.js +4 -141
- package/dist/core/review/signal.js +1 -12
- package/dist/core/review/stage.js +1 -184
- package/dist/core/review/store.js +1 -168
- package/dist/core/review/types.js +1 -23
- package/dist/core/runtime/advertised-command-invocation.js +1 -233
- package/dist/core/runtime/auth-reload.js +1 -67
- package/dist/core/runtime/banner.js +1 -51
- package/dist/core/runtime/bearings-render.js +18 -250
- package/dist/core/runtime/bearings.js +7 -194
- package/dist/core/runtime/bin-contributions.js +2 -186
- package/dist/core/runtime/boot-root.js +1 -107
- package/dist/core/runtime/branded-host.js +2 -264
- package/dist/core/runtime/broker/auth-reload.js +1 -157
- package/dist/core/runtime/broker/client-registry.js +1 -179
- package/dist/core/runtime/broker/daemon-ops.js +1 -88
- package/dist/core/runtime/broker/engine-drive.js +1 -354
- package/dist/core/runtime/broker/engine-routing.js +1 -211
- package/dist/core/runtime/broker/event-projection.js +1 -193
- package/dist/core/runtime/broker/extension-abort.js +1 -36
- package/dist/core/runtime/broker/fault-retry.js +1 -588
- package/dist/core/runtime/broker/frame-client.js +1 -132
- package/dist/core/runtime/broker/frame-dispatch.js +1 -183
- package/dist/core/runtime/broker/frame-engine-control.js +1 -231
- package/dist/core/runtime/broker/frame-memory-refs.js +1 -41
- package/dist/core/runtime/broker/frame-model-query.js +1 -69
- package/dist/core/runtime/broker/frame-read.js +1 -116
- package/dist/core/runtime/broker/frame-replies.js +1 -64
- package/dist/core/runtime/broker/frame-session.js +4 -203
- package/dist/core/runtime/broker/held-deferred-inbox.js +1 -13
- package/dist/core/runtime/broker/inbox.js +13 -163
- package/dist/core/runtime/broker/node-named.js +1 -27
- package/dist/core/runtime/broker/read-ops.js +1 -171
- package/dist/core/runtime/broker/rebind.js +1 -318
- package/dist/core/runtime/broker/tool-groups.js +1 -246
- package/dist/core/runtime/broker/turn-admission.js +1 -31
- package/dist/core/runtime/broker/turn-ignition.js +1 -84
- package/dist/core/runtime/broker-cli.js +3 -81
- package/dist/core/runtime/broker-extension-render.js +5 -135
- package/dist/core/runtime/broker-inventory.js +1 -116
- package/dist/core/runtime/broker-persona-guidance.js +4 -154
- package/dist/core/runtime/broker-protocol.js +3 -152
- package/dist/core/runtime/broker-request.js +1 -85
- package/dist/core/runtime/broker-sdk.js +1 -129
- package/dist/core/runtime/broker.js +1 -1214
- package/dist/core/runtime/canvas-extensions.js +1 -96
- package/dist/core/runtime/chat-inventory-rows.js +1 -105
- package/dist/core/runtime/close.js +1 -265
- package/dist/core/runtime/command-expansion.js +9 -104
- package/dist/core/runtime/command-surface.js +1 -117
- package/dist/core/runtime/connectivity.js +1 -73
- package/dist/core/runtime/deliver-live.js +1 -88
- package/dist/core/runtime/fault-recovery.js +1 -83
- package/dist/core/runtime/fault.js +1 -17
- package/dist/core/runtime/fleet.js +1 -58
- package/dist/core/runtime/front-door-env.js +1 -16
- package/dist/core/runtime/front-door.js +7 -183
- package/dist/core/runtime/headless-pi.js +1 -161
- package/dist/core/runtime/host.js +1 -457
- package/dist/core/runtime/interactive-deliver.js +1 -51
- package/dist/core/runtime/invocation.js +0 -10
- package/dist/core/runtime/kickoff.js +30 -327
- package/dist/core/runtime/launch-config-worker.js +1 -12
- package/dist/core/runtime/launch-prompt.js +4 -13
- package/dist/core/runtime/launch-target.js +1 -55
- package/dist/core/runtime/launch.js +1 -483
- package/dist/core/runtime/lifecycle.js +2 -213
- package/dist/core/runtime/managed-provider-cooling.js +1 -62
- package/dist/core/runtime/memory.js +1 -17
- package/dist/core/runtime/model-registry.js +1 -13
- package/dist/core/runtime/model-selection.js +1 -135
- package/dist/core/runtime/model-swap.js +1 -86
- package/dist/core/runtime/naming.js +14 -298
- package/dist/core/runtime/nerd-font.js +2 -127
- package/dist/core/runtime/node-read.js +2 -386
- package/dist/core/runtime/nodes.js +1 -331
- package/dist/core/runtime/outcome-document.js +1 -97
- package/dist/core/runtime/package-health.js +4 -99
- package/dist/core/runtime/persona.js +2 -55
- package/dist/core/runtime/pi-cli.js +1 -65
- package/dist/core/runtime/pi-vendored.js +1 -66
- package/dist/core/runtime/placement-tmux.js +1 -81
- package/dist/core/runtime/placement.js +1 -386
- package/dist/core/runtime/promote.js +1 -174
- package/dist/core/runtime/prospective-inventory-cli.js +3 -61
- package/dist/core/runtime/prospective-inventory.js +2 -88
- package/dist/core/runtime/recap.js +27 -103
- package/dist/core/runtime/recycle.js +1 -190
- package/dist/core/runtime/reopen.js +1 -138
- package/dist/core/runtime/reset.js +1 -245
- package/dist/core/runtime/resume-root.js +10 -290
- package/dist/core/runtime/revive-all.js +1 -107
- package/dist/core/runtime/revive.js +4 -544
- package/dist/core/runtime/roadmap.js +4 -38
- package/dist/core/runtime/session-branch.js +1 -46
- package/dist/core/runtime/session-cycles.js +1 -110
- package/dist/core/runtime/session-list-cache.js +1 -406
- package/dist/core/runtime/session-visibility.js +1 -99
- package/dist/core/runtime/shell-expansion.js +9 -100
- package/dist/core/runtime/situational-context.js +2 -67
- package/dist/core/runtime/situational-live.js +1 -41
- package/dist/core/runtime/spawn-env.js +1 -255
- package/dist/core/runtime/spawn.js +3 -577
- package/dist/core/runtime/stamp/channel.js +1 -76
- package/dist/core/runtime/stamp/protocol.js +1 -113
- package/dist/core/runtime/stop-guard.js +7 -116
- package/dist/core/runtime/stop-signals.js +1 -46
- package/dist/core/runtime/stream-watchdog.js +1 -134
- package/dist/core/runtime/structured-output.js +4 -156
- package/dist/core/runtime/surface-bg.js +1 -85
- package/dist/core/runtime/tmux-bindings.js +4 -730
- package/dist/core/runtime/tmux-chrome.js +1 -5
- package/dist/core/runtime/tmux-driver.js +7 -637
- package/dist/core/runtime/tool-group-summary.js +6 -85
- package/dist/core/runtime/turn-visibility.js +1 -31
- package/dist/core/runtime/view-socket.js +1 -83
- package/dist/core/runtime/warm-pool.js +1 -395
- package/dist/core/scope.js +1 -254
- package/dist/core/scoped-state/db.js +1 -135
- package/dist/core/scoped-state/migrate.js +3 -181
- package/dist/core/scoped-state/paths.js +1 -27
- package/dist/core/scoped-state/profiles.js +1 -62
- package/dist/core/scoped-state/providers.js +1 -8
- package/dist/core/scoped-state/schema.js +3 -16
- package/dist/core/scoped-state/settings.js +1 -82
- package/dist/core/secrets.js +2 -55
- package/dist/core/self-update.js +1 -71
- package/dist/core/session-model/session-state.js +1 -180
- package/dist/core/shell-segments.js +4 -169
- package/dist/core/spawn.js +1 -26
- package/dist/core/stdout-errors.js +1 -14
- package/dist/core/subscription-state.js +3 -193
- package/dist/core/substrate/frontmatter-validation.js +1 -105
- package/dist/core/substrate/gate-explain.js +1 -424
- package/dist/core/substrate/gate.js +1 -26
- package/dist/core/substrate/index.js +1 -30
- package/dist/core/substrate/injected-store.js +1 -249
- package/dist/core/substrate/listings.js +1 -115
- package/dist/core/substrate/on-read-node.js +1 -36
- package/dist/core/substrate/on-read.js +9 -315
- package/dist/core/substrate/plan.js +1 -266
- package/dist/core/substrate/render-node.js +1 -30
- package/dist/core/substrate/render.js +65 -689
- package/dist/core/substrate/schema.js +1 -186
- package/dist/core/substrate/session-cache.js +1 -83
- package/dist/core/substrate/subject-fields.js +1 -35
- package/dist/core/substrate/subject.js +1 -47
- package/dist/core/substrate/surface-match.js +1 -242
- package/dist/core/termrender/code-doc.js +5 -92
- package/dist/core/termrender/display.js +2 -56
- package/dist/core/termrender/termrender.js +14 -719
- package/dist/core/termrender/version.js +1 -1
- package/dist/core/timing.js +2 -94
- package/dist/core/tui/draw.js +2 -378
- package/dist/core/tui/fuzzy.js +1 -38
- package/dist/core/tui/markdown.js +3 -407
- package/dist/core/tui/page-host.js +1 -74
- package/dist/core/tui/panel.js +1 -137
- package/dist/core/tui/terminal.js +2 -100
- package/dist/core/user-settings.js +1 -454
- package/dist/core/wake.js +1 -296
- package/dist/core/worktree-close.js +6 -228
- package/dist/core/worktree-containment.js +3 -48
- package/dist/core/worktree-landing.js +4 -56
- package/dist/core/worktree-mutation-async.js +10 -280
- package/dist/core/worktree-quarantine.js +1 -54
- package/dist/core/worktree-sweep.js +6 -453
- package/dist/core/worktree.js +18 -899
- package/dist/daemon/api/bridge.js +8 -418
- package/dist/daemon/api/handlers/attach.js +1 -65
- package/dist/daemon/api/handlers/bash-jobs.js +2 -91
- package/dist/daemon/api/handlers/broker-ops.js +1 -447
- package/dist/daemon/api/handlers/broker-recovery.js +1 -251
- package/dist/daemon/api/handlers/canvas.js +6 -490
- package/dist/daemon/api/handlers/chat-inventory.js +1 -25
- package/dist/daemon/api/handlers/crons.js +1 -373
- package/dist/daemon/api/handlers/daemon.js +1 -76
- package/dist/daemon/api/handlers/feedback-comments.js +3 -199
- package/dist/daemon/api/handlers/files.js +1 -63
- package/dist/daemon/api/handlers/focus.js +1 -92
- package/dist/daemon/api/handlers/health.js +1 -76
- package/dist/daemon/api/handlers/human-requests.js +1 -379
- package/dist/daemon/api/handlers/human.js +1 -3
- package/dist/daemon/api/handlers/inbox-page.js +1 -89
- package/dist/daemon/api/handlers/inbox.js +1 -301
- package/dist/daemon/api/handlers/memory.js +1 -50
- package/dist/daemon/api/handlers/messages.js +2 -506
- package/dist/daemon/api/handlers/model-config.js +1 -44
- package/dist/daemon/api/handlers/modelauth.js +1 -165
- package/dist/daemon/api/handlers/node-outcomes.js +1 -181
- package/dist/daemon/api/handlers/nodes.js +1 -939
- package/dist/daemon/api/handlers/profiles.js +1 -140
- package/dist/daemon/api/handlers/prospective-chat-inventory.js +1 -59
- package/dist/daemon/api/handlers/reports.js +16 -332
- package/dist/daemon/api/handlers/review-comments.js +1 -465
- package/dist/daemon/api/handlers/reviews.js +1 -200
- package/dist/daemon/api/handlers/subscriptions.js +1 -53
- package/dist/daemon/api/handlers/validate.js +1 -58
- package/dist/daemon/api/handlers/worktree.js +1 -39
- package/dist/daemon/api/map.js +2 -735
- package/dist/daemon/api/router.js +1 -190
- package/dist/daemon/api/server.js +11 -408
- package/dist/daemon/boot-migrations.js +1 -31
- package/dist/daemon/companion-retire.js +1 -34
- package/dist/daemon/control.js +1 -22
- package/dist/daemon/cron/armed-context.js +1 -100
- package/dist/daemon/cron/capture.js +2 -45
- package/dist/daemon/cron/disposition.js +1 -55
- package/dist/daemon/cron/escalation.js +3 -124
- package/dist/daemon/cron/held.js +1 -20
- package/dist/daemon/cron/lease-recovery.js +1 -119
- package/dist/daemon/cron/live-runs.js +1 -23
- package/dist/daemon/cron/passes.js +1 -58
- package/dist/daemon/cron/settle.js +1 -61
- package/dist/daemon/cron/sinks.js +2 -59
- package/dist/daemon/cron-run.js +1 -405
- package/dist/daemon/crtrd-cli.js +1 -23
- package/dist/daemon/crtrd.js +8 -854
- package/dist/daemon/delivery/run-delivery.js +1 -164
- package/dist/daemon/fleet.js +17 -475
- package/dist/daemon/human/finish.js +10 -179
- package/dist/daemon/human/settle.js +1 -89
- package/dist/daemon/human/sweep.js +1 -66
- package/dist/daemon/manage.js +2 -595
- package/dist/daemon/messaging/node-message.js +1 -99
- package/dist/daemon/park-activity.js +1 -30
- package/dist/daemon/park-pending.js +1 -52
- package/dist/daemon/pidfile.js +1 -37
- package/dist/daemon/profile-delete.js +1 -306
- package/dist/daemon/reconcilers/bash-deadline.js +1 -80
- package/dist/daemon/reconcilers/broker-supervision.js +4 -761
- package/dist/daemon/reconcilers/controller-death.js +1 -14
- package/dist/daemon/reconcilers/cron-lane.js +1 -29
- package/dist/daemon/reconcilers/delivery-lane.js +1 -130
- package/dist/daemon/reconcilers/live-obligation.js +1 -87
- package/dist/daemon/reconcilers/managed-worktree-sweep.js +1 -202
- package/dist/daemon/reconcilers/node-deadline.js +1 -82
- package/dist/daemon/reconcilers/node-lifecycle/freeze-lane.js +1 -172
- package/dist/daemon/reconcilers/node-lifecycle/respawn-policy.js +1 -59
- package/dist/daemon/reconcilers/node-lifecycle/terminating.js +1 -12
- package/dist/daemon/reconcilers/node-lifecycle/tick.js +1 -146
- package/dist/daemon/reconcilers/node-lifecycle/wants-execution.js +1 -11
- package/dist/daemon/reconcilers/pending-review-submit.js +1 -36
- package/dist/daemon/reconcilers/storage-maintenance.js +1 -207
- package/dist/daemon/review/comment-notify.js +2 -109
- package/dist/daemon/review/companion.js +1 -29
- package/dist/daemon/review/deliver.js +3 -8
- package/dist/daemon/review/finish.js +1 -122
- package/dist/daemon/review/sweep.js +1 -18
- package/dist/daemon/startup-policy.js +1 -1
- package/dist/daemon/supervise-cadence.js +1 -6
- package/dist/hook-authoring.js +5 -447
- package/dist/hook-process.js +1 -34
- package/dist/index.js +1 -52
- package/dist/migrations/001-surfaces-frontmatter.js +1 -161
- package/dist/migrations/002-profile-project-memory.js +1 -72
- package/dist/migrations/003-repository-root-memory-identity/front-door.js +11 -231
- package/dist/migrations/003-repository-root-memory-identity/index.js +5 -513
- package/dist/migrations/003-repository-root-memory-identity/references.js +5 -469
- package/dist/migrations/003-repository-root-memory-identity/repository-facts.js +3 -349
- package/dist/migrations/activation.js +2 -89
- package/dist/migrations/convergent.js +2 -82
- package/dist/migrations/corpus.js +3 -483
- package/dist/migrations/frontmatter-splice.js +8 -176
- package/dist/migrations/profile-manifests.js +2 -70
- package/dist/migrations/registry.js +1 -42
- package/dist/migrations/runner.js +1 -85
- package/dist/migrations/types.js +0 -24
- package/dist/pi-extensions/broker-local.js +2 -106
- package/dist/pi-extensions/canvas-bash-valve.js +7 -461
- package/dist/pi-extensions/canvas-context-intro.js +2 -113
- package/dist/pi-extensions/canvas-doc-substrate.js +9 -178
- package/dist/pi-extensions/canvas-goal-capture.js +1 -83
- package/dist/pi-extensions/canvas-inbox-watcher.js +1 -1010
- package/dist/pi-extensions/canvas-passive-context.js +14 -203
- package/dist/pi-extensions/canvas-preview-result.js +2 -72
- package/dist/pi-extensions/canvas-prompt-scrub.js +2 -54
- package/dist/pi-extensions/canvas-recap.js +11 -405
- package/dist/pi-extensions/canvas-review-boundary.js +3 -63
- package/dist/pi-extensions/canvas-stamp.js +2 -77
- package/dist/pi-extensions/canvas-stophook.js +1 -643
- package/dist/pi-extensions/canvas-structured-output.js +13 -35
- package/dist/pi-extensions/canvas-tool-guide.js +9 -78
- package/dist/pi-extensions/envelope-merge.js +8 -29
- package/dist/prompts/review.js +20 -42
- package/dist/shared/birth-announcement.js +1 -25
- package/dist/shared/crtr-version.js +1 -18
- package/dist/shared/env.js +1 -214
- package/dist/shared/generated-context.js +11 -226
- package/dist/shared/predicates.js +1 -4
- package/dist/shared/shell-quote.js +1 -5
- package/dist/shared/tool-groups.js +1 -64
- package/dist/shared/working-activity.js +1 -27
- package/dist/suppress-experimental-warnings.js +1 -15
- package/dist/types.js +1 -185
- package/docs/public-api.md +10 -9
- package/package.json +5 -4
- package/runtime.lock.json +5 -5
- package/dist/api/__tests__/integration/client.test.d.ts +0 -1
- package/dist/api/__tests__/integration/client.test.js +0 -163
- package/dist/builtin-pi-packages/pi-crtr-extensions/__tests__/insights-active-init.test.ts +0 -98
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/crtr-commands.test.ts +0 -93
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/integration/provider-rotation.test.ts +0 -2530
- package/dist/clients/__tests__/helpers/human-daemon.d.ts +0 -11
- package/dist/clients/__tests__/helpers/human-daemon.js +0 -60
- package/dist/clients/attach/__tests__/attach-remote-readonly.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/attach-remote-readonly.test.js +0 -97
- package/dist/clients/attach/__tests__/bash-call-width.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/bash-call-width.test.js +0 -38
- package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.js +0 -175
- package/dist/clients/attach/__tests__/completion-frecency.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/completion-frecency.test.js +0 -35
- package/dist/clients/attach/__tests__/context-message.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/context-message.test.js +0 -130
- package/dist/clients/attach/__tests__/crtr-output.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/crtr-output.test.js +0 -68
- package/dist/clients/attach/__tests__/diagram.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/diagram.test.js +0 -42
- package/dist/clients/attach/__tests__/edit-diff.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/edit-diff.test.js +0 -31
- package/dist/clients/attach/__tests__/frame-selection.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/frame-selection.test.js +0 -84
- package/dist/clients/attach/__tests__/group-activity.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/group-activity.test.js +0 -165
- package/dist/clients/attach/__tests__/oauth-dialog-lifecycle.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/oauth-dialog-lifecycle.test.js +0 -83
- package/dist/clients/attach/__tests__/pane-tag-successor.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/pane-tag-successor.test.js +0 -56
- package/dist/clients/attach/__tests__/profile-files.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/profile-files.test.js +0 -21
- package/dist/clients/attach/__tests__/prompt-preview.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/prompt-preview.test.js +0 -21
- package/dist/clients/attach/__tests__/ref-autocomplete.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/ref-autocomplete.test.js +0 -64
- package/dist/clients/attach/__tests__/titled-editor-paste.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/titled-editor-paste.test.js +0 -114
- package/dist/clients/attach/__tests__/titled-editor-preview.test.d.ts +0 -1
- package/dist/clients/attach/__tests__/titled-editor-preview.test.js +0 -83
- package/dist/clients/inbox/__tests__/integration/inbox-controller.test.d.ts +0 -1
- package/dist/clients/inbox/__tests__/integration/inbox-controller.test.js +0 -81
- package/dist/clients/inbox/__tests__/integration/mount-panel.test.d.ts +0 -1
- package/dist/clients/inbox/__tests__/integration/mount-panel.test.js +0 -135
- package/dist/clients/inbox/__tests__/integration/stale-row-activation.test.d.ts +0 -1
- package/dist/clients/inbox/__tests__/integration/stale-row-activation.test.js +0 -66
- package/dist/clients/inbox/review/__tests__/editor-roundtrip.test.d.ts +0 -1
- package/dist/clients/inbox/review/__tests__/editor-roundtrip.test.js +0 -35
- package/dist/clients/inbox/review/__tests__/review-core.test.d.ts +0 -1
- package/dist/clients/inbox/review/__tests__/review-core.test.js +0 -52
- package/dist/clients/inbox/review/__tests__/teardown-notice.test.d.ts +0 -1
- package/dist/clients/inbox/review/__tests__/teardown-notice.test.js +0 -100
- package/dist/commands/__tests__/api-client-cold-start-diagnostic.test.d.ts +0 -1
- package/dist/commands/__tests__/api-client-cold-start-diagnostic.test.js +0 -69
- package/dist/commands/__tests__/human.test.d.ts +0 -1
- package/dist/commands/__tests__/human.test.js +0 -172
- package/dist/commands/__tests__/integration/dashboard-snapshot.test.d.ts +0 -1
- package/dist/commands/__tests__/integration/dashboard-snapshot.test.js +0 -237
- package/dist/commands/__tests__/integration/migrate.test.d.ts +0 -1
- package/dist/commands/__tests__/integration/migrate.test.js +0 -1330
- package/dist/commands/__tests__/node-message.test.d.ts +0 -1
- package/dist/commands/__tests__/node-message.test.js +0 -112
- package/dist/commands/__tests__/node-new.test.d.ts +0 -1
- package/dist/commands/__tests__/node-new.test.js +0 -58
- package/dist/commands/__tests__/revive-now-gate.test.d.ts +0 -1
- package/dist/commands/__tests__/revive-now-gate.test.js +0 -62
- package/dist/commands/__tests__/seam/daemon-status.test.d.ts +0 -1
- package/dist/commands/__tests__/seam/daemon-status.test.js +0 -29
- package/dist/commands/__tests__/surface-reload-target.test.d.ts +0 -1
- package/dist/commands/__tests__/surface-reload-target.test.js +0 -21
- package/dist/commands/memory/__tests__/command-selector-and-mutation-guards.test.d.ts +0 -1
- package/dist/commands/memory/__tests__/command-selector-and-mutation-guards.test.js +0 -379
- package/dist/commands/memory/__tests__/memory-list-and-lint-ignore.test.d.ts +0 -1
- package/dist/commands/memory/__tests__/memory-list-and-lint-ignore.test.js +0 -124
- package/dist/commands/memory/__tests__/repository-root-lint.test.d.ts +0 -1
- package/dist/commands/memory/__tests__/repository-root-lint.test.js +0 -148
- package/dist/commands/sys/__tests__/config-model-ladders.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/config-model-ladders.test.js +0 -114
- package/dist/commands/sys/__tests__/setup-core.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/setup-core.test.js +0 -45
- package/dist/commands/sys/__tests__/sync-project-guidance.test.d.ts +0 -1
- package/dist/commands/sys/__tests__/sync-project-guidance.test.js +0 -244
- package/dist/core/__tests__/bash-guard.test.d.ts +0 -1
- package/dist/core/__tests__/bash-guard.test.js +0 -190
- package/dist/core/__tests__/boot-fault-attempt.test.d.ts +0 -1
- package/dist/core/__tests__/boot-fault-attempt.test.js +0 -105
- package/dist/core/__tests__/boot.test.d.ts +0 -1
- package/dist/core/__tests__/boot.test.js +0 -274
- package/dist/core/__tests__/branded-host-concurrency.test.d.ts +0 -1
- package/dist/core/__tests__/branded-host-concurrency.test.js +0 -72
- package/dist/core/__tests__/broker-extension-canvas-db-boundary.test.d.ts +0 -1
- package/dist/core/__tests__/broker-extension-canvas-db-boundary.test.js +0 -75
- package/dist/core/__tests__/broker-launch-candidates.test.d.ts +0 -1
- package/dist/core/__tests__/broker-launch-candidates.test.js +0 -311
- package/dist/core/__tests__/broker-preflight.test.d.ts +0 -1
- package/dist/core/__tests__/broker-preflight.test.js +0 -95
- package/dist/core/__tests__/broker-stream-watchdog-floor.test.d.ts +0 -1
- package/dist/core/__tests__/broker-stream-watchdog-floor.test.js +0 -82
- package/dist/core/__tests__/broker-turn-admission.test.d.ts +0 -1
- package/dist/core/__tests__/broker-turn-admission.test.js +0 -44
- package/dist/core/__tests__/canvas-db-boundary.test.d.ts +0 -1
- package/dist/core/__tests__/canvas-db-boundary.test.js +0 -46
- package/dist/core/__tests__/canvas-inbox-watcher-hold.test.d.ts +0 -1
- package/dist/core/__tests__/canvas-inbox-watcher-hold.test.js +0 -710
- package/dist/core/__tests__/canvas-inbox-watcher-naming.test.d.ts +0 -1
- package/dist/core/__tests__/canvas-inbox-watcher-naming.test.js +0 -310
- package/dist/core/__tests__/canvas-inbox-watcher.test.d.ts +0 -1
- package/dist/core/__tests__/canvas-inbox-watcher.test.js +0 -397
- package/dist/core/__tests__/canvas.test.d.ts +0 -1
- package/dist/core/__tests__/canvas.test.js +0 -138
- package/dist/core/__tests__/child-death-wake.test.d.ts +0 -1
- package/dist/core/__tests__/child-death-wake.test.js +0 -153
- package/dist/core/__tests__/cli-help-contract.test.d.ts +0 -1
- package/dist/core/__tests__/cli-help-contract.test.js +0 -152
- package/dist/core/__tests__/close.test.d.ts +0 -1
- package/dist/core/__tests__/close.test.js +0 -284
- package/dist/core/__tests__/collectible.test.d.ts +0 -1
- package/dist/core/__tests__/collectible.test.js +0 -89
- package/dist/core/__tests__/config-change-delta.test.d.ts +0 -1
- package/dist/core/__tests__/config-change-delta.test.js +0 -108
- package/dist/core/__tests__/context-intro.test.d.ts +0 -1
- package/dist/core/__tests__/context-intro.test.js +0 -123
- package/dist/core/__tests__/cron-armed-context-failure.test.d.ts +0 -1
- package/dist/core/__tests__/cron-armed-context-failure.test.js +0 -150
- package/dist/core/__tests__/cron-held-settlement.test.d.ts +0 -1
- package/dist/core/__tests__/cron-held-settlement.test.js +0 -240
- package/dist/core/__tests__/cron-node-sink-parked-root.test.d.ts +0 -1
- package/dist/core/__tests__/cron-node-sink-parked-root.test.js +0 -166
- package/dist/core/__tests__/cron-self-cancel-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/cron-self-cancel-delivery.test.js +0 -84
- package/dist/core/__tests__/cron-timeout-descendants.test.d.ts +0 -1
- package/dist/core/__tests__/cron-timeout-descendants.test.js +0 -114
- package/dist/core/__tests__/daemon-boot.test.d.ts +0 -1
- package/dist/core/__tests__/daemon-boot.test.js +0 -422
- package/dist/core/__tests__/daemon-wedge.test.d.ts +0 -1
- package/dist/core/__tests__/daemon-wedge.test.js +0 -106
- package/dist/core/__tests__/dead-node-policy-table.test.d.ts +0 -1
- package/dist/core/__tests__/dead-node-policy-table.test.js +0 -77
- package/dist/core/__tests__/events-contract.test.d.ts +0 -1
- package/dist/core/__tests__/events-contract.test.js +0 -76
- package/dist/core/__tests__/extension-abort.test.d.ts +0 -1
- package/dist/core/__tests__/extension-abort.test.js +0 -21
- package/dist/core/__tests__/fault-classifier.test.d.ts +0 -1
- package/dist/core/__tests__/fault-classifier.test.js +0 -138
- package/dist/core/__tests__/fixtures/api-server-host.d.ts +0 -1
- package/dist/core/__tests__/fixtures/api-server-host.js +0 -47
- package/dist/core/__tests__/fixtures/c3-custom-provider-ext.d.ts +0 -2
- package/dist/core/__tests__/fixtures/c3-custom-provider-ext.js +0 -34
- package/dist/core/__tests__/fixtures/c5-command-boundary-ext.d.ts +0 -2
- package/dist/core/__tests__/fixtures/c5-command-boundary-ext.js +0 -32
- package/dist/core/__tests__/fixtures/fake-engine.d.ts +0 -347
- package/dist/core/__tests__/fixtures/fake-engine.js +0 -1509
- package/dist/core/__tests__/fixtures/fake-pi-host.d.ts +0 -2
- package/dist/core/__tests__/fixtures/fake-pi-host.js +0 -311
- package/dist/core/__tests__/fixtures/memory-slash-live-probe.d.ts +0 -1
- package/dist/core/__tests__/fixtures/memory-slash-live-probe.js +0 -75
- package/dist/core/__tests__/fixtures/metadata-migration-race.d.ts +0 -1
- package/dist/core/__tests__/fixtures/metadata-migration-race.js +0 -49
- package/dist/core/__tests__/focuses.test.d.ts +0 -1
- package/dist/core/__tests__/focuses.test.js +0 -113
- package/dist/core/__tests__/fs-utils.test.d.ts +0 -1
- package/dist/core/__tests__/fs-utils.test.js +0 -50
- package/dist/core/__tests__/helpers/broker-clients.d.ts +0 -43
- package/dist/core/__tests__/helpers/broker-clients.js +0 -174
- package/dist/core/__tests__/helpers/fleet.d.ts +0 -12
- package/dist/core/__tests__/helpers/fleet.js +0 -50
- package/dist/core/__tests__/helpers/harness.d.ts +0 -124
- package/dist/core/__tests__/helpers/harness.js +0 -806
- package/dist/core/__tests__/helpers/viewer-panes.d.ts +0 -12
- package/dist/core/__tests__/helpers/viewer-panes.js +0 -133
- package/dist/core/__tests__/history-inbox.test.d.ts +0 -1
- package/dist/core/__tests__/history-inbox.test.js +0 -121
- package/dist/core/__tests__/human-action-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/human-action-delivery.test.js +0 -162
- package/dist/core/__tests__/human-actions.test.d.ts +0 -1
- package/dist/core/__tests__/human-actions.test.js +0 -120
- package/dist/core/__tests__/inline-memory-refs.test.d.ts +0 -1
- package/dist/core/__tests__/inline-memory-refs.test.js +0 -225
- package/dist/core/__tests__/integration/broker-fork-seam.test.d.ts +0 -1
- package/dist/core/__tests__/integration/broker-fork-seam.test.js +0 -193
- package/dist/core/__tests__/integration/broker-sdk-wiring.test.d.ts +0 -1
- package/dist/core/__tests__/integration/broker-sdk-wiring.test.js +0 -750
- package/dist/core/__tests__/integration/broker-snapshot-history.test.d.ts +0 -1
- package/dist/core/__tests__/integration/broker-snapshot-history.test.js +0 -288
- package/dist/core/__tests__/integration/broker-wedge-supervision.test.d.ts +0 -1
- package/dist/core/__tests__/integration/broker-wedge-supervision.test.js +0 -103
- package/dist/core/__tests__/integration/command-plugins.test.d.ts +0 -1
- package/dist/core/__tests__/integration/command-plugins.test.js +0 -1200
- package/dist/core/__tests__/integration/deferred-no-wake.test.d.ts +0 -1
- package/dist/core/__tests__/integration/deferred-no-wake.test.js +0 -610
- package/dist/core/__tests__/integration/flagship-lifecycle.test.d.ts +0 -1
- package/dist/core/__tests__/integration/flagship-lifecycle.test.js +0 -264
- package/dist/core/__tests__/integration/fresh-home-commands.test.d.ts +0 -1
- package/dist/core/__tests__/integration/fresh-home-commands.test.js +0 -49
- package/dist/core/__tests__/integration/git-optional-locks.test.d.ts +0 -1
- package/dist/core/__tests__/integration/git-optional-locks.test.js +0 -81
- package/dist/core/__tests__/integration/host-teardown-process-group.test.d.ts +0 -1
- package/dist/core/__tests__/integration/host-teardown-process-group.test.js +0 -480
- package/dist/core/__tests__/integration/lifecycle-hooks.test.d.ts +0 -1
- package/dist/core/__tests__/integration/lifecycle-hooks.test.js +0 -498
- package/dist/core/__tests__/integration/live-mutation-verbs.test.d.ts +0 -1
- package/dist/core/__tests__/integration/live-mutation-verbs.test.js +0 -180
- package/dist/core/__tests__/integration/live-mutation.test.d.ts +0 -1
- package/dist/core/__tests__/integration/live-mutation.test.js +0 -173
- package/dist/core/__tests__/integration/plugin-revalidate.test.d.ts +0 -1
- package/dist/core/__tests__/integration/plugin-revalidate.test.js +0 -359
- package/dist/core/__tests__/integration/profile-pause.test.d.ts +0 -1
- package/dist/core/__tests__/integration/profile-pause.test.js +0 -115
- package/dist/core/__tests__/integration/refresh-stall-recycle.test.d.ts +0 -1
- package/dist/core/__tests__/integration/refresh-stall-recycle.test.js +0 -151
- package/dist/core/__tests__/integration/revive.test.d.ts +0 -1
- package/dist/core/__tests__/integration/revive.test.js +0 -615
- package/dist/core/__tests__/integration/spawn-root.test.d.ts +0 -1
- package/dist/core/__tests__/integration/spawn-root.test.js +0 -536
- package/dist/core/__tests__/integration/subscription-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/integration/subscription-delivery.test.js +0 -132
- package/dist/core/__tests__/integration/tmux-surface.test.d.ts +0 -1
- package/dist/core/__tests__/integration/tmux-surface.test.js +0 -330
- package/dist/core/__tests__/integration/worktree-land.test.d.ts +0 -1
- package/dist/core/__tests__/integration/worktree-land.test.js +0 -607
- package/dist/core/__tests__/integration/worktree-reap.test.d.ts +0 -1
- package/dist/core/__tests__/integration/worktree-reap.test.js +0 -842
- package/dist/core/__tests__/kickoff.test.d.ts +0 -1
- package/dist/core/__tests__/kickoff.test.js +0 -196
- package/dist/core/__tests__/lifecycle-terminal-reasons.test.d.ts +0 -1
- package/dist/core/__tests__/lifecycle-terminal-reasons.test.js +0 -62
- package/dist/core/__tests__/lifecycle.test.d.ts +0 -1
- package/dist/core/__tests__/lifecycle.test.js +0 -176
- package/dist/core/__tests__/live-lifecycle-prompt.test.d.ts +0 -1
- package/dist/core/__tests__/live-lifecycle-prompt.test.js +0 -63
- package/dist/core/__tests__/memory-resolver-precedence.test.d.ts +0 -1
- package/dist/core/__tests__/memory-resolver-precedence.test.js +0 -228
- package/dist/core/__tests__/migration.test.d.ts +0 -1
- package/dist/core/__tests__/migration.test.js +0 -946
- package/dist/core/__tests__/model-pin-durability.test.d.ts +0 -1
- package/dist/core/__tests__/model-pin-durability.test.js +0 -195
- package/dist/core/__tests__/model-routes-config.test.d.ts +0 -1
- package/dist/core/__tests__/model-routes-config.test.js +0 -150
- package/dist/core/__tests__/nested-store-discovery.test.d.ts +0 -1
- package/dist/core/__tests__/nested-store-discovery.test.js +0 -89
- package/dist/core/__tests__/node-outcome.test.d.ts +0 -1
- package/dist/core/__tests__/node-outcome.test.js +0 -246
- package/dist/core/__tests__/on-read-crouter-home-fence.test.d.ts +0 -1
- package/dist/core/__tests__/on-read-crouter-home-fence.test.js +0 -66
- package/dist/core/__tests__/on-read-dedup-resume.test.d.ts +0 -1
- package/dist/core/__tests__/on-read-dedup-resume.test.js +0 -132
- package/dist/core/__tests__/on-read-nested-store.test.d.ts +0 -1
- package/dist/core/__tests__/on-read-nested-store.test.js +0 -135
- package/dist/core/__tests__/parse-argv-stdin-secret.test.d.ts +0 -1
- package/dist/core/__tests__/parse-argv-stdin-secret.test.js +0 -68
- package/dist/core/__tests__/passive-subscription.test.d.ts +0 -1
- package/dist/core/__tests__/passive-subscription.test.js +0 -120
- package/dist/core/__tests__/pid-identity-match.test.d.ts +0 -1
- package/dist/core/__tests__/pid-identity-match.test.js +0 -145
- package/dist/core/__tests__/pid-zombie.test.d.ts +0 -1
- package/dist/core/__tests__/pid-zombie.test.js +0 -42
- package/dist/core/__tests__/plugin-kinds.test.d.ts +0 -1
- package/dist/core/__tests__/plugin-kinds.test.js +0 -182
- package/dist/core/__tests__/plugin-link-symlinked-scope-root.test.d.ts +0 -1
- package/dist/core/__tests__/plugin-link-symlinked-scope-root.test.js +0 -43
- package/dist/core/__tests__/plugin-page-components.test.d.ts +0 -1
- package/dist/core/__tests__/plugin-page-components.test.js +0 -159
- package/dist/core/__tests__/preview-mirror-cap.test.d.ts +0 -1
- package/dist/core/__tests__/preview-mirror-cap.test.js +0 -53
- package/dist/core/__tests__/preview-registry-sync.test.d.ts +0 -1
- package/dist/core/__tests__/preview-registry-sync.test.js +0 -107
- package/dist/core/__tests__/profile-project-memory-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/profile-project-memory-delivery.test.js +0 -644
- package/dist/core/__tests__/prospective-inventory-capability-parity.test.d.ts +0 -1
- package/dist/core/__tests__/prospective-inventory-capability-parity.test.js +0 -91
- package/dist/core/__tests__/prune.test.d.ts +0 -1
- package/dist/core/__tests__/prune.test.js +0 -243
- package/dist/core/__tests__/push-final-guard.test.d.ts +0 -1
- package/dist/core/__tests__/push-final-guard.test.js +0 -191
- package/dist/core/__tests__/relaunch-root.test.d.ts +0 -1
- package/dist/core/__tests__/relaunch-root.test.js +0 -249
- package/dist/core/__tests__/remote-canvas-target.test.d.ts +0 -1
- package/dist/core/__tests__/remote-canvas-target.test.js +0 -93
- package/dist/core/__tests__/repository-association.test.d.ts +0 -1
- package/dist/core/__tests__/repository-association.test.js +0 -153
- package/dist/core/__tests__/repository-root-identity.test.d.ts +0 -1
- package/dist/core/__tests__/repository-root-identity.test.js +0 -223
- package/dist/core/__tests__/respawn-throttle.test.d.ts +0 -1
- package/dist/core/__tests__/respawn-throttle.test.js +0 -20
- package/dist/core/__tests__/review-model-floor.test.d.ts +0 -1
- package/dist/core/__tests__/review-model-floor.test.js +0 -83
- package/dist/core/__tests__/revive-all.test.d.ts +0 -1
- package/dist/core/__tests__/revive-all.test.js +0 -157
- package/dist/core/__tests__/revive-capacity.test.d.ts +0 -1
- package/dist/core/__tests__/revive-capacity.test.js +0 -184
- package/dist/core/__tests__/revive-parked-fresh.test.d.ts +0 -1
- package/dist/core/__tests__/revive-parked-fresh.test.js +0 -176
- package/dist/core/__tests__/scope-crouter-home-fence.test.d.ts +0 -1
- package/dist/core/__tests__/scope-crouter-home-fence.test.js +0 -55
- package/dist/core/__tests__/seam/broker-attach-multiclient.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-attach-multiclient.test.js +0 -262
- package/dist/core/__tests__/seam/broker-attach-stream.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-attach-stream.test.js +0 -176
- package/dist/core/__tests__/seam/broker-cap-freeze.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-cap-freeze.test.js +0 -155
- package/dist/core/__tests__/seam/broker-crash-teardown.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-crash-teardown.test.js +0 -131
- package/dist/core/__tests__/seam/broker-pane-resolution.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-pane-resolution.test.js +0 -204
- package/dist/core/__tests__/seam/broker-provider-retry.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-provider-retry.test.js +0 -686
- package/dist/core/__tests__/seam/broker-startup-diagnostics.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-startup-diagnostics.test.js +0 -82
- package/dist/core/__tests__/seam/broker-whip-interrupt.test.d.ts +0 -1
- package/dist/core/__tests__/seam/broker-whip-interrupt.test.js +0 -50
- package/dist/core/__tests__/seam/deadline-wake-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/seam/deadline-wake-delivery.test.js +0 -138
- package/dist/core/__tests__/seam/dormancy-release.test.d.ts +0 -1
- package/dist/core/__tests__/seam/dormancy-release.test.js +0 -516
- package/dist/core/__tests__/seam/held-deferred-human-prompt.test.d.ts +0 -1
- package/dist/core/__tests__/seam/held-deferred-human-prompt.test.js +0 -65
- package/dist/core/__tests__/seam/inbox-reference-guidance.test.d.ts +0 -1
- package/dist/core/__tests__/seam/inbox-reference-guidance.test.js +0 -84
- package/dist/core/__tests__/seam/memory-slash-node-relative-inventory.test.d.ts +0 -1
- package/dist/core/__tests__/seam/memory-slash-node-relative-inventory.test.js +0 -160
- package/dist/core/__tests__/seam/node-outcome-delivery.test.d.ts +0 -1
- package/dist/core/__tests__/seam/node-outcome-delivery.test.js +0 -177
- package/dist/core/__tests__/seam/prospective-inventory-stdout.test.d.ts +0 -1
- package/dist/core/__tests__/seam/prospective-inventory-stdout.test.js +0 -31
- package/dist/core/__tests__/seam/reopen-invalidated-worktree.test.d.ts +0 -1
- package/dist/core/__tests__/seam/reopen-invalidated-worktree.test.js +0 -60
- package/dist/core/__tests__/seam/self-close-teardown.test.d.ts +0 -1
- package/dist/core/__tests__/seam/self-close-teardown.test.js +0 -49
- package/dist/core/__tests__/seam/yield-refresh-transaction.test.d.ts +0 -1
- package/dist/core/__tests__/seam/yield-refresh-transaction.test.js +0 -100
- package/dist/core/__tests__/secrets.test.d.ts +0 -1
- package/dist/core/__tests__/secrets.test.js +0 -49
- package/dist/core/__tests__/self-update.test.d.ts +0 -1
- package/dist/core/__tests__/self-update.test.js +0 -46
- package/dist/core/__tests__/session-branch.test.d.ts +0 -1
- package/dist/core/__tests__/session-branch.test.js +0 -61
- package/dist/core/__tests__/session-cycles.test.d.ts +0 -1
- package/dist/core/__tests__/session-cycles.test.js +0 -133
- package/dist/core/__tests__/session-model.test.d.ts +0 -1
- package/dist/core/__tests__/session-model.test.js +0 -111
- package/dist/core/__tests__/spawn-worktree-id-conflict.test.d.ts +0 -1
- package/dist/core/__tests__/spawn-worktree-id-conflict.test.js +0 -71
- package/dist/core/__tests__/stdin-body-no-discard.test.d.ts +0 -1
- package/dist/core/__tests__/stdin-body-no-discard.test.js +0 -33
- package/dist/core/__tests__/stdout-errors.test.d.ts +0 -1
- package/dist/core/__tests__/stdout-errors.test.js +0 -16
- package/dist/core/__tests__/stop-guard.test.d.ts +0 -1
- package/dist/core/__tests__/stop-guard.test.js +0 -237
- package/dist/core/__tests__/stream-watchdog.test.d.ts +0 -1
- package/dist/core/__tests__/stream-watchdog.test.js +0 -154
- package/dist/core/__tests__/subscription-pool-credential-guard.test.d.ts +0 -1
- package/dist/core/__tests__/subscription-pool-credential-guard.test.js +0 -95
- package/dist/core/__tests__/tmux-driver-boundary.test.d.ts +0 -1
- package/dist/core/__tests__/tmux-driver-boundary.test.js +0 -50
- package/dist/core/__tests__/warm-claim-preference-snapshot.test.d.ts +0 -1
- package/dist/core/__tests__/warm-claim-preference-snapshot.test.js +0 -54
- package/dist/core/__tests__/worktree-landing.test.d.ts +0 -1
- package/dist/core/__tests__/worktree-landing.test.js +0 -11
- package/dist/core/__tests__/yield-ensures-daemon.test.d.ts +0 -1
- package/dist/core/__tests__/yield-ensures-daemon.test.js +0 -55
- package/dist/core/broker-client/__tests__/transport-relay.test.d.ts +0 -1
- package/dist/core/broker-client/__tests__/transport-relay.test.js +0 -214
- package/dist/core/broker-client/__tests__/transport-socket.test.d.ts +0 -1
- package/dist/core/broker-client/__tests__/transport-socket.test.js +0 -73
- package/dist/core/canvas/__tests__/attention.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/attention.test.js +0 -83
- package/dist/core/canvas/__tests__/history-transcript.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/history-transcript.test.js +0 -102
- package/dist/core/canvas/__tests__/remote-canvas-source.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/remote-canvas-source.test.js +0 -328
- package/dist/core/canvas/__tests__/remote-transport.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/remote-transport.test.js +0 -97
- package/dist/core/canvas/__tests__/render-remote.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/render-remote.test.js +0 -243
- package/dist/core/canvas/__tests__/session-window.test.d.ts +0 -1
- package/dist/core/canvas/__tests__/session-window.test.js +0 -70
- package/dist/core/feed/__tests__/inbox-migrate.test.d.ts +0 -1
- package/dist/core/feed/__tests__/inbox-migrate.test.js +0 -49
- package/dist/core/human/__tests__/page-catalog.test.d.ts +0 -1
- package/dist/core/human/__tests__/page-catalog.test.js +0 -20
- package/dist/core/human/__tests__/page-html-markdown.test.d.ts +0 -1
- package/dist/core/human/__tests__/page-html-markdown.test.js +0 -48
- package/dist/core/human/__tests__/page.test.d.ts +0 -1
- package/dist/core/human/__tests__/page.test.js +0 -92
- package/dist/core/keybindings/__tests__/resolve.test.d.ts +0 -1
- package/dist/core/keybindings/__tests__/resolve.test.js +0 -171
- package/dist/core/profiles/__tests__/env-store.test.d.ts +0 -1
- package/dist/core/profiles/__tests__/env-store.test.js +0 -99
- package/dist/core/profiles/__tests__/fuzzy-match.test.d.ts +0 -1
- package/dist/core/profiles/__tests__/fuzzy-match.test.js +0 -51
- package/dist/core/profiles/__tests__/root-profile.test.d.ts +0 -1
- package/dist/core/profiles/__tests__/root-profile.test.js +0 -59
- package/dist/core/review/__tests__/capture-origin.test.d.ts +0 -1
- package/dist/core/review/__tests__/capture-origin.test.js +0 -150
- package/dist/core/review/__tests__/comments.test.d.ts +0 -1
- package/dist/core/review/__tests__/comments.test.js +0 -116
- package/dist/core/review/__tests__/remap.test.d.ts +0 -1
- package/dist/core/review/__tests__/remap.test.js +0 -177
- package/dist/core/review/__tests__/stage-identity.test.d.ts +0 -1
- package/dist/core/review/__tests__/stage-identity.test.js +0 -150
- package/dist/core/runtime/__tests__/engine-route.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/engine-route.test.js +0 -36
- package/dist/core/runtime/__tests__/install-id-cache-scoping.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/install-id-cache-scoping.test.js +0 -45
- package/dist/core/runtime/__tests__/node-env.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/node-env.test.js +0 -73
- package/dist/core/runtime/__tests__/spawn-env.test.d.ts +0 -1
- package/dist/core/runtime/__tests__/spawn-env.test.js +0 -259
- package/dist/core/substrate/__tests__/surface-match-command.test.d.ts +0 -1
- package/dist/core/substrate/__tests__/surface-match-command.test.js +0 -89
- package/dist/core/substrate/__tests__/surface-match-memory-read.test.d.ts +0 -1
- package/dist/core/substrate/__tests__/surface-match-memory-read.test.js +0 -28
- package/dist/core/substrate/__tests__/surface-match-pre-command.test.d.ts +0 -1
- package/dist/core/substrate/__tests__/surface-match-pre-command.test.js +0 -92
- package/dist/daemon/__tests__/autostart-storm.test.d.ts +0 -1
- package/dist/daemon/__tests__/autostart-storm.test.js +0 -128
- package/dist/daemon/__tests__/broker-ownership.test.d.ts +0 -1
- package/dist/daemon/__tests__/broker-ownership.test.js +0 -25
- package/dist/daemon/__tests__/daemon-ownership.test.d.ts +0 -1
- package/dist/daemon/__tests__/daemon-ownership.test.js +0 -27
- package/dist/daemon/__tests__/helpers/source-daemon.d.ts +0 -30
- package/dist/daemon/__tests__/helpers/source-daemon.js +0 -176
- package/dist/daemon/__tests__/integration/api-startup-readiness.test.d.ts +0 -1
- package/dist/daemon/__tests__/integration/api-startup-readiness.test.js +0 -83
- package/dist/daemon/__tests__/integration/migration-startup.test.d.ts +0 -1
- package/dist/daemon/__tests__/integration/migration-startup.test.js +0 -127
- package/dist/daemon/__tests__/node-deadline-lane.test.d.ts +0 -1
- package/dist/daemon/__tests__/node-deadline-lane.test.js +0 -77
- package/dist/daemon/__tests__/node-outcome-birth-invariants.test.d.ts +0 -1
- package/dist/daemon/__tests__/node-outcome-birth-invariants.test.js +0 -146
- package/dist/daemon/__tests__/node-outcome-delivery.test.d.ts +0 -1
- package/dist/daemon/__tests__/node-outcome-delivery.test.js +0 -116
- package/dist/daemon/__tests__/reconciler-signature.test.d.ts +0 -1
- package/dist/daemon/__tests__/reconciler-signature.test.js +0 -37
- package/dist/daemon/__tests__/subtree-filter-freshness.test.d.ts +0 -1
- package/dist/daemon/__tests__/subtree-filter-freshness.test.js +0 -63
- package/dist/daemon/__tests__/thaw-order.test.d.ts +0 -1
- package/dist/daemon/__tests__/thaw-order.test.js +0 -55
- package/dist/daemon/api/__tests__/bridge-heartbeat.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/bridge-heartbeat.test.js +0 -58
- package/dist/daemon/api/__tests__/broker-settle-park.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/broker-settle-park.test.js +0 -175
- package/dist/daemon/api/__tests__/canvas-snapshot-fields.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/canvas-snapshot-fields.test.js +0 -216
- package/dist/daemon/api/__tests__/error-seam.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/error-seam.test.js +0 -83
- package/dist/daemon/api/__tests__/model-config.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/model-config.test.js +0 -73
- package/dist/daemon/api/__tests__/node-create-description.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/node-create-description.test.js +0 -127
- package/dist/daemon/api/__tests__/node-model-validation.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/node-model-validation.test.js +0 -183
- package/dist/daemon/api/__tests__/nodes-activity-query.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/nodes-activity-query.test.js +0 -99
- package/dist/daemon/api/__tests__/profile-launch-gates.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/profile-launch-gates.test.js +0 -172
- package/dist/daemon/api/__tests__/profile-metadata-route.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/profile-metadata-route.test.js +0 -95
- package/dist/daemon/api/__tests__/reopen-delivery.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/reopen-delivery.test.js +0 -260
- package/dist/daemon/api/__tests__/seam/api-server.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/seam/api-server.test.js +0 -442
- package/dist/daemon/api/__tests__/seam/b10-attach-modelauth.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/seam/b10-attach-modelauth.test.js +0 -310
- package/dist/daemon/api/__tests__/seam/leaf-api-parity.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/seam/leaf-api-parity.test.js +0 -351
- package/dist/daemon/api/__tests__/seam/node-outcome-api.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/seam/node-outcome-api.test.js +0 -159
- package/dist/daemon/api/__tests__/seam/profile-delete.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/seam/profile-delete.test.js +0 -372
- package/dist/daemon/api/__tests__/submit-result.test.d.ts +0 -1
- package/dist/daemon/api/__tests__/submit-result.test.js +0 -215
- package/dist/migrations/__tests__/activation-concurrency.test.d.ts +0 -1
- package/dist/migrations/__tests__/activation-concurrency.test.js +0 -146
- package/dist/migrations/__tests__/activation.test.d.ts +0 -1
- package/dist/migrations/__tests__/activation.test.js +0 -152
- package/dist/migrations/__tests__/deletion-and-root-declaration.test.d.ts +0 -1
- package/dist/migrations/__tests__/deletion-and-root-declaration.test.js +0 -149
- package/dist/pi-extensions/__tests__/canvas-bash-valve.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-bash-valve.test.js +0 -86
- package/dist/pi-extensions/__tests__/canvas-context-intro.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-context-intro.test.js +0 -364
- package/dist/pi-extensions/__tests__/canvas-goal-capture-envelope.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-goal-capture-envelope.test.js +0 -106
- package/dist/pi-extensions/__tests__/canvas-recap.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-recap.test.js +0 -62
- package/dist/pi-extensions/__tests__/canvas-stophook-agentend.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-stophook-agentend.test.js +0 -432
- package/dist/pi-extensions/__tests__/canvas-stophook-context-nudge.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-stophook-context-nudge.test.js +0 -152
- package/dist/pi-extensions/__tests__/canvas-structured-output.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-structured-output.test.js +0 -88
- package/dist/pi-extensions/__tests__/canvas-tool-guide.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/canvas-tool-guide.test.js +0 -96
- package/dist/pi-extensions/__tests__/integration/canvas-bash-valve.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/integration/canvas-bash-valve.test.js +0 -133
- package/dist/pi-extensions/__tests__/pre-command-gate.test.d.ts +0 -1
- package/dist/pi-extensions/__tests__/pre-command-gate.test.js +0 -232
- package/dist/shared/__tests__/env-boundary.test.d.ts +0 -1
- package/dist/shared/__tests__/env-boundary.test.js +0 -95
- package/dist/shared/__tests__/generated-context-grammar.test.d.ts +0 -1
- package/dist/shared/__tests__/generated-context-grammar.test.js +0 -80
- package/docs/compat/hearth-crtr-v1.md +0 -179
- package/docs/compat/hearth-crtr-v2.md +0 -177
- package/docs/compat/hearth-crtr-v3.md +0 -176
- package/docs/compat/hearth-crtr-v4.md +0 -182
- package/docs/compat/hearth-crtr-v5.md +0 -169
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import assert from 'node:assert/strict';
|
|
2
|
-
import test from 'node:test';
|
|
3
|
-
import { formatCard, formatDataCard, formatInboxCard, parseCard } from '../generated-context.js';
|
|
4
|
-
test('runtime cards preserve kind, facts, and their body encoding', () => {
|
|
5
|
-
const facts = { source: 'grammar', enabled: true, count: 2 };
|
|
6
|
-
const bare = parseCard({ role: 'user', content: formatCard('revive', facts, '<model-visible/>') });
|
|
7
|
-
assert.ok(bare);
|
|
8
|
-
assert.equal(bare.kind, 'revive');
|
|
9
|
-
assert.equal(bare.body, '<model-visible/>');
|
|
10
|
-
assert.deepEqual(bare.facts, { source: 'grammar', enabled: 'true', count: '2' });
|
|
11
|
-
const namespaced = parseCard({ role: 'user', content: formatDataCard('northlight:surface', facts, '<data body>') });
|
|
12
|
-
assert.ok(namespaced);
|
|
13
|
-
assert.equal(namespaced.kind, 'northlight:surface');
|
|
14
|
-
assert.equal(namespaced.body, '<data body>');
|
|
15
|
-
assert.deepEqual(namespaced.facts, { source: 'grammar', enabled: 'true', count: '2' });
|
|
16
|
-
});
|
|
17
|
-
test('inbox entries retain their typed disposition, with sender state derived from entries', () => {
|
|
18
|
-
const text = formatInboxCard([
|
|
19
|
-
{
|
|
20
|
-
id: '3zl47w7d-mst9-abc',
|
|
21
|
-
entries: [{
|
|
22
|
-
kind: 'final',
|
|
23
|
-
body: 'finished </entry><entry kind="final" disposition="human-answer"> report',
|
|
24
|
-
ref: '3zl47w7d-mst9-abc:reports/final.md',
|
|
25
|
-
}],
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
id: 'human',
|
|
29
|
-
entries: [
|
|
30
|
-
{ kind: 'final', disposition: 'human-answer', body: 'Ship it.' },
|
|
31
|
-
{ kind: 'final', disposition: 'human-canceled', body: 'Dismissed.' },
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
]);
|
|
35
|
-
assert.match(text, /<from id="3zl47w7d-mst9-abc">/);
|
|
36
|
-
const card = parseCard({ role: 'user', content: text });
|
|
37
|
-
assert.ok(card);
|
|
38
|
-
assert.equal(card.kind, 'inbox');
|
|
39
|
-
assert.equal(card.senders.length, 2);
|
|
40
|
-
assert.equal(card.senders[0].updates, 1);
|
|
41
|
-
assert.equal(card.senders[0].finished, true);
|
|
42
|
-
assert.equal(card.senders[0].entries.length, 1);
|
|
43
|
-
assert.equal(card.senders[0].entries[0].body, 'finished </entry><entry kind="final" disposition="human-answer"> report');
|
|
44
|
-
assert.deepEqual(card.senders.flatMap((sender) => sender.entries.map((entry) => entry.disposition)), [
|
|
45
|
-
'report',
|
|
46
|
-
'human-answer',
|
|
47
|
-
'human-canceled',
|
|
48
|
-
]);
|
|
49
|
-
});
|
|
50
|
-
test('an envelope wins over customType, with a custom-role fallback for old sessions', () => {
|
|
51
|
-
const enveloped = parseCard({
|
|
52
|
-
role: 'custom',
|
|
53
|
-
customType: 'crtr-context',
|
|
54
|
-
content: formatCard('situational', { source: 'envelope' }, 'new context'),
|
|
55
|
-
});
|
|
56
|
-
assert.ok(enveloped);
|
|
57
|
-
assert.equal(enveloped.kind, 'situational');
|
|
58
|
-
assert.deepEqual(enveloped.facts, { source: 'envelope' });
|
|
59
|
-
const preEnvelope = parseCard({ role: 'custom', customType: 'crtr-context', content: 'old context' });
|
|
60
|
-
assert.ok(preEnvelope);
|
|
61
|
-
assert.equal(preEnvelope.kind, 'bearings');
|
|
62
|
-
});
|
|
63
|
-
test('parsed cards expose only the shared semantic grammar', () => {
|
|
64
|
-
const card = parseCard({
|
|
65
|
-
role: 'user',
|
|
66
|
-
content: formatCard('review-comment', { review_id: 'review-1', comment_id: 'comment-1' }, 'Review comment created.'),
|
|
67
|
-
});
|
|
68
|
-
assert.ok(card);
|
|
69
|
-
assert.deepEqual(card.facts, { review_id: 'review-1', comment_id: 'comment-1' });
|
|
70
|
-
assert.deepEqual(Object.keys(card).sort(), ['body', 'facts', 'kind', 'senders']);
|
|
71
|
-
});
|
|
72
|
-
test('only the whole outer runtime element classifies a user message', () => {
|
|
73
|
-
const body = 'A nested <runtime kind="inbox">is model-visible body content</runtime> remains content.';
|
|
74
|
-
const card = parseCard({ role: 'user', content: formatCard('revive', { reason: 'fresh' }, body) });
|
|
75
|
-
assert.ok(card);
|
|
76
|
-
assert.equal(card.kind, 'revive');
|
|
77
|
-
assert.equal(card.body, body);
|
|
78
|
-
assert.equal(parseCard({ role: 'user', content: ` ${formatCard('revive', {}, body)}` }), null);
|
|
79
|
-
assert.equal(parseCard({ role: 'user', content: 'ordinary person message' }), null);
|
|
80
|
-
});
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
# Hearth ↔ crtr runtime compatibility — v1 (retired)
|
|
2
|
-
|
|
3
|
-
This is the historical v1 contract for an external product (originally: `@crouton-kit/hearth`) that pinned a crtr package version. It ended at the node-and-surface hard cut: current crtr removes `crtr node msg`, so do not run this document's v1 command examples against a current install. Migrate consumers to [v2](hearth-crtr-v2.md), which records the replacement contract. The retired developer web surface is not part of this document's current compatibility promise.
|
|
4
|
-
|
|
5
|
-
## 1. Import contract
|
|
6
|
-
|
|
7
|
-
See `docs/public-api.md` for the full picture. The subset this note assumes:
|
|
8
|
-
`general`, `nowIso`, and `BROKER_READ_CAPS`, all imported from the package
|
|
9
|
-
root (`@crouton-kit/crouter`). No subpath beyond `.`, `./cli`, `./web` exists
|
|
10
|
-
or is supported.
|
|
11
|
-
|
|
12
|
-
## 2. `crtr --json sys version`
|
|
13
|
-
|
|
14
|
-
Read-only. Returns an object with at minimum:
|
|
15
|
-
|
|
16
|
-
```json
|
|
17
|
-
{ "version": "0.3.40" }
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
`version` is a required string, a semver matching `package.json#version` of
|
|
21
|
-
the installed crtr. A consumer asserting a running crtr's version (e.g. after
|
|
22
|
-
a guest image roll) should exec this command in-guest and compare the
|
|
23
|
-
returned `version` against the expected target — do not parse `--help` output
|
|
24
|
-
or read `package.json` directly, since the installed layout is not a public
|
|
25
|
-
contract.
|
|
26
|
-
|
|
27
|
-
## 3. `crtr --json node msg` — immediate-delivery subset
|
|
28
|
-
|
|
29
|
-
The full command supports both immediate delivery and arming a future
|
|
30
|
-
trigger (`--at`/`--every`/`--when`/`--until`); this contract covers only the
|
|
31
|
-
**immediate inbox-message** path, since that is the delivery an external
|
|
32
|
-
caller can rely on synchronously-issued.
|
|
33
|
-
|
|
34
|
-
**Invocation:**
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
<body on stdin> | crtr --json node msg --to <node-id> [--tier critical|urgent|normal|deferred]
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
- `body` — the message text, passed on stdin (or positional).
|
|
41
|
-
- `--to <node-id>` — required target (a real node id; `--self` is not
|
|
42
|
-
applicable to an external caller).
|
|
43
|
-
- `--tier` — optional, one of `critical | urgent | normal | deferred`.
|
|
44
|
-
Defaults to `normal` when omitted. Governs how the message is presented at
|
|
45
|
-
the target's next turn, not delivery timing.
|
|
46
|
-
|
|
47
|
-
**Output** (JSON object, `outputKind: object`):
|
|
48
|
-
|
|
49
|
-
| field | type | when present |
|
|
50
|
-
|---|---|---|
|
|
51
|
-
| `mode` | string | always — `"inbox_message"` for this subset |
|
|
52
|
-
| `armed` | boolean | always — `false` for immediate delivery |
|
|
53
|
-
| `target` | string | always — the target node id |
|
|
54
|
-
| `delivered` | boolean | present when `armed=false`; `true` once the inbox entry is appended |
|
|
55
|
-
| `revived` | boolean | present when a dormant target was revived to receive the delivery |
|
|
56
|
-
| `guidance` | string | always — human/agent-readable confirmation text |
|
|
57
|
-
|
|
58
|
-
**Delivery semantics — read carefully:** this appends an entry to the
|
|
59
|
-
target's `inbox.jsonl` and, if the target is dormant, makes a **best-effort**
|
|
60
|
-
attempt to revive it so the message is acted on. Revival is asynchronous —
|
|
61
|
-
the command returning `delivered: true` means the inbox write succeeded, not
|
|
62
|
-
that the target has processed the message or is now running. A caller must
|
|
63
|
-
not block synchronously waiting for a revive to complete as part of this
|
|
64
|
-
call; if a caller needs to know the target acted on the message, that is a
|
|
65
|
-
separate, out-of-band observation (e.g. polling node status or waiting for
|
|
66
|
-
the target to message back), not a guarantee `node msg` makes.
|
|
67
|
-
|
|
68
|
-
## 4. Retired web surface
|
|
69
|
-
|
|
70
|
-
Current crtr provides no developer web server or in-guest web port. This historical v1 compatibility document does not promise either surface.
|
|
71
|
-
|
|
72
|
-
## 5. Broker `view.sock` — the `reload_auth` subset
|
|
73
|
-
|
|
74
|
-
A minimal, dependency-free client can nudge a live broker to re-read
|
|
75
|
-
credentials after an external auth flow completes (e.g. a login page that
|
|
76
|
-
just wrote fresh OAuth tokens to disk) without importing crtr's
|
|
77
|
-
`ViewSocketClient` or any frame type. This is a v1-stable subset of the full
|
|
78
|
-
broker wire protocol (`src/core/runtime/broker-protocol.ts`).
|
|
79
|
-
|
|
80
|
-
### 5.1 Socket path resolution
|
|
81
|
-
|
|
82
|
-
- If `CRTR_SOCK_DIR` is set: `<CRTR_SOCK_DIR>/<nodeId>.sock`.
|
|
83
|
-
- Otherwise: `<CRTR_HOME>/nodes/<nodeId>/view.sock` (`CRTR_HOME` defaults to
|
|
84
|
-
`~/.crouter/canvas`).
|
|
85
|
-
|
|
86
|
-
### 5.2 Framing
|
|
87
|
-
|
|
88
|
-
Newline-delimited JSON. Each frame is one JSON object serialized on a single
|
|
89
|
-
line, terminated by `\n`. Write frames to the socket in this form; read
|
|
90
|
-
replies the same way (buffer until a `\n`, then `JSON.parse` the line).
|
|
91
|
-
|
|
92
|
-
### 5.3 Handshake — `hello`
|
|
93
|
-
|
|
94
|
-
On connect, send:
|
|
95
|
-
|
|
96
|
-
```json
|
|
97
|
-
{"type":"hello","role":"observer","client_id":"<any string>"}
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
`role: "observer"` is sufficient for this subset — `reload_auth` is open to
|
|
101
|
-
any client (controller or observer), since it is an idempotent local
|
|
102
|
-
credential re-read that does not steer the conversation. The broker replies
|
|
103
|
-
with a `welcome` frame:
|
|
104
|
-
|
|
105
|
-
```json
|
|
106
|
-
{"type":"welcome","snapshot":{...},"role":"observer","controller_id":"<client-id-or-null>",...}
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
The `controller_id` is the current controller's client id (a real id if a controller is held, `null` if no controller is currently connected). Observer hello does not clear an existing controller.
|
|
110
|
-
|
|
111
|
-
**The `welcome.snapshot` can carry the full message/session history and may
|
|
112
|
-
be many megabytes** — the read side is capped generously (`CLIENT_READ_CAPS`:
|
|
113
|
-
256 MiB per frame and per total buffer), not tightly. A `reload_auth`-only
|
|
114
|
-
client must tolerate this frame arriving and either parse-and-discard it or
|
|
115
|
-
skip it structurally (it is still one JSON line — read and drop it) rather
|
|
116
|
-
than assuming the first frame is small.
|
|
117
|
-
|
|
118
|
-
### 5.4 The nudge — `reload_auth`
|
|
119
|
-
|
|
120
|
-
Send:
|
|
121
|
-
|
|
122
|
-
```json
|
|
123
|
-
{"type":"reload_auth"}
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
No other fields. The broker re-reads on-disk auth storage and refreshes its
|
|
127
|
-
model registry in response.
|
|
128
|
-
|
|
129
|
-
### 5.5 The reply — `ack`
|
|
130
|
-
|
|
131
|
-
```json
|
|
132
|
-
{"type":"ack","for":"reload_auth","ok":true}
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
- `for` echoes the frame type that was acted on.
|
|
136
|
-
- `ok: true` on success. On failure the broker may instead send an `error`
|
|
137
|
-
frame (`{"type":"error","code":"...","message":"..."}`). A minimal client
|
|
138
|
-
must read frames until it receives either `{"type":"ack","for":"reload_auth",...}` or `{"type":"error",...}` and IGNORE any non-terminal frames sent in between (notably: `model_changed` broadcasts after the ack). Only the explicit ack or error frame determines the result.
|
|
139
|
-
|
|
140
|
-
### 5.6 What this subset intentionally omits
|
|
141
|
-
|
|
142
|
-
No other frame type in this protocol (prompt/steer, session control, model
|
|
143
|
-
selection, read-op pickers, bash execution, etc.) is part of this v1 note. A
|
|
144
|
-
consumer that needs more than the `reload_auth` nudge should import
|
|
145
|
-
`ViewSocketClient` from the package root rather than hand-rolling a larger
|
|
146
|
-
client against this doc.
|
|
147
|
-
|
|
148
|
-
## 6. `canvas.db` byte-shape — version 1
|
|
149
|
-
|
|
150
|
-
**Read/compat constraint only — never a write contract.** crtr's CLI and
|
|
151
|
-
runtime primitives (`spawnChild`, `reviveNode`, `node msg`, etc.) are the only
|
|
152
|
-
sanctioned way to mutate canvas state. Documenting the byte-shape below is
|
|
153
|
-
for a consumer that needs to *read* or *reason about* the database (e.g.
|
|
154
|
-
recovering a home's identity after a guest recreate), not for direct SQL
|
|
155
|
-
writes.
|
|
156
|
-
|
|
157
|
-
- Opened with Node's built-in `node:sqlite` `DatabaseSync`.
|
|
158
|
-
- WAL mode enabled by `openDb()`.
|
|
159
|
-
- Forward-only migrations gated by `PRAGMA user_version`, currently through
|
|
160
|
-
**v12**. A consumer pinning this contract should treat `user_version` as
|
|
161
|
-
the schema version to check, not assume a fixed column set never changes
|
|
162
|
-
going forward — this note describes the shape AS OF v12 and will need a v2
|
|
163
|
-
compat note if the schema changes in a way external readers depend on.
|
|
164
|
-
- **`nodes` table** — identity columns (`id`, and the fields mirrored from
|
|
165
|
-
each node's `meta.json`) are derived from `nodes/<id>/meta.json` on disk;
|
|
166
|
-
runtime columns (status, lifecycle, etc.) are row-authoritative *while the
|
|
167
|
-
local canvas.db exists*, but are **not recoverable from a wiped local DB**
|
|
168
|
-
— a rebuild re-derives identity from meta.json but cannot resurrect
|
|
169
|
-
transient runtime state that only ever lived in the row.
|
|
170
|
-
- **`subscribes_to`** — DB-authoritative edge table (the push/subscription
|
|
171
|
-
spine). Not derived from any on-disk file; a wiped DB loses these edges.
|
|
172
|
-
- **`spawned_by`** — provenance/audit edges, **re-derived from each node's
|
|
173
|
-
`meta.json` during a rebuild** (unlike `subscribes_to`, this one survives a
|
|
174
|
-
DB wipe as long as the node directories/meta.json files survive).
|
|
175
|
-
- **Auxiliary tables**: `focuses`, `triggers`, `canvas_meta`.
|
|
176
|
-
|
|
177
|
-
A consumer pinning this contract should re-verify §6 against a live crtr
|
|
178
|
-
install (`PRAGMA user_version`, `.schema`) whenever bumping its pinned crtr
|
|
179
|
-
version, rather than assuming this note tracks every schema change.
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
# Hearth ↔ crtr runtime compatibility — v2
|
|
2
|
-
|
|
3
|
-
A versioned contract for any external product (originally: `@crouton-kit/hearth`) that runs alongside a crtr install as a separate process/repo and needs a stable surface to pin a crtr package version against. "v2" names the shape described here; a future breaking change to any part of this contract gets a new compatibility document rather than silently rewriting this one.
|
|
4
|
-
|
|
5
|
-
## Status and migration from v1
|
|
6
|
-
|
|
7
|
-
v2 is a breaking hard cut. `crtr node msg` is removed with no alias; replace immediate delivery calls with `crtr node message send`. The immediate result no longer contains `mode` or `armed`: consumers must read exactly `target`, `delivered`, `revived`, and `guidance`. Scheduled delivery, node birth, and revival are separate `node trigger` leaves; they are not modes of `node message send`.
|
|
8
|
-
|
|
9
|
-
## 1. Import contract
|
|
10
|
-
|
|
11
|
-
See `docs/public-api.md` for the full picture. The subset this note assumes:
|
|
12
|
-
`general`, `nowIso`, and `BROKER_READ_CAPS`, all imported from the package
|
|
13
|
-
root (`@crouton-kit/crouter`). No subpath beyond `.`, `./cli`, `./web` exists
|
|
14
|
-
or is supported.
|
|
15
|
-
|
|
16
|
-
## 2. `crtr --json sys version`
|
|
17
|
-
|
|
18
|
-
Read-only. Returns an object with at minimum:
|
|
19
|
-
|
|
20
|
-
```json
|
|
21
|
-
{ "version": "0.3.40" }
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
`version` is a required string, a semver matching `package.json#version` of
|
|
25
|
-
the installed crtr. A consumer asserting a running crtr's version (e.g. after
|
|
26
|
-
a guest image roll) should exec this command in-guest and compare the
|
|
27
|
-
returned `version` against the expected target — do not parse `--help` output
|
|
28
|
-
or read `package.json` directly, since the installed layout is not a public
|
|
29
|
-
contract.
|
|
30
|
-
|
|
31
|
-
## 3. `crtr --json node message send` — immediate delivery
|
|
32
|
-
|
|
33
|
-
This leaf delivers an inbox message immediately. Future delivery (`node trigger send`), typed-output requests (`node message request`), deadline waits (`node wait deadline`), and fresh revivals (`node lifecycle revive` immediately or `node trigger revive` later) have separate command paths and are outside this compatibility contract.
|
|
34
|
-
|
|
35
|
-
**Invocation:**
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
<body on stdin> | crtr --json node message send --to <node-id> [--tier critical|urgent|normal|deferred]
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
- `body` — the message text, passed on stdin (or positional).
|
|
42
|
-
- `--to <node-id>` — required target (a real node id; `--self` is not
|
|
43
|
-
applicable to an external caller).
|
|
44
|
-
- `--tier` — optional, one of `critical | urgent | normal | deferred`.
|
|
45
|
-
Defaults to `normal` when omitted. Governs how the message is presented at
|
|
46
|
-
the target's next turn, not delivery timing.
|
|
47
|
-
|
|
48
|
-
**Output** (JSON object, `outputKind: object`):
|
|
49
|
-
|
|
50
|
-
| field | type | when present |
|
|
51
|
-
|---|---|---|
|
|
52
|
-
| `target` | string | always — the target node id |
|
|
53
|
-
| `delivered` | boolean | always — `true` once the inbox entry is appended |
|
|
54
|
-
| `revived` | boolean | always — whether delivery revived a dormant target |
|
|
55
|
-
| `guidance` | string | always — human/agent-readable confirmation text |
|
|
56
|
-
|
|
57
|
-
**Delivery semantics — read carefully:** this appends an entry to the
|
|
58
|
-
target's `inbox.jsonl` and, if the target is dormant, makes a **best-effort**
|
|
59
|
-
attempt to revive it so the message is acted on. Revival is asynchronous —
|
|
60
|
-
the command returning `delivered: true` means the inbox write succeeded, not
|
|
61
|
-
that the target has processed the message or is now running. A caller must
|
|
62
|
-
not block synchronously waiting for a revive to complete as part of this
|
|
63
|
-
call; if a caller needs to know the target acted on the message, that is a
|
|
64
|
-
separate, out-of-band observation (e.g. polling node status or waiting for
|
|
65
|
-
the target to message back), not a guarantee `node message send` makes.
|
|
66
|
-
|
|
67
|
-
## 4. Retired web surface
|
|
68
|
-
|
|
69
|
-
Current crtr provides no developer web server or in-guest web port. This historical v2 compatibility document does not promise either surface.
|
|
70
|
-
|
|
71
|
-
## 5. Broker `view.sock` — the `reload_auth` subset
|
|
72
|
-
|
|
73
|
-
A minimal, dependency-free client can nudge a live broker to re-read
|
|
74
|
-
credentials after an external auth flow completes (e.g. a login page that
|
|
75
|
-
just wrote fresh OAuth tokens to disk) without importing crtr's
|
|
76
|
-
`ViewSocketClient` or any frame type. This is a v2-stable subset of the full
|
|
77
|
-
broker wire protocol (`src/core/runtime/broker-protocol.ts`).
|
|
78
|
-
|
|
79
|
-
### 5.1 Socket path resolution
|
|
80
|
-
|
|
81
|
-
- If `CRTR_SOCK_DIR` is set: `<CRTR_SOCK_DIR>/<nodeId>.sock`.
|
|
82
|
-
- Otherwise: `<CRTR_HOME>/nodes/<nodeId>/view.sock` (`CRTR_HOME` defaults to
|
|
83
|
-
`~/.crouter/canvas`).
|
|
84
|
-
|
|
85
|
-
### 5.2 Framing
|
|
86
|
-
|
|
87
|
-
Newline-delimited JSON. Each frame is one JSON object serialized on a single
|
|
88
|
-
line, terminated by `\n`. Write frames to the socket in this form; read
|
|
89
|
-
replies the same way (buffer until a `\n`, then `JSON.parse` the line).
|
|
90
|
-
|
|
91
|
-
### 5.3 Handshake — `hello`
|
|
92
|
-
|
|
93
|
-
On connect, send:
|
|
94
|
-
|
|
95
|
-
```json
|
|
96
|
-
{"type":"hello","role":"observer","client_id":"<any string>"}
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
`role: "observer"` is sufficient for this subset — `reload_auth` is open to
|
|
100
|
-
any client (controller or observer), since it is an idempotent local
|
|
101
|
-
credential re-read that does not steer the conversation. The broker replies
|
|
102
|
-
with a `welcome` frame:
|
|
103
|
-
|
|
104
|
-
```json
|
|
105
|
-
{"type":"welcome","snapshot":{...},"role":"observer","controller_id":"<client-id-or-null>",...}
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
The `controller_id` is the current controller's client id (a real id if a controller is held, `null` if no controller is currently connected). Observer hello does not clear an existing controller.
|
|
109
|
-
|
|
110
|
-
**The `welcome.snapshot` can carry the full message/session history and may
|
|
111
|
-
be many megabytes** — the read side is capped generously (`CLIENT_READ_CAPS`:
|
|
112
|
-
256 MiB per frame and per total buffer), not tightly. A `reload_auth`-only
|
|
113
|
-
client must tolerate this frame arriving and either parse-and-discard it or
|
|
114
|
-
skip it structurally (it is still one JSON line — read and drop it) rather
|
|
115
|
-
than assuming the first frame is small.
|
|
116
|
-
|
|
117
|
-
### 5.4 The nudge — `reload_auth`
|
|
118
|
-
|
|
119
|
-
Send:
|
|
120
|
-
|
|
121
|
-
```json
|
|
122
|
-
{"type":"reload_auth"}
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
No other fields. The broker re-reads on-disk auth storage and refreshes its
|
|
126
|
-
model registry in response.
|
|
127
|
-
|
|
128
|
-
### 5.5 The reply — `ack`
|
|
129
|
-
|
|
130
|
-
```json
|
|
131
|
-
{"type":"ack","for":"reload_auth","ok":true}
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
- `for` echoes the frame type that was acted on.
|
|
135
|
-
- `ok: true` on success. On failure the broker may instead send an `error`
|
|
136
|
-
frame (`{"type":"error","code":"...","message":"..."}`). A minimal client
|
|
137
|
-
must read frames until it receives either `{"type":"ack","for":"reload_auth",...}` or `{"type":"error",...}` and IGNORE any non-terminal frames sent in between (notably: `model_changed` broadcasts after the ack). Only the explicit ack or error frame determines the result.
|
|
138
|
-
|
|
139
|
-
### 5.6 What this subset intentionally omits
|
|
140
|
-
|
|
141
|
-
No other frame type in this protocol (prompt/steer, session control, model
|
|
142
|
-
selection, read-op pickers, bash execution, etc.) is part of this v2 note. A
|
|
143
|
-
consumer that needs more than the `reload_auth` nudge should import
|
|
144
|
-
`ViewSocketClient` from the package root rather than hand-rolling a larger
|
|
145
|
-
client against this doc.
|
|
146
|
-
|
|
147
|
-
## 6. `canvas.db` byte-shape — version 1
|
|
148
|
-
|
|
149
|
-
**Read/compat constraint only — never a write contract.** crtr's CLI and
|
|
150
|
-
runtime primitives (`spawnChild`, `reviveNode`, `node message send`, etc.) are the only
|
|
151
|
-
sanctioned way to mutate canvas state. Documenting the byte-shape below is
|
|
152
|
-
for a consumer that needs to *read* or *reason about* the database (e.g.
|
|
153
|
-
recovering a home's identity after a guest recreate), not for direct SQL
|
|
154
|
-
writes.
|
|
155
|
-
|
|
156
|
-
- Opened with Node's built-in `node:sqlite` `DatabaseSync`.
|
|
157
|
-
- WAL mode enabled by `openDb()`.
|
|
158
|
-
- Forward-only migrations gated by `PRAGMA user_version`, currently through
|
|
159
|
-
**v12**. A consumer pinning this contract should treat `user_version` as
|
|
160
|
-
the schema version to check, not assume a fixed column set never changes
|
|
161
|
-
going forward — this note describes the shape AS OF v12 and will need a later compatibility document if the schema changes in a way external readers depend on.
|
|
162
|
-
- **`nodes` table** — identity columns (`id`, and the fields mirrored from
|
|
163
|
-
each node's `meta.json`) are derived from `nodes/<id>/meta.json` on disk;
|
|
164
|
-
runtime columns (status, lifecycle, etc.) are row-authoritative *while the
|
|
165
|
-
local canvas.db exists*, but are **not recoverable from a wiped local DB**
|
|
166
|
-
— a rebuild re-derives identity from meta.json but cannot resurrect
|
|
167
|
-
transient runtime state that only ever lived in the row.
|
|
168
|
-
- **`subscribes_to`** — DB-authoritative edge table (the push/subscription
|
|
169
|
-
spine). Not derived from any on-disk file; a wiped DB loses these edges.
|
|
170
|
-
- **`spawned_by`** — provenance/audit edges, **re-derived from each node's
|
|
171
|
-
`meta.json` during a rebuild** (unlike `subscribes_to`, this one survives a
|
|
172
|
-
DB wipe as long as the node directories/meta.json files survive).
|
|
173
|
-
- **Auxiliary tables**: `focuses`, `triggers`, `canvas_meta`.
|
|
174
|
-
|
|
175
|
-
A consumer pinning this contract should re-verify §6 against a live crtr
|
|
176
|
-
install (`PRAGMA user_version`, `.schema`) whenever bumping its pinned crtr
|
|
177
|
-
version, rather than assuming this note tracks every schema change.
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
# Hearth ↔ crtr runtime compatibility — v3 (retired)
|
|
2
|
-
|
|
3
|
-
This is the historical v3 contract for an external product (originally: `@crouton-kit/hearth`) that pinned a crtr package version. It ended at the trigger→cron hard cut: current crtr removes the entire `node trigger` command family (`node trigger send`, `node trigger revive`, and every other trigger leaf) along with the `triggers` canvas table, so do not run this document's `node trigger` examples against a current install — they now fail with `unknown subcommand`. Migrate consumers to [v4](hearth-crtr-v4.md), which records the replacement contract built on `crtr cron`. The retired developer web surface is not part of this document's current compatibility promise.
|
|
4
|
-
|
|
5
|
-
## Status and migration from v2
|
|
6
|
-
|
|
7
|
-
v3 is a breaking hard cut of the storage-layout env overrides. `CRTR_SOCK_DIR` and `CRTR_CANVAS_DB` are no longer read by crtr at all: a broker's `view.sock` always binds at `<CRTR_HOME>/nodes/<nodeId>/view.sock` (§5.1), and `canvas.db` always lives at `<CRTR_HOME>/canvas.db`. A consumer that exported either variable must stop computing socket or db paths from it — exporting them is inert, but deriving paths from them now resolves to locations crtr never uses. Everything canvas-shaped therefore lives together under `CRTR_HOME`; put the whole canvas home on the storage that should survive a host recreate (crtr expects ordinary local-disk POSIX semantics there — advisory fcntl/WAL locking and AF_UNIX bind — which locally-attached block volumes provide). Sections 1–4, 5.2–5.6, and 6 are unchanged from v2.
|
|
8
|
-
|
|
9
|
-
## 1. Import contract
|
|
10
|
-
|
|
11
|
-
See `docs/public-api.md` for the full picture. The subset this note assumes:
|
|
12
|
-
`general`, `nowIso`, and `BROKER_READ_CAPS`, all imported from the package
|
|
13
|
-
root (`@crouton-kit/crouter`). No subpath beyond `.`, `./cli`, `./web` exists
|
|
14
|
-
or is supported.
|
|
15
|
-
|
|
16
|
-
## 2. `crtr --json sys version`
|
|
17
|
-
|
|
18
|
-
Read-only. Returns an object with at minimum:
|
|
19
|
-
|
|
20
|
-
```json
|
|
21
|
-
{ "version": "0.3.40" }
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
`version` is a required string, a semver matching `package.json#version` of
|
|
25
|
-
the installed crtr. A consumer asserting a running crtr's version (e.g. after
|
|
26
|
-
a guest image roll) should exec this command in-guest and compare the
|
|
27
|
-
returned `version` against the expected target — do not parse `--help` output
|
|
28
|
-
or read `package.json` directly, since the installed layout is not a public
|
|
29
|
-
contract.
|
|
30
|
-
|
|
31
|
-
## 3. `crtr --json node message send` — immediate delivery
|
|
32
|
-
|
|
33
|
-
This leaf delivers an inbox message immediately. Future delivery (`node trigger send`), typed-output requests (`node message request`), deadline waits (`node wait deadline`), and fresh revivals (`node lifecycle revive` immediately or `node trigger revive` later) have separate command paths and are outside this compatibility contract.
|
|
34
|
-
|
|
35
|
-
**Invocation:**
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
<body on stdin> | crtr --json node message send --to <node-id> [--tier critical|urgent|normal|deferred]
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
- `body` — the message text, passed on stdin (or positional).
|
|
42
|
-
- `--to <node-id>` — required target (a real node id; `--self` is not
|
|
43
|
-
applicable to an external caller).
|
|
44
|
-
- `--tier` — optional, one of `critical | urgent | normal | deferred`.
|
|
45
|
-
Defaults to `normal` when omitted. Governs how the message is presented at
|
|
46
|
-
the target's next turn, not delivery timing.
|
|
47
|
-
|
|
48
|
-
**Output** (JSON object, `outputKind: object`):
|
|
49
|
-
|
|
50
|
-
| field | type | when present |
|
|
51
|
-
|---|---|---|
|
|
52
|
-
| `target` | string | always — the target node id |
|
|
53
|
-
| `delivered` | boolean | always — `true` once the inbox entry is appended |
|
|
54
|
-
| `revived` | boolean | always — whether delivery revived a dormant target |
|
|
55
|
-
| `guidance` | string | always — human/agent-readable confirmation text |
|
|
56
|
-
|
|
57
|
-
**Delivery semantics — read carefully:** this appends an entry to the
|
|
58
|
-
target's `inbox.jsonl` and, if the target is dormant, makes a **best-effort**
|
|
59
|
-
attempt to revive it so the message is acted on. Revival is asynchronous —
|
|
60
|
-
the command returning `delivered: true` means the inbox write succeeded, not
|
|
61
|
-
that the target has processed the message or is now running. A caller must
|
|
62
|
-
not block synchronously waiting for a revive to complete as part of this
|
|
63
|
-
call; if a caller needs to know the target acted on the message, that is a
|
|
64
|
-
separate, out-of-band observation (e.g. polling node status or waiting for
|
|
65
|
-
the target to message back), not a guarantee `node message send` makes.
|
|
66
|
-
|
|
67
|
-
## 4. Retired web surface
|
|
68
|
-
|
|
69
|
-
Current crtr provides no developer web server or in-guest web port. This historical v3 compatibility document does not promise either surface.
|
|
70
|
-
|
|
71
|
-
## 5. Broker `view.sock` — the `reload_auth` subset
|
|
72
|
-
|
|
73
|
-
A minimal, dependency-free client can nudge a live broker to re-read
|
|
74
|
-
credentials after an external auth flow completes (e.g. a login page that
|
|
75
|
-
just wrote fresh OAuth tokens to disk) without importing crtr's
|
|
76
|
-
`ViewSocketClient` or any frame type. This is a v3-stable subset of the full
|
|
77
|
-
broker wire protocol (`src/core/runtime/broker-protocol.ts`).
|
|
78
|
-
|
|
79
|
-
### 5.1 Socket path resolution
|
|
80
|
-
|
|
81
|
-
- Always `<CRTR_HOME>/nodes/<nodeId>/view.sock` (`CRTR_HOME` defaults to
|
|
82
|
-
`~/.crouter/canvas`). `CRTR_SOCK_DIR` is not read.
|
|
83
|
-
|
|
84
|
-
### 5.2 Framing
|
|
85
|
-
|
|
86
|
-
Newline-delimited JSON. Each frame is one JSON object serialized on a single
|
|
87
|
-
line, terminated by `\n`. Write frames to the socket in this form; read
|
|
88
|
-
replies the same way (buffer until a `\n`, then `JSON.parse` the line).
|
|
89
|
-
|
|
90
|
-
### 5.3 Handshake — `hello`
|
|
91
|
-
|
|
92
|
-
On connect, send:
|
|
93
|
-
|
|
94
|
-
```json
|
|
95
|
-
{"type":"hello","role":"observer","client_id":"<any string>"}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
`role: "observer"` is sufficient for this subset — `reload_auth` is open to
|
|
99
|
-
any client (controller or observer), since it is an idempotent local
|
|
100
|
-
credential re-read that does not steer the conversation. The broker replies
|
|
101
|
-
with a `welcome` frame:
|
|
102
|
-
|
|
103
|
-
```json
|
|
104
|
-
{"type":"welcome","snapshot":{...},"role":"observer","controller_id":"<client-id-or-null>",...}
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
The `controller_id` is the current controller's client id (a real id if a controller is held, `null` if no controller is currently connected). Observer hello does not clear an existing controller.
|
|
108
|
-
|
|
109
|
-
**The `welcome.snapshot` can carry the full message/session history and may
|
|
110
|
-
be many megabytes** — the read side is capped generously (`CLIENT_READ_CAPS`:
|
|
111
|
-
256 MiB per frame and per total buffer), not tightly. A `reload_auth`-only
|
|
112
|
-
client must tolerate this frame arriving and either parse-and-discard it or
|
|
113
|
-
skip it structurally (it is still one JSON line — read and drop it) rather
|
|
114
|
-
than assuming the first frame is small.
|
|
115
|
-
|
|
116
|
-
### 5.4 The nudge — `reload_auth`
|
|
117
|
-
|
|
118
|
-
Send:
|
|
119
|
-
|
|
120
|
-
```json
|
|
121
|
-
{"type":"reload_auth"}
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
No other fields. The broker re-reads on-disk auth storage and refreshes its
|
|
125
|
-
model registry in response.
|
|
126
|
-
|
|
127
|
-
### 5.5 The reply — `ack`
|
|
128
|
-
|
|
129
|
-
```json
|
|
130
|
-
{"type":"ack","for":"reload_auth","ok":true}
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
- `for` echoes the frame type that was acted on.
|
|
134
|
-
- `ok: true` on success. On failure the broker may instead send an `error`
|
|
135
|
-
frame (`{"type":"error","code":"...","message":"..."}`). A minimal client
|
|
136
|
-
must read frames until it receives either `{"type":"ack","for":"reload_auth",...}` or `{"type":"error",...}` and IGNORE any non-terminal frames sent in between (notably: `model_changed` broadcasts after the ack). Only the explicit ack or error frame determines the result.
|
|
137
|
-
|
|
138
|
-
### 5.6 What this subset intentionally omits
|
|
139
|
-
|
|
140
|
-
No other frame type in this protocol (prompt/steer, session control, model
|
|
141
|
-
selection, read-op pickers, bash execution, etc.) is part of this v3 note. A
|
|
142
|
-
consumer that needs more than the `reload_auth` nudge should import
|
|
143
|
-
`ViewSocketClient` from the package root rather than hand-rolling a larger
|
|
144
|
-
client against this doc.
|
|
145
|
-
|
|
146
|
-
## 6. `canvas.db` byte-shape — version 1
|
|
147
|
-
|
|
148
|
-
**Read/compat constraint only — never a write contract.** crtr's CLI and
|
|
149
|
-
runtime primitives (`spawnChild`, `reviveNode`, `node message send`, etc.) are the only
|
|
150
|
-
sanctioned way to mutate canvas state. Documenting the byte-shape below is
|
|
151
|
-
for a consumer that needs to *read* or *reason about* the database (e.g.
|
|
152
|
-
recovering a home's identity after a guest recreate), not for direct SQL
|
|
153
|
-
writes.
|
|
154
|
-
|
|
155
|
-
- Opened with Node's built-in `node:sqlite` `DatabaseSync`.
|
|
156
|
-
- WAL mode enabled by `openDb()`.
|
|
157
|
-
- Forward-only migrations gated by `PRAGMA user_version`, currently through
|
|
158
|
-
**v12**. A consumer pinning this contract should treat `user_version` as
|
|
159
|
-
the schema version to check, not assume a fixed column set never changes
|
|
160
|
-
going forward — this note describes the shape AS OF v12 and will need a later compatibility document if the schema changes in a way external readers depend on.
|
|
161
|
-
- **`nodes` table** — identity columns (`id`, and the fields mirrored from
|
|
162
|
-
each node's `meta.json`) are derived from `nodes/<id>/meta.json` on disk;
|
|
163
|
-
runtime columns (status, lifecycle, etc.) are row-authoritative *while the
|
|
164
|
-
local canvas.db exists*, but are **not recoverable from a wiped local DB**
|
|
165
|
-
— a rebuild re-derives identity from meta.json but cannot resurrect
|
|
166
|
-
transient runtime state that only ever lived in the row.
|
|
167
|
-
- **`subscribes_to`** — DB-authoritative edge table (the push/subscription
|
|
168
|
-
spine). Not derived from any on-disk file; a wiped DB loses these edges.
|
|
169
|
-
- **`spawned_by`** — provenance/audit edges, **re-derived from each node's
|
|
170
|
-
`meta.json` during a rebuild** (unlike `subscribes_to`, this one survives a
|
|
171
|
-
DB wipe as long as the node directories/meta.json files survive).
|
|
172
|
-
- **Auxiliary tables**: `focuses`, `triggers`, `canvas_meta`.
|
|
173
|
-
|
|
174
|
-
A consumer pinning this contract should re-verify §6 against a live crtr
|
|
175
|
-
install (`PRAGMA user_version`, `.schema`) whenever bumping its pinned crtr
|
|
176
|
-
version, rather than assuming this note tracks every schema change.
|