@north-light/cli 0.0.0 → 0.3.413
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/LICENSE +18 -0
- package/README.md +182 -2
- package/bin/crouter +4 -0
- package/bin/crtr +4 -0
- package/bin/crtr-launcher +4 -0
- package/bin/crtrd +4 -0
- package/bin/progress-painter.mjs +89 -0
- package/bin/runtime-generation-manifest.mjs +286 -0
- package/bin/runtime-selector.mjs +510 -0
- package/dist/api/client.d.ts +501 -0
- package/dist/api/client.js +3 -0
- package/dist/api/command-manifest/index.d.ts +3 -0
- package/dist/api/command-manifest/index.js +1 -0
- package/dist/api/command-manifest/manifest.d.ts +51 -0
- package/dist/api/command-manifest/manifest.js +1 -0
- package/dist/api/command-manifest/result.d.ts +25 -0
- package/dist/api/command-manifest/result.js +1 -0
- package/dist/api/command-manifest/schema.d.ts +28 -0
- package/dist/api/command-manifest/schema.js +1 -0
- package/dist/api/dto/analytics.d.ts +184 -0
- package/dist/api/dto/analytics.js +0 -0
- package/dist/api/dto/attach.d.ts +22 -0
- package/dist/api/dto/attach.js +0 -0
- package/dist/api/dto/bash-jobs.d.ts +24 -0
- package/dist/api/dto/bash-jobs.js +1 -0
- package/dist/api/dto/bash.d.ts +17 -0
- package/dist/api/dto/bash.js +0 -0
- package/dist/api/dto/broker-ops.d.ts +187 -0
- package/dist/api/dto/broker-ops.js +0 -0
- package/dist/api/dto/broker-signals.d.ts +25 -0
- package/dist/api/dto/broker-signals.js +0 -0
- package/dist/api/dto/broker.d.ts +86 -0
- package/dist/api/dto/broker.js +0 -0
- package/dist/api/dto/canvas.d.ts +359 -0
- package/dist/api/dto/canvas.js +0 -0
- package/dist/api/dto/chat-inventory.d.ts +56 -0
- package/dist/api/dto/chat-inventory.js +0 -0
- package/dist/api/dto/common.d.ts +29 -0
- package/dist/api/dto/common.js +1 -0
- package/dist/api/dto/config.d.ts +46 -0
- package/dist/api/dto/config.js +0 -0
- package/dist/api/dto/crons.d.ts +158 -0
- package/dist/api/dto/crons.js +1 -0
- package/dist/api/dto/custom-objects.d.ts +66 -0
- package/dist/api/dto/custom-objects.js +0 -0
- package/dist/api/dto/delivery.d.ts +71 -0
- package/dist/api/dto/delivery.js +0 -0
- package/dist/api/dto/docs.d.ts +135 -0
- package/dist/api/dto/docs.js +1 -0
- package/dist/api/dto/files.d.ts +21 -0
- package/dist/api/dto/files.js +0 -0
- package/dist/api/dto/focus.d.ts +24 -0
- package/dist/api/dto/focus.js +0 -0
- package/dist/api/dto/grants.d.ts +28 -0
- package/dist/api/dto/grants.js +0 -0
- package/dist/api/dto/health.d.ts +116 -0
- package/dist/api/dto/health.js +0 -0
- package/dist/api/dto/human-requests.d.ts +113 -0
- package/dist/api/dto/human-requests.js +0 -0
- package/dist/api/dto/human.d.ts +28 -0
- package/dist/api/dto/human.js +0 -0
- package/dist/api/dto/inbox.d.ts +273 -0
- package/dist/api/dto/inbox.js +0 -0
- package/dist/api/dto/lifecycle.d.ts +88 -0
- package/dist/api/dto/lifecycle.js +0 -0
- package/dist/api/dto/limits.d.ts +29 -0
- package/dist/api/dto/limits.js +0 -0
- package/dist/api/dto/mail.d.ts +44 -0
- package/dist/api/dto/mail.js +0 -0
- package/dist/api/dto/messages.d.ts +104 -0
- package/dist/api/dto/messages.js +0 -0
- package/dist/api/dto/model-config.d.ts +25 -0
- package/dist/api/dto/model-config.js +0 -0
- package/dist/api/dto/modelauth.d.ts +132 -0
- package/dist/api/dto/modelauth.js +0 -0
- package/dist/api/dto/node-events.d.ts +65 -0
- package/dist/api/dto/node-events.js +0 -0
- package/dist/api/dto/node-outcomes.d.ts +88 -0
- package/dist/api/dto/node-outcomes.js +0 -0
- package/dist/api/dto/node-records.d.ts +35 -0
- package/dist/api/dto/node-records.js +0 -0
- package/dist/api/dto/nodes.d.ts +371 -0
- package/dist/api/dto/nodes.js +0 -0
- package/dist/api/dto/objects.d.ts +172 -0
- package/dist/api/dto/objects.js +1 -0
- package/dist/api/dto/profiles.d.ts +117 -0
- package/dist/api/dto/profiles.js +1 -0
- package/dist/api/dto/recovery.d.ts +104 -0
- package/dist/api/dto/recovery.js +0 -0
- package/dist/api/dto/reports.d.ts +95 -0
- package/dist/api/dto/reports.js +0 -0
- package/dist/api/dto/review-comments.d.ts +146 -0
- package/dist/api/dto/review-comments.js +0 -0
- package/dist/api/dto/reviews.d.ts +113 -0
- package/dist/api/dto/reviews.js +0 -0
- package/dist/api/dto/run-events.d.ts +295 -0
- package/dist/api/dto/run-events.js +0 -0
- package/dist/api/dto/structured-requests.d.ts +64 -0
- package/dist/api/dto/structured-requests.js +1 -0
- package/dist/api/dto/subscriptions.d.ts +14 -0
- package/dist/api/dto/subscriptions.js +0 -0
- package/dist/api/dto/worktree.d.ts +55 -0
- package/dist/api/dto/worktree.js +0 -0
- package/dist/api/error-codes.d.ts +259 -0
- package/dist/api/error-codes.js +1 -0
- package/dist/api/errors.d.ts +47 -0
- package/dist/api/errors.js +1 -0
- package/dist/api/index.d.ts +48 -0
- package/dist/api/index.js +1 -0
- package/dist/api/long-poll.d.ts +59 -0
- package/dist/api/long-poll.js +1 -0
- package/dist/api/node-transport.d.ts +18 -0
- package/dist/api/node-transport.js +1 -0
- package/dist/api/plugin-manifest-schema.d.ts +233 -0
- package/dist/api/plugin-manifest-schema.js +0 -0
- package/dist/api/routes.d.ts +164 -0
- package/dist/api/routes.js +1 -0
- package/dist/api/runtime-version.d.ts +31 -0
- package/dist/api/runtime-version.js +1 -0
- package/dist/build-root.d.ts +58 -0
- package/dist/build-root.js +1 -0
- package/dist/builtin-memory/00-runtime-base/00-authoring.md +46 -0
- package/dist/builtin-memory/00-runtime-base/01-escalation-unattended.md +15 -0
- package/dist/builtin-memory/00-runtime-base/01-escalation.md +15 -0
- package/dist/builtin-memory/00-runtime-base/02-insight-capture.md +11 -0
- package/dist/builtin-memory/01-spine/00-has-manager.md +14 -0
- package/dist/builtin-memory/02-turn-lifecycle/00-ending-a-turn.md +28 -0
- package/dist/builtin-memory/02-turn-lifecycle/01-terminal-user.md +11 -0
- package/dist/builtin-memory/02-turn-lifecycle/01-terminal.md +13 -0
- package/dist/builtin-memory/02-turn-lifecycle/02-resident.md +19 -0
- package/dist/builtin-memory/04-base-worker-exploring.md +13 -0
- package/dist/builtin-memory/04-base-worker.md +15 -0
- package/dist/builtin-memory/04-orchestration-kernel.md +62 -0
- package/dist/builtin-memory/05-kinds/advisor/01-orchestrator.md +17 -0
- package/dist/builtin-memory/05-kinds/advisor/advice-contract.md +15 -0
- package/dist/builtin-memory/05-kinds/explore/00-base.md +19 -0
- package/dist/builtin-memory/05-kinds/explore/01-orchestrator.md +17 -0
- package/dist/builtin-memory/05-kinds/general/00-base.md +15 -0
- package/dist/builtin-memory/05-kinds/review/00-base.md +17 -0
- package/dist/builtin-memory/05-kinds/review/01-orchestrator.md +20 -0
- package/dist/builtin-memory/05-kinds/review/companion/00-base.md +21 -0
- package/dist/builtin-memory/05-kinds/review/security-findings.md +13 -0
- package/dist/builtin-memory/advisor/council.md +33 -0
- package/dist/builtin-memory/crouter-concepts/INDEX.md +15 -0
- package/dist/builtin-memory/crouter-concepts/README.md +19 -0
- package/dist/builtin-memory/crouter-concepts/documents.md +54 -0
- package/dist/builtin-memory/crouter-concepts/lifecycle-and-wakes.md +28 -0
- package/dist/builtin-memory/crouter-concepts/nodes-and-the-canvas.md +31 -0
- package/dist/builtin-memory/crouter-concepts/profiles-kinds-and-modes.md +33 -0
- package/dist/builtin-memory/crouter-concepts/scopes-and-trust.md +41 -0
- package/dist/builtin-memory/crouter-concepts/why-a-daemon.md +31 -0
- package/dist/builtin-memory/crouter-plugin/INDEX.md +12 -0
- package/dist/builtin-memory/crouter-plugin/README.md +22 -0
- package/dist/builtin-memory/crouter-plugin/bundles-and-memory.md +30 -0
- package/dist/builtin-memory/crouter-plugin/commands.md +24 -0
- package/dist/builtin-memory/crouter-plugin/deploying.md +36 -0
- package/dist/builtin-memory/crouter-plugin/errors.md +41 -0
- package/dist/builtin-memory/crouter-plugin/getting-started.md +25 -0
- package/dist/builtin-memory/crouter-plugin/output.md +52 -0
- package/dist/builtin-memory/crouter-plugin/parameters.md +31 -0
- package/dist/builtin-memory/crouter-sdk/INDEX.md +13 -0
- package/dist/builtin-memory/crouter-sdk/README.md +92 -0
- package/dist/builtin-memory/crouter-sdk/bash.md +40 -0
- package/dist/builtin-memory/crouter-sdk/client.md +299 -0
- package/dist/builtin-memory/crouter-sdk/docker.md +70 -0
- package/dist/builtin-memory/crouter-sdk/error-envelope.md +38 -0
- package/dist/builtin-memory/crouter-sdk/errors.md +113 -0
- package/dist/builtin-memory/crouter-sdk/files.md +50 -0
- package/dist/builtin-memory/crouter-sdk/getting-started.md +226 -0
- package/dist/builtin-memory/crouter-sdk/guides/README.md +20 -0
- package/dist/builtin-memory/crouter-sdk/guides/apps-on-crouter-cloud.md +117 -0
- package/dist/builtin-memory/crouter-sdk/guides/apps-with-many-users.md +61 -0
- package/dist/builtin-memory/crouter-sdk/guides/event-driven-assistant.md +91 -0
- package/dist/builtin-memory/crouter-sdk/guides/fan-out-pipeline.md +57 -0
- package/dist/builtin-memory/crouter-sdk/guides/human-approval.md +79 -0
- package/dist/builtin-memory/crouter-sdk/guides/typed-extraction.md +55 -0
- package/dist/builtin-memory/crouter-sdk/memory.md +49 -0
- package/dist/builtin-memory/crouter-sdk/nodes.md +195 -0
- package/dist/builtin-memory/crouter-sdk/release-notes.md +209 -0
- package/dist/builtin-memory/crouter-sdk/resources.md +101 -0
- package/dist/builtin-memory/crouter-sdk/streaming.md +218 -0
- package/dist/builtin-memory/crouter-sdk/testing.md +165 -0
- package/dist/builtin-memory/explore/exploration-doc.md +27 -0
- package/dist/builtin-memory/insights/capture.md +49 -0
- package/dist/builtin-memory/insights/init.md +88 -0
- package/dist/builtin-memory/internal/INDEX.md +40 -0
- package/dist/builtin-memory/internal/agent-shaping.md +80 -0
- package/dist/builtin-memory/internal/examples/INDEX.md +16 -0
- package/dist/builtin-memory/internal/examples/imessage-assistant.md +101 -0
- package/dist/builtin-memory/internal/marketplaces.md +160 -0
- package/dist/builtin-memory/internal/memory-loading.md +68 -0
- package/dist/builtin-memory/internal/nodes-and-canvas.md +60 -0
- package/dist/builtin-memory/internal/plugins.md +457 -0
- package/dist/builtin-memory/internal/storage-tiers.md +51 -0
- package/dist/builtin-memory/memory-read-orientation.md +13 -0
- package/dist/builtin-memory/wedged-child-on-runaway-bash.md +21 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/README.md +49 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/claude-plugin-commands.ts +440 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/filters.json +7 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/index.ts +214 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/index.ts +421 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/memory-slash-commands.ts +145 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/pi-shell-runner.ts +34 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.d.ts +78 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.js +1181 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.ts +1409 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/sysprompt-window.ts +19 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/lib/package.json +3 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.js +1 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/LICENSE +13 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/README.md +172 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/bin.mjs +11 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/composer.js +219 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +225 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/Document.js +335 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/directives.js +176 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/errors.js +57 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/index.js +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/log.js +11 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Alias.js +116 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst.js +98 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/parser.js +975 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/public-api.js +102 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/tags.js +96 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/util.js +11 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/visit.js +233 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/index.js +5 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/package.json +3 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.d.ts +8 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.mjs +201 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.js +90 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.js +45 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.js +112 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.d.ts +63 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.js +224 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.js +227 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.js +148 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.d.ts +141 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.js +337 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.js +76 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.js +57 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.js +90 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.d.ts +49 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.js +178 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.d.ts +21 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.js +62 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.d.ts +25 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.js +50 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.d.ts +3 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.js +19 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.js +118 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.js +151 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.js +40 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.js +27 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.js +53 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/options.d.ts +350 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.js +99 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.d.ts +109 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.js +112 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.js +723 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.js +41 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.d.ts +84 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.js +980 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.d.ts +44 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.js +107 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.js +39 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.js +19 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.js +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.js +19 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.js +16 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.js +21 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.js +47 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.js +42 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.js +25 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.js +64 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.d.ts +48 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.js +99 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/types.d.ts +92 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.js +132 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.d.ts +4 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.js +134 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.d.ts +16 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.js +28 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.d.ts +102 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.js +236 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/package.json +97 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/util.js +2 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/package-lock.json +3857 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/package.json +25 -0
- package/dist/builtin-pi-packages/pi-crtr-extensions/tsconfig.json +10 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +11 -0
- package/dist/clients/attach/ansi-cells.d.ts +44 -0
- package/dist/clients/attach/ansi-cells.js +1 -0
- package/dist/clients/attach/assets/README.md +7 -0
- package/dist/clients/attach/assets/whip-06.mp3 +0 -0
- package/dist/clients/attach/assets/whip-crack.mp3 +0 -0
- package/dist/clients/attach/assets/whip-snap.mp3 +0 -0
- package/dist/clients/attach/chrome/bash-jobs.d.ts +6 -0
- package/dist/clients/attach/chrome/bash-jobs.js +1 -0
- package/dist/clients/attach/chrome/canvas-panels.d.ts +38 -0
- package/dist/clients/attach/chrome/canvas-panels.js +1 -0
- package/dist/clients/attach/chrome/completion-bell.d.ts +10 -0
- package/dist/clients/attach/chrome/completion-bell.js +1 -0
- package/dist/clients/attach/chrome/cron-wait.d.ts +3 -0
- package/dist/clients/attach/chrome/cron-wait.js +1 -0
- package/dist/clients/attach/chrome/git-info.d.ts +20 -0
- package/dist/clients/attach/chrome/git-info.js +2 -0
- package/dist/clients/attach/chrome/header.d.ts +10 -0
- package/dist/clients/attach/chrome/header.js +1 -0
- package/dist/clients/attach/chrome/inbox-strip.d.ts +31 -0
- package/dist/clients/attach/chrome/inbox-strip.js +1 -0
- package/dist/clients/attach/chrome/key-hint.d.ts +9 -0
- package/dist/clients/attach/chrome/key-hint.js +1 -0
- package/dist/clients/attach/chrome/recap.d.ts +7 -0
- package/dist/clients/attach/chrome/recap.js +1 -0
- package/dist/clients/attach/chrome/review-wait.d.ts +6 -0
- package/dist/clients/attach/chrome/review-wait.js +1 -0
- package/dist/clients/attach/chrome/roster.d.ts +36 -0
- package/dist/clients/attach/chrome/roster.js +4 -0
- package/dist/clients/attach/chrome/status-line.d.ts +38 -0
- package/dist/clients/attach/chrome/status-line.js +1 -0
- package/dist/clients/attach/chrome/ticket-panel.d.ts +29 -0
- package/dist/clients/attach/chrome/ticket-panel.js +1 -0
- package/dist/clients/attach/chrome/widgets.d.ts +9 -0
- package/dist/clients/attach/chrome/widgets.js +1 -0
- package/dist/clients/attach/command.d.ts +3 -0
- package/dist/clients/attach/command.js +1 -0
- package/dist/clients/attach/config.d.ts +95 -0
- package/dist/clients/attach/config.js +1 -0
- package/dist/clients/attach/input/capabilities.d.ts +30 -0
- package/dist/clients/attach/input/capabilities.js +1 -0
- package/dist/clients/attach/input/clipboard-image.d.ts +55 -0
- package/dist/clients/attach/input/clipboard-image.js +20 -0
- package/dist/clients/attach/input/completion-frecency.d.ts +45 -0
- package/dist/clients/attach/input/completion-frecency.js +1 -0
- package/dist/clients/attach/input/controller.d.ts +91 -0
- package/dist/clients/attach/input/controller.js +7 -0
- package/dist/clients/attach/input/overlay-owner.d.ts +41 -0
- package/dist/clients/attach/input/overlay-owner.js +1 -0
- package/dist/clients/attach/input/ref-autocomplete.d.ts +77 -0
- package/dist/clients/attach/input/ref-autocomplete.js +2 -0
- package/dist/clients/attach/input/titled-editor.d.ts +225 -0
- package/dist/clients/attach/input/titled-editor.js +4 -0
- package/dist/clients/attach/overlays/auth.d.ts +13 -0
- package/dist/clients/attach/overlays/auth.js +2 -0
- package/dist/clients/attach/overlays/dialogs.d.ts +27 -0
- package/dist/clients/attach/overlays/dialogs.js +2 -0
- package/dist/clients/attach/overlays/file-review.d.ts +10 -0
- package/dist/clients/attach/overlays/file-review.js +2 -0
- package/dist/clients/attach/overlays/graph.d.ts +83 -0
- package/dist/clients/attach/overlays/graph.js +1 -0
- package/dist/clients/attach/overlays/help.d.ts +33 -0
- package/dist/clients/attach/overlays/help.js +1 -0
- package/dist/clients/attach/overlays/mcp.d.ts +32 -0
- package/dist/clients/attach/overlays/mcp.js +1 -0
- package/dist/clients/attach/overlays/pickers.d.ts +56 -0
- package/dist/clients/attach/overlays/pickers.js +1 -0
- package/dist/clients/attach/photon_rs_bg.wasm +0 -0
- package/dist/clients/attach/render/activity-slot.d.ts +4 -0
- package/dist/clients/attach/render/activity-slot.js +1 -0
- package/dist/clients/attach/render/assistant-message.d.ts +13 -0
- package/dist/clients/attach/render/assistant-message.js +1 -0
- package/dist/clients/attach/render/card-presentation.d.ts +36 -0
- package/dist/clients/attach/render/card-presentation.js +5 -0
- package/dist/clients/attach/render/chat-view.d.ts +356 -0
- package/dist/clients/attach/render/chat-view.js +5 -0
- package/dist/clients/attach/render/condensed-history.d.ts +21 -0
- package/dist/clients/attach/render/condensed-history.js +1 -0
- package/dist/clients/attach/render/context-message.d.ts +22 -0
- package/dist/clients/attach/render/context-message.js +1 -0
- package/dist/clients/attach/render/crtr-output.d.ts +52 -0
- package/dist/clients/attach/render/crtr-output.js +17 -0
- package/dist/clients/attach/render/diagram.d.ts +4 -0
- package/dist/clients/attach/render/diagram.js +7 -0
- package/dist/clients/attach/render/doc-links.d.ts +34 -0
- package/dist/clients/attach/render/doc-links.js +1 -0
- package/dist/clients/attach/render/edit-diff.d.ts +12 -0
- package/dist/clients/attach/render/edit-diff.js +5 -0
- package/dist/clients/attach/render/glyph-codepoints.d.ts +3 -0
- package/dist/clients/attach/render/glyph-codepoints.js +1 -0
- package/dist/clients/attach/render/group-activity.d.ts +84 -0
- package/dist/clients/attach/render/group-activity.js +2 -0
- package/dist/clients/attach/render/group-recap.d.ts +13 -0
- package/dist/clients/attach/render/group-recap.js +1 -0
- package/dist/clients/attach/render/markdown-source.d.ts +16 -0
- package/dist/clients/attach/render/markdown-source.js +5 -0
- package/dist/clients/attach/render/measured-container.d.ts +96 -0
- package/dist/clients/attach/render/measured-container.js +1 -0
- package/dist/clients/attach/render/page-block.d.ts +37 -0
- package/dist/clients/attach/render/page-block.js +1 -0
- package/dist/clients/attach/render/scroll-animation.d.ts +8 -0
- package/dist/clients/attach/render/scroll-animation.js +1 -0
- package/dist/clients/attach/render/tool-calls.d.ts +53 -0
- package/dist/clients/attach/render/tool-calls.js +3 -0
- package/dist/clients/attach/render/transcript-copy.d.ts +9 -0
- package/dist/clients/attach/render/transcript-copy.js +2 -0
- package/dist/clients/attach/render/transcript-search.d.ts +28 -0
- package/dist/clients/attach/render/transcript-search.js +1 -0
- package/dist/clients/attach/render/viewport.d.ts +38 -0
- package/dist/clients/attach/render/viewport.js +1 -0
- package/dist/clients/attach/session/banner.d.ts +13 -0
- package/dist/clients/attach/session/banner.js +1 -0
- package/dist/clients/attach/session/bindings.d.ts +20 -0
- package/dist/clients/attach/session/bindings.js +1 -0
- package/dist/clients/attach/session/chrome-refresh.d.ts +40 -0
- package/dist/clients/attach/session/chrome-refresh.js +1 -0
- package/dist/clients/attach/session/connection.d.ts +53 -0
- package/dist/clients/attach/session/connection.js +1 -0
- package/dist/clients/attach/session/context.d.ts +59 -0
- package/dist/clients/attach/session/context.js +0 -0
- package/dist/clients/attach/session/doc-materialize.d.ts +53 -0
- package/dist/clients/attach/session/doc-materialize.js +3 -0
- package/dist/clients/attach/session/document-links.d.ts +21 -0
- package/dist/clients/attach/session/document-links.js +1 -0
- package/dist/clients/attach/session/editor-frame.d.ts +47 -0
- package/dist/clients/attach/session/editor-frame.js +1 -0
- package/dist/clients/attach/session/editor-inventory.d.ts +63 -0
- package/dist/clients/attach/session/editor-inventory.js +6 -0
- package/dist/clients/attach/session/file-links.d.ts +24 -0
- package/dist/clients/attach/session/file-links.js +1 -0
- package/dist/clients/attach/session/focus-events.d.ts +4 -0
- package/dist/clients/attach/session/focus-events.js +1 -0
- package/dist/clients/attach/session/frame.d.ts +46 -0
- package/dist/clients/attach/session/frame.js +1 -0
- package/dist/clients/attach/session/frames.d.ts +49 -0
- package/dist/clients/attach/session/frames.js +1 -0
- package/dist/clients/attach/session/identity.d.ts +16 -0
- package/dist/clients/attach/session/identity.js +1 -0
- package/dist/clients/attach/session/input-wiring.d.ts +50 -0
- package/dist/clients/attach/session/input-wiring.js +1 -0
- package/dist/clients/attach/session/invariant.d.ts +9 -0
- package/dist/clients/attach/session/invariant.js +1 -0
- package/dist/clients/attach/session/keys.d.ts +46 -0
- package/dist/clients/attach/session/keys.js +1 -0
- package/dist/clients/attach/session/layout.d.ts +22 -0
- package/dist/clients/attach/session/layout.js +1 -0
- package/dist/clients/attach/session/mouse.d.ts +27 -0
- package/dist/clients/attach/session/mouse.js +1 -0
- package/dist/clients/attach/session/pane-focus.d.ts +8 -0
- package/dist/clients/attach/session/pane-focus.js +1 -0
- package/dist/clients/attach/session/pane-tag.d.ts +44 -0
- package/dist/clients/attach/session/pane-tag.js +1 -0
- package/dist/clients/attach/session/pi-assets.d.ts +1 -0
- package/dist/clients/attach/session/pi-assets.js +1 -0
- package/dist/clients/attach/session/pi-oauth-flows.d.ts +1 -0
- package/dist/clients/attach/session/pi-oauth-flows.js +1 -0
- package/dist/clients/attach/session/profile-files.d.ts +17 -0
- package/dist/clients/attach/session/profile-files.js +1 -0
- package/dist/clients/attach/session/reconnect.d.ts +44 -0
- package/dist/clients/attach/session/reconnect.js +1 -0
- package/dist/clients/attach/session/selection.d.ts +28 -0
- package/dist/clients/attach/session/selection.js +3 -0
- package/dist/clients/attach/session/state-sync.d.ts +38 -0
- package/dist/clients/attach/session/state-sync.js +1 -0
- package/dist/clients/attach/session/surface-frame.d.ts +20 -0
- package/dist/clients/attach/session/surface-frame.js +1 -0
- package/dist/clients/attach/session/surface-host.d.ts +65 -0
- package/dist/clients/attach/session/surface-host.js +1 -0
- package/dist/clients/attach/session/teardown.d.ts +30 -0
- package/dist/clients/attach/session/teardown.js +5 -0
- package/dist/clients/attach/session/transcript-search.d.ts +20 -0
- package/dist/clients/attach/session/transcript-search.js +3 -0
- package/dist/clients/attach/session/whip-achievements.d.ts +4 -0
- package/dist/clients/attach/session/whip-achievements.js +2 -0
- package/dist/clients/attach/session/whip.d.ts +20 -0
- package/dist/clients/attach/session/whip.js +1 -0
- package/dist/clients/attach/slash/dispatch.d.ts +116 -0
- package/dist/clients/attach/slash/dispatch.js +2 -0
- package/dist/clients/attach/slash/prompt-preview.d.ts +30 -0
- package/dist/clients/attach/slash/prompt-preview.js +1 -0
- package/dist/clients/attach/viewer.d.ts +8 -0
- package/dist/clients/attach/viewer.js +1946 -0
- package/dist/clients/conversation/projection.d.ts +79 -0
- package/dist/clients/conversation/projection.js +1 -0
- package/dist/clients/conversation/submit.d.ts +38 -0
- package/dist/clients/conversation/submit.js +1 -0
- package/dist/clients/inbox/controller.d.ts +174 -0
- package/dist/clients/inbox/controller.js +1 -0
- package/dist/clients/inbox/dto-adapt.d.ts +28 -0
- package/dist/clients/inbox/dto-adapt.js +1 -0
- package/dist/clients/inbox/layout.d.ts +8 -0
- package/dist/clients/inbox/layout.js +1 -0
- package/dist/clients/inbox/page-adapter.d.ts +33 -0
- package/dist/clients/inbox/page-adapter.js +1 -0
- package/dist/clients/inbox/resolve.d.ts +16 -0
- package/dist/clients/inbox/resolve.js +1 -0
- package/dist/clients/inbox/review/anchors.d.ts +41 -0
- package/dist/clients/inbox/review/anchors.js +1 -0
- package/dist/clients/inbox/review/comments-client.d.ts +74 -0
- package/dist/clients/inbox/review/comments-client.js +1 -0
- package/dist/clients/inbox/review/companion-pane.d.ts +47 -0
- package/dist/clients/inbox/review/companion-pane.js +1 -0
- package/dist/clients/inbox/review/document-surface.d.ts +212 -0
- package/dist/clients/inbox/review/document-surface.js +2 -0
- package/dist/clients/inbox/review/frame.d.ts +57 -0
- package/dist/clients/inbox/review/frame.js +1 -0
- package/dist/clients/inbox/review/keys.d.ts +69 -0
- package/dist/clients/inbox/review/keys.js +1 -0
- package/dist/clients/inbox/review/launch.d.ts +16 -0
- package/dist/clients/inbox/review/launch.js +1 -0
- package/dist/clients/inbox/review/live-source.d.ts +24 -0
- package/dist/clients/inbox/review/live-source.js +1 -0
- package/dist/clients/inbox/review/nvim.d.ts +15 -0
- package/dist/clients/inbox/review/nvim.js +1 -0
- package/dist/clients/inbox/review/remap.d.ts +51 -0
- package/dist/clients/inbox/review/remap.js +1 -0
- package/dist/clients/inbox/review/review-client.d.ts +43 -0
- package/dist/clients/inbox/review/review-client.js +1 -0
- package/dist/clients/inbox/review/roundtrip.d.ts +5 -0
- package/dist/clients/inbox/review/roundtrip.js +3 -0
- package/dist/clients/inbox/review/state.d.ts +153 -0
- package/dist/clients/inbox/review/state.js +4 -0
- package/dist/clients/inbox/review-adapter.d.ts +17 -0
- package/dist/clients/inbox/review-adapter.js +1 -0
- package/dist/clients/inbox/surface.d.ts +25 -0
- package/dist/clients/inbox/surface.js +1 -0
- package/dist/clients/inbox/tui/ansi.d.ts +68 -0
- package/dist/clients/inbox/tui/ansi.js +3 -0
- package/dist/clients/inbox/tui/input.d.ts +5 -0
- package/dist/clients/inbox/tui/input.js +5 -0
- package/dist/clients/inbox/tui/keys.d.ts +28 -0
- package/dist/clients/inbox/tui/keys.js +1 -0
- package/dist/clients/inbox/tui/page-body.d.ts +10 -0
- package/dist/clients/inbox/tui/page-body.js +1 -0
- package/dist/clients/inbox/tui/panel.d.ts +4 -0
- package/dist/clients/inbox/tui/panel.js +1 -0
- package/dist/clients/inbox/tui/render.d.ts +23 -0
- package/dist/clients/inbox/tui/render.js +2 -0
- package/dist/clients/inbox/tui/slots.d.ts +33 -0
- package/dist/clients/inbox/tui/slots.js +3 -0
- package/dist/clients/inbox/tui/types.d.ts +73 -0
- package/dist/clients/inbox/tui/types.js +0 -0
- package/dist/clients/inbox/tui.d.ts +17 -0
- package/dist/clients/inbox/tui.js +1 -0
- package/dist/clients/surfaces/host.d.ts +74 -0
- package/dist/clients/surfaces/host.js +0 -0
- package/dist/commands/api-client.d.ts +104 -0
- package/dist/commands/api-client.js +4 -0
- package/dist/commands/attention.d.ts +2 -0
- package/dist/commands/attention.js +1 -0
- package/dist/commands/canvas/edges.d.ts +2 -0
- package/dist/commands/canvas/edges.js +2 -0
- package/dist/commands/canvas/list.d.ts +4 -0
- package/dist/commands/canvas/list.js +3 -0
- package/dist/commands/canvas/read.d.ts +14 -0
- package/dist/commands/canvas/read.js +10 -0
- package/dist/commands/canvas/search.d.ts +2 -0
- package/dist/commands/canvas/search.js +3 -0
- package/dist/commands/canvas/unwatch.d.ts +2 -0
- package/dist/commands/canvas/unwatch.js +1 -0
- package/dist/commands/canvas/watch.d.ts +3 -0
- package/dist/commands/canvas/watch.js +1 -0
- package/dist/commands/canvas-analytics/chart.d.ts +52 -0
- package/dist/commands/canvas-analytics/chart.js +1 -0
- package/dist/commands/canvas-analytics/drilldown.d.ts +34 -0
- package/dist/commands/canvas-analytics/drilldown.js +1 -0
- package/dist/commands/canvas-analytics/format.d.ts +29 -0
- package/dist/commands/canvas-analytics/format.js +1 -0
- package/dist/commands/canvas-analytics/graph-detail.d.ts +2 -0
- package/dist/commands/canvas-analytics/graph-detail.js +2 -0
- package/dist/commands/canvas-analytics/graphs.d.ts +9 -0
- package/dist/commands/canvas-analytics/graphs.js +1 -0
- package/dist/commands/canvas-analytics/memory.d.ts +2 -0
- package/dist/commands/canvas-analytics/memory.js +1 -0
- package/dist/commands/canvas-analytics/overview.d.ts +2 -0
- package/dist/commands/canvas-analytics/overview.js +1 -0
- package/dist/commands/canvas-analytics/shell.d.ts +60 -0
- package/dist/commands/canvas-analytics/shell.js +2 -0
- package/dist/commands/canvas-analytics/time.d.ts +2 -0
- package/dist/commands/canvas-analytics/time.js +1 -0
- package/dist/commands/canvas-analytics/usage.d.ts +2 -0
- package/dist/commands/canvas-analytics/usage.js +1 -0
- package/dist/commands/canvas-analytics/view.d.ts +85 -0
- package/dist/commands/canvas-analytics/view.js +1 -0
- package/dist/commands/canvas-analytics.d.ts +2 -0
- package/dist/commands/canvas-analytics.js +1 -0
- package/dist/commands/canvas-browse.d.ts +2 -0
- package/dist/commands/canvas-browse.js +1 -0
- package/dist/commands/canvas-config.d.ts +2 -0
- package/dist/commands/canvas-config.js +2 -0
- package/dist/commands/canvas-history/grep.d.ts +1 -0
- package/dist/commands/canvas-history/grep.js +7 -0
- package/dist/commands/canvas-history/read.d.ts +1 -0
- package/dist/commands/canvas-history/read.js +3 -0
- package/dist/commands/canvas-history/search.d.ts +1 -0
- package/dist/commands/canvas-history/search.js +10 -0
- package/dist/commands/canvas-history/shared.d.ts +34 -0
- package/dist/commands/canvas-history/shared.js +1 -0
- package/dist/commands/canvas-history/stats.d.ts +1 -0
- package/dist/commands/canvas-history/stats.js +6 -0
- package/dist/commands/canvas-history.d.ts +2 -0
- package/dist/commands/canvas-history.js +1 -0
- package/dist/commands/canvas-issue.d.ts +2 -0
- package/dist/commands/canvas-issue.js +14 -0
- package/dist/commands/canvas-prune.d.ts +2 -0
- package/dist/commands/canvas-prune.js +1 -0
- package/dist/commands/canvas-roster.d.ts +2 -0
- package/dist/commands/canvas-roster.js +1 -0
- package/dist/commands/canvas-snapshot.d.ts +2 -0
- package/dist/commands/canvas-snapshot.js +1 -0
- package/dist/commands/canvas-use.d.ts +1 -0
- package/dist/commands/canvas-use.js +1 -0
- package/dist/commands/canvas.d.ts +3 -0
- package/dist/commands/canvas.js +1 -0
- package/dist/commands/chord.d.ts +2 -0
- package/dist/commands/chord.js +1 -0
- package/dist/commands/cron.d.ts +2 -0
- package/dist/commands/cron.js +11 -0
- package/dist/commands/custom-object/ack.d.ts +2 -0
- package/dist/commands/custom-object/ack.js +3 -0
- package/dist/commands/custom-object/publish.d.ts +2 -0
- package/dist/commands/custom-object/publish.js +1 -0
- package/dist/commands/custom-object/receive.d.ts +2 -0
- package/dist/commands/custom-object/receive.js +2 -0
- package/dist/commands/custom-object/register.d.ts +2 -0
- package/dist/commands/custom-object/register.js +3 -0
- package/dist/commands/custom-object/shared.d.ts +5 -0
- package/dist/commands/custom-object/shared.js +1 -0
- package/dist/commands/custom-object/unregister.d.ts +2 -0
- package/dist/commands/custom-object/unregister.js +1 -0
- package/dist/commands/custom-object.d.ts +2 -0
- package/dist/commands/custom-object.js +1 -0
- package/dist/commands/dashboard.d.ts +2 -0
- package/dist/commands/dashboard.js +1 -0
- package/dist/commands/doc/delete.d.ts +2 -0
- package/dist/commands/doc/delete.js +1 -0
- package/dist/commands/doc/edit.d.ts +2 -0
- package/dist/commands/doc/edit.js +1 -0
- package/dist/commands/doc/history.d.ts +2 -0
- package/dist/commands/doc/history.js +2 -0
- package/dist/commands/doc/lint.d.ts +2 -0
- package/dist/commands/doc/lint.js +2 -0
- package/dist/commands/doc/list.d.ts +2 -0
- package/dist/commands/doc/list.js +1 -0
- package/dist/commands/doc/move.d.ts +2 -0
- package/dist/commands/doc/move.js +1 -0
- package/dist/commands/doc/read.d.ts +2 -0
- package/dist/commands/doc/read.js +1 -0
- package/dist/commands/doc/replace-blocks.d.ts +6 -0
- package/dist/commands/doc/replace-blocks.js +4 -0
- package/dist/commands/doc/shared.d.ts +25 -0
- package/dist/commands/doc/shared.js +2 -0
- package/dist/commands/doc/write.d.ts +2 -0
- package/dist/commands/doc/write.js +1 -0
- package/dist/commands/doc.d.ts +2 -0
- package/dist/commands/doc.js +1 -0
- package/dist/commands/human/components.d.ts +4 -0
- package/dist/commands/human/components.js +3 -0
- package/dist/commands/human/feedback.d.ts +2 -0
- package/dist/commands/human/feedback.js +1 -0
- package/dist/commands/human/prompts.d.ts +21 -0
- package/dist/commands/human/prompts.js +1 -0
- package/dist/commands/human/queue.d.ts +3 -0
- package/dist/commands/human/queue.js +1 -0
- package/dist/commands/human/request.d.ts +2 -0
- package/dist/commands/human/request.js +1 -0
- package/dist/commands/human/review.d.ts +2 -0
- package/dist/commands/human/review.js +1 -0
- package/dist/commands/human/shared.d.ts +16 -0
- package/dist/commands/human/shared.js +1 -0
- package/dist/commands/human.d.ts +2 -0
- package/dist/commands/human.js +4 -0
- package/dist/commands/node/bash.d.ts +1 -0
- package/dist/commands/node/bash.js +5 -0
- package/dist/commands/node/create.d.ts +6 -0
- package/dist/commands/node/create.js +2 -0
- package/dist/commands/node/inspect.d.ts +2 -0
- package/dist/commands/node/inspect.js +12 -0
- package/dist/commands/node/lifecycle.d.ts +4 -0
- package/dist/commands/node/lifecycle.js +4 -0
- package/dist/commands/node/message.d.ts +1 -0
- package/dist/commands/node/message.js +1 -0
- package/dist/commands/node/outcome.d.ts +2 -0
- package/dist/commands/node/outcome.js +4 -0
- package/dist/commands/node/pyramid.d.ts +2 -0
- package/dist/commands/node/pyramid.js +2 -0
- package/dist/commands/node/subscription.d.ts +1 -0
- package/dist/commands/node/subscription.js +1 -0
- package/dist/commands/node/wait.d.ts +1 -0
- package/dist/commands/node/wait.js +7 -0
- package/dist/commands/node-context.d.ts +2 -0
- package/dist/commands/node-context.js +2 -0
- package/dist/commands/node-lifecycle-revive.d.ts +12 -0
- package/dist/commands/node-lifecycle-revive.js +1 -0
- package/dist/commands/node-snapshot.d.ts +2 -0
- package/dist/commands/node-snapshot.js +1 -0
- package/dist/commands/node-transcript.d.ts +2 -0
- package/dist/commands/node-transcript.js +1 -0
- package/dist/commands/node-worktree.d.ts +2 -0
- package/dist/commands/node-worktree.js +1 -0
- package/dist/commands/node.d.ts +2 -0
- package/dist/commands/node.js +1 -0
- package/dist/commands/pkg/browse/actions.d.ts +7 -0
- package/dist/commands/pkg/browse/actions.js +1 -0
- package/dist/commands/pkg/browse/catalog.d.ts +9 -0
- package/dist/commands/pkg/browse/catalog.js +1 -0
- package/dist/commands/pkg/browse/command-view.d.ts +3 -0
- package/dist/commands/pkg/browse/command-view.js +1 -0
- package/dist/commands/pkg/browse/detail-panel.d.ts +66 -0
- package/dist/commands/pkg/browse/detail-panel.js +1 -0
- package/dist/commands/pkg/browse/doc-view.d.ts +3 -0
- package/dist/commands/pkg/browse/doc-view.js +1 -0
- package/dist/commands/pkg/browse/list-panel.d.ts +28 -0
- package/dist/commands/pkg/browse/list-panel.js +2 -0
- package/dist/commands/pkg/browse/model.d.ts +223 -0
- package/dist/commands/pkg/browse/model.js +1 -0
- package/dist/commands/pkg/browse/shell.d.ts +93 -0
- package/dist/commands/pkg/browse/shell.js +1 -0
- package/dist/commands/pkg/browse.d.ts +2 -0
- package/dist/commands/pkg/browse.js +1 -0
- package/dist/commands/pkg/market-inspect.d.ts +2 -0
- package/dist/commands/pkg/market-inspect.js +1 -0
- package/dist/commands/pkg/market-manage.d.ts +16 -0
- package/dist/commands/pkg/market-manage.js +1 -0
- package/dist/commands/pkg/market.d.ts +1 -0
- package/dist/commands/pkg/market.js +1 -0
- package/dist/commands/pkg/plugin-env.d.ts +3 -0
- package/dist/commands/pkg/plugin-env.js +4 -0
- package/dist/commands/pkg/plugin-inspect.d.ts +2 -0
- package/dist/commands/pkg/plugin-inspect.js +1 -0
- package/dist/commands/pkg/plugin-manage.d.ts +94 -0
- package/dist/commands/pkg/plugin-manage.js +17 -0
- package/dist/commands/pkg/plugin.d.ts +1 -0
- package/dist/commands/pkg/plugin.js +1 -0
- package/dist/commands/pkg/shared.d.ts +13 -0
- package/dist/commands/pkg/shared.js +1 -0
- package/dist/commands/pkg.d.ts +2 -0
- package/dist/commands/pkg.js +1 -0
- package/dist/commands/profile/daemon-profiles.d.ts +13 -0
- package/dist/commands/profile/daemon-profiles.js +4 -0
- package/dist/commands/profile/default.d.ts +2 -0
- package/dist/commands/profile/default.js +2 -0
- package/dist/commands/profile/delete.d.ts +1 -0
- package/dist/commands/profile/delete.js +1 -0
- package/dist/commands/profile/env.d.ts +8 -0
- package/dist/commands/profile/env.js +3 -0
- package/dist/commands/profile/kind.d.ts +1 -0
- package/dist/commands/profile/kind.js +1 -0
- package/dist/commands/profile/list.d.ts +1 -0
- package/dist/commands/profile/list.js +1 -0
- package/dist/commands/profile/meta.d.ts +4 -0
- package/dist/commands/profile/meta.js +1 -0
- package/dist/commands/profile/new.d.ts +1 -0
- package/dist/commands/profile/new.js +1 -0
- package/dist/commands/profile/pause.d.ts +2 -0
- package/dist/commands/profile/pause.js +1 -0
- package/dist/commands/profile/project.d.ts +2 -0
- package/dist/commands/profile/project.js +1 -0
- package/dist/commands/profile/rename.d.ts +1 -0
- package/dist/commands/profile/rename.js +1 -0
- package/dist/commands/profile/show.d.ts +1 -0
- package/dist/commands/profile/show.js +1 -0
- package/dist/commands/profile.d.ts +2 -0
- package/dist/commands/profile.js +1 -0
- package/dist/commands/push.d.ts +2 -0
- package/dist/commands/push.js +9 -0
- package/dist/commands/revive.d.ts +2 -0
- package/dist/commands/revive.js +10 -0
- package/dist/commands/surface/node/cycle.d.ts +1 -0
- package/dist/commands/surface/node/cycle.js +1 -0
- package/dist/commands/surface/node/focus.d.ts +1 -0
- package/dist/commands/surface/node/focus.js +1 -0
- package/dist/commands/surface/node/id.d.ts +1 -0
- package/dist/commands/surface/node/id.js +1 -0
- package/dist/commands/surface/node/pin.d.ts +1 -0
- package/dist/commands/surface/node/pin.js +1 -0
- package/dist/commands/surface/node/placement.d.ts +30 -0
- package/dist/commands/surface/node/placement.js +1 -0
- package/dist/commands/surface-edit.d.ts +2 -0
- package/dist/commands/surface-edit.js +1 -0
- package/dist/commands/surface-inbox.d.ts +2 -0
- package/dist/commands/surface-inbox.js +1 -0
- package/dist/commands/surface-inspect.d.ts +2 -0
- package/dist/commands/surface-inspect.js +1 -0
- package/dist/commands/surface-node.d.ts +2 -0
- package/dist/commands/surface-node.js +1 -0
- package/dist/commands/surface-reload.d.ts +7 -0
- package/dist/commands/surface-reload.js +1 -0
- package/dist/commands/surface-tmux-spread.d.ts +2 -0
- package/dist/commands/surface-tmux-spread.js +1 -0
- package/dist/commands/surface.d.ts +2 -0
- package/dist/commands/surface.js +1 -0
- package/dist/commands/sys/branch.d.ts +2 -0
- package/dist/commands/sys/branch.js +1 -0
- package/dist/commands/sys/config.d.ts +1 -0
- package/dist/commands/sys/config.js +1 -0
- package/dist/commands/sys/connect.d.ts +1 -0
- package/dist/commands/sys/connect.js +3 -0
- package/dist/commands/sys/context/admin/actions.d.ts +23 -0
- package/dist/commands/sys/context/admin/actions.js +1 -0
- package/dist/commands/sys/context/admin/detail-panel.d.ts +73 -0
- package/dist/commands/sys/context/admin/detail-panel.js +2 -0
- package/dist/commands/sys/context/admin/docs-panel.d.ts +63 -0
- package/dist/commands/sys/context/admin/docs-panel.js +1 -0
- package/dist/commands/sys/context/admin/list-view.d.ts +62 -0
- package/dist/commands/sys/context/admin/list-view.js +1 -0
- package/dist/commands/sys/context/admin/model.d.ts +123 -0
- package/dist/commands/sys/context/admin/model.js +1 -0
- package/dist/commands/sys/context/admin/rail-panel.d.ts +84 -0
- package/dist/commands/sys/context/admin/rail-panel.js +1 -0
- package/dist/commands/sys/context/admin/read-view.d.ts +27 -0
- package/dist/commands/sys/context/admin/read-view.js +1 -0
- package/dist/commands/sys/context/admin/shell.d.ts +125 -0
- package/dist/commands/sys/context/admin/shell.js +1 -0
- package/dist/commands/sys/context/admin.d.ts +1 -0
- package/dist/commands/sys/context/admin.js +2 -0
- package/dist/commands/sys/context/doc.d.ts +1 -0
- package/dist/commands/sys/context/doc.js +2 -0
- package/dist/commands/sys/context/expose.d.ts +1 -0
- package/dist/commands/sys/context/expose.js +2 -0
- package/dist/commands/sys/context/prompt-review.d.ts +1 -0
- package/dist/commands/sys/context/prompt-review.js +11 -0
- package/dist/commands/sys/context/resolve.d.ts +115 -0
- package/dist/commands/sys/context/resolve.js +8 -0
- package/dist/commands/sys/context/sysprompt.d.ts +1 -0
- package/dist/commands/sys/context/sysprompt.js +5 -0
- package/dist/commands/sys/context.d.ts +2 -0
- package/dist/commands/sys/context.js +1 -0
- package/dist/commands/sys/daemon.d.ts +4 -0
- package/dist/commands/sys/daemon.js +1 -0
- package/dist/commands/sys/doctor.d.ts +36 -0
- package/dist/commands/sys/doctor.js +1 -0
- package/dist/commands/sys/env.d.ts +1 -0
- package/dist/commands/sys/env.js +1 -0
- package/dist/commands/sys/feedback.d.ts +1 -0
- package/dist/commands/sys/feedback.js +7 -0
- package/dist/commands/sys/join.d.ts +1 -0
- package/dist/commands/sys/join.js +1 -0
- package/dist/commands/sys/limits.d.ts +1 -0
- package/dist/commands/sys/limits.js +3 -0
- package/dist/commands/sys/logs.d.ts +1 -0
- package/dist/commands/sys/logs.js +3 -0
- package/dist/commands/sys/migrate.d.ts +1 -0
- package/dist/commands/sys/migrate.js +1 -0
- package/dist/commands/sys/panels/broker-limits-panel.d.ts +17 -0
- package/dist/commands/sys/panels/broker-limits-panel.js +2 -0
- package/dist/commands/sys/panels/dependencies-panel.d.ts +14 -0
- package/dist/commands/sys/panels/dependencies-panel.js +1 -0
- package/dist/commands/sys/panels/keybindings-panel.d.ts +56 -0
- package/dist/commands/sys/panels/keybindings-panel.js +1 -0
- package/dist/commands/sys/panels/models-panel.d.ts +100 -0
- package/dist/commands/sys/panels/models-panel.js +1 -0
- package/dist/commands/sys/panels/plugin-env-panel.d.ts +19 -0
- package/dist/commands/sys/panels/plugin-env-panel.js +2 -0
- package/dist/commands/sys/panels/plugins-panel.d.ts +16 -0
- package/dist/commands/sys/panels/plugins-panel.js +1 -0
- package/dist/commands/sys/panels/prefs-panel.d.ts +21 -0
- package/dist/commands/sys/panels/prefs-panel.js +1 -0
- package/dist/commands/sys/panels/profiles-panel.d.ts +70 -0
- package/dist/commands/sys/panels/profiles-panel.js +1 -0
- package/dist/commands/sys/panels/provider-panel.d.ts +68 -0
- package/dist/commands/sys/panels/provider-panel.js +1 -0
- package/dist/commands/sys/panels/terminal-panel.d.ts +19 -0
- package/dist/commands/sys/panels/terminal-panel.js +1 -0
- package/dist/commands/sys/provider-login.d.ts +8 -0
- package/dist/commands/sys/provider-login.js +9 -0
- package/dist/commands/sys/retry-delivery.d.ts +1 -0
- package/dist/commands/sys/retry-delivery.js +1 -0
- package/dist/commands/sys/settings-shell.d.ts +54 -0
- package/dist/commands/sys/settings-shell.js +1 -0
- package/dist/commands/sys/settings.d.ts +2 -0
- package/dist/commands/sys/settings.js +1 -0
- package/dist/commands/sys/setup-core.d.ts +121 -0
- package/dist/commands/sys/setup-core.js +9 -0
- package/dist/commands/sys/setup-settings-runner.d.ts +13 -0
- package/dist/commands/sys/setup-settings-runner.js +1 -0
- package/dist/commands/sys/setup-wizard.d.ts +52 -0
- package/dist/commands/sys/setup-wizard.js +1 -0
- package/dist/commands/sys/setup.d.ts +6 -0
- package/dist/commands/sys/setup.js +1 -0
- package/dist/commands/sys/shared.d.ts +51 -0
- package/dist/commands/sys/shared.js +1 -0
- package/dist/commands/sys/spaces.d.ts +1 -0
- package/dist/commands/sys/spaces.js +2 -0
- package/dist/commands/sys/support/prepare.d.ts +13 -0
- package/dist/commands/sys/support/prepare.js +3 -0
- package/dist/commands/sys/support/submit.d.ts +19 -0
- package/dist/commands/sys/support/submit.js +6 -0
- package/dist/commands/sys/support.d.ts +2 -0
- package/dist/commands/sys/support.js +1 -0
- package/dist/commands/sys/sync-deps.d.ts +16 -0
- package/dist/commands/sys/sync-deps.js +14 -0
- package/dist/commands/sys/sync-project-guidance.d.ts +1 -0
- package/dist/commands/sys/sync-project-guidance.js +5 -0
- package/dist/commands/sys/sync-shared.d.ts +44 -0
- package/dist/commands/sys/sync-shared.js +1 -0
- package/dist/commands/sys/sync-skills.d.ts +1 -0
- package/dist/commands/sys/sync-skills.js +2 -0
- package/dist/commands/sys/sync.d.ts +2 -0
- package/dist/commands/sys/sync.js +1 -0
- package/dist/commands/sys/terminal-option.d.ts +112 -0
- package/dist/commands/sys/terminal-option.js +15 -0
- package/dist/commands/sys/tutorial/branch.d.ts +1 -0
- package/dist/commands/sys/tutorial/branch.js +1 -0
- package/dist/commands/sys/tutorial/lessons.d.ts +5 -0
- package/dist/commands/sys/tutorial/lessons.js +8 -0
- package/dist/commands/sys/tutorial/scenario.d.ts +1 -0
- package/dist/commands/sys/tutorial/scenario.js +3 -0
- package/dist/commands/sys/tutorial/tracks.d.ts +1 -0
- package/dist/commands/sys/tutorial/tracks.js +4 -0
- package/dist/commands/sys/update.d.ts +2 -0
- package/dist/commands/sys/update.js +1 -0
- package/dist/commands/sys/worktrees.d.ts +2 -0
- package/dist/commands/sys/worktrees.js +5 -0
- package/dist/commands/sys.d.ts +2 -0
- package/dist/commands/sys.js +1 -0
- package/dist/core/activity-signal.d.ts +7 -0
- package/dist/core/activity-signal.js +2 -0
- package/dist/core/asset-root.d.ts +7 -0
- package/dist/core/asset-root.js +1 -0
- package/dist/core/auth-file.d.ts +41 -0
- package/dist/core/auth-file.js +2 -0
- package/dist/core/auth-interaction.d.ts +19 -0
- package/dist/core/auth-interaction.js +3 -0
- package/dist/core/auto-update.d.ts +1 -0
- package/dist/core/auto-update.js +4 -0
- package/dist/core/bash-guard.d.ts +6 -0
- package/dist/core/bash-guard.js +11 -0
- package/dist/core/bash-job-supervisor.d.ts +5 -0
- package/dist/core/bash-job-supervisor.js +4 -0
- package/dist/core/bash-jobs.d.ts +180 -0
- package/dist/core/bash-jobs.js +8 -0
- package/dist/core/bootstrap.d.ts +1 -0
- package/dist/core/bootstrap.js +2 -0
- package/dist/core/broker-client/client.d.ts +89 -0
- package/dist/core/broker-client/client.js +1 -0
- package/dist/core/broker-client/index.d.ts +1 -0
- package/dist/core/broker-client/index.js +1 -0
- package/dist/core/broker-client/transport-relay.d.ts +47 -0
- package/dist/core/broker-client/transport-relay.js +1 -0
- package/dist/core/broker-client/transport-socket.d.ts +35 -0
- package/dist/core/broker-client/transport-socket.js +1 -0
- package/dist/core/broker-client/transport.d.ts +36 -0
- package/dist/core/broker-client/transport.js +1 -0
- package/dist/core/canvas/app-run.d.ts +3 -0
- package/dist/core/canvas/app-run.js +1 -0
- package/dist/core/canvas/attention.d.ts +18 -0
- package/dist/core/canvas/attention.js +1 -0
- package/dist/core/canvas/boot-id.d.ts +6 -0
- package/dist/core/canvas/boot-id.js +1 -0
- package/dist/core/canvas/boot.d.ts +92 -0
- package/dist/core/canvas/boot.js +1 -0
- package/dist/core/canvas/browse/app.d.ts +26 -0
- package/dist/core/canvas/browse/app.js +3 -0
- package/dist/core/canvas/browse/model.d.ts +172 -0
- package/dist/core/canvas/browse/model.js +1 -0
- package/dist/core/canvas/browse/pins.d.ts +4 -0
- package/dist/core/canvas/browse/pins.js +1 -0
- package/dist/core/canvas/browse/render.d.ts +98 -0
- package/dist/core/canvas/browse/render.js +3 -0
- package/dist/core/canvas/canvas.d.ts +397 -0
- package/dist/core/canvas/canvas.js +65 -0
- package/dist/core/canvas/context-strip.d.ts +20 -0
- package/dist/core/canvas/context-strip.js +5 -0
- package/dist/core/canvas/crons.d.ts +298 -0
- package/dist/core/canvas/crons.js +36 -0
- package/dist/core/canvas/daemon-actions.d.ts +45 -0
- package/dist/core/canvas/daemon-actions.js +28 -0
- package/dist/core/canvas/daemon-owner.d.ts +67 -0
- package/dist/core/canvas/daemon-owner.js +6 -0
- package/dist/core/canvas/db.d.ts +33 -0
- package/dist/core/canvas/db.js +2 -0
- package/dist/core/canvas/deliveries.d.ts +120 -0
- package/dist/core/canvas/deliveries.js +102 -0
- package/dist/core/canvas/delivery-contract.d.ts +37 -0
- package/dist/core/canvas/delivery-contract.js +1 -0
- package/dist/core/canvas/executions.d.ts +29 -0
- package/dist/core/canvas/executions.js +1 -0
- package/dist/core/canvas/extensions.d.ts +9 -0
- package/dist/core/canvas/extensions.js +1 -0
- package/dist/core/canvas/focuses.d.ts +22 -0
- package/dist/core/canvas/focuses.js +1 -0
- package/dist/core/canvas/history.d.ts +104 -0
- package/dist/core/canvas/history.js +14 -0
- package/dist/core/canvas/index.d.ts +14 -0
- package/dist/core/canvas/index.js +1 -0
- package/dist/core/canvas/install-id.d.ts +9 -0
- package/dist/core/canvas/install-id.js +1 -0
- package/dist/core/canvas/labels.d.ts +30 -0
- package/dist/core/canvas/labels.js +1 -0
- package/dist/core/canvas/managed-worktree-sweep-candidates.d.ts +4 -0
- package/dist/core/canvas/managed-worktree-sweep-candidates.js +12 -0
- package/dist/core/canvas/memory-reads.d.ts +24 -0
- package/dist/core/canvas/memory-reads.js +1 -0
- package/dist/core/canvas/meta-file.d.ts +20 -0
- package/dist/core/canvas/meta-file.js +1 -0
- package/dist/core/canvas/migrations.d.ts +16 -0
- package/dist/core/canvas/migrations.js +989 -0
- package/dist/core/canvas/nav-model.d.ts +44 -0
- package/dist/core/canvas/nav-model.js +1 -0
- package/dist/core/canvas/nav-render.d.ts +136 -0
- package/dist/core/canvas/nav-render.js +1 -0
- package/dist/core/canvas/node-agent-paths.d.ts +8 -0
- package/dist/core/canvas/node-agent-paths.js +1 -0
- package/dist/core/canvas/node-order.d.ts +24 -0
- package/dist/core/canvas/node-order.js +1 -0
- package/dist/core/canvas/node-recap.d.ts +23 -0
- package/dist/core/canvas/node-recap.js +2 -0
- package/dist/core/canvas/node-sql-migration.d.ts +4 -0
- package/dist/core/canvas/node-sql-migration.js +80 -0
- package/dist/core/canvas/node-tokens.d.ts +24 -0
- package/dist/core/canvas/node-tokens.js +5 -0
- package/dist/core/canvas/outcome-actions.d.ts +23 -0
- package/dist/core/canvas/outcome-actions.js +6 -0
- package/dist/core/canvas/paths.d.ts +72 -0
- package/dist/core/canvas/paths.js +1 -0
- package/dist/core/canvas/pid.d.ts +391 -0
- package/dist/core/canvas/pid.js +5 -0
- package/dist/core/canvas/recovery.d.ts +90 -0
- package/dist/core/canvas/recovery.js +26 -0
- package/dist/core/canvas/remote-canvas-source.d.ts +70 -0
- package/dist/core/canvas/remote-canvas-source.js +1 -0
- package/dist/core/canvas/remote-transport.d.ts +7 -0
- package/dist/core/canvas/remote-transport.js +1 -0
- package/dist/core/canvas/render-source.d.ts +193 -0
- package/dist/core/canvas/render-source.js +7 -0
- package/dist/core/canvas/sessions.d.ts +57 -0
- package/dist/core/canvas/sessions.js +4 -0
- package/dist/core/canvas/source.d.ts +48 -0
- package/dist/core/canvas/source.js +1 -0
- package/dist/core/canvas/status-glyph.d.ts +52 -0
- package/dist/core/canvas/status-glyph.js +1 -0
- package/dist/core/canvas/structured-requests.d.ts +69 -0
- package/dist/core/canvas/structured-requests.js +15 -0
- package/dist/core/canvas/telemetry.d.ts +14 -0
- package/dist/core/canvas/telemetry.js +1 -0
- package/dist/core/canvas/tree.d.ts +29 -0
- package/dist/core/canvas/tree.js +12 -0
- package/dist/core/canvas/types.d.ts +454 -0
- package/dist/core/canvas/types.js +1 -0
- package/dist/core/canvas/waits.d.ts +18 -0
- package/dist/core/canvas/waits.js +6 -0
- package/dist/core/canvas/worktrees.d.ts +41 -0
- package/dist/core/canvas/worktrees.js +1 -0
- package/dist/core/clipboard-text.d.ts +11 -0
- package/dist/core/clipboard-text.js +1 -0
- package/dist/core/command-hooks/artifact.d.ts +16 -0
- package/dist/core/command-hooks/artifact.js +1 -0
- package/dist/core/command-hooks/catalog.d.ts +14 -0
- package/dist/core/command-hooks/catalog.js +1 -0
- package/dist/core/command-hooks/compose.d.ts +15 -0
- package/dist/core/command-hooks/compose.js +1 -0
- package/dist/core/command-hooks/discovery.d.ts +133 -0
- package/dist/core/command-hooks/discovery.js +1 -0
- package/dist/core/command-hooks/help.d.ts +5 -0
- package/dist/core/command-hooks/help.js +1 -0
- package/dist/core/command-hooks/index.d.ts +7 -0
- package/dist/core/command-hooks/index.js +1 -0
- package/dist/core/command-hooks/lifecycle-catalog.d.ts +21 -0
- package/dist/core/command-hooks/lifecycle-catalog.js +1 -0
- package/dist/core/command-hooks/lifecycle-create.d.ts +4 -0
- package/dist/core/command-hooks/lifecycle-create.js +1 -0
- package/dist/core/command-hooks/report.d.ts +32 -0
- package/dist/core/command-hooks/report.js +1 -0
- package/dist/core/command-hooks/schema.d.ts +42 -0
- package/dist/core/command-hooks/schema.js +1 -0
- package/dist/core/command-hooks/transport/exec-invoke.d.ts +24 -0
- package/dist/core/command-hooks/transport/exec-invoke.js +1 -0
- package/dist/core/command-hooks/transport/exec-lifecycle.d.ts +23 -0
- package/dist/core/command-hooks/transport/exec-lifecycle.js +1 -0
- package/dist/core/command-hooks/transport/plan.d.ts +3 -0
- package/dist/core/command-hooks/transport/plan.js +1 -0
- package/dist/core/command-manifests/registry.d.ts +67 -0
- package/dist/core/command-manifests/registry.js +1 -0
- package/dist/core/command-plugins/bundle.d.ts +149 -0
- package/dist/core/command-plugins/bundle.js +1 -0
- package/dist/core/command-plugins/compose.d.ts +11 -0
- package/dist/core/command-plugins/compose.js +1 -0
- package/dist/core/command-plugins/discovery.d.ts +50 -0
- package/dist/core/command-plugins/discovery.js +1 -0
- package/dist/core/command-plugins/endpoint.d.ts +24 -0
- package/dist/core/command-plugins/endpoint.js +1 -0
- package/dist/core/command-plugins/extensions.d.ts +20 -0
- package/dist/core/command-plugins/extensions.js +1 -0
- package/dist/core/command-plugins/help-addenda.d.ts +25 -0
- package/dist/core/command-plugins/help-addenda.js +1 -0
- package/dist/core/command-plugins/presence.d.ts +2 -0
- package/dist/core/command-plugins/presence.js +1 -0
- package/dist/core/command-plugins/revalidate.d.ts +18 -0
- package/dist/core/command-plugins/revalidate.js +2 -0
- package/dist/core/command-plugins/transport/exec-invoke.d.ts +28 -0
- package/dist/core/command-plugins/transport/exec-invoke.js +1 -0
- package/dist/core/command-plugins/transport/http-fetch.d.ts +41 -0
- package/dist/core/command-plugins/transport/http-fetch.js +1 -0
- package/dist/core/command-plugins/transport/http-invoke.d.ts +15 -0
- package/dist/core/command-plugins/transport/http-invoke.js +3 -0
- package/dist/core/command-plugins/transport/http-plan.d.ts +68 -0
- package/dist/core/command-plugins/transport/http-plan.js +1 -0
- package/dist/core/command.d.ts +210 -0
- package/dist/core/command.js +10 -0
- package/dist/core/config.d.ts +233 -0
- package/dist/core/config.js +1 -0
- package/dist/core/conversation-store/client-worker.d.ts +1 -0
- package/dist/core/conversation-store/client-worker.js +1 -0
- package/dist/core/conversation-store/client.d.ts +2 -0
- package/dist/core/conversation-store/client.js +2 -0
- package/dist/core/conversation-store/file-store.d.ts +37 -0
- package/dist/core/conversation-store/file-store.js +9 -0
- package/dist/core/conversation-store/index.d.ts +60 -0
- package/dist/core/conversation-store/index.js +1 -0
- package/dist/core/conversation-store/listener.d.ts +4 -0
- package/dist/core/conversation-store/listener.js +8 -0
- package/dist/core/conversation-store/patch.d.ts +1 -0
- package/dist/core/conversation-store/patch.js +1 -0
- package/dist/core/directory/join.d.ts +27 -0
- package/dist/core/directory/join.js +1 -0
- package/dist/core/disk-usage.d.ts +4 -0
- package/dist/core/disk-usage.js +1 -0
- package/dist/core/document-lines.d.ts +4 -0
- package/dist/core/document-lines.js +3 -0
- package/dist/core/editor-resolver.d.ts +28 -0
- package/dist/core/editor-resolver.js +4 -0
- package/dist/core/env-name.d.ts +6 -0
- package/dist/core/env-name.js +1 -0
- package/dist/core/errors.d.ts +38 -0
- package/dist/core/errors.js +1 -0
- package/dist/core/events/emit.d.ts +6 -0
- package/dist/core/events/emit.js +3 -0
- package/dist/core/events/envelope.d.ts +2 -0
- package/dist/core/events/envelope.js +1 -0
- package/dist/core/events/errors.d.ts +4 -0
- package/dist/core/events/errors.js +1 -0
- package/dist/core/events/index.d.ts +5 -0
- package/dist/core/events/index.js +1 -0
- package/dist/core/events/operation-id.d.ts +4 -0
- package/dist/core/events/operation-id.js +1 -0
- package/dist/core/events/read.d.ts +40 -0
- package/dist/core/events/read.js +1 -0
- package/dist/core/events/serialize.d.ts +4 -0
- package/dist/core/events/serialize.js +1 -0
- package/dist/core/events/source.d.ts +16 -0
- package/dist/core/events/source.js +1 -0
- package/dist/core/events/types.d.ts +68 -0
- package/dist/core/events/types.js +1 -0
- package/dist/core/exclusive-lock.d.ts +34 -0
- package/dist/core/exclusive-lock.js +1 -0
- package/dist/core/fault-classifier.d.ts +34 -0
- package/dist/core/fault-classifier.js +1 -0
- package/dist/core/feed/feed.d.ts +63 -0
- package/dist/core/feed/feed.js +4 -0
- package/dist/core/feed/inbox-migrate.d.ts +11 -0
- package/dist/core/feed/inbox-migrate.js +3 -0
- package/dist/core/feed/inbox.d.ts +34 -0
- package/dist/core/feed/inbox.js +1 -0
- package/dist/core/feed/messages.d.ts +83 -0
- package/dist/core/feed/messages.js +8 -0
- package/dist/core/feed/reports.d.ts +10 -0
- package/dist/core/feed/reports.js +2 -0
- package/dist/core/frontmatter.d.ts +8 -0
- package/dist/core/frontmatter.js +1 -0
- package/dist/core/fs-utils.d.ts +44 -0
- package/dist/core/fs-utils.js +3 -0
- package/dist/core/git.d.ts +28 -0
- package/dist/core/git.js +2 -0
- package/dist/core/grants/local.d.ts +4 -0
- package/dist/core/grants/local.js +1 -0
- package/dist/core/grants/mirror.d.ts +76 -0
- package/dist/core/grants/mirror.js +4 -0
- package/dist/core/grants/on-sync.d.ts +22 -0
- package/dist/core/grants/on-sync.js +1 -0
- package/dist/core/grants/remove.d.ts +7 -0
- package/dist/core/grants/remove.js +1 -0
- package/dist/core/grants/sandboxes.d.ts +7 -0
- package/dist/core/grants/sandboxes.js +1 -0
- package/dist/core/grants/sync.d.ts +40 -0
- package/dist/core/grants/sync.js +1 -0
- package/dist/core/grants/watch.d.ts +14 -0
- package/dist/core/grants/watch.js +1 -0
- package/dist/core/graph/access.d.ts +28 -0
- package/dist/core/graph/access.js +8 -0
- package/dist/core/graph/bodies.d.ts +6 -0
- package/dist/core/graph/bodies.js +1 -0
- package/dist/core/graph/custom.d.ts +74 -0
- package/dist/core/graph/custom.js +11 -0
- package/dist/core/graph/deletion.d.ts +17 -0
- package/dist/core/graph/deletion.js +6 -0
- package/dist/core/graph/diff.d.ts +4 -0
- package/dist/core/graph/diff.js +4 -0
- package/dist/core/graph/documents.d.ts +167 -0
- package/dist/core/graph/documents.js +10 -0
- package/dist/core/graph/edges.d.ts +25 -0
- package/dist/core/graph/edges.js +1 -0
- package/dist/core/graph/events.d.ts +50 -0
- package/dist/core/graph/events.js +11 -0
- package/dist/core/graph/exposures.d.ts +53 -0
- package/dist/core/graph/exposures.js +4 -0
- package/dist/core/graph/jobs.d.ts +31 -0
- package/dist/core/graph/jobs.js +2 -0
- package/dist/core/graph/kinds/action.d.ts +3 -0
- package/dist/core/graph/kinds/action.js +1 -0
- package/dist/core/graph/kinds/custom.d.ts +7 -0
- package/dist/core/graph/kinds/custom.js +7 -0
- package/dist/core/graph/kinds/document.d.ts +19 -0
- package/dist/core/graph/kinds/document.js +5 -0
- package/dist/core/graph/kinds/dto.d.ts +5 -0
- package/dist/core/graph/kinds/dto.js +1 -0
- package/dist/core/graph/kinds/job.d.ts +2 -0
- package/dist/core/graph/kinds/job.js +2 -0
- package/dist/core/graph/kinds/kind.d.ts +66 -0
- package/dist/core/graph/kinds/kind.js +1 -0
- package/dist/core/graph/kinds/node.d.ts +12 -0
- package/dist/core/graph/kinds/node.js +5 -0
- package/dist/core/graph/kinds/owner.d.ts +2 -0
- package/dist/core/graph/kinds/owner.js +2 -0
- package/dist/core/graph/kinds/registry.d.ts +13 -0
- package/dist/core/graph/kinds/registry.js +1 -0
- package/dist/core/graph/kinds/render.d.ts +9 -0
- package/dist/core/graph/kinds/render.js +1 -0
- package/dist/core/graph/names.d.ts +35 -0
- package/dist/core/graph/names.js +3 -0
- package/dist/core/graph/objects.d.ts +62 -0
- package/dist/core/graph/objects.js +11 -0
- package/dist/core/graph/package-docs.d.ts +32 -0
- package/dist/core/graph/package-docs.js +5 -0
- package/dist/core/graph/package-files.d.ts +20 -0
- package/dist/core/graph/package-files.js +2 -0
- package/dist/core/graph/reader.d.ts +30 -0
- package/dist/core/graph/reader.js +3 -0
- package/dist/core/graph/receiver-url.d.ts +11 -0
- package/dist/core/graph/receiver-url.js +1 -0
- package/dist/core/graph/receivers.d.ts +26 -0
- package/dist/core/graph/receivers.js +7 -0
- package/dist/core/graph/repo-sync/exchange.d.ts +34 -0
- package/dist/core/graph/repo-sync/exchange.js +2 -0
- package/dist/core/graph/repo-sync/identity.d.ts +30 -0
- package/dist/core/graph/repo-sync/identity.js +1 -0
- package/dist/core/graph/repo-sync/index.d.ts +4 -0
- package/dist/core/graph/repo-sync/index.js +1 -0
- package/dist/core/graph/repo-sync/mirror.d.ts +30 -0
- package/dist/core/graph/repo-sync/mirror.js +6 -0
- package/dist/core/graph/repo-sync/ref-format.d.ts +76 -0
- package/dist/core/graph/repo-sync/ref-format.js +2 -0
- package/dist/core/graph/repo-sync/repos.d.ts +19 -0
- package/dist/core/graph/repo-sync/repos.js +3 -0
- package/dist/core/graph/repo-sync/sync.d.ts +42 -0
- package/dist/core/graph/repo-sync/sync.js +2 -0
- package/dist/core/graph/rules.d.ts +26 -0
- package/dist/core/graph/rules.js +3 -0
- package/dist/core/graph/spaces/app.d.ts +3 -0
- package/dist/core/graph/spaces/app.js +1 -0
- package/dist/core/graph/spaces/index.d.ts +19 -0
- package/dist/core/graph/spaces/index.js +1 -0
- package/dist/core/graph/spaces/person.d.ts +5 -0
- package/dist/core/graph/spaces/person.js +3 -0
- package/dist/core/graph/spaces/repo.d.ts +13 -0
- package/dist/core/graph/spaces/repo.js +1 -0
- package/dist/core/graph/types.d.ts +94 -0
- package/dist/core/graph/types.js +1 -0
- package/dist/core/graph/watches.d.ts +62 -0
- package/dist/core/graph/watches.js +18 -0
- package/dist/core/help.d.ts +309 -0
- package/dist/core/help.js +9 -0
- package/dist/core/host-exports/builtins.d.ts +50 -0
- package/dist/core/host-exports/builtins.js +9 -0
- package/dist/core/host-exports/export.d.ts +31 -0
- package/dist/core/host-exports/export.js +3 -0
- package/dist/core/human/action-binding.d.ts +23 -0
- package/dist/core/human/action-binding.js +1 -0
- package/dist/core/human/answer-text.d.ts +5 -0
- package/dist/core/human/answer-text.js +5 -0
- package/dist/core/human/answer.d.ts +53 -0
- package/dist/core/human/answer.js +1 -0
- package/dist/core/human/claim.d.ts +23 -0
- package/dist/core/human/claim.js +3 -0
- package/dist/core/human/completion.d.ts +38 -0
- package/dist/core/human/completion.js +1 -0
- package/dist/core/human/component-docs.d.ts +18 -0
- package/dist/core/human/component-docs.js +248 -0
- package/dist/core/human/convention.d.ts +31 -0
- package/dist/core/human/convention.js +2 -0
- package/dist/core/human/feedback-companion.d.ts +19 -0
- package/dist/core/human/feedback-companion.js +1 -0
- package/dist/core/human/feedback.d.ts +62 -0
- package/dist/core/human/feedback.js +1 -0
- package/dist/core/human/page-authoring.d.ts +30 -0
- package/dist/core/human/page-authoring.js +1 -0
- package/dist/core/human/page-catalog.d.ts +57 -0
- package/dist/core/human/page-catalog.js +1 -0
- package/dist/core/human/page-errors.d.ts +4 -0
- package/dist/core/human/page-errors.js +1 -0
- package/dist/core/human/page-eval.d.ts +25 -0
- package/dist/core/human/page-eval.js +1 -0
- package/dist/core/human/page-html-markdown.d.ts +8 -0
- package/dist/core/human/page-html-markdown.js +8 -0
- package/dist/core/human/page-markdown.d.ts +3 -0
- package/dist/core/human/page-markdown.js +17 -0
- package/dist/core/human/page-schema.d.ts +289 -0
- package/dist/core/human/page-schema.js +1 -0
- package/dist/core/human/page-synth.d.ts +7 -0
- package/dist/core/human/page-synth.js +11 -0
- package/dist/core/human/page.d.ts +16 -0
- package/dist/core/human/page.js +1 -0
- package/dist/core/human/requests.d.ts +146 -0
- package/dist/core/human/requests.js +82 -0
- package/dist/core/human/review-schema.d.ts +20 -0
- package/dist/core/human/review-schema.js +1 -0
- package/dist/core/human/root.d.ts +4 -0
- package/dist/core/human/root.js +1 -0
- package/dist/core/human/scan.d.ts +6 -0
- package/dist/core/human/scan.js +1 -0
- package/dist/core/human/summary.d.ts +3 -0
- package/dist/core/human/summary.js +1 -0
- package/dist/core/human/tickets.d.ts +68 -0
- package/dist/core/human/tickets.js +1 -0
- package/dist/core/human/types.d.ts +118 -0
- package/dist/core/human/types.js +0 -0
- package/dist/core/human/visible-paths.d.ts +9 -0
- package/dist/core/human/visible-paths.js +1 -0
- package/dist/core/human-actions.d.ts +25 -0
- package/dist/core/human-actions.js +1 -0
- package/dist/core/inspector/chrome.d.ts +6 -0
- package/dist/core/inspector/chrome.js +1 -0
- package/dist/core/inspector/contract.d.ts +105 -0
- package/dist/core/inspector/contract.js +0 -0
- package/dist/core/inspector/core.d.ts +39 -0
- package/dist/core/inspector/core.js +2 -0
- package/dist/core/inspector/host.d.ts +46 -0
- package/dist/core/inspector/host.js +4 -0
- package/dist/core/inspector/model.d.ts +88 -0
- package/dist/core/inspector/model.js +2 -0
- package/dist/core/inspector/text.d.ts +5 -0
- package/dist/core/inspector/text.js +6 -0
- package/dist/core/inspector/transport.d.ts +6 -0
- package/dist/core/inspector/transport.js +1 -0
- package/dist/core/inspector/tui.d.ts +3 -0
- package/dist/core/inspector/tui.js +2 -0
- package/dist/core/installed-plugins.d.ts +2 -0
- package/dist/core/installed-plugins.js +1 -0
- package/dist/core/io.d.ts +122 -0
- package/dist/core/io.js +7 -0
- package/dist/core/keybindings/attach-control.d.ts +49 -0
- package/dist/core/keybindings/attach-control.js +1 -0
- package/dist/core/keybindings/background-bash.d.ts +13 -0
- package/dist/core/keybindings/background-bash.js +1 -0
- package/dist/core/keybindings/catalog.d.ts +18 -0
- package/dist/core/keybindings/catalog.js +1 -0
- package/dist/core/keybindings/inbox.d.ts +18 -0
- package/dist/core/keybindings/inbox.js +1 -0
- package/dist/core/keybindings/index.d.ts +8 -0
- package/dist/core/keybindings/index.js +1 -0
- package/dist/core/keybindings/match.d.ts +44 -0
- package/dist/core/keybindings/match.js +1 -0
- package/dist/core/keybindings/persistence.d.ts +18 -0
- package/dist/core/keybindings/persistence.js +1 -0
- package/dist/core/keybindings/resolve.d.ts +28 -0
- package/dist/core/keybindings/resolve.js +1 -0
- package/dist/core/keybindings/types.d.ts +42 -0
- package/dist/core/keybindings/types.js +0 -0
- package/dist/core/layout-migrate/index.d.ts +38 -0
- package/dist/core/layout-migrate/index.js +4 -0
- package/dist/core/layout-migrate/loose-keys.d.ts +2 -0
- package/dist/core/layout-migrate/loose-keys.js +1 -0
- package/dist/core/layout-migrate/paths.d.ts +30 -0
- package/dist/core/layout-migrate/paths.js +1 -0
- package/dist/core/layout-migrate/stored-paths.d.ts +9 -0
- package/dist/core/layout-migrate/stored-paths.js +11 -0
- package/dist/core/layout-migrate/stores.d.ts +30 -0
- package/dist/core/layout-migrate/stores.js +3 -0
- package/dist/core/layout.d.ts +34 -0
- package/dist/core/layout.js +2 -0
- package/dist/core/llm/body-limits.d.ts +7 -0
- package/dist/core/llm/body-limits.js +1 -0
- package/dist/core/llm/refusal.d.ts +13 -0
- package/dist/core/llm/refusal.js +1 -0
- package/dist/core/llm/run.d.ts +60 -0
- package/dist/core/llm/run.js +4 -0
- package/dist/core/locked-file.d.ts +27 -0
- package/dist/core/locked-file.js +1 -0
- package/dist/core/log.d.ts +9 -0
- package/dist/core/log.js +5 -0
- package/dist/core/manifest-recovery.d.ts +15 -0
- package/dist/core/manifest-recovery.js +1 -0
- package/dist/core/manifest-stale.d.ts +18 -0
- package/dist/core/manifest-stale.js +1 -0
- package/dist/core/manifest.d.ts +5 -0
- package/dist/core/manifest.js +1 -0
- package/dist/core/model-auth/daemon-login.d.ts +13 -0
- package/dist/core/model-auth/daemon-login.js +1 -0
- package/dist/core/model-auth/flows.d.ts +50 -0
- package/dist/core/model-auth/flows.js +1 -0
- package/dist/core/model-auth/handoff-jti.d.ts +4 -0
- package/dist/core/model-auth/handoff-jti.js +1 -0
- package/dist/core/model-config.d.ts +20 -0
- package/dist/core/model-config.js +1 -0
- package/dist/core/model-routes.d.ts +90 -0
- package/dist/core/model-routes.js +1 -0
- package/dist/core/nvim-launch.d.ts +7 -0
- package/dist/core/nvim-launch.js +1 -0
- package/dist/core/output.d.ts +35 -0
- package/dist/core/output.js +7 -0
- package/dist/core/pagination.d.ts +35 -0
- package/dist/core/pagination.js +1 -0
- package/dist/core/plugin-env.d.ts +8 -0
- package/dist/core/plugin-env.js +1 -0
- package/dist/core/plugin-extensions.d.ts +29 -0
- package/dist/core/plugin-extensions.js +1 -0
- package/dist/core/plugin-swap-lock.d.ts +9 -0
- package/dist/core/plugin-swap-lock.js +1 -0
- package/dist/core/pool-credential-store.d.ts +34 -0
- package/dist/core/pool-credential-store.js +1 -0
- package/dist/core/predicate.d.ts +65 -0
- package/dist/core/predicate.js +1 -0
- package/dist/core/preview-registry.d.ts +59 -0
- package/dist/core/preview-registry.js +3 -0
- package/dist/core/preview-result-path.d.ts +4 -0
- package/dist/core/preview-result-path.js +1 -0
- package/dist/core/profiles/app-env-store.d.ts +4 -0
- package/dist/core/profiles/app-env-store.js +2 -0
- package/dist/core/profiles/default-binding.d.ts +15 -0
- package/dist/core/profiles/default-binding.js +1 -0
- package/dist/core/profiles/deletion-reservation.d.ts +12 -0
- package/dist/core/profiles/deletion-reservation.js +1 -0
- package/dist/core/profiles/env-store.d.ts +22 -0
- package/dist/core/profiles/env-store.js +2 -0
- package/dist/core/profiles/fuzzy-match.d.ts +19 -0
- package/dist/core/profiles/fuzzy-match.js +1 -0
- package/dist/core/profiles/manifest.d.ts +120 -0
- package/dist/core/profiles/manifest.js +1 -0
- package/dist/core/profiles/select.d.ts +46 -0
- package/dist/core/profiles/select.js +35 -0
- package/dist/core/provider-credential.d.ts +6 -0
- package/dist/core/provider-credential.js +1 -0
- package/dist/core/provider-error-recognition.d.ts +27 -0
- package/dist/core/provider-error-recognition.js +1 -0
- package/dist/core/provider-failure.d.ts +42 -0
- package/dist/core/provider-failure.js +1 -0
- package/dist/core/provider-management.d.ts +12 -0
- package/dist/core/provider-management.js +1 -0
- package/dist/core/providers/approval.d.ts +23 -0
- package/dist/core/providers/approval.js +3 -0
- package/dist/core/providers/audit.d.ts +28 -0
- package/dist/core/providers/audit.js +4 -0
- package/dist/core/providers/bundles.d.ts +68 -0
- package/dist/core/providers/bundles.js +2 -0
- package/dist/core/providers/call.d.ts +62 -0
- package/dist/core/providers/call.js +1 -0
- package/dist/core/providers/errors.d.ts +97 -0
- package/dist/core/providers/errors.js +1 -0
- package/dist/core/providers/files.d.ts +89 -0
- package/dist/core/providers/files.js +1 -0
- package/dist/core/providers/inflight.d.ts +13 -0
- package/dist/core/providers/inflight.js +1 -0
- package/dist/core/providers/mint.d.ts +27 -0
- package/dist/core/providers/mint.js +1 -0
- package/dist/core/providers/receipts.d.ts +9 -0
- package/dist/core/providers/receipts.js +3 -0
- package/dist/core/providers/request.d.ts +27 -0
- package/dist/core/providers/request.js +1 -0
- package/dist/core/providers/token-cache.d.ts +44 -0
- package/dist/core/providers/token-cache.js +1 -0
- package/dist/core/rate-limit-scope.d.ts +25 -0
- package/dist/core/rate-limit-scope.js +1 -0
- package/dist/core/remote-canvas-target.d.ts +4 -0
- package/dist/core/remote-canvas-target.js +1 -0
- package/dist/core/render.d.ts +12 -0
- package/dist/core/render.js +18 -0
- package/dist/core/resolver.d.ts +14 -0
- package/dist/core/resolver.js +1 -0
- package/dist/core/review/birth.d.ts +7 -0
- package/dist/core/review/birth.js +1 -0
- package/dist/core/review/comments.d.ts +69 -0
- package/dist/core/review/comments.js +21 -0
- package/dist/core/review/companion.d.ts +33 -0
- package/dist/core/review/companion.js +1 -0
- package/dist/core/review/document.d.ts +27 -0
- package/dist/core/review/document.js +2 -0
- package/dist/core/review/fork.d.ts +8 -0
- package/dist/core/review/fork.js +5 -0
- package/dist/core/review/project.d.ts +17 -0
- package/dist/core/review/project.js +1 -0
- package/dist/core/review/realize.d.ts +3 -0
- package/dist/core/review/realize.js +1 -0
- package/dist/core/review/remap.d.ts +24 -0
- package/dist/core/review/remap.js +19 -0
- package/dist/core/review/signal.d.ts +5 -0
- package/dist/core/review/signal.js +1 -0
- package/dist/core/review/stage.d.ts +38 -0
- package/dist/core/review/stage.js +1 -0
- package/dist/core/review/store.d.ts +44 -0
- package/dist/core/review/store.js +1 -0
- package/dist/core/review/types.d.ts +139 -0
- package/dist/core/review/types.js +1 -0
- package/dist/core/runs/activity.d.ts +11 -0
- package/dist/core/runs/activity.js +6 -0
- package/dist/core/runs/confinement.d.ts +23 -0
- package/dist/core/runs/confinement.js +2 -0
- package/dist/core/runs/events.d.ts +41 -0
- package/dist/core/runs/events.js +7 -0
- package/dist/core/runs/operations.d.ts +75 -0
- package/dist/core/runs/operations.js +12 -0
- package/dist/core/runs/questions.d.ts +73 -0
- package/dist/core/runs/questions.js +4 -0
- package/dist/core/runtime/advertised-command-invocation.d.ts +20 -0
- package/dist/core/runtime/advertised-command-invocation.js +1 -0
- package/dist/core/runtime/auth-reload.d.ts +7 -0
- package/dist/core/runtime/auth-reload.js +1 -0
- package/dist/core/runtime/banner.d.ts +15 -0
- package/dist/core/runtime/banner.js +1 -0
- package/dist/core/runtime/bearings-render.d.ts +62 -0
- package/dist/core/runtime/bearings-render.js +18 -0
- package/dist/core/runtime/bearings.d.ts +56 -0
- package/dist/core/runtime/bearings.js +7 -0
- package/dist/core/runtime/bin-contributions.d.ts +44 -0
- package/dist/core/runtime/bin-contributions.js +2 -0
- package/dist/core/runtime/boot-root.d.ts +34 -0
- package/dist/core/runtime/boot-root.js +5 -0
- package/dist/core/runtime/branded-host.d.ts +55 -0
- package/dist/core/runtime/branded-host.js +2 -0
- package/dist/core/runtime/broker/cli-relay.d.ts +5 -0
- package/dist/core/runtime/broker/cli-relay.js +1 -0
- package/dist/core/runtime/broker/client-registry.d.ts +36 -0
- package/dist/core/runtime/broker/client-registry.js +1 -0
- package/dist/core/runtime/broker/daemon-ops.d.ts +65 -0
- package/dist/core/runtime/broker/daemon-ops.js +1 -0
- package/dist/core/runtime/broker/engine-drive.d.ts +37 -0
- package/dist/core/runtime/broker/engine-drive.js +1 -0
- package/dist/core/runtime/broker/engine-routing.d.ts +143 -0
- package/dist/core/runtime/broker/engine-routing.js +1 -0
- package/dist/core/runtime/broker/event-projection.d.ts +43 -0
- package/dist/core/runtime/broker/event-projection.js +1 -0
- package/dist/core/runtime/broker/extension-abort.d.ts +15 -0
- package/dist/core/runtime/broker/extension-abort.js +1 -0
- package/dist/core/runtime/broker/fault-retry.d.ts +127 -0
- package/dist/core/runtime/broker/fault-retry.js +1 -0
- package/dist/core/runtime/broker/frame-client.d.ts +38 -0
- package/dist/core/runtime/broker/frame-client.js +1 -0
- package/dist/core/runtime/broker/frame-dispatch.d.ts +64 -0
- package/dist/core/runtime/broker/frame-dispatch.js +1 -0
- package/dist/core/runtime/broker/frame-engine-control.d.ts +21 -0
- package/dist/core/runtime/broker/frame-engine-control.js +1 -0
- package/dist/core/runtime/broker/frame-memory-refs.d.ts +25 -0
- package/dist/core/runtime/broker/frame-memory-refs.js +1 -0
- package/dist/core/runtime/broker/frame-model-query.d.ts +13 -0
- package/dist/core/runtime/broker/frame-model-query.js +1 -0
- package/dist/core/runtime/broker/frame-read.d.ts +19 -0
- package/dist/core/runtime/broker/frame-read.js +1 -0
- package/dist/core/runtime/broker/frame-replies.d.ts +24 -0
- package/dist/core/runtime/broker/frame-replies.js +1 -0
- package/dist/core/runtime/broker/frame-session.d.ts +34 -0
- package/dist/core/runtime/broker/frame-session.js +4 -0
- package/dist/core/runtime/broker/held-deferred-inbox.d.ts +15 -0
- package/dist/core/runtime/broker/held-deferred-inbox.js +1 -0
- package/dist/core/runtime/broker/inbox.d.ts +22 -0
- package/dist/core/runtime/broker/inbox.js +1 -0
- package/dist/core/runtime/broker/model-adapter.d.ts +24 -0
- package/dist/core/runtime/broker/model-adapter.js +2 -0
- package/dist/core/runtime/broker/node-named.d.ts +15 -0
- package/dist/core/runtime/broker/node-named.js +1 -0
- package/dist/core/runtime/broker/node-token.d.ts +3 -0
- package/dist/core/runtime/broker/node-token.js +1 -0
- package/dist/core/runtime/broker/read-ops.d.ts +27 -0
- package/dist/core/runtime/broker/read-ops.js +1 -0
- package/dist/core/runtime/broker/rebind.d.ts +78 -0
- package/dist/core/runtime/broker/rebind.js +1 -0
- package/dist/core/runtime/broker/retry-card-elision.d.ts +7 -0
- package/dist/core/runtime/broker/retry-card-elision.js +1 -0
- package/dist/core/runtime/broker/run-deferred-mail.d.ts +8 -0
- package/dist/core/runtime/broker/run-deferred-mail.js +1 -0
- package/dist/core/runtime/broker/run-turn-end.d.ts +38 -0
- package/dist/core/runtime/broker/run-turn-end.js +1 -0
- package/dist/core/runtime/broker/run-turn-queue.d.ts +48 -0
- package/dist/core/runtime/broker/run-turn-queue.js +1 -0
- package/dist/core/runtime/broker/signal-stream.d.ts +30 -0
- package/dist/core/runtime/broker/signal-stream.js +1 -0
- package/dist/core/runtime/broker/tool-groups.d.ts +39 -0
- package/dist/core/runtime/broker/tool-groups.js +1 -0
- package/dist/core/runtime/broker/turn-admission.d.ts +11 -0
- package/dist/core/runtime/broker/turn-admission.js +1 -0
- package/dist/core/runtime/broker/turn-ignition.d.ts +49 -0
- package/dist/core/runtime/broker/turn-ignition.js +1 -0
- package/dist/core/runtime/broker-cli.d.ts +1 -0
- package/dist/core/runtime/broker-cli.js +3 -0
- package/dist/core/runtime/broker-extension-render.d.ts +3 -0
- package/dist/core/runtime/broker-extension-render.js +3 -0
- package/dist/core/runtime/broker-inventory.d.ts +4 -0
- package/dist/core/runtime/broker-inventory.js +1 -0
- package/dist/core/runtime/broker-persona-guidance.d.ts +27 -0
- package/dist/core/runtime/broker-persona-guidance.js +4 -0
- package/dist/core/runtime/broker-protocol.d.ts +716 -0
- package/dist/core/runtime/broker-protocol.js +3 -0
- package/dist/core/runtime/broker-request.d.ts +37 -0
- package/dist/core/runtime/broker-request.js +1 -0
- package/dist/core/runtime/broker-sdk.d.ts +36 -0
- package/dist/core/runtime/broker-sdk.js +1 -0
- package/dist/core/runtime/broker.d.ts +73 -0
- package/dist/core/runtime/broker.js +1 -0
- package/dist/core/runtime/canvas-extensions.d.ts +34 -0
- package/dist/core/runtime/canvas-extensions.js +1 -0
- package/dist/core/runtime/chat-inventory-rows.d.ts +8 -0
- package/dist/core/runtime/chat-inventory-rows.js +1 -0
- package/dist/core/runtime/close.d.ts +46 -0
- package/dist/core/runtime/close.js +1 -0
- package/dist/core/runtime/come-back-note.d.ts +5 -0
- package/dist/core/runtime/come-back-note.js +3 -0
- package/dist/core/runtime/command-expansion.d.ts +19 -0
- package/dist/core/runtime/command-expansion.js +9 -0
- package/dist/core/runtime/command-surface.d.ts +38 -0
- package/dist/core/runtime/command-surface.js +1 -0
- package/dist/core/runtime/connectivity.d.ts +12 -0
- package/dist/core/runtime/connectivity.js +1 -0
- package/dist/core/runtime/crtr-theme.d.ts +12 -0
- package/dist/core/runtime/crtr-theme.js +1 -0
- package/dist/core/runtime/deliver-live.d.ts +38 -0
- package/dist/core/runtime/deliver-live.js +1 -0
- package/dist/core/runtime/fault-recovery.d.ts +23 -0
- package/dist/core/runtime/fault-recovery.js +1 -0
- package/dist/core/runtime/fault.d.ts +6 -0
- package/dist/core/runtime/fault.js +1 -0
- package/dist/core/runtime/first-run-offer.d.ts +11 -0
- package/dist/core/runtime/first-run-offer.js +5 -0
- package/dist/core/runtime/fleet.d.ts +93 -0
- package/dist/core/runtime/fleet.js +1 -0
- package/dist/core/runtime/focus-viewer.d.ts +39 -0
- package/dist/core/runtime/focus-viewer.js +1 -0
- package/dist/core/runtime/front-door-env.d.ts +5 -0
- package/dist/core/runtime/front-door-env.js +1 -0
- package/dist/core/runtime/front-door-login.d.ts +2 -0
- package/dist/core/runtime/front-door-login.js +1 -0
- package/dist/core/runtime/front-door.d.ts +26 -0
- package/dist/core/runtime/front-door.js +11 -0
- package/dist/core/runtime/headless-pi.d.ts +37 -0
- package/dist/core/runtime/headless-pi.js +1 -0
- package/dist/core/runtime/host.d.ts +59 -0
- package/dist/core/runtime/host.js +3 -0
- package/dist/core/runtime/interactive-deliver.d.ts +22 -0
- package/dist/core/runtime/interactive-deliver.js +1 -0
- package/dist/core/runtime/invocation.d.ts +9 -0
- package/dist/core/runtime/invocation.js +0 -0
- package/dist/core/runtime/kickoff.d.ts +49 -0
- package/dist/core/runtime/kickoff.js +28 -0
- package/dist/core/runtime/launch-config-worker.d.ts +1 -0
- package/dist/core/runtime/launch-config-worker.js +1 -0
- package/dist/core/runtime/launch-prompt.d.ts +8 -0
- package/dist/core/runtime/launch-prompt.js +4 -0
- package/dist/core/runtime/launch-target.d.ts +34 -0
- package/dist/core/runtime/launch-target.js +1 -0
- package/dist/core/runtime/launch.d.ts +194 -0
- package/dist/core/runtime/launch.js +3 -0
- package/dist/core/runtime/ledger.d.ts +10 -0
- package/dist/core/runtime/ledger.js +3 -0
- package/dist/core/runtime/lifecycle.d.ts +34 -0
- package/dist/core/runtime/lifecycle.js +2 -0
- package/dist/core/runtime/managed-provider-cooling.d.ts +24 -0
- package/dist/core/runtime/managed-provider-cooling.js +1 -0
- package/dist/core/runtime/model-registry.d.ts +3 -0
- package/dist/core/runtime/model-registry.js +1 -0
- package/dist/core/runtime/model-selection.d.ts +54 -0
- package/dist/core/runtime/model-selection.js +1 -0
- package/dist/core/runtime/model-swap.d.ts +26 -0
- package/dist/core/runtime/model-swap.js +1 -0
- package/dist/core/runtime/naming.d.ts +69 -0
- package/dist/core/runtime/naming.js +14 -0
- package/dist/core/runtime/nerd-font.d.ts +46 -0
- package/dist/core/runtime/nerd-font.js +2 -0
- package/dist/core/runtime/node-id-token.d.ts +6 -0
- package/dist/core/runtime/node-id-token.js +1 -0
- package/dist/core/runtime/node-read.d.ts +51 -0
- package/dist/core/runtime/node-read.js +3 -0
- package/dist/core/runtime/nodes.d.ts +138 -0
- package/dist/core/runtime/nodes.js +1 -0
- package/dist/core/runtime/outcome-document.d.ts +59 -0
- package/dist/core/runtime/outcome-document.js +1 -0
- package/dist/core/runtime/package-health.d.ts +34 -0
- package/dist/core/runtime/package-health.js +4 -0
- package/dist/core/runtime/persona.d.ts +21 -0
- package/dist/core/runtime/persona.js +2 -0
- package/dist/core/runtime/pi-cli.d.ts +8 -0
- package/dist/core/runtime/pi-cli.js +1 -0
- package/dist/core/runtime/pi-vendored.d.ts +28 -0
- package/dist/core/runtime/pi-vendored.js +1 -0
- package/dist/core/runtime/placement-tmux.d.ts +32 -0
- package/dist/core/runtime/placement-tmux.js +1 -0
- package/dist/core/runtime/placement.d.ts +100 -0
- package/dist/core/runtime/placement.js +1 -0
- package/dist/core/runtime/progress-bar.d.ts +13 -0
- package/dist/core/runtime/progress-bar.js +2 -0
- package/dist/core/runtime/promote.d.ts +76 -0
- package/dist/core/runtime/promote.js +1 -0
- package/dist/core/runtime/prospective-inventory-cli.d.ts +1 -0
- package/dist/core/runtime/prospective-inventory-cli.js +3 -0
- package/dist/core/runtime/prospective-inventory.d.ts +10 -0
- package/dist/core/runtime/prospective-inventory.js +2 -0
- package/dist/core/runtime/provider-credential-gate.d.ts +4 -0
- package/dist/core/runtime/provider-credential-gate.js +2 -0
- package/dist/core/runtime/recap.d.ts +3 -0
- package/dist/core/runtime/recap.js +27 -0
- package/dist/core/runtime/recovery-hold.d.ts +2 -0
- package/dist/core/runtime/recovery-hold.js +1 -0
- package/dist/core/runtime/recycle.d.ts +14 -0
- package/dist/core/runtime/recycle.js +1 -0
- package/dist/core/runtime/reopen.d.ts +38 -0
- package/dist/core/runtime/reopen.js +1 -0
- package/dist/core/runtime/reset.d.ts +68 -0
- package/dist/core/runtime/reset.js +1 -0
- package/dist/core/runtime/resume-root.d.ts +34 -0
- package/dist/core/runtime/resume-root.js +11 -0
- package/dist/core/runtime/revive-all.d.ts +57 -0
- package/dist/core/runtime/revive-all.js +1 -0
- package/dist/core/runtime/revive.d.ts +105 -0
- package/dist/core/runtime/revive.js +3 -0
- package/dist/core/runtime/roadmap.d.ts +24 -0
- package/dist/core/runtime/roadmap.js +15 -0
- package/dist/core/runtime/run-command.d.ts +36 -0
- package/dist/core/runtime/run-command.js +1 -0
- package/dist/core/runtime/session-branch.d.ts +7 -0
- package/dist/core/runtime/session-branch.js +1 -0
- package/dist/core/runtime/session-cycles.d.ts +45 -0
- package/dist/core/runtime/session-cycles.js +1 -0
- package/dist/core/runtime/session-list-cache.d.ts +37 -0
- package/dist/core/runtime/session-list-cache.js +1 -0
- package/dist/core/runtime/session-visibility.d.ts +37 -0
- package/dist/core/runtime/session-visibility.js +1 -0
- package/dist/core/runtime/setup-marker.d.ts +8 -0
- package/dist/core/runtime/setup-marker.js +1 -0
- package/dist/core/runtime/shell-expansion.d.ts +32 -0
- package/dist/core/runtime/shell-expansion.js +9 -0
- package/dist/core/runtime/situational-context.d.ts +19 -0
- package/dist/core/runtime/situational-context.js +2 -0
- package/dist/core/runtime/situational-live.d.ts +9 -0
- package/dist/core/runtime/situational-live.js +1 -0
- package/dist/core/runtime/spawn-env.d.ts +54 -0
- package/dist/core/runtime/spawn-env.js +1 -0
- package/dist/core/runtime/spawn.d.ts +155 -0
- package/dist/core/runtime/spawn.js +3 -0
- package/dist/core/runtime/stamp/channel.d.ts +20 -0
- package/dist/core/runtime/stamp/channel.js +1 -0
- package/dist/core/runtime/stamp/protocol.d.ts +90 -0
- package/dist/core/runtime/stamp/protocol.js +1 -0
- package/dist/core/runtime/stop-guard.d.ts +31 -0
- package/dist/core/runtime/stop-guard.js +8 -0
- package/dist/core/runtime/stop-signals.d.ts +16 -0
- package/dist/core/runtime/stop-signals.js +1 -0
- package/dist/core/runtime/stream-watchdog.d.ts +54 -0
- package/dist/core/runtime/stream-watchdog.js +1 -0
- package/dist/core/runtime/structured-output.d.ts +91 -0
- package/dist/core/runtime/structured-output.js +5 -0
- package/dist/core/runtime/surface-bg.d.ts +13 -0
- package/dist/core/runtime/surface-bg.js +1 -0
- package/dist/core/runtime/tmux-bindings.d.ts +30 -0
- package/dist/core/runtime/tmux-bindings.js +4 -0
- package/dist/core/runtime/tmux-chrome.d.ts +2 -0
- package/dist/core/runtime/tmux-chrome.js +1 -0
- package/dist/core/runtime/tmux-driver.d.ts +314 -0
- package/dist/core/runtime/tmux-driver.js +6 -0
- package/dist/core/runtime/tmux-handoff.d.ts +36 -0
- package/dist/core/runtime/tmux-handoff.js +10 -0
- package/dist/core/runtime/tool-group-summary.d.ts +19 -0
- package/dist/core/runtime/tool-group-summary.js +6 -0
- package/dist/core/runtime/turn-visibility.d.ts +10 -0
- package/dist/core/runtime/turn-visibility.js +1 -0
- package/dist/core/runtime/view-socket.d.ts +21 -0
- package/dist/core/runtime/view-socket.js +1 -0
- package/dist/core/runtime/warm-pool.d.ts +65 -0
- package/dist/core/runtime/warm-pool.js +1 -0
- package/dist/core/scope.d.ts +32 -0
- package/dist/core/scope.js +1 -0
- package/dist/core/scoped-state/db.d.ts +17 -0
- package/dist/core/scoped-state/db.js +2 -0
- package/dist/core/scoped-state/migrate.d.ts +8 -0
- package/dist/core/scoped-state/migrate.js +3 -0
- package/dist/core/scoped-state/paths.d.ts +9 -0
- package/dist/core/scoped-state/paths.js +1 -0
- package/dist/core/scoped-state/profiles.d.ts +27 -0
- package/dist/core/scoped-state/profiles.js +1 -0
- package/dist/core/scoped-state/providers.d.ts +24 -0
- package/dist/core/scoped-state/providers.js +1 -0
- package/dist/core/scoped-state/schema.d.ts +6 -0
- package/dist/core/scoped-state/schema.js +16 -0
- package/dist/core/scoped-state/settings.d.ts +28 -0
- package/dist/core/scoped-state/settings.js +1 -0
- package/dist/core/scopes.d.ts +17 -0
- package/dist/core/scopes.js +1 -0
- package/dist/core/secrets.d.ts +40 -0
- package/dist/core/secrets.js +2 -0
- package/dist/core/self-update.d.ts +27 -0
- package/dist/core/self-update.js +1 -0
- package/dist/core/session-model/session-state.d.ts +53 -0
- package/dist/core/session-model/session-state.js +1 -0
- package/dist/core/shell-segments.d.ts +42 -0
- package/dist/core/shell-segments.js +4 -0
- package/dist/core/spaces/cache-env.d.ts +2 -0
- package/dist/core/spaces/cache-env.js +1 -0
- package/dist/core/spaces/file-root.d.ts +23 -0
- package/dist/core/spaces/file-root.js +1 -0
- package/dist/core/spaces/mounts.d.ts +34 -0
- package/dist/core/spaces/mounts.js +1 -0
- package/dist/core/spaces/open-beneath.d.ts +71 -0
- package/dist/core/spaces/open-beneath.js +1 -0
- package/dist/core/spaces/permissions.d.ts +19 -0
- package/dist/core/spaces/permissions.js +1 -0
- package/dist/core/spaces/process.d.ts +41 -0
- package/dist/core/spaces/process.js +1 -0
- package/dist/core/spaces/runtime-home.d.ts +5 -0
- package/dist/core/spaces/runtime-home.js +1 -0
- package/dist/core/spaces/space.d.ts +8 -0
- package/dist/core/spaces/space.js +2 -0
- package/dist/core/spaces/stop.d.ts +21 -0
- package/dist/core/spaces/stop.js +2 -0
- package/dist/core/spaces/users.d.ts +19 -0
- package/dist/core/spaces/users.js +1 -0
- package/dist/core/spawn.d.ts +15 -0
- package/dist/core/spawn.js +1 -0
- package/dist/core/sqlite-statements.d.ts +4 -0
- package/dist/core/sqlite-statements.js +1 -0
- package/dist/core/stdout-errors.d.ts +3 -0
- package/dist/core/stdout-errors.js +1 -0
- package/dist/core/storage/attachments.d.ts +33 -0
- package/dist/core/storage/attachments.js +1 -0
- package/dist/core/storage/client.d.ts +109 -0
- package/dist/core/storage/client.js +3 -0
- package/dist/core/storage/download.d.ts +24 -0
- package/dist/core/storage/download.js +1 -0
- package/dist/core/storage/shares.d.ts +32 -0
- package/dist/core/storage/shares.js +1 -0
- package/dist/core/storage/tables.d.ts +63 -0
- package/dist/core/storage/tables.js +3 -0
- package/dist/core/subscription-state.d.ts +121 -0
- package/dist/core/subscription-state.js +4 -0
- package/dist/core/substrate/delivery/corpus.d.ts +27 -0
- package/dist/core/substrate/delivery/corpus.js +3 -0
- package/dist/core/substrate/delivery/deliver.d.ts +76 -0
- package/dist/core/substrate/delivery/deliver.js +6 -0
- package/dist/core/substrate/delivery/listings.d.ts +30 -0
- package/dist/core/substrate/delivery/listings.js +7 -0
- package/dist/core/substrate/delivery/match.d.ts +28 -0
- package/dist/core/substrate/delivery/match.js +1 -0
- package/dist/core/substrate/delivery/plan.d.ts +67 -0
- package/dist/core/substrate/delivery/plan.js +3 -0
- package/dist/core/substrate/delivery/render-boot.d.ts +20 -0
- package/dist/core/substrate/delivery/render-boot.js +54 -0
- package/dist/core/substrate/delivery/render-event.d.ts +54 -0
- package/dist/core/substrate/delivery/render-event.js +8 -0
- package/dist/core/substrate/delivery/sub-persona-menu.d.ts +2 -0
- package/dist/core/substrate/delivery/sub-persona-menu.js +6 -0
- package/dist/core/substrate/delivery/types.d.ts +30 -0
- package/dist/core/substrate/delivery/types.js +0 -0
- package/dist/core/substrate/gate-explain.d.ts +35 -0
- package/dist/core/substrate/gate-explain.js +1 -0
- package/dist/core/substrate/schema.d.ts +29 -0
- package/dist/core/substrate/schema.js +1 -0
- package/dist/core/substrate/subject-fields.d.ts +48 -0
- package/dist/core/substrate/subject-fields.js +1 -0
- package/dist/core/substrate/subject.d.ts +13 -0
- package/dist/core/substrate/subject.js +1 -0
- package/dist/core/termrender/code-doc.d.ts +12 -0
- package/dist/core/termrender/code-doc.js +5 -0
- package/dist/core/termrender/display.d.ts +16 -0
- package/dist/core/termrender/display.js +2 -0
- package/dist/core/termrender/termrender.d.ts +71 -0
- package/dist/core/termrender/termrender.js +14 -0
- package/dist/core/termrender/version.d.ts +1 -0
- package/dist/core/termrender/version.js +1 -0
- package/dist/core/timing.d.ts +11 -0
- package/dist/core/timing.js +2 -0
- package/dist/core/tui/draw.d.ts +103 -0
- package/dist/core/tui/draw.js +2 -0
- package/dist/core/tui/fuzzy.d.ts +9 -0
- package/dist/core/tui/fuzzy.js +1 -0
- package/dist/core/tui/markdown.d.ts +17 -0
- package/dist/core/tui/markdown.js +3 -0
- package/dist/core/tui/page-host.d.ts +31 -0
- package/dist/core/tui/page-host.js +1 -0
- package/dist/core/tui/panel.d.ts +45 -0
- package/dist/core/tui/panel.js +1 -0
- package/dist/core/tui/terminal.d.ts +23 -0
- package/dist/core/tui/terminal.js +2 -0
- package/dist/core/user-settings.d.ts +377 -0
- package/dist/core/user-settings.js +1 -0
- package/dist/core/wake.d.ts +89 -0
- package/dist/core/wake.js +1 -0
- package/dist/core/worktree-close.d.ts +4 -0
- package/dist/core/worktree-close.js +6 -0
- package/dist/core/worktree-containment.d.ts +14 -0
- package/dist/core/worktree-containment.js +3 -0
- package/dist/core/worktree-landing.d.ts +44 -0
- package/dist/core/worktree-landing.js +4 -0
- package/dist/core/worktree-mutation-async.d.ts +13 -0
- package/dist/core/worktree-mutation-async.js +10 -0
- package/dist/core/worktree-quarantine.d.ts +19 -0
- package/dist/core/worktree-quarantine.js +1 -0
- package/dist/core/worktree-remove.d.ts +15 -0
- package/dist/core/worktree-remove.js +1 -0
- package/dist/core/worktree-sweep.d.ts +60 -0
- package/dist/core/worktree-sweep.js +6 -0
- package/dist/core/worktree.d.ts +120 -0
- package/dist/core/worktree.js +18 -0
- package/dist/daemon/analytics/compute.d.ts +37 -0
- package/dist/daemon/analytics/compute.js +1 -0
- package/dist/daemon/analytics/scan-worker.d.ts +1 -0
- package/dist/daemon/analytics/scan-worker.js +2 -0
- package/dist/daemon/analytics/scan.d.ts +37 -0
- package/dist/daemon/analytics/scan.js +1 -0
- package/dist/daemon/api/app-listener.d.ts +22 -0
- package/dist/daemon/api/app-listener.js +24 -0
- package/dist/daemon/api/bridge.d.ts +63 -0
- package/dist/daemon/api/bridge.js +8 -0
- package/dist/daemon/api/deferred-head.d.ts +14 -0
- package/dist/daemon/api/deferred-head.js +4 -0
- package/dist/daemon/api/handlers/analytics.d.ts +2 -0
- package/dist/daemon/api/handlers/analytics.js +1 -0
- package/dist/daemon/api/handlers/app-profiles.d.ts +17 -0
- package/dist/daemon/api/handlers/app-profiles.js +1 -0
- package/dist/daemon/api/handlers/attach.d.ts +2 -0
- package/dist/daemon/api/handlers/attach.js +1 -0
- package/dist/daemon/api/handlers/bash-jobs.d.ts +2 -0
- package/dist/daemon/api/handlers/bash-jobs.js +1 -0
- package/dist/daemon/api/handlers/bash.d.ts +2 -0
- package/dist/daemon/api/handlers/bash.js +1 -0
- package/dist/daemon/api/handlers/broker-ops.d.ts +5 -0
- package/dist/daemon/api/handlers/broker-ops.js +1 -0
- package/dist/daemon/api/handlers/broker-recovery.d.ts +4 -0
- package/dist/daemon/api/handlers/broker-recovery.js +1 -0
- package/dist/daemon/api/handlers/broker-signals.d.ts +19 -0
- package/dist/daemon/api/handlers/broker-signals.js +2 -0
- package/dist/daemon/api/handlers/canvas.d.ts +7 -0
- package/dist/daemon/api/handlers/canvas.js +6 -0
- package/dist/daemon/api/handlers/chat-inventory.d.ts +2 -0
- package/dist/daemon/api/handlers/chat-inventory.js +1 -0
- package/dist/daemon/api/handlers/crons.d.ts +2 -0
- package/dist/daemon/api/handlers/crons.js +1 -0
- package/dist/daemon/api/handlers/custom-objects.d.ts +10 -0
- package/dist/daemon/api/handlers/custom-objects.js +3 -0
- package/dist/daemon/api/handlers/daemon.d.ts +2 -0
- package/dist/daemon/api/handlers/daemon.js +1 -0
- package/dist/daemon/api/handlers/delivery-retry.d.ts +2 -0
- package/dist/daemon/api/handlers/delivery-retry.js +1 -0
- package/dist/daemon/api/handlers/delivery.d.ts +2 -0
- package/dist/daemon/api/handlers/delivery.js +1 -0
- package/dist/daemon/api/handlers/docs.d.ts +2 -0
- package/dist/daemon/api/handlers/docs.js +1 -0
- package/dist/daemon/api/handlers/feedback-comments.d.ts +2 -0
- package/dist/daemon/api/handlers/feedback-comments.js +3 -0
- package/dist/daemon/api/handlers/files.d.ts +2 -0
- package/dist/daemon/api/handlers/files.js +1 -0
- package/dist/daemon/api/handlers/focus.d.ts +2 -0
- package/dist/daemon/api/handlers/focus.js +1 -0
- package/dist/daemon/api/handlers/health.d.ts +2 -0
- package/dist/daemon/api/handlers/health.js +14 -0
- package/dist/daemon/api/handlers/hook-exec.d.ts +2 -0
- package/dist/daemon/api/handlers/hook-exec.js +1 -0
- package/dist/daemon/api/handlers/human-requests.d.ts +2 -0
- package/dist/daemon/api/handlers/human-requests.js +1 -0
- package/dist/daemon/api/handlers/human.d.ts +2 -0
- package/dist/daemon/api/handlers/human.js +1 -0
- package/dist/daemon/api/handlers/inbox-page.d.ts +4 -0
- package/dist/daemon/api/handlers/inbox-page.js +1 -0
- package/dist/daemon/api/handlers/inbox.d.ts +12 -0
- package/dist/daemon/api/handlers/inbox.js +1 -0
- package/dist/daemon/api/handlers/limits.d.ts +2 -0
- package/dist/daemon/api/handlers/limits.js +1 -0
- package/dist/daemon/api/handlers/llm.d.ts +2 -0
- package/dist/daemon/api/handlers/llm.js +3 -0
- package/dist/daemon/api/handlers/memory-reads.d.ts +4 -0
- package/dist/daemon/api/handlers/memory-reads.js +1 -0
- package/dist/daemon/api/handlers/memory.d.ts +38 -0
- package/dist/daemon/api/handlers/memory.js +8 -0
- package/dist/daemon/api/handlers/messages.d.ts +4 -0
- package/dist/daemon/api/handlers/messages.js +2 -0
- package/dist/daemon/api/handlers/model-config.d.ts +2 -0
- package/dist/daemon/api/handlers/model-config.js +1 -0
- package/dist/daemon/api/handlers/modelauth.d.ts +5 -0
- package/dist/daemon/api/handlers/modelauth.js +1 -0
- package/dist/daemon/api/handlers/node-events.d.ts +44 -0
- package/dist/daemon/api/handlers/node-events.js +6 -0
- package/dist/daemon/api/handlers/node-outcomes.d.ts +2 -0
- package/dist/daemon/api/handlers/node-outcomes.js +1 -0
- package/dist/daemon/api/handlers/node-records.d.ts +2 -0
- package/dist/daemon/api/handlers/node-records.js +3 -0
- package/dist/daemon/api/handlers/nodes.d.ts +17 -0
- package/dist/daemon/api/handlers/nodes.js +1 -0
- package/dist/daemon/api/handlers/objects.d.ts +2 -0
- package/dist/daemon/api/handlers/objects.js +2 -0
- package/dist/daemon/api/handlers/package-docs.d.ts +2 -0
- package/dist/daemon/api/handlers/package-docs.js +1 -0
- package/dist/daemon/api/handlers/profiles.d.ts +11 -0
- package/dist/daemon/api/handlers/profiles.js +1 -0
- package/dist/daemon/api/handlers/prospective-chat-inventory.d.ts +2 -0
- package/dist/daemon/api/handlers/prospective-chat-inventory.js +1 -0
- package/dist/daemon/api/handlers/providers.d.ts +70 -0
- package/dist/daemon/api/handlers/providers.js +1 -0
- package/dist/daemon/api/handlers/questions.d.ts +7 -0
- package/dist/daemon/api/handlers/questions.js +1 -0
- package/dist/daemon/api/handlers/reports.d.ts +6 -0
- package/dist/daemon/api/handlers/reports.js +18 -0
- package/dist/daemon/api/handlers/review-comments.d.ts +2 -0
- package/dist/daemon/api/handlers/review-comments.js +1 -0
- package/dist/daemon/api/handlers/reviews.d.ts +5 -0
- package/dist/daemon/api/handlers/reviews.js +1 -0
- package/dist/daemon/api/handlers/run-routes.d.ts +2 -0
- package/dist/daemon/api/handlers/run-routes.js +1 -0
- package/dist/daemon/api/handlers/runs.d.ts +9 -0
- package/dist/daemon/api/handlers/runs.js +1 -0
- package/dist/daemon/api/handlers/structured-requests.d.ts +2 -0
- package/dist/daemon/api/handlers/structured-requests.js +1 -0
- package/dist/daemon/api/handlers/subscriptions.d.ts +2 -0
- package/dist/daemon/api/handlers/subscriptions.js +1 -0
- package/dist/daemon/api/handlers/telemetry-record.d.ts +4 -0
- package/dist/daemon/api/handlers/telemetry-record.js +1 -0
- package/dist/daemon/api/handlers/transfer.d.ts +15 -0
- package/dist/daemon/api/handlers/transfer.js +1 -0
- package/dist/daemon/api/handlers/validate.d.ts +23 -0
- package/dist/daemon/api/handlers/validate.js +1 -0
- package/dist/daemon/api/handlers/vendor-status.d.ts +8 -0
- package/dist/daemon/api/handlers/vendor-status.js +1 -0
- package/dist/daemon/api/handlers/worktree.d.ts +2 -0
- package/dist/daemon/api/handlers/worktree.js +1 -0
- package/dist/daemon/api/long-poll-wait.d.ts +3 -0
- package/dist/daemon/api/long-poll-wait.js +1 -0
- package/dist/daemon/api/map.d.ts +167 -0
- package/dist/daemon/api/map.js +2 -0
- package/dist/daemon/api/operations.d.ts +18 -0
- package/dist/daemon/api/operations.js +1 -0
- package/dist/daemon/api/principal.d.ts +71 -0
- package/dist/daemon/api/principal.js +1 -0
- package/dist/daemon/api/reader.d.ts +17 -0
- package/dist/daemon/api/reader.js +1 -0
- package/dist/daemon/api/router.d.ts +123 -0
- package/dist/daemon/api/router.js +1 -0
- package/dist/daemon/api/server.d.ts +28 -0
- package/dist/daemon/api/server.js +1 -0
- package/dist/daemon/api/vendor-signin.d.ts +7 -0
- package/dist/daemon/api/vendor-signin.js +77 -0
- package/dist/daemon/api/viewer-presence.d.ts +3 -0
- package/dist/daemon/api/viewer-presence.js +1 -0
- package/dist/daemon/boot-migrations.d.ts +14 -0
- package/dist/daemon/boot-migrations.js +1 -0
- package/dist/daemon/broker-signals/bus.d.ts +30 -0
- package/dist/daemon/broker-signals/bus.js +10 -0
- package/dist/daemon/companion-retire.d.ts +4 -0
- package/dist/daemon/companion-retire.js +1 -0
- package/dist/daemon/control.d.ts +40 -0
- package/dist/daemon/control.js +1 -0
- package/dist/daemon/cron/armed-context.d.ts +25 -0
- package/dist/daemon/cron/armed-context.js +1 -0
- package/dist/daemon/cron/capture.d.ts +22 -0
- package/dist/daemon/cron/capture.js +2 -0
- package/dist/daemon/cron/disposition.d.ts +21 -0
- package/dist/daemon/cron/disposition.js +1 -0
- package/dist/daemon/cron/escalation.d.ts +12 -0
- package/dist/daemon/cron/escalation.js +3 -0
- package/dist/daemon/cron/held.d.ts +4 -0
- package/dist/daemon/cron/held.js +1 -0
- package/dist/daemon/cron/lease-recovery.d.ts +3 -0
- package/dist/daemon/cron/lease-recovery.js +1 -0
- package/dist/daemon/cron/live-runs.d.ts +11 -0
- package/dist/daemon/cron/live-runs.js +1 -0
- package/dist/daemon/cron/passes.d.ts +6 -0
- package/dist/daemon/cron/passes.js +1 -0
- package/dist/daemon/cron/settle.d.ts +28 -0
- package/dist/daemon/cron/settle.js +1 -0
- package/dist/daemon/cron/sinks.d.ts +19 -0
- package/dist/daemon/cron/sinks.js +2 -0
- package/dist/daemon/cron-run.d.ts +31 -0
- package/dist/daemon/cron-run.js +1 -0
- package/dist/daemon/crtrd-cli.d.ts +1 -0
- package/dist/daemon/crtrd-cli.js +1 -0
- package/dist/daemon/crtrd.d.ts +28 -0
- package/dist/daemon/crtrd.js +12 -0
- package/dist/daemon/delivery/run-delivery.d.ts +34 -0
- package/dist/daemon/delivery/run-delivery.js +1 -0
- package/dist/daemon/due-sources.d.ts +15 -0
- package/dist/daemon/due-sources.js +1 -0
- package/dist/daemon/due.d.ts +14 -0
- package/dist/daemon/due.js +11 -0
- package/dist/daemon/fleet.d.ts +79 -0
- package/dist/daemon/fleet.js +19 -0
- package/dist/daemon/http-dispatcher.d.ts +1 -0
- package/dist/daemon/http-dispatcher.js +1 -0
- package/dist/daemon/human/finish.d.ts +24 -0
- package/dist/daemon/human/finish.js +10 -0
- package/dist/daemon/human/settle.d.ts +44 -0
- package/dist/daemon/human/settle.js +1 -0
- package/dist/daemon/human/sweep.d.ts +21 -0
- package/dist/daemon/human/sweep.js +1 -0
- package/dist/daemon/joined-owner.d.ts +5 -0
- package/dist/daemon/joined-owner.js +1 -0
- package/dist/daemon/launcher-events.d.ts +2 -0
- package/dist/daemon/launcher-events.js +1 -0
- package/dist/daemon/manage.d.ts +176 -0
- package/dist/daemon/manage.js +2 -0
- package/dist/daemon/messaging/node-message.d.ts +27 -0
- package/dist/daemon/messaging/node-message.js +1 -0
- package/dist/daemon/park-activity.d.ts +9 -0
- package/dist/daemon/park-activity.js +1 -0
- package/dist/daemon/park-pending.d.ts +18 -0
- package/dist/daemon/park-pending.js +1 -0
- package/dist/daemon/pidfile.d.ts +8 -0
- package/dist/daemon/pidfile.js +1 -0
- package/dist/daemon/profile-delete.d.ts +7 -0
- package/dist/daemon/profile-delete.js +1 -0
- package/dist/daemon/reconcilers/action-lane.d.ts +8 -0
- package/dist/daemon/reconcilers/action-lane.js +1 -0
- package/dist/daemon/reconcilers/bash-deadline.d.ts +27 -0
- package/dist/daemon/reconcilers/bash-deadline.js +2 -0
- package/dist/daemon/reconcilers/broker-supervision.d.ts +88 -0
- package/dist/daemon/reconcilers/broker-supervision.js +4 -0
- package/dist/daemon/reconcilers/controller-death.d.ts +7 -0
- package/dist/daemon/reconcilers/controller-death.js +1 -0
- package/dist/daemon/reconcilers/cron-lane.d.ts +7 -0
- package/dist/daemon/reconcilers/cron-lane.js +1 -0
- package/dist/daemon/reconcilers/delivery-lane.d.ts +9 -0
- package/dist/daemon/reconcilers/delivery-lane.js +8 -0
- package/dist/daemon/reconcilers/fault-retry-backstop.d.ts +41 -0
- package/dist/daemon/reconcilers/fault-retry-backstop.js +1 -0
- package/dist/daemon/reconcilers/grove-instance-sweep.d.ts +36 -0
- package/dist/daemon/reconcilers/grove-instance-sweep.js +1 -0
- package/dist/daemon/reconcilers/live-obligation.d.ts +65 -0
- package/dist/daemon/reconcilers/live-obligation.js +1 -0
- package/dist/daemon/reconcilers/managed-worktree-sweep.d.ts +24 -0
- package/dist/daemon/reconcilers/managed-worktree-sweep.js +1 -0
- package/dist/daemon/reconcilers/node-deadline.d.ts +7 -0
- package/dist/daemon/reconcilers/node-deadline.js +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/freeze-lane.d.ts +48 -0
- package/dist/daemon/reconcilers/node-lifecycle/freeze-lane.js +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/respawn-policy.d.ts +30 -0
- package/dist/daemon/reconcilers/node-lifecycle/respawn-policy.js +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/terminating.d.ts +5 -0
- package/dist/daemon/reconcilers/node-lifecycle/terminating.js +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/tick.d.ts +20 -0
- package/dist/daemon/reconcilers/node-lifecycle/tick.js +1 -0
- package/dist/daemon/reconcilers/node-lifecycle/wants-execution.d.ts +8 -0
- package/dist/daemon/reconcilers/node-lifecycle/wants-execution.js +1 -0
- package/dist/daemon/reconcilers/pending-review-submit.d.ts +7 -0
- package/dist/daemon/reconcilers/pending-review-submit.js +1 -0
- package/dist/daemon/reconcilers/storage-due-work.d.ts +32 -0
- package/dist/daemon/reconcilers/storage-due-work.js +1 -0
- package/dist/daemon/reconcilers/storage-maintenance.d.ts +69 -0
- package/dist/daemon/reconcilers/storage-maintenance.js +8 -0
- package/dist/daemon/reconcilers/structured-request-lane.d.ts +4 -0
- package/dist/daemon/reconcilers/structured-request-lane.js +1 -0
- package/dist/daemon/resume-detector.d.ts +12 -0
- package/dist/daemon/resume-detector.js +1 -0
- package/dist/daemon/review/comment-notify.d.ts +27 -0
- package/dist/daemon/review/comment-notify.js +2 -0
- package/dist/daemon/review/companion.d.ts +8 -0
- package/dist/daemon/review/companion.js +1 -0
- package/dist/daemon/review/deliver.d.ts +5 -0
- package/dist/daemon/review/deliver.js +3 -0
- package/dist/daemon/review/finish.d.ts +27 -0
- package/dist/daemon/review/finish.js +1 -0
- package/dist/daemon/review/sweep.d.ts +4 -0
- package/dist/daemon/review/sweep.js +1 -0
- package/dist/daemon/run-notices.d.ts +49 -0
- package/dist/daemon/run-notices.js +1 -0
- package/dist/daemon/runs/append-section.d.ts +6 -0
- package/dist/daemon/runs/append-section.js +2 -0
- package/dist/daemon/runs/observer.d.ts +14 -0
- package/dist/daemon/runs/observer.js +4 -0
- package/dist/daemon/startup-policy.d.ts +1 -0
- package/dist/daemon/startup-policy.js +1 -0
- package/dist/daemon/structured-requests/boot.d.ts +2 -0
- package/dist/daemon/structured-requests/boot.js +1 -0
- package/dist/daemon/structured-requests/effects.d.ts +4 -0
- package/dist/daemon/structured-requests/effects.js +1 -0
- package/dist/daemon/structured-requests/notifier.d.ts +2 -0
- package/dist/daemon/structured-requests/notifier.js +1 -0
- package/dist/daemon/structured-requests/sidecar.d.ts +3 -0
- package/dist/daemon/structured-requests/sidecar.js +1 -0
- package/dist/daemon/supervise-cadence.d.ts +1 -0
- package/dist/daemon/supervise-cadence.js +1 -0
- package/dist/hook-authoring.d.ts +130 -0
- package/dist/hook-authoring.js +5 -0
- package/dist/hook-process.d.ts +7 -0
- package/dist/hook-process.js +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +1 -0
- package/dist/launcher/bwrap.d.ts +13 -0
- package/dist/launcher/bwrap.js +2 -0
- package/dist/launcher/client.d.ts +4 -0
- package/dist/launcher/client.js +3 -0
- package/dist/launcher/limits/cgroup.d.ts +28 -0
- package/dist/launcher/limits/cgroup.js +2 -0
- package/dist/launcher/limits/log.d.ts +3 -0
- package/dist/launcher/limits/log.js +1 -0
- package/dist/launcher/limits/manager.d.ts +82 -0
- package/dist/launcher/limits/manager.js +1 -0
- package/dist/launcher/limits/policy.d.ts +98 -0
- package/dist/launcher/limits/policy.js +1 -0
- package/dist/launcher/limits/purge-worker.d.ts +8 -0
- package/dist/launcher/limits/purge-worker.js +2 -0
- package/dist/launcher/limits/quota.d.ts +48 -0
- package/dist/launcher/limits/quota.js +4 -0
- package/dist/launcher/limits/settings.d.ts +19 -0
- package/dist/launcher/limits/settings.js +2 -0
- package/dist/launcher/main.d.ts +1 -0
- package/dist/launcher/main.js +3 -0
- package/dist/launcher/netrule.d.ts +1 -0
- package/dist/launcher/netrule.js +1 -0
- package/dist/launcher/scope-directories.d.ts +4 -0
- package/dist/launcher/scope-directories.js +1 -0
- package/dist/launcher/seccomp.d.ts +1 -0
- package/dist/launcher/seccomp.js +1 -0
- package/dist/launcher/spec.d.ts +149 -0
- package/dist/launcher/spec.js +1 -0
- package/dist/launcher/users.d.ts +23 -0
- package/dist/launcher/users.js +7 -0
- package/dist/launcher/validate.d.ts +22 -0
- package/dist/launcher/validate.js +1 -0
- package/dist/migrations/004-canvas-documents/apply.d.ts +10 -0
- package/dist/migrations/004-canvas-documents/apply.js +1 -0
- package/dist/migrations/004-canvas-documents/fields.d.ts +24 -0
- package/dist/migrations/004-canvas-documents/fields.js +2 -0
- package/dist/migrations/004-canvas-documents/index.d.ts +16 -0
- package/dist/migrations/004-canvas-documents/index.js +2 -0
- package/dist/migrations/004-canvas-documents/legacy/discover.d.ts +16 -0
- package/dist/migrations/004-canvas-documents/legacy/discover.js +1 -0
- package/dist/migrations/004-canvas-documents/legacy/history.d.ts +5 -0
- package/dist/migrations/004-canvas-documents/legacy/history.js +2 -0
- package/dist/migrations/004-canvas-documents/legacy/nested.d.ts +7 -0
- package/dist/migrations/004-canvas-documents/legacy/nested.js +1 -0
- package/dist/migrations/004-canvas-documents/legacy/parse.d.ts +14 -0
- package/dist/migrations/004-canvas-documents/legacy/parse.js +1 -0
- package/dist/migrations/004-canvas-documents/legacy/types.d.ts +91 -0
- package/dist/migrations/004-canvas-documents/legacy/types.js +0 -0
- package/dist/migrations/004-canvas-documents/legacy-edges.d.ts +6 -0
- package/dist/migrations/004-canvas-documents/legacy-edges.js +18 -0
- package/dist/migrations/004-canvas-documents/plan.d.ts +102 -0
- package/dist/migrations/004-canvas-documents/plan.js +3 -0
- package/dist/migrations/004-canvas-documents/pointers.d.ts +23 -0
- package/dist/migrations/004-canvas-documents/pointers.js +4 -0
- package/dist/migrations/activation.d.ts +17 -0
- package/dist/migrations/activation.js +2 -0
- package/dist/native/linux/arm64/addon.node +0 -0
- package/dist/native/linux/x64/addon.node +0 -0
- package/dist/native/linux.d.ts +29 -0
- package/dist/native/linux.js +1 -0
- package/dist/pi-extensions/broker-local.d.ts +19 -0
- package/dist/pi-extensions/broker-local.js +2 -0
- package/dist/pi-extensions/canvas-bash-valve.d.ts +23 -0
- package/dist/pi-extensions/canvas-bash-valve.js +7 -0
- package/dist/pi-extensions/canvas-context-intro.d.ts +55 -0
- package/dist/pi-extensions/canvas-context-intro.js +2 -0
- package/dist/pi-extensions/canvas-doc-substrate.d.ts +51 -0
- package/dist/pi-extensions/canvas-doc-substrate.js +9 -0
- package/dist/pi-extensions/canvas-elapsed.d.ts +21 -0
- package/dist/pi-extensions/canvas-elapsed.js +2 -0
- package/dist/pi-extensions/canvas-goal-capture.d.ts +21 -0
- package/dist/pi-extensions/canvas-goal-capture.js +1 -0
- package/dist/pi-extensions/canvas-inbox-watcher.d.ts +26 -0
- package/dist/pi-extensions/canvas-inbox-watcher.js +2 -0
- package/dist/pi-extensions/canvas-passive-context.d.ts +38 -0
- package/dist/pi-extensions/canvas-passive-context.js +14 -0
- package/dist/pi-extensions/canvas-preview-result.d.ts +22 -0
- package/dist/pi-extensions/canvas-preview-result.js +4 -0
- package/dist/pi-extensions/canvas-prompt-scrub.d.ts +13 -0
- package/dist/pi-extensions/canvas-prompt-scrub.js +2 -0
- package/dist/pi-extensions/canvas-recap.d.ts +54 -0
- package/dist/pi-extensions/canvas-recap.js +11 -0
- package/dist/pi-extensions/canvas-review-boundary.d.ts +42 -0
- package/dist/pi-extensions/canvas-review-boundary.js +3 -0
- package/dist/pi-extensions/canvas-stamp.d.ts +14 -0
- package/dist/pi-extensions/canvas-stamp.js +2 -0
- package/dist/pi-extensions/canvas-stophook.d.ts +48 -0
- package/dist/pi-extensions/canvas-stophook.js +1 -0
- package/dist/pi-extensions/canvas-structured-output.d.ts +49 -0
- package/dist/pi-extensions/canvas-structured-output.js +19 -0
- package/dist/pi-extensions/canvas-tool-guide.d.ts +14 -0
- package/dist/pi-extensions/canvas-tool-guide.js +9 -0
- package/dist/pi-extensions/envelope-merge.d.ts +13 -0
- package/dist/pi-extensions/envelope-merge.js +8 -0
- package/dist/pi-extensions/system-prompt-entry.d.ts +15 -0
- package/dist/pi-extensions/system-prompt-entry.js +1 -0
- package/dist/prompts/review.d.ts +2 -0
- package/dist/prompts/review.js +110 -0
- package/dist/shared/crtr-version.d.ts +2 -0
- package/dist/shared/crtr-version.js +1 -0
- package/dist/shared/env.d.ts +116 -0
- package/dist/shared/env.js +2 -0
- package/dist/shared/generated-context.d.ts +83 -0
- package/dist/shared/generated-context.js +8 -0
- package/dist/shared/inbox-entry-body.d.ts +22 -0
- package/dist/shared/inbox-entry-body.js +10 -0
- package/dist/shared/inline-ref-grammar.d.ts +53 -0
- package/dist/shared/inline-ref-grammar.js +1 -0
- package/dist/shared/inline-ref-guidance.d.ts +8 -0
- package/dist/shared/inline-ref-guidance.js +2 -0
- package/dist/shared/predicates.d.ts +2 -0
- package/dist/shared/predicates.js +1 -0
- package/dist/shared/shell-quote.d.ts +3 -0
- package/dist/shared/shell-quote.js +1 -0
- package/dist/shared/strip-cd-prefix.d.ts +1 -0
- package/dist/shared/strip-cd-prefix.js +1 -0
- package/dist/shared/tool-groups.d.ts +26 -0
- package/dist/shared/tool-groups.js +1 -0
- package/dist/shared/working-activity.d.ts +9 -0
- package/dist/shared/working-activity.js +1 -0
- package/dist/suppress-experimental-warnings.d.ts +1 -0
- package/dist/suppress-experimental-warnings.js +1 -0
- package/dist/types.d.ts +562 -0
- package/dist/types.js +1 -0
- package/docs/cli/README.md +17 -0
- package/docs/cli/canvas-and-dashboard.md +56 -0
- package/docs/cli/documents-and-preferences.md +52 -0
- package/docs/cli/first-session.md +76 -0
- package/docs/cli/human-inbox.md +34 -0
- package/docs/cli/official-marketplace.md +75 -0
- package/docs/cli/the-viewer.md +80 -0
- package/docs/concepts/README.md +17 -0
- package/docs/concepts/documents.md +52 -0
- package/docs/concepts/lifecycle-and-wakes.md +26 -0
- package/docs/concepts/nodes-and-the-canvas.md +29 -0
- package/docs/concepts/profiles-kinds-and-modes.md +31 -0
- package/docs/concepts/scopes-and-trust.md +39 -0
- package/docs/concepts/why-a-daemon.md +29 -0
- package/docs/plugin/README.md +20 -0
- package/docs/plugin/bundles-and-memory.md +28 -0
- package/docs/plugin/commands.md +22 -0
- package/docs/plugin/deploying.md +34 -0
- package/docs/plugin/errors.md +39 -0
- package/docs/plugin/getting-started.md +23 -0
- package/docs/plugin/output.md +51 -0
- package/docs/plugin/parameters.md +29 -0
- package/docs/public-api.md +75 -0
- package/docs/release-local.md +8 -0
- package/docs/sdk/README.md +90 -0
- package/docs/sdk/bash.md +39 -0
- package/docs/sdk/client.md +297 -0
- package/docs/sdk/docker.md +68 -0
- package/docs/sdk/error-envelope.md +36 -0
- package/docs/sdk/errors.md +111 -0
- package/docs/sdk/files.md +49 -0
- package/docs/sdk/getting-started.md +224 -0
- package/docs/sdk/guides/README.md +19 -0
- package/docs/sdk/guides/apps-on-crouter-cloud.md +115 -0
- package/docs/sdk/guides/apps-with-many-users.md +59 -0
- package/docs/sdk/guides/event-driven-assistant.md +24 -0
- package/docs/sdk/guides/fan-out-pipeline.md +24 -0
- package/docs/sdk/guides/human-approval.md +24 -0
- package/docs/sdk/guides/typed-extraction.md +24 -0
- package/docs/sdk/memory.md +47 -0
- package/docs/sdk/nodes.md +194 -0
- package/docs/sdk/release-notes.md +207 -0
- package/docs/sdk/resources.md +99 -0
- package/docs/sdk/streaming.md +216 -0
- package/docs/sdk/testing.md +163 -0
- package/package.json +158 -4
- package/packages/crouter-identity/dist/index.d.ts +107 -0
- package/packages/crouter-identity/dist/index.js +226 -0
- package/packages/crouter-identity/package.json +33 -0
- package/runtime.lock.json +13864 -0
- package/scripts/build-native-linux.mjs +35 -0
- package/scripts/ensure-native-linux.mjs +72 -0
- package/scripts/install-runtime.mjs +614 -0
- package/scripts/lib/isolation-env.mjs +48 -0
- package/scripts/lib/pack-args.mjs +19 -0
- package/scripts/lib/runtime-deps-key.mjs +50 -0
- package/scripts/lib/update-target.mjs +78 -0
- package/scripts/pack-minify.mjs +114 -0
- package/scripts/patch-pi-tree-root-ordering.mjs +57 -0
- package/scripts/postinstall.mjs +55 -0
- package/scripts/runtime-lock.mjs +26 -0
- package/scripts/runtime-smoke.mjs +54 -0
- package/scripts/self-update.mjs +45 -0
- package/src/native/linux/addon.c +255 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var b=Object.defineProperty;var s=(t,e)=>b(t,"name",{value:e,configurable:!0});import{prepared as d}from"../sqlite-statements.js";import{CrtrError as h,notFound as T}from"../errors.js";import{ExitCode as L}from"../../types.js";import{newNodeId as y}from"../runtime/nodes.js";import{kindOf as x}from"./kinds/registry.js";import{canRead as N}from"./access.js";import{bodyOf as A}from"./bodies.js";const _=new Set(["person","app","repo","profile"]);function O(t){return t||null}s(O,"rowFrom");function I(t,e){return O(d(t,"SELECT * FROM objects WHERE id = ?").get(e))}s(I,"getById");function P(t,e){return O(d(t,"SELECT * FROM objects WHERE rowid = ?").get(e))}s(P,"getByRowid");function D(t,e){return x(t,e.type),d(t,`INSERT INTO objects (id, type, kind, owner, privacy, name, preview, created_at)
|
|
2
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?) RETURNING *`).get(e.id??y(),e.type,e.kind,e.owner,e.privacy,e.name,e.preview,new Date().toISOString())}s(D,"createObject");function S(t,e,o,i,n,r){if(!_.has(e))throw new Error(`ensureOwner: ${e} is not an owner type`);const p=d(t,`SELECT o.* FROM identities i JOIN objects o ON o.rowid = i.object
|
|
3
|
+
WHERE i.scheme = ? AND i.external_id = ?`).get(o,i);if(p)return p;const E=d(t,`SELECT o.id, o.type, i.scheme, i.external_id FROM objects o
|
|
4
|
+
LEFT JOIN identities i ON i.object = o.rowid
|
|
5
|
+
WHERE o.name = ? AND o.type = ?`).get(n,e);if(E)throw new h("conflict",`handle "${n}" is held by ${E.type} ${E.id} (${E.scheme}:${E.external_id}); cannot give it to ${e} ${o}:${i}`,L.GENERAL,{handle:n,holder:E.id});const a=D(t,{type:e,kind:null,owner:e==="profile"?r?.rowid??null:null,privacy:"public",name:n,preview:""});return d(t,"INSERT INTO identities (object, scheme, external_id) VALUES (?, ?, ?)").run(a.rowid,o,i),a}s(S,"ensureOwner");function J(t,e,o){const i=d(t,`SELECT o.* FROM identities i JOIN objects o ON o.rowid = i.object
|
|
6
|
+
WHERE i.scheme = 'profile' AND i.external_id = ? AND o.type = 'profile' AND o.deleted_at IS NULL`).get(e),n=d(t,`SELECT o.id FROM objects o
|
|
7
|
+
WHERE o.name = ? AND o.type = 'profile' AND o.deleted_at IS NULL AND o.rowid <> ?`).get(o,i?i.rowid:-1);if(n)throw new h("conflict",`handle "${o}" is already held by profile object ${n.id}; cannot rename profile ${e} to it`,L.GENERAL,{handle:o,holder:n.id});if(!i)return!1;const r=i;return r.name===o?!1:(g(t,r,o),!0)}s(J,"renameProfileObject");function B(t,e){if(e==="user:local")return S(t,"person","local-user",e,"user");if(/^app:[a-z0-9][a-z0-9._-]*$/.test(e))return S(t,"app","app",e,e.slice(4));throw new Error(`node grantee ${JSON.stringify(e)} is neither app:<name> nor user:local`)}s(B,"ownerForGrantee");function G(t,e,o){return O(d(t,"SELECT * FROM objects WHERE (type = 'document' OR instr(type, '.') > 0) AND owner = ? AND name = ? AND deleted_at IS NULL").get(e,o))}s(G,"liveDocumentNamed");function K(t,e){const o=I(t,e);if(!o||o.type!=="node")throw T(`no node object ${e}`);return o}s(K,"nodeObject");function g(t,e,o){d(t,"UPDATE objects SET name = ? WHERE rowid = ?").run(o,e.rowid)}s(g,"setObjectName");function Y(t,e,o){d(t,"UPDATE objects SET kind = ? WHERE rowid = ?").run(o,e.rowid)}s(Y,"setObjectKind");function z(t,e,o,i={}){const n=["rowid > ?"],r=[i.after_rowid??0];return o.type!==void 0&&(n.push("type = ?"),r.push(o.type)),o.kind!==void 0&&(n.push("kind = ?"),r.push(o.kind)),o.owner!==void 0&&(n.push("owner = ?"),r.push(o.owner.rowid)),o.privacy!==void 0&&(n.push("privacy = ?"),r.push(o.privacy)),o.name!==void 0&&(n.push("name = ?"),r.push(o.name)),n.push(o.deleted?"deleted_at IS NOT NULL":"deleted_at IS NULL"),C(t,e,`SELECT * FROM objects WHERE ${n.join(" AND ")}`,r,Math.min(i.limit??100,100))}s(z,"listObjects");function V(t,e,o){const n=[],r=`%${o.text.replace(/[\\%_]/g,c=>`\\${c}`)}%`;if(!o.grep){const c=d(t,`SELECT o.*, d.summary AS _summary FROM objects o LEFT JOIN documents d ON d.object = o.rowid
|
|
8
|
+
WHERE o.deleted_at IS NULL AND (o.name LIKE ?1 ESCAPE '\\' OR o.preview LIKE ?1 ESCAPE '\\' OR d.summary LIKE ?1 ESCAPE '\\')
|
|
9
|
+
ORDER BY o.rowid`).all(r),u=o.text.toLowerCase();for(const l of c){const{_summary:f,...w}=l,m=w;if(!N(t,e,m))continue;const R=m.name.toLowerCase().includes(u)?"name":m.preview.toLowerCase().includes(u)?"preview":"summary";if(n.push({object:m,field:R,...R==="summary"?{text:String(f)}:{}}),n.length>=100)return n}}if(!o.body&&!o.grep)return n;const p=new Set(n.map(c=>c.object.rowid)),E=o.grep?(c=>u=>c.test(u))(new RegExp(o.text)):c=>c.includes(o.text),a=d(t,"SELECT * FROM objects WHERE type = 'document' AND deleted_at IS NULL ORDER BY rowid").all(),j=d(t,`SELECT r.body_hash, d.source_path FROM revisions r JOIN documents d ON d.object = r.document WHERE r.document = ?
|
|
10
|
+
AND NOT EXISTS (SELECT 1 FROM revision_parents p WHERE p.parent = r.rowid)`);for(const c of a)if(!(p.has(c.rowid)||!N(t,e,c)))for(const{body_hash:u,source_path:l}of j.all(c.rowid)){const f=A(u,l).split(`
|
|
11
|
+
`),w=f.findIndex(E);if(!(w<0)){if(n.push({object:c,field:"body",line:w+1,text:f[w]}),n.length>=100)return n;break}}return n}s(V,"searchObjects");function C(t,e,o,i,n){const r=[],p=t.prepare(`${o} ORDER BY rowid LIMIT ${n*4}`);for(;;){const E=p.all(...i);for(const a of E)if(N(t,e,a)&&r.push(a),r.length===n)return r;if(E.length<n*4)return r;i[0]=E[E.length-1].rowid}}s(C,"readablePages");export{D as createObject,S as ensureOwner,I as getById,P as getByRowid,z as listObjects,G as liveDocumentNamed,K as nodeObject,B as ownerForGrantee,J as renameProfileObject,V as searchObjects,Y as setObjectKind,g as setObjectName};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** Package documents: builtin (`crtr`) and plugin documents stay files in their package; this
|
|
2
|
+
* converges their `objects`/`documents` rows, their one revision and their rules onto those
|
|
3
|
+
* files (contract §6.6). Bodies are read from `documents.source_path`, never the body store.
|
|
4
|
+
* A plugin is an app: its documents belong to the app `<plugin>` (identity `app:<plugin>`,
|
|
5
|
+
* the one `ownerForGrantee` gives), and a document with a `source_path` is shipped. */
|
|
6
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
7
|
+
export interface PackageSource {
|
|
8
|
+
plugin: string;
|
|
9
|
+
dir: string;
|
|
10
|
+
}
|
|
11
|
+
/** The builtin corpus (app `crtr`), then every enabled user-scope plugin's `memory/` folder. */
|
|
12
|
+
export declare function packageSources(): PackageSource[];
|
|
13
|
+
export interface PackageReconcileReport {
|
|
14
|
+
created: number;
|
|
15
|
+
updated: number;
|
|
16
|
+
deleted: number;
|
|
17
|
+
/** plugins provided by more than one package; only the first is reconciled */
|
|
18
|
+
conflicts: Array<{
|
|
19
|
+
plugin: string;
|
|
20
|
+
message: string;
|
|
21
|
+
}>;
|
|
22
|
+
invalid: Array<{
|
|
23
|
+
path: string;
|
|
24
|
+
error: string;
|
|
25
|
+
}>;
|
|
26
|
+
}
|
|
27
|
+
/** Converge every package's documents onto its files. Run inside the caller's transaction.
|
|
28
|
+
* Idempotent: a second run over unchanged files changes no document, revision or rule (it re-derives
|
|
29
|
+
* each document's link edges, which land the same). A changed body replaces the
|
|
30
|
+
* document's single revision and publishes `edited`; a vanished file (or plugin) marks its
|
|
31
|
+
* document deleted and publishes `deleted`. */
|
|
32
|
+
export declare function reconcilePackageDocuments(db: DatabaseSync, sources?: readonly PackageSource[]): PackageReconcileReport;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
var D=Object.defineProperty;var a=(e,s)=>D(e,"name",{value:s,configurable:!0});import{prepared as m}from"../sqlite-statements.js";import{createHash as _,randomUUID as v}from"node:crypto";import{CrtrError as N}from"../errors.js";import{listInstalledPlugins as I}from"../resolver.js";import{builtinMemoryRoot as A,pluginMemoryDir as L}from"../scope.js";import{documentFields as k}from"../../migrations/004-canvas-documents/fields.js";import{applyDocumentFields as j,deleteDocument as T,documentRecord as R,heads as x,importDocument as U,linksIn as F,moveDocument as b}from"./documents.js";import{isShipped as J}from"./access.js";import{setLinks as C}from"./edges.js";import{publish as H}from"./events.js";import{resolveName as W}from"./names.js";import{packageFiles as M}from"./package-files.js";import{ensureOwner as P,getByRowid as E,setObjectKind as K}from"./objects.js";import{checkoutsForCwd as $}from"./repo-sync/repos.js";import{rulesOf as B}from"./rules.js";function q(){return[{plugin:"crtr",dir:A()},...I("user").filter(e=>e.enabled).map(e=>({plugin:e.name,dir:L(e)}))]}a(q,"packageSources");const z=a(e=>_("sha256").update(e,"utf8").digest("hex"),"sha256");function pe(e,s=q()){const o={created:0,updated:0,deleted:0,conflicts:[],invalid:[]},c=a(t=>$(e,t),"reposFn"),p=new Set,n=[],r=new Set;for(const t of s){let i;try{if(r.has(t.plugin))throw new N("conflict",`plugin "${t.plugin}" is already provided by another package`);r.add(t.plugin),i=P(e,"app","app",`app:${t.plugin}`,t.plugin)}catch(u){if(!(u instanceof N)||u.code!=="conflict")throw u;o.conflicts.push({plugin:t.plugin,message:u.message});continue}p.add(i.rowid);const{files:d,invalid:w}=M(t.dir);o.invalid.push(...w);const g=new Set;for(const u of d){const h=Q(e,i,u,o,c);g.add(h),n.push({owner:i,rowid:h,body:u.body})}O(e,i,g,o,c)}const f=m(e,`SELECT DISTINCT o.owner AS rowid FROM objects o JOIN documents d ON d.object = o.rowid
|
|
2
|
+
WHERE o.type = 'document' AND o.deleted_at IS NULL AND d.source_path IS NOT NULL`).all();for(const{rowid:t}of f)p.has(t)||O(e,E(e,t),new Set,o,c);for(const{owner:t,rowid:i,body:d}of n)G(e,t,E(e,i),d);return o}a(pe,"reconcilePackageDocuments");function G(e,s,o,c){if(o.deleted_at!==null)return;const p={class:"app",app:s,scopes:[]},n=[];for(const t of F(c)){const i=W(e,p,t);"object"in i&&i.object.rowid!==o.rowid&&J(e,i.object)&&n.push({written_as:t,dst:i.object})}const r=a(t=>JSON.stringify(t.map(i=>[i.dst,i.written_as]).sort()),"key"),f=m(e,"SELECT dst, written_as FROM edges WHERE type = 'links-to' AND src = ?").all(o.rowid);r(f)!==r(n.map(t=>({dst:t.dst.rowid,written_as:t.written_as})))&&C(e,o,n)}a(G,"deriveLinks");function Q(e,s,o,c,p){const n=k(o.frontmatter,o.body,{missingPrivacy:"public"}),r={preview:n.preview.trim()===""?o.name:n.preview,summary:n.summary,whyItExists:n.whyItExists,unlisted:n.unlisted,rules:n.rules,lintIgnore:Array.isArray(n.lintIgnore)?n.lintIgnore.filter(l=>typeof l=="string"):null,extensions:n.extensions!==null&&typeof n.extensions=="object"&&!Array.isArray(n.extensions)?n.extensions:null},f=z(o.body);let t=m(e,`SELECT o.* FROM objects o JOIN documents d ON d.object = o.rowid
|
|
3
|
+
WHERE o.type = 'document' AND o.owner = ? AND o.deleted_at IS NULL AND d.source_path = ?`).get(s.rowid,o.path);if(t||(t=m(e,`SELECT o.* FROM objects o JOIN documents d ON d.object = o.rowid
|
|
4
|
+
WHERE o.type = 'document' AND o.owner = ? AND o.deleted_at IS NULL AND o.name = ? AND d.source_path IS NOT NULL`).get(s.rowid,o.name),t&&m(e,"UPDATE documents SET source_path = ? WHERE object = ?").run(o.path,t.rowid)),!t){const l=U(e,{owner:s,name:o.name,kind:n.kind,privacy:"public",...r,revisions:[{body_hash:f,author:s,rationale:null,created_at:new Date().toISOString()}]});return m(e,"UPDATE documents SET source_path = ? WHERE object = ?").run(o.path,l.rowid),c.created+=1,l.rowid}const i=t.name!==o.name||t.kind!==n.kind;t.name!==o.name&&(t=b(e,null,t,{name:o.name})),t.kind!==n.kind&&(K(e,t,n.kind),t=E(e,t.rowid));const d=R(e,t),[w]=x(e,t),g=w?.body_hash!==f,u=t.preview!==r.preview||d.summary!==r.summary||d.why_it_exists!==r.whyItExists||d.unlisted!==r.unlisted||JSON.stringify(d.lint_ignore)!==JSON.stringify(r.lintIgnore)||JSON.stringify(d.extensions)!==JSON.stringify(r.extensions)||JSON.stringify(B(e,t).map(S))!==JSON.stringify(r.rules.map(S));if(!g&&!u&&!i)return t.rowid;const h=j(e,t,r);if(g&&w){const l=v(),y=w.number+1;m(e,"UPDATE revisions SET rev_id = ?, number = ?, body_hash = ?, created_at = ? WHERE rowid = ?").run(l,y,f,new Date().toISOString(),w.rowid),m(e,"UPDATE documents SET heads_key = ?, revision = ? WHERE object = ?").run(l,y,h.rowid),H(e,{event:"edited",object:h,actor:s,pointer:l,attrs:{revision:y,from_revision:w.number,rationale:"package file changed"}},p)}return c.updated+=1,h.rowid}a(Q,"convergeFile");function S(e){return[e.on,e.deliver,e.match??null,e.matchFrontmatter??null,e.if??null]}a(S,"ruleKey");function O(e,s,o,c,p){const n=m(e,`SELECT o.* FROM objects o JOIN documents d ON d.object = o.rowid
|
|
5
|
+
WHERE o.type = 'document' AND o.owner = ? AND o.deleted_at IS NULL AND d.source_path IS NOT NULL`).all(s.rowid);for(const r of n)o.has(r.rowid)||(T(e,null,r,p),c.deleted+=1)}a(O,"deleteMissing");export{q as packageSources,pe as reconcilePackageDocuments};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** One markdown file of a package's `memory/` folder. */
|
|
2
|
+
export interface PackageFile {
|
|
3
|
+
/** owner-local document name; a package root `INDEX.md` is `index` */
|
|
4
|
+
name: string;
|
|
5
|
+
path: string;
|
|
6
|
+
frontmatter: Record<string, unknown> | null;
|
|
7
|
+
body: string;
|
|
8
|
+
}
|
|
9
|
+
/** The documents of one package folder, sorted by name. A file whose frontmatter does not parse,
|
|
10
|
+
* or whose name another file already holds, is returned in `invalid` and is not a document. */
|
|
11
|
+
export declare function packageFiles(dir: string): {
|
|
12
|
+
files: PackageFile[];
|
|
13
|
+
invalid: Array<{
|
|
14
|
+
path: string;
|
|
15
|
+
error: string;
|
|
16
|
+
}>;
|
|
17
|
+
};
|
|
18
|
+
/** Strict frontmatter check a plugin package's documents must pass before the
|
|
19
|
+
* package installs. */
|
|
20
|
+
export declare function lintPackageFrontmatter(fm: Record<string, unknown> | null): string | null;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var b=Object.defineProperty;var u=(e,r)=>b(e,"name",{value:r,configurable:!0});import{readFileSync as v}from"node:fs";import{relative as $,sep as S}from"node:path";import{parseFrontmatterGeneric as w}from"../frontmatter.js";import{pathExists as k,walkFiles as x}from"../fs-utils.js";import{explicitLocalName as N,isDocKind as A,localNameFromPath as h,representationForPath as E}from"../substrate/schema.js";function W(e){const r=[];if(!k(e))return{files:[],invalid:r};const n=new Map;for(const o of x(e,i=>i.endsWith(".md")&&i!=="SKILL.md",i=>i===".crouter"||i.startsWith(".")).sort()){const i=$(e,o).split(S).join("/");let s;try{s=w(v(o,"utf8"))}catch(f){r.push({path:o,error:`invalid frontmatter: ${(f instanceof Error?f.message:String(f)).split(`
|
|
2
|
+
`)[0]}`});continue}const d=h(i)===""?"":N(s.data)??h(i),a=d===""?"index":d,l={name:a,path:o,frontmatter:s.data,body:s.body,index:E(i)==="directory-index"},c=n.get(a);if(c&&(c.index||!l.index)){r.push({path:o,error:`name ${a} is already held by ${c.path}`});continue}c&&r.push({path:c.path,error:`name ${a} is already held by ${o}`}),n.set(a,l)}return{files:[...n.values()].map(({index:o,...i})=>i).sort((o,i)=>o.name.localeCompare(i.name)),invalid:r}}u(W,"packageFiles");const m=["public","friends","private"],y=["boot","workspace-open","read","memory-read","command","pre-command"],p=["name","preview","content"],j=["system-prompt-visibility","file-read-visibility","applies-to","read-when"],O=["on","match","match-frontmatter","gate","at"],g=["length","broad-memory-read","orphan"];function J(e){if(e===void 0)return null;if(!Array.isArray(e))return`invalid surfaces: ${JSON.stringify(e)} (expected a list of {on, at, match?, match-frontmatter?, gate?} entries)`;for(const r of e){if(r===null||typeof r!="object"||Array.isArray(r))return`invalid surfaces entry: ${JSON.stringify(r)} (expected an {on, at, match?, match-frontmatter?, gate?} object)`;const n=r;for(const a of Object.keys(n))if(!O.includes(a))return`invalid surfaces entry: unknown key \`${a}\` (an entry carries only on, match, match-frontmatter, gate, at)`;const t=n.on;if(typeof t!="string"||!y.includes(t))return`invalid surfaces entry \`on\`: ${JSON.stringify(t)} (expected ${y.join("|")})`;const o=n.at;if(typeof o!="string"||!p.includes(o))return`invalid surfaces entry \`at\`: ${JSON.stringify(o)} (expected ${p.join("|")})`;let i=!1;if(n.match!==void 0){if(t==="boot"||t==="workspace-open")return`invalid surfaces entry: \`match\` is meaningless on \`${t}\` \u2014 the entry's presence is the match; drop it`;const a=n.match,l=typeof a=="string"?[a]:Array.isArray(a)&&a.every(c=>typeof c=="string")?a:null;if(l===null||l.length===0||l.some(c=>c.trim()===""))return`invalid surfaces entry \`match\`: ${JSON.stringify(a)} (expected a non-empty glob or non-empty glob list)`;i=!0}const s=n["match-frontmatter"];if(s!==void 0){if(t!=="read")return"invalid surfaces entry: `match-frontmatter` is a `read`-event predicate only";if(s===null||typeof s!="object"||Array.isArray(s))return`invalid surfaces entry \`match-frontmatter\`: ${JSON.stringify(s)} (expected a field\u2192matcher object)`}if((t==="read"||t==="memory-read"||t==="command"||t==="pre-command")&&!i&&s===void 0)return`invalid surfaces entry: a \`${t}\` entry requires \`match\`${t==="read"?" or `match-frontmatter`":""}`;const d=n.gate;if(d!==void 0&&(d===null||typeof d!="object"||Array.isArray(d)))return`invalid surfaces entry \`gate\`: ${JSON.stringify(d)} (expected a field\u2192matcher object)`}return null}u(J,"lintPackageSurfaces");function C(e){if(e===null)return"missing frontmatter: a package document requires `kind: knowledge|preference`";if(!A(e.kind))return`invalid kind: ${JSON.stringify(e.kind)} (expected knowledge|preference)`;if("when"in e||"why"in e)return'retired `when`/`why` keys: merge them into one `when-and-why-to-read` line \u2014 "When <circumstance>, this <kind> should be read because <broader downstream payoff>." WHY is the benefit unlocked by reading, not the document summary, rule, or obedience rationale.';if(typeof e["when-and-why-to-read"]!="string"||e["when-and-why-to-read"].trim()==="")return'missing `when-and-why-to-read`: one routing line \u2014 "When <circumstance>, this <kind> should be read because <broader downstream payoff>." WHY is the benefit unlocked by reading, not the document summary, rule, or obedience rationale.';for(const n of j)if(n in e)return`retired \`${n}\` key: a package document no longer carries it; delete it and, to load the document on its own, route it with a \`surfaces\` list of {on: ${y.join("|")}, at: ${p.join("|")}, match?, match-frontmatter?, gate?} entries (omit \`surfaces\` for a package document delivered by no rule \u2014 read only when pointed at, listed, or searched)`;if("privacy"in e&&!m.includes(e.privacy))return`invalid privacy: ${JSON.stringify(e.privacy)} (expected ${m.join("|")})`;if(e.unlisted!==void 0&&typeof e.unlisted!="boolean")return`invalid unlisted: ${JSON.stringify(e.unlisted)} (expected a boolean)`;const r=J(e.surfaces);if(r!==null)return r;if(e.gate!==void 0&&(e.gate===null||typeof e.gate!="object"||Array.isArray(e.gate)))return`invalid gate: ${JSON.stringify(e.gate)} (expected a field\u2192matcher object)`;if(e.slash!==void 0&&typeof e.slash!="boolean")return`invalid slash: ${JSON.stringify(e.slash)} (expected a boolean)`;if(e.rationale!==void 0&&typeof e.rationale!="string")return`invalid rationale: ${JSON.stringify(e.rationale)} (expected a string)`;if(e["lint-ignore"]!==void 0){const n=Array.isArray(e["lint-ignore"])?e["lint-ignore"]:[e["lint-ignore"]];if(n.length===0||!n.every(t=>typeof t=="string"&&g.includes(t)))return`invalid lint-ignore: ${JSON.stringify(e["lint-ignore"])} (suppressible rules: ${g.map(t=>`\`${t}\``).join(", ")})`}return null}u(C,"lintPackageFrontmatter");export{C as lintPackageFrontmatter,W as packageFiles};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
2
|
+
import type { RequestPrincipal } from '../../daemon/api/router.js';
|
|
3
|
+
import { type ActiveGrant } from '../grants/mirror.js';
|
|
4
|
+
import type { Checkout, ObjectRow, Reader } from './types.js';
|
|
5
|
+
/** The repos enclosing a directory, with their checkout roots, nearest first. */
|
|
6
|
+
export type ReposFn = (cwd: string) => Checkout[];
|
|
7
|
+
export declare function readerFor(db: DatabaseSync, principal: RequestPrincipal, reposFn: ReposFn): Exclude<Reader, {
|
|
8
|
+
class: 'object';
|
|
9
|
+
}>;
|
|
10
|
+
export declare function readerForNode(db: DatabaseSync, nodeId: string, reposFn: ReposFn, lookups?: ReaderLookups, allowRevoked?: boolean): Extract<Reader, {
|
|
11
|
+
class: 'node';
|
|
12
|
+
}>;
|
|
13
|
+
/** A receiving object reads using its owner's app grant, not its registering caller's rights. */
|
|
14
|
+
export declare function readerForObject(db: DatabaseSync, watcher: ObjectRow, reposFn?: ReposFn, lookups?: ReaderLookups): Extract<Reader, {
|
|
15
|
+
class: 'node' | 'object';
|
|
16
|
+
}>;
|
|
17
|
+
/** What building a node reader looks up besides the node's own row. `liveLookups` reads each
|
|
18
|
+
* one per call; `publishLookups` memoizes them for one publish inside its transaction, so the
|
|
19
|
+
* readers of one event share a single config read and one lookup per grant, owner and
|
|
20
|
+
* profile. Never keep a memoized one past that transaction. */
|
|
21
|
+
export interface ReaderLookups {
|
|
22
|
+
grantById(grantId: string): ActiveGrant | null;
|
|
23
|
+
grantFor(app: string, sub: string): ActiveGrant | null;
|
|
24
|
+
terminalHasIssuer(): boolean;
|
|
25
|
+
object(rowid: number): ObjectRow | null;
|
|
26
|
+
profile(profileId: string, app: ObjectRow): ObjectRow;
|
|
27
|
+
}
|
|
28
|
+
export declare function liveLookups(db: DatabaseSync): ReaderLookups;
|
|
29
|
+
export declare function publishLookups(db: DatabaseSync): ReaderLookups;
|
|
30
|
+
export declare function profileObject(db: DatabaseSync, profileId: string, app: ObjectRow): ObjectRow;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var h=Object.defineProperty;var s=(o,e)=>h(o,"name",{value:e,configurable:!0});import{prepared as u}from"../sqlite-statements.js";import{covers as H,parseScope as b}from"@north-light/identity";import{activeGrant as N,grantFor as x}from"../grants/mirror.js";import{prepared as j}from"../canvas/db.js";import{readConfig as y}from"../config.js";import{SCOPE_VOCABULARY as O}from"../scopes.js";import{loadExactProfileManifest as C}from"../profiles/manifest.js";import{ensureOwner as w,getByRowid as L,nodeObject as M}from"./objects.js";function R(o){return{repos:o.map(e=>e.repo),checkouts:o}}s(R,"inRepos");function V(o,e,a){if(e.class==="anonymous")throw new Error("a publish token cannot read as a principal");if(e.class==="person")return{class:"person",person:F(o)};if(e.class==="app")return{class:"app",app:v(o,e.app),scopes:e.scopes};const n=E(o),r=M(o,e.node),t=r.owner===null?null:n.object(r.owner);if(!t)throw new Error(`node ${e.node} has no owner`);const i=u(o,"SELECT cwd, profile_id FROM nodes WHERE node_id = ?").get(e.node);return{class:"node",node:r,app:t,scopes:_(e.app,e.sub,e.grant,e.scopes,n),cwd:i.cwd,...R(a(i.cwd)),profile:i.profile_id===null?null:n.profile(i.profile_id,t)}}s(V,"readerFor");function $(o,e,a,n=E(o),r=!1){const t=j(o,"SELECT o.* FROM objects o WHERE o.id = ? AND o.type = 'node'").get(e),i=j(o,`SELECT (SELECT external_id FROM identities WHERE object = ?) AS grantee,
|
|
2
|
+
sub, grant_id, scopes_json, cwd, profile_id FROM nodes WHERE node_id = ?`).get(t?.owner??null,e);if(!t||!i)throw new Error(`no node ${e}`);const{grantee:l,sub:p,grant_id:f,scopes_json:c,cwd:m,profile_id:g}=i,d=t.owner===null?null:n.object(t.owner);if(!d)throw new Error(`node ${e} has no owner`);const S=c===null?null:JSON.parse(c);return{class:"node",node:t,app:d,scopes:_(l,p??"",f,S,n,r),cwd:m,...R(a(m)),profile:g===null?null:n.profile(g,d)}}s($,"readerForNode");function Y(o,e,a=()=>[],n=E(o)){if(e.type==="node")return $(o,e.id,a,n,!0);const r=e.owner===null?null:n.object(e.owner);if(!r)throw new Error(`watcher ${e.id} has no owner`);const i=(r.type==="app"?r:r.type==="profile"&&r.owner!==null?n.object(r.owner):null)??u(o,"SELECT o.* FROM identities i JOIN objects o ON o.rowid = i.object WHERE i.external_id = 'app:terminal' AND i.scheme = 'app'").get()??u(o,"SELECT * FROM objects WHERE type = 'person' AND name = 'user'").get();if(!i)throw new Error("no terminal app or person object");const l=u(o,"SELECT external_id FROM identities WHERE object = ? AND scheme = 'app'").get(i.rowid)?.external_id??"app:terminal",p=u(o,"SELECT resolved_scopes_json FROM grants WHERE grantee = ? AND status = 'active'").all(l),f=r.type==="person"?null:p.length===0?l==="app:terminal"&&!n.terminalHasIssuer()?O:null:p.length===1?JSON.parse(p[0].resolved_scopes_json).filter(c=>c.mode==="always").map(c=>b(c.scope)):null;return{class:"object",object:e,node:e,owner:r,app:i,scopes:f,repos:r.type==="repo"?[r]:[]}}s(Y,"readerForObject");function E(o){return{grantById:N,grantFor:x,terminalHasIssuer:s(()=>!!y("user").runtime?.issuer,"terminalHasIssuer"),object:s(e=>L(o,e),"object"),profile:s((e,a)=>A(o,e,a),"profile")}}s(E,"liveLookups");function q(o){const e=E(o),a=new Map,n=s((r,t)=>(a.has(r)||a.set(r,t()),a.get(r)),"memo");return{grantById:s(r=>n(`g\0${r}`,()=>e.grantById(r)),"grantById"),grantFor:s((r,t)=>n(`a\0${r}\0${t}`,()=>e.grantFor(r,t)),"grantFor"),terminalHasIssuer:s(()=>n("issuer",()=>e.terminalHasIssuer()),"terminalHasIssuer"),object:s(r=>n(`o\0${r}`,()=>e.object(r)),"object"),profile:s((r,t)=>n(`p\0${r}\0${t.rowid}`,()=>e.profile(r,t)),"profile")}}s(q,"publishLookups");function _(o,e,a,n,r,t=!1){const i=a?r.grantById(a):r.grantFor(o,e),l=i&&i.grantee===o?i.resolved:o==="app:terminal"&&!r.terminalHasIssuer()?O:null;if(l===null){if(t)return null;throw new Error(`the grant of ${o} is not active`)}return n===null?l:n.filter(p=>l.some(f=>H(f,p)))}s(_,"nodeScopes");function F(o){return w(o,"person","local-user","user:local","user")}s(F,"personObject");function v(o,e){return e==="user:local"?F(o):w(o,"app","app",e,e.replace(/^app:/,""))}s(v,"appObject");function A(o,e,a){return u(o,`SELECT o.* FROM identities i JOIN objects o ON o.rowid = i.object
|
|
3
|
+
WHERE i.scheme = 'profile' AND i.external_id = ?`).get(e)??w(o,"profile","profile",e,C(e).manifest.name,a)}s(A,"profileObject");export{E as liveLookups,A as profileObject,q as publishLookups,V as readerFor,$ as readerForNode,Y as readerForObject};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as dns from 'node:dns/promises';
|
|
2
|
+
import { request } from 'node:https';
|
|
3
|
+
export declare function isPublicReceiverAddress(address: string): boolean;
|
|
4
|
+
export declare function receiverEndpoint(raw: string): URL;
|
|
5
|
+
/** Resolve all answers, not merely the first: a mixed public/private DNS response is unsafe. */
|
|
6
|
+
export declare function resolveReceiverAddress(url: URL, resolve?: typeof dns.lookup, signal?: AbortSignal, isAllowedAddress?: (address: string) => boolean): Promise<{
|
|
7
|
+
address: string;
|
|
8
|
+
family: 4 | 6;
|
|
9
|
+
}>;
|
|
10
|
+
/** The vetted DNS answer is pinned to this one socket; never delegate a second lookup to TLS. */
|
|
11
|
+
export declare function postReceiverUrl(raw: string, body: string, headers: Record<string, string>, timeoutMs: number, resolve?: typeof dns.lookup, send?: typeof request, isAllowedAddress?: (address: string) => boolean): Promise<number>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var x=Object.defineProperty;var i=(r,e)=>x(r,"name",{value:e,configurable:!0});import*as b from"node:dns/promises";import{BlockList as v,isIP as h}from"node:net";import{request as L}from"node:https";const m=new v;for(const[r,e]of[["0.0.0.0",8],["10.0.0.0",8],["100.64.0.0",10],["127.0.0.0",8],["169.254.0.0",16],["172.16.0.0",12],["192.0.0.0",24],["192.0.2.0",24],["192.88.99.0",24],["192.168.0.0",16],["198.18.0.0",15],["198.51.100.0",24],["203.0.113.0",24],["224.0.0.0",4],["240.0.0.0",4]])m.addSubnet(r,e,"ipv4");for(const[r,e]of[["2001::",23],["2001:4:112::",48],["2001:db8::",32],["2002::",16],["3fff::",20]])m.addSubnet(r,e,"ipv6");const w=new v;w.addSubnet("2000::",3,"ipv6");function P(r){const e=h(r);return e===4?!m.check(r,"ipv4"):e===6&&w.check(r,"ipv6")&&!m.check(r,"ipv6")}i(P,"isPublicReceiverAddress");function k(r){let e;try{e=new URL(r)}catch{throw new Error("receiver URL must be an absolute HTTPS URL")}if(e.protocol!=="https:"||!e.hostname||e.username||e.password||e.hash)throw new Error("receiver URL must be HTTPS without credentials or fragment");return e}i(k,"receiverEndpoint");async function E(r,e=b.lookup,n=AbortSignal.timeout(5e3),f=P){const a=r.hostname.replace(/^\[|\]$/g,""),l=h(a),s=l?[{address:a,family:l}]:await Promise.race([e(a,{all:!0,verbatim:!0}),new Promise((d,t)=>{n.aborted?t(n.reason):n.addEventListener("abort",()=>t(n.reason),{once:!0})})]);if(!s.length||s.some(d=>!f(d.address)))throw new Error("receiver URL resolves to a non-public IP address");const c=s[0];return{address:c.address,family:c.family}}i(E,"resolveReceiverAddress");async function T(r,e,n,f,a=b.lookup,l=L,s=P){const c=k(r),d=AbortSignal.timeout(f),t=await E(c,a,d,s);return new Promise((y,R)=>{const u=l(c,{method:"POST",headers:n,agent:!1,signal:d,lookup:i((o,S,p)=>{S.all?p(null,[t]):p(null,t.address,t.family)},"lookup")},o=>{o.resume(),y(o.statusCode??0)});u.on("socket",o=>{o.on("connect",()=>{(!o.remoteAddress||o.remoteAddress!==t.address||!s(o.remoteAddress))&&u.destroy(new Error("receiver socket connected to a non-public or unexpected IP address"))})}),u.on("error",R),u.end(e)})}i(T,"postReceiverUrl");export{P as isPublicReceiverAddress,T as postReceiverUrl,k as receiverEndpoint,E as resolveReceiverAddress};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
2
|
+
import type { ObjectRow, Level, ListenDelivery } from './types.js';
|
|
3
|
+
export interface ReceiverDestination {
|
|
4
|
+
id: string;
|
|
5
|
+
reception: 1 | 2;
|
|
6
|
+
delivery: ListenDelivery;
|
|
7
|
+
}
|
|
8
|
+
export interface ReceivedMessage {
|
|
9
|
+
messageId: string;
|
|
10
|
+
event: string;
|
|
11
|
+
level: Level;
|
|
12
|
+
senderNodeId: string | null;
|
|
13
|
+
elevatesTier: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface Receiver {
|
|
16
|
+
bodyOwner(destinations: readonly ReceiverDestination[]): string | null;
|
|
17
|
+
enqueue(db: DatabaseSync, message: ReceivedMessage, destinations: readonly ReceiverDestination[]): void;
|
|
18
|
+
}
|
|
19
|
+
export type ReceiverName = 'inbox' | 'argv' | 'url' | 'queue';
|
|
20
|
+
/** The receiver is per instance, not per kind. An action's historical argv JSON is unchanged. */
|
|
21
|
+
export declare function receiverForObject(db: DatabaseSync, object: ObjectRow): ReceiverName | undefined;
|
|
22
|
+
export declare const BACKLOG_CAP = 1000;
|
|
23
|
+
export declare function onQueueSignal(objectId: string, cb: () => void): () => void;
|
|
24
|
+
export declare function signalQueue(id: string): void;
|
|
25
|
+
export declare const argvReceiver: Receiver;
|
|
26
|
+
export declare const RECEIVERS: Readonly<Record<ReceiverName, Receiver>>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
var f=Object.defineProperty;var i=(e,t)=>f(e,"name",{value:t,configurable:!0});import{prepared as o}from"../sqlite-statements.js";import{randomBytes as g}from"node:crypto";import{nodeInbox as _}from"./kinds/node.js";function L(e,t){const n=o(e,"SELECT receiver_json FROM custom_objects WHERE object = ?").get(t.rowid);if(!n?.receiver_json)return;const r=JSON.parse(n.receiver_json);if(r==="queue")return"queue";if(r&&typeof r=="object"&&!Array.isArray(r)){if("url"in r)return"url";if("argv"in r)return"argv"}}i(L,"receiverForObject");const E=1e3,a=new Map;function A(e,t){const n=a.get(e)??new Set;return n.add(t),a.set(e,n),()=>{n.delete(t),n.size===0&&a.delete(e)}}i(A,"onQueueSignal");function p(e){setImmediate(()=>{for(const t of a.get(e)??[])t()})}i(p,"signalQueue");function m(e,t){const n=o(e,`SELECT COUNT(*) AS n FROM deliveries WHERE destination_id = ?
|
|
2
|
+
AND state = 'pending' AND canceled_at IS NULL`).get(t).n;if(n<=E)return;const r=o(e,`SELECT delivery_id, message_id FROM deliveries
|
|
3
|
+
WHERE destination_id = ? AND state = 'pending' AND canceled_at IS NULL
|
|
4
|
+
ORDER BY created_at, rowid LIMIT ?`).all(t,n-E);for(const s of r)o(e,"DELETE FROM deliveries WHERE delivery_id = ?").run(s.delivery_id),o(e,"DELETE FROM messages WHERE message_id = ? AND NOT EXISTS (SELECT 1 FROM deliveries WHERE message_id = ?)").run(s.message_id,s.message_id);r.length&&o(e,`UPDATE custom_objects SET dropped = dropped + ? WHERE object =
|
|
5
|
+
(SELECT rowid FROM objects WHERE id = ?)`).run(r.length,t)}i(m,"cap");function c(e,t){return{bodyOwner:i(()=>null,"bodyOwner"),enqueue(n,r,s){const d=Date.now(),l=o(n,`INSERT INTO deliveries
|
|
6
|
+
(delivery_id, message_id, destination_id, urgency, wake, state, next_attempt_at, created_at, updated_at)
|
|
7
|
+
VALUES (?, ?, ?, 'normal', 0, 'pending', ?, ?, ?)`);for(const u of s)l.run(g(16).toString("hex"),r.messageId,u.id,e?d:null,d,d),m(n,u.id),t&&p(u.id)}}}i(c,"pushReceiver");const R=c(!0,!1),N={inbox:_,argv:R,url:c(!0,!1),queue:c(!1,!0)};export{E as BACKLOG_CAP,N as RECEIVERS,R as argvReceiver,A as onQueueSignal,L as receiverForObject,p as signalQueue};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** The canvas side of repo sync: export a repo space's public documents to `refs/crtr/docs`
|
|
2
|
+
* tree files, and import a changed tree back into canvas.db. Export only reads; import only
|
|
3
|
+
* adds revisions (never drops one) and publishes `created`, `edited` and `deleted` with a
|
|
4
|
+
* null actor, since the act happened on another runtime. */
|
|
5
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
6
|
+
import type { ReposFn } from '../reader.js';
|
|
7
|
+
import type { ObjectRow } from '../types.js';
|
|
8
|
+
/**
|
|
9
|
+
* The tree (path → file text) of every public document the repo space owns, deleted ones
|
|
10
|
+
* included. A revision already in `previous` is copied verbatim, so a remote author and the
|
|
11
|
+
* links it was written with survive; a revision made here carries its author's object id, and
|
|
12
|
+
* a head carries the document's current `links-to` edges.
|
|
13
|
+
*/
|
|
14
|
+
export declare function exportRepo(db: DatabaseSync, repo: ObjectRow, previous: Map<string, string> | null): Map<string, string>;
|
|
15
|
+
export interface ImportResult {
|
|
16
|
+
created: number;
|
|
17
|
+
revisions: number;
|
|
18
|
+
deleted: number;
|
|
19
|
+
needsMerge: string[];
|
|
20
|
+
refused: Array<{
|
|
21
|
+
path: string;
|
|
22
|
+
reason: string;
|
|
23
|
+
}>;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Apply the difference between two trees (the one last imported and the new one) to the
|
|
27
|
+
* repo's documents, in one transaction. Per changed file: a file that does not parse, is not
|
|
28
|
+
* public, or names an id held by an object outside this repo is refused and reported; a new
|
|
29
|
+
* document is created with its id; arriving revisions are added (author NULL); changed record
|
|
30
|
+
* fields and a rename are applied; a tombstone or a removed file deletes. Each document
|
|
31
|
+
* publishes once: `created`, `edited` (with `heads` and `needs_merge`) or `deleted`. A
|
|
32
|
+
* document that fails is rolled back alone and reported in `refused`.
|
|
33
|
+
*/
|
|
34
|
+
export declare function importTree(db: DatabaseSync, repo: ObjectRow, before: Map<string, string>, after: Map<string, string>, reposFn?: ReposFn): ImportResult;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var B=Object.defineProperty;var f=(e,t)=>B(e,"name",{value:t,configurable:!0});import{prepared as y}from"../../sqlite-statements.js";import{get as T,put as j}from"../bodies.js";import{setLinks as H}from"../edges.js";import{collectUnlinked as W,deleteDocument as D,documentRecord as M,heads as $,importDocument as F,insertImportedRevisions as J,moveDocument as P,setDocumentRecord as Y}from"../documents.js";import{publish as C}from"../events.js";import{getById as I,getByRowid as K,setObjectKind as z}from"../objects.js";import{rulesOf as U}from"../rules.js";import{SPACES as V}from"../spaces/index.js";import{docPath as q,parseDoc as g,serializeDoc as G}from"./ref-format.js";function N(e){const t=V[e.type];if(e.owner!==null||!t||t.sync!=="repo-ref")throw new Error(`${e.type} ${e.id} is not a space that syncs through a repo ref`)}f(N,"assertRepoRefSpace");function Q(e){const t=new Map;for(const[r,i]of e??[]){const l=g(r,i);l.ok&&t.set(l.doc.id,l.doc)}return t}f(Q,"parseMap");function ue(e,t,r){N(t);const i=Q(r),l=y(e,"SELECT * FROM objects WHERE type = 'document' AND owner = ? AND privacy = 'public' ORDER BY rowid").all(t.rowid),u=y(e,"SELECT rowid, rev_id, number, body_hash, author, rationale, created_at FROM revisions WHERE document = ? ORDER BY number, rev_id"),m=y(e,"SELECT p.rev_id FROM revision_parents rp JOIN revisions p ON p.rowid = rp.parent WHERE rp.child = ?"),o=y(e,`SELECT e.written_as, o.id FROM edges e JOIN objects o ON o.rowid = e.dst
|
|
2
|
+
WHERE e.type = 'links-to' AND e.src = ? ORDER BY e.written_as, o.id`),d=new Map;for(const n of l){const p=M(e,n),w=new Map((i.get(n.id)?.revisions??[]).map(s=>[s.rev_id,s])),h=new Set($(e,n).map(s=>s.rev_id)),R=o.all(n.rowid).map(s=>({written_as:s.written_as??"",dst:s.id})),v=u.all(n.rowid).map(s=>w.get(s.rev_id)??{rev_id:s.rev_id,number:s.number,parents:m.all(s.rowid).map(k=>k.rev_id),body:T(s.body_hash),body_hash:s.body_hash,author:s.author===null?null:K(e,s.author)?.id??null,rationale:s.rationale,created_at:s.created_at,links:h.has(s.rev_id)?R:[]});if(v.length===0)continue;const O=U(e,n).map(s=>({position:s.position,on:s.on,match:s.match??null,match_frontmatter:s.matchFrontmatter??null,if:s.if??null,deliver:s.deliver})),_={id:n.id,name:n.name,kind:n.kind??"document",privacy:"public",preview:n.preview,summary:p.summary,why_it_exists:p.why_it_exists,unlisted:p.unlisted,lint_ignore:p.lint_ignore,extensions:p.extensions,created_at:n.created_at,deleted_at:n.deleted_at,rules:O,revisions:v};d.set(q(n.id),G(_))}return d}f(ue,"exportRepo");function X(e){return[...e].sort((t,r)=>t.position-r.position).map(t=>({on:t.on,deliver:t.deliver,...t.match!==null&&t.match!==void 0?{match:t.match}:{},...t.match_frontmatter!==null&&t.match_frontmatter!==void 0?{matchFrontmatter:t.match_frontmatter}:{},...t.if!==null&&t.if!==void 0?{if:t.if}:{}}))}f(X,"toRuleSpecs");const Z=f((e,t)=>JSON.stringify(e??null)===JSON.stringify(t??null),"same");function L(e,t){const r={},i=f(l=>!e||!Z(e[l],t[l]),"differs");return i("preview")&&(r.preview=t.preview),i("summary")&&(r.summary=t.summary),i("why_it_exists")&&(r.whyItExists=t.why_it_exists),i("unlisted")&&(r.unlisted=t.unlisted),i("lint_ignore")&&(r.lintIgnore=t.lint_ignore),i("extensions")&&(r.extensions=t.extensions),i("rules")&&(r.rules=X(t.rules)),r}f(L,"changedFields");let b=0;function A(e,t){const r=`repo_sync_import_${++b}`;e.exec(`SAVEPOINT ${r}`);try{const i=t();return e.exec(`RELEASE ${r}`),i}catch(i){throw e.exec(`ROLLBACK TO ${r}`),e.exec(`RELEASE ${r}`),i}}f(A,"atomic");function me(e,t,r,i,l){N(t);const u={created:0,revisions:0,deleted:0,needsMerge:[],refused:[]},m=[];for(const[o,d]of i){if(r.get(o)===d)continue;const n=g(o,d);if(!n.ok){u.refused.push({path:o,reason:n.reason});continue}const p=r.has(o)?g(o,r.get(o)):null;m.push({path:o,prior:p?.ok?p.doc:null,doc:n.doc})}for(const[o,d]of r){if(i.has(o))continue;const n=g(o,d);n.ok&&m.push({path:o,prior:n.doc,doc:null,priorId:n.doc.id})}for(const o of m)for(const d of o.doc?.revisions??[])j(d.body);return A(e,()=>{for(const o of m)try{A(e,()=>ee(e,t,o.prior,o.doc,o.priorId??o.doc.id,u,l))}catch(d){u.refused.push({path:o.path,reason:d.message})}}),u}f(me,"importTree");function ee(e,t,r,i,l,u,m){const o=I(e,l);if(o&&(o.type!=="document"||o.owner!==t.rowid))throw new Error(`id ${l} is held by ${o.type} ${o.name} outside ${t.name}`);if(!i){o&&!o.deleted_at&&(D(e,null,o,m),u.deleted++);return}const d=y(e,"SELECT count(*) AS n FROM revisions WHERE document = ?");let n,p=!1,w=0,h=0;if(o){n=o,w=M(e,n).revision;const a=i.kind;(r?r.kind!==a:n.kind!==a)&&z(e,n,a);const c=L(r,i);Object.keys(c).length>0&&(n=Y(e,null,n,c)),i.name!==n.name&&!n.deleted_at&&(n=P(e,null,n,{name:i.name}))}else{const c=i.revisions.filter(E=>E.parents.length===0).sort((E,S)=>E.number-S.number||E.rev_id.localeCompare(S.rev_id))[0];if(!c)throw new Error(`${i.name}: no root revision`);n=F(e,{id:i.id,owner:t,name:i.name,kind:i.kind,preview:i.preview,privacy:"public",...L(null,i),revisions:[{rev_id:c.rev_id,body_hash:c.body_hash,author:null,rationale:c.rationale,created_at:c.created_at}]}),p=!0,h=1}const R=d.get(n.rowid).n,{headCount:v}=J(e,n,i.revisions.map(a=>({rev_id:a.rev_id,parents:a.parents,body_hash:a.body_hash,rationale:a.rationale,created_at:a.created_at})));h+=d.get(n.rowid).n-R,u.revisions+=h;const _=$(e,n)[0],s=new Map(i.revisions.map(a=>[a.rev_id,a]));if(h>0){const a=(s.get(_.rev_id)?.links??[]).map(c=>({written_as:c.written_as,dst:I(e,c.dst)})).filter(c=>c.dst!==null);W(e,H(e,n,a),m)}if(v>1&&u.needsMerge.push(n.id),i.deleted_at&&!n.deleted_at){D(e,null,n,m),u.deleted++;return}if(p){u.created++,C(e,{event:"created",object:n,actor:null,attrs:{revision:_.number},pointer:_.rev_id},m);return}if(h===0)return;const x=i.revisions.filter(a=>!r?.revisions.some(c=>c.rev_id===a.rev_id)).sort((a,c)=>c.number-a.number||c.created_at.localeCompare(a.created_at))[0]??s.get(_.rev_id);C(e,{event:"edited",object:n,actor:null,pointer:_.rev_id,attrs:{revision:_.number,from_revision:w,rationale:x?.rationale??null,author:x?.author??null,heads:v,needs_merge:v>1}},m)}f(ee,"importOne");export{ue as exportRepo,me as importTree};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export type CheckoutIdentity = {
|
|
2
|
+
ok: true;
|
|
3
|
+
scheme: 'git';
|
|
4
|
+
externalId: string;
|
|
5
|
+
remoteUrl: string;
|
|
6
|
+
root: string;
|
|
7
|
+
commonDir: string;
|
|
8
|
+
handleHint: string;
|
|
9
|
+
} | {
|
|
10
|
+
ok: true;
|
|
11
|
+
scheme: 'local-path';
|
|
12
|
+
externalId: string;
|
|
13
|
+
root: string;
|
|
14
|
+
handleHint: string;
|
|
15
|
+
} | {
|
|
16
|
+
ok: false;
|
|
17
|
+
code: 'not-a-repo' | 'git-lookup-failed';
|
|
18
|
+
dir: string;
|
|
19
|
+
reason: string;
|
|
20
|
+
};
|
|
21
|
+
/** `https://User@GitHub.com:443/Org/Repo.git/` and `git@github.com:org/repo`
|
|
22
|
+
* both give `github.com/org/repo`. A local remote (absolute path or
|
|
23
|
+
* `file://`) gives `file:<realpath>`, resolved against `base` when relative. */
|
|
24
|
+
export declare function normalizeRemoteUrl(url: string, base?: string): string;
|
|
25
|
+
/** Owner handle a new repo object takes: the last segment of its external id (the normalized remote path, or the folder of a local-path repo), without `.git`. */
|
|
26
|
+
export declare function handleHint(externalId: string): string;
|
|
27
|
+
export declare function identifyCheckout(dir: string): CheckoutIdentity;
|
|
28
|
+
/** Checkouts enclosing `dir`, innermost first; stops at the first directory
|
|
29
|
+
* that is not in a repo. A failed lookup ends the chain and is returned last. */
|
|
30
|
+
export declare function checkoutChain(dir: string): CheckoutIdentity[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var C=Object.defineProperty;var u=(o,e)=>C(o,"name",{value:e,configurable:!0});import{existsSync as O}from"node:fs";import{basename as g,dirname as k,isAbsolute as v,resolve as $}from"node:path";import{gitSync as x}from"../../git.js";import{realpathOrSelf as f}from"../../fs-utils.js";const p=5e3,M=6e4,h=new Map;function b(o,e){const r=o.trim();let t,s;const l=/^([a-z][a-z0-9+.-]*):\/\//i.exec(r);if(l){if(l[1].toLowerCase()==="file")return`file:${w(decodeURIComponent(r.slice(7)),e)}`;const i=r.slice(l[0].length),a=i.indexOf("/"),c=a<0?i:i.slice(0,a);s=a<0?"":i.slice(a),t=c.replace(/^.*@/,"").replace(/:\d*$/,"")}else{const i=/^(?:[^@/]+@)?([^:/]+):(.*)$/.exec(r);if(!i)return`file:${w(r,e)}`;t=i[1],s=i[2]}return s=s.replace(/^\/*~?/,"").replace(/\/+$/,"").replace(/\.git$/i,"").replace(/\/+$/,""),`${t}/${s}`.toLowerCase()}u(b,"normalizeRemoteUrl");function w(o,e){const r=v(o)?o:$(e??process.cwd(),o);return f(r).replace(/\/+$/,"")||"/"}u(w,"localPath");function y(o){const e=o.startsWith("file:")?o.slice(5):o;return g(e).replace(/\.git$/i,"")||"repo"}u(y,"handleHint");function L(o){const e=f($(o)),r=h.get(e);if(r&&Date.now()-r.at<M)return r.id;if(!O(e))return{ok:!1,code:"not-a-repo",dir:e,reason:"directory does not exist"};const t=x(["rev-parse","--path-format=absolute","--show-toplevel","--git-common-dir"],e,void 0,{timeoutMs:p});if(t.timedOut)return{ok:!1,code:"git-lookup-failed",dir:e,reason:`git lookup timed out after ${p}ms`};if(t.status!==0){if(/not a git repository/i.test(t.stderr)){const n={ok:!1,code:"not-a-repo",dir:e,reason:t.stderr.trim()};return h.set(e,{at:Date.now(),id:n}),n}return{ok:!1,code:"git-lookup-failed",dir:e,reason:t.stderr.trim()||t.processError||`git rev-parse exited ${t.status}`}}const[s,l]=t.stdout.split(/\r?\n/).map(n=>n.trim());if(!s||!l)return{ok:!1,code:"git-lookup-failed",dir:e,reason:"git rev-parse returned no work tree (bare repository?)"};const i=f(s),a=f(l),c=x(["remote","get-url","origin"],i,void 0,{timeoutMs:p});if(c.timedOut)return{ok:!1,code:"git-lookup-failed",dir:e,reason:`git remote lookup timed out after ${p}ms`};let d;const m=c.stdout.trim();if(c.status===0&&m!==""){const n=b(m,i);d={ok:!0,scheme:"git",externalId:n,remoteUrl:m,root:i,commonDir:a,handleHint:y(n)}}else if(/no such remote/i.test(c.stderr)){const n=g(a)===".git"?k(a):a;d={ok:!0,scheme:"local-path",externalId:n,root:i,handleHint:y(n)}}else return{ok:!1,code:"git-lookup-failed",dir:e,reason:c.stderr.trim()||`git remote get-url exited ${c.status}`};return h.set(e,{at:Date.now(),id:d}),d}u(L,"identifyCheckout");function z(o){const e=[];let r=o;for(;;){const t=L(r);if(!t.ok)return t.code==="git-lookup-failed"&&e.push(t),e;e.push(t);const s=k(t.root);if(s===t.root)return e;r=s}}u(z,"checkoutChain");export{z as checkoutChain,y as handleHint,L as identifyCheckout,b as normalizeRemoteUrl};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** The import surface of repo sync for other domains. */
|
|
2
|
+
export { startRepoSync, noteNodeWorking, noteNodeBooting, noteRepoDocumentsChanged, syncRepo, FIRST_FETCH_WAIT_MS } from './sync.js';
|
|
3
|
+
export type { SyncOutcome, SyncStep } from './sync.js';
|
|
4
|
+
export type { ImportResult } from './exchange.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{startRepoSync as n,noteNodeWorking as t,noteNodeBooting as p,noteRepoDocumentsChanged as r,syncRepo as R,FIRST_FETCH_WAIT_MS as c}from"./sync.js";export{c as FIRST_FETCH_WAIT_MS,p as noteNodeBooting,t as noteNodeWorking,r as noteRepoDocumentsChanged,n as startRepoSync,R as syncRepo};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** crtr's own bare git repo holding one repo object's `refs/crtr/docs`. Nothing
|
|
2
|
+
* here touches a user's checkout: fetch and push address the remote URL directly.
|
|
3
|
+
* Local refs: `refs/crtr/docs` (local tip), `refs/crtr/remote-docs` (last fetched),
|
|
4
|
+
* `refs/crtr/imported` (tree last imported into canvas.db). */
|
|
5
|
+
export interface Mirror {
|
|
6
|
+
dir: string;
|
|
7
|
+
}
|
|
8
|
+
export type RemoteResult<T> = {
|
|
9
|
+
ok: true;
|
|
10
|
+
value: T;
|
|
11
|
+
} | {
|
|
12
|
+
ok: false;
|
|
13
|
+
reason: string;
|
|
14
|
+
};
|
|
15
|
+
export declare const FIRST_FETCH_MARKER = "first-fetch-done";
|
|
16
|
+
export declare function openMirror(repoObjectId: string): Promise<Mirror>;
|
|
17
|
+
export declare function resolveRef(m: Mirror, ref: string): Promise<string | null>;
|
|
18
|
+
export declare function readTree(m: Mirror, ref: string): Promise<Map<string, string> | null>;
|
|
19
|
+
export declare function commitTree(m: Mirror, files: Map<string, string>, parents: string[], message: string): Promise<string>;
|
|
20
|
+
/** `expectOld` null requires the ref to not exist yet. */
|
|
21
|
+
export declare function setRef(m: Mirror, ref: string, sha: string, expectOld: string | null): Promise<void>;
|
|
22
|
+
export declare function mergeBase(m: Mirror, a: string, b: string): Promise<string | null>;
|
|
23
|
+
export declare function isAncestor(m: Mirror, a: string, b: string): Promise<boolean>;
|
|
24
|
+
export declare function remoteDocsTip(m: Mirror, url: string): Promise<RemoteResult<string | null>>;
|
|
25
|
+
export declare function fetchDocs(m: Mirror, url: string): Promise<RemoteResult<string>>;
|
|
26
|
+
/** Never forced; `--no-verify` so no user hook runs. A non-fast-forward answers `rejected`. */
|
|
27
|
+
export declare function pushDocs(m: Mirror, url: string, sha: string): Promise<RemoteResult<'pushed'> | {
|
|
28
|
+
ok: false;
|
|
29
|
+
reason: 'rejected';
|
|
30
|
+
}>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
var k=Object.defineProperty;var i=(t,r)=>k(t,"name",{value:r,configurable:!0});import{spawn as A}from"node:child_process";import{existsSync as R}from"node:fs";import{mkdir as F,mkdtemp as S,rm as N,writeFile as _}from"node:fs/promises";import{join as x}from"node:path";import{gitAsync as $}from"../../git.js";import{crtrHome as G}from"../../canvas/paths.js";const g=6e4,j="first-fetch-done",T={...process.env,GIT_TERMINAL_PROMPT:"0",GIT_AUTHOR_NAME:"crtr",GIT_AUTHOR_EMAIL:"crtr@localhost",GIT_COMMITTER_NAME:"crtr",GIT_COMMITTER_EMAIL:"crtr@localhost"};function u(t,r,s,e={}){return $(["--git-dir",t.dir,...r],void 0,s,{env:e.env??T,timeoutMs:e.timeoutMs})}i(u,"git");function f(t,r){return new Error(`git ${t} failed (${r.timedOut?"timed out":`exit ${r.status}`}): ${r.stderr.trim()}`)}i(f,"fail");function y(t){return t.timedOut?"timed out":t.stderr.trim()||`exit ${t.status}`}i(y,"reason");async function K(t){const r=x(G(),"repo-sync",t),s={dir:r};if(!R(x(r,"HEAD"))){await F(r,{recursive:!0});const e=await $(["init","--bare","--quiet",r],void 0,void 0,{env:T});if(e.status!==0)throw f("init",e)}return s}i(K,"openMirror");async function v(t,r){const s=await u(t,["rev-parse","--verify","--quiet",`${r}^{commit}`]);if(s.status===0)return s.stdout.trim();if(s.status===1&&!s.executionFailed)return null;throw f("rev-parse",s)}i(v,"resolveRef");function D(t,r){return new Promise((s,e)=>{const o=A("git",["--git-dir",t.dir,"cat-file","--batch"],{env:{...T,GIT_OPTIONAL_LOCKS:"0"}}),d=[];let a="";o.stdout.on("data",n=>d.push(n)),o.stderr.on("data",n=>a+=n.toString()),o.on("error",e),o.on("close",n=>{if(n!==0)return e(new Error(`git cat-file failed (exit ${n}): ${a.trim()}`));const l=Buffer.concat(d),p=[];let w=0;for(const h of r){const b=l.indexOf(10,w),c=l.subarray(w,b).toString(),[m,I,O]=c.split(" ");if(m!==h||I!=="blob")return e(new Error(`git cat-file: unexpected header "${c}" for ${h}`));const M=b+1,E=M+Number(O);p.push(l.subarray(M,E)),w=E+1}s(p)}),o.stdin.end(r.map(n=>`${n}
|
|
2
|
+
`).join(""))})}i(D,"catFileBatch");async function U(t,r){const s=await v(t,r);if(s===null)return null;const e=await u(t,["ls-tree","-r","-z",s]);if(e.status!==0)throw f("ls-tree",e);const o=e.stdout.split("\0").filter(Boolean).map(a=>{const n=a.indexOf(" "),[,l,p]=a.slice(0,n).split(" ");if(l!=="blob")throw new Error(`repo-sync mirror: ${a.slice(n+1)} is a ${l}, not a file`);return{path:a.slice(n+1),blob:p}}),d=o.length===0?[]:await D(t,o.map(a=>a.blob));return new Map(o.map((a,n)=>[a.path,d[n].toString("utf8")]))}i(U,"readTree");async function W(t,r,s,e){const o=await S(x(t.dir,"commit-"));try{const d=[...r.keys()].sort(),a=d.map((c,m)=>x(o,`blob-${m}`));await Promise.all(d.map((c,m)=>_(a[m],r.get(c),"utf8")));let n=[];if(d.length>0){const c=await u(t,["hash-object","-w","--stdin-paths"],a.map(m=>`${m}
|
|
3
|
+
`).join(""));if(c.status!==0)throw f("hash-object",c);n=c.stdout.trim().split(`
|
|
4
|
+
`)}const l={...T,GIT_INDEX_FILE:x(o,"index")},p=d.map((c,m)=>`100644 ${n[m]} ${c}\0`).join(""),w=await u(t,["update-index","-z","--index-info"],p,{env:l});if(w.status!==0)throw f("update-index",w);const h=await u(t,["write-tree"],void 0,{env:l});if(h.status!==0)throw f("write-tree",h);const b=await u(t,["commit-tree",h.stdout.trim(),...s.flatMap(c=>["-p",c]),"-m",e]);if(b.status!==0)throw f("commit-tree",b);return b.stdout.trim()}finally{await N(o,{recursive:!0,force:!0})}}i(W,"commitTree");async function V(t,r,s,e){const o=await u(t,["update-ref",r,s,e??"0".repeat(40)]);if(o.status!==0)throw f("update-ref",o)}i(V,"setRef");async function X(t,r,s){const e=await u(t,["merge-base",r,s]);if(e.status===0)return e.stdout.trim();if(e.status===1&&!e.executionFailed)return null;throw f("merge-base",e)}i(X,"mergeBase");async function J(t,r,s){const e=await u(t,["merge-base","--is-ancestor",r,s]);if(e.status===0)return!0;if(e.status===1&&!e.executionFailed)return!1;throw f("merge-base --is-ancestor",e)}i(J,"isAncestor");async function Q(t,r){const s=await u(t,["ls-remote",r,"refs/crtr/docs"],void 0,{timeoutMs:g});if(s.status!==0)return{ok:!1,reason:y(s)};const e=s.stdout.split(`
|
|
5
|
+
`).find(o=>o.endsWith(" refs/crtr/docs"));return{ok:!0,value:e?e.split(" ")[0]:null}}i(Q,"remoteDocsTip");async function Y(t,r){const s=await u(t,["fetch","--no-tags","--quiet",r,"+refs/crtr/docs:refs/crtr/remote-docs"],void 0,{timeoutMs:g});if(s.status!==0)return{ok:!1,reason:y(s)};const e=await v(t,"refs/crtr/remote-docs");return e===null?{ok:!1,reason:"fetch succeeded but refs/crtr/remote-docs is missing"}:(await _(x(t.dir,j),`${new Date().toISOString()}
|
|
6
|
+
`),{ok:!0,value:e})}i(Y,"fetchDocs");async function Z(t,r,s){const e=await u(t,["push","--no-verify","--porcelain",r,`${s}:refs/crtr/docs`],void 0,{timeoutMs:g});return e.status===0?{ok:!0,value:"pushed"}:/\[rejected\]|non-fast-forward|fetch first/.test(e.stdout+e.stderr)?{ok:!1,reason:"rejected"}:{ok:!1,reason:y(e)}}i(Z,"pushDocs");export{j as FIRST_FETCH_MARKER,W as commitTree,Y as fetchDocs,J as isAncestor,X as mergeBase,K as openMirror,Z as pushDocs,U as readTree,Q as remoteDocsTip,v as resolveRef,V as setRef};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { RuleOn } from '../types.js';
|
|
2
|
+
export interface RefRule {
|
|
3
|
+
position: number;
|
|
4
|
+
on: RuleOn;
|
|
5
|
+
match: unknown;
|
|
6
|
+
match_frontmatter: unknown;
|
|
7
|
+
if: unknown;
|
|
8
|
+
deliver: 'name' | 'preview' | 'content';
|
|
9
|
+
}
|
|
10
|
+
export interface RefRevision {
|
|
11
|
+
rev_id: string;
|
|
12
|
+
number: number;
|
|
13
|
+
parents: string[];
|
|
14
|
+
body: string;
|
|
15
|
+
body_hash: string;
|
|
16
|
+
/** Object id of the author on the runtime that wrote it; null when unknown. */
|
|
17
|
+
author: string | null;
|
|
18
|
+
rationale: string | null;
|
|
19
|
+
created_at: string;
|
|
20
|
+
links: Array<{
|
|
21
|
+
written_as: string;
|
|
22
|
+
dst: string;
|
|
23
|
+
}>;
|
|
24
|
+
}
|
|
25
|
+
export interface RefDocument {
|
|
26
|
+
id: string;
|
|
27
|
+
name: string;
|
|
28
|
+
kind: string;
|
|
29
|
+
privacy: 'public';
|
|
30
|
+
preview: string;
|
|
31
|
+
summary: string | null;
|
|
32
|
+
why_it_exists: string | null;
|
|
33
|
+
unlisted: boolean;
|
|
34
|
+
lint_ignore: unknown;
|
|
35
|
+
extensions: unknown;
|
|
36
|
+
created_at: string;
|
|
37
|
+
deleted_at: string | null;
|
|
38
|
+
rules: RefRule[];
|
|
39
|
+
revisions: RefRevision[];
|
|
40
|
+
}
|
|
41
|
+
export declare const docPath: (id: string) => string;
|
|
42
|
+
/** Every field merged three-way: all but id, created_at and revisions. */
|
|
43
|
+
export declare const RECORD_FIELDS: readonly ["name", "kind", "privacy", "preview", "summary", "why_it_exists", "unlisted", "lint_ignore", "extensions", "deleted_at", "rules"];
|
|
44
|
+
export declare function sha256(body: string): string;
|
|
45
|
+
export declare function serializeDoc(doc: RefDocument): string;
|
|
46
|
+
/** Parse one ref file. Refuses anything not public, a body whose hash disagrees, or an id that is not the file name. */
|
|
47
|
+
export declare function parseDoc(path: string, text: string): {
|
|
48
|
+
ok: true;
|
|
49
|
+
doc: RefDocument;
|
|
50
|
+
} | {
|
|
51
|
+
ok: false;
|
|
52
|
+
reason: string;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Merge one document. Revisions: union by rev_id (first copy kept verbatim). Fields: three-way
|
|
56
|
+
* against base, remote wins when both changed. A side missing the file while base had it deleted
|
|
57
|
+
* it: the result is marked deleted (at `now`) and keeps every revision.
|
|
58
|
+
*/
|
|
59
|
+
export declare function mergeDoc(base: RefDocument | null, local: RefDocument | null, remote: RefDocument | null, now?: string): RefDocument | null;
|
|
60
|
+
/**
|
|
61
|
+
* Merge three trees (path → file text). Per path mergeDoc; then two live documents with one name:
|
|
62
|
+
* the one already on the remote under that name keeps it, the other becomes `<name>-<id first 8>`.
|
|
63
|
+
* A file that fails to parse is refused; it stays in the tree only as the local side's text.
|
|
64
|
+
*/
|
|
65
|
+
export declare function mergeTrees(base: Map<string, string>, local: Map<string, string>, remote: Map<string, string>, now?: string): {
|
|
66
|
+
tree: Map<string, string>;
|
|
67
|
+
renamed: Array<{
|
|
68
|
+
id: string;
|
|
69
|
+
from: string;
|
|
70
|
+
to: string;
|
|
71
|
+
}>;
|
|
72
|
+
refused: Array<{
|
|
73
|
+
path: string;
|
|
74
|
+
reason: string;
|
|
75
|
+
}>;
|
|
76
|
+
};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var $=Object.defineProperty;var a=(n,r)=>$(n,"name",{value:r,configurable:!0});import{createHash as O}from"node:crypto";const D=a(n=>`docs/${n}.json`,"docPath"),N=["name","kind","privacy","preview","summary","why_it_exists","unlisted","lint_ignore","extensions","deleted_at","rules"];function R(n){return O("sha256").update(n,"utf8").digest("hex")}a(R,"sha256");function h(n){if(Array.isArray(n))return n.map(h);if(n&&typeof n=="object"){const r={};for(const o of Object.keys(n).sort())r[o]=h(n[o]);return r}return n}a(h,"sortKeys");const v=a(n=>JSON.stringify(h(n??null)),"stable");function S(n,r){return n.number-r.number||(n.rev_id<r.rev_id?-1:n.rev_id>r.rev_id?1:0)}a(S,"byRevision");function j(n){const r={...n,rules:[...n.rules].sort((o,t)=>o.position-t.position),revisions:[...n.revisions].map(o=>({...o,parents:[...o.parents].sort()})).sort(S)};return`${JSON.stringify(h(r),null,2)}
|
|
2
|
+
`}a(j,"serializeDoc");const E=new Set(["boot","workspace-open","file-read","document-read","command","pre-command","slash-command"]),I=new Set(["name","preview","content"]),p=a(n=>typeof n=="string","isStr"),g=a(n=>n===null||typeof n=="string","isStrOrNull");function x(n,r){let o;try{o=JSON.parse(r)}catch(e){return{ok:!1,reason:`not JSON: ${e.message}`}}if(!o||typeof o!="object"||Array.isArray(o))return{ok:!1,reason:"not an object"};const t=o;if(t.privacy!=="public")return{ok:!1,reason:`privacy is ${String(t.privacy)}; a repo holds only public documents`};if(!p(t.id)||D(t.id)!==n)return{ok:!1,reason:`id ${String(t.id)} does not match file ${n}`};for(const e of["name","kind","preview","created_at"])if(!p(t[e]))return{ok:!1,reason:`${e} is not a string`};for(const e of["summary","why_it_exists","deleted_at"])if(!g(t[e]))return{ok:!1,reason:`${e} is not a string or null`};if(typeof t.unlisted!="boolean")return{ok:!1,reason:"unlisted is not a boolean"};if(!Array.isArray(t.rules))return{ok:!1,reason:"rules is not an array"};for(const e of t.rules)if(!e||typeof e.position!="number"||!E.has(e.on)||!I.has(e.deliver))return{ok:!1,reason:"malformed rule"};if(!Array.isArray(t.revisions)||t.revisions.length===0)return{ok:!1,reason:"no revisions"};const d=new Set;for(const e of t.revisions){if(!e||!p(e.rev_id)||typeof e.number!="number"||!p(e.body)||!p(e.body_hash)||!p(e.created_at)||!g(e.author)||!g(e.rationale)||!Array.isArray(e.parents)||!e.parents.every(p)||!Array.isArray(e.links))return{ok:!1,reason:"malformed revision"};if(d.has(e.rev_id))return{ok:!1,reason:`revision ${e.rev_id} appears twice`};if(d.add(e.rev_id),R(e.body)!==e.body_hash)return{ok:!1,reason:`revision ${e.rev_id} body does not match body_hash`}}return{ok:!0,doc:t}}a(x,"parseDoc");function A(...n){const r=new Map;for(const o of n)for(const t of o?.revisions??[])r.has(t.rev_id)||r.set(t.rev_id,t);return[...r.values()].sort(S)}a(A,"unionRevisions");function M(n,r,o,t=new Date().toISOString()){if(!r&&!o)return null;if(!r||!o){const e=r??o;return n?{...e,deleted_at:e.deleted_at??t,revisions:A(o,r,n)}:e}const d={...o,revisions:A(o,r,n)};for(const e of N){const u=v(r[e]),m=v(o[e]);if(u===m)continue;(n?v(n[e]):void 0)===m&&(d[e]=r[e])}return d}a(M,"mergeDoc");function L(n,r,o,t=new Date().toISOString()){const d=new Map,e=[],u=new Map,m=[...new Set([...n.keys(),...r.keys(),...o.keys()])].sort();for(const i of m){const s=[];let l=null;for(const c of[n,r,o]){const y=c.get(i);if(y===void 0){s.push(null);continue}const k=x(i,y);k.ok?s.push(k.doc):(l??=k.reason,s.push(null))}if(l!==null){e.push({path:i,reason:l});const c=r.get(i);c!==void 0&&d.set(i,c);continue}const f=M(s[0],s[1],s[2],t);f&&u.set(i,f)}const b=a(i=>{const s=o.get(i);if(s===void 0)return null;const l=x(i,s);return l.ok&&l.doc.deleted_at===null?l.doc.name:null},"remoteNameOf"),_=new Map;for(const[i,s]of u)s.deleted_at===null&&_.set(s.name,[..._.get(s.name)??[],i]);const w=[];for(const[i,s]of _){if(s.length<2)continue;const l=s.find(f=>b(f)===i)??[...s].sort((f,c)=>u.get(f).id.localeCompare(u.get(c).id))[0];for(const f of s){if(f===l)continue;const c=u.get(f),y=`${i}-${c.id.slice(0,8)}`;u.set(f,{...c,name:y}),w.push({id:c.id,from:i,to:y})}}for(const[i,s]of u)d.set(i,j(s));return{tree:new Map([...d].sort(([i],[s])=>i.localeCompare(s))),renamed:w,refused:e}}a(L,"mergeTrees");export{N as RECORD_FIELDS,D as docPath,M as mergeDoc,L as mergeTrees,x as parseDoc,j as serializeDoc,R as sha256};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Repo objects on the canvas: one per repo identity, handle chosen once. */
|
|
2
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
3
|
+
import type { Checkout, ObjectRow } from '../types.js';
|
|
4
|
+
import { handleHint } from './identity.js';
|
|
5
|
+
export { handleHint };
|
|
6
|
+
export interface RepoIdentity {
|
|
7
|
+
scheme: 'git' | 'local-path';
|
|
8
|
+
externalId: string;
|
|
9
|
+
handleHint: string;
|
|
10
|
+
}
|
|
11
|
+
/** The repo object for an identity, created on first sight. A handle already
|
|
12
|
+
* held by another repo gets `-2`, `-3`, … appended. */
|
|
13
|
+
export declare function ensureRepo(db: DatabaseSync, id: RepoIdentity, handle?: string): ObjectRow;
|
|
14
|
+
/** Repos enclosing `cwd`, nearest first: every enclosing git checkout (created
|
|
15
|
+
* on first sight) and every existing local-path repo whose path is `cwd` or
|
|
16
|
+
* an ancestor of it. A non-git folder is never created here. */
|
|
17
|
+
export declare function reposForCwd(db: DatabaseSync, cwd: string): ObjectRow[];
|
|
18
|
+
/** `reposForCwd` with the directory each repo is checked out at. */
|
|
19
|
+
export declare function checkoutsForCwd(db: DatabaseSync, cwd: string): Checkout[];
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var h=Object.defineProperty;var s=(t,e)=>h(t,"name",{value:e,configurable:!0});import{prepared as a}from"../../sqlite-statements.js";import{resolve as d,sep as f}from"node:path";import{CrtrError as l}from"../../errors.js";import{realpathOrSelf as m}from"../../fs-utils.js";import{ExitCode as u}from"../../../types.js";import{ensureOwner as E}from"../objects.js";import{checkoutChain as w,handleHint as x}from"./identity.js";function N(t,e,r){return a(t,`SELECT o.* FROM identities i JOIN objects o ON o.rowid = i.object
|
|
2
|
+
WHERE o.type = 'repo' AND i.scheme = ? AND i.external_id = ?`).get(e,r)??null}s(N,"existingRepo");function O(t,e,r){const n=N(t,e.scheme,e.externalId);if(n)return n;const p=r??e.handleHint,c=a(t,"SELECT 1 FROM objects WHERE name = ? AND type = 'repo'");let o=p;for(let i=2;c.get(o);i++)o=`${p}-${i}`;return E(t,"repo",e.scheme,e.externalId,o)}s(O,"ensureRepo");function W(t,e){return R(t,e).map(r=>r.repo)}s(W,"reposForCwd");function R(t,e){const r=m(d(e)),n=[];for(const o of w(r)){if(!o.ok)throw new l("git-lookup-failed",`cannot identify the repo at ${o.dir}: ${o.reason}`,u.GENERAL,{dir:o.dir});n.push({root:o.root,repo:O(t,o)})}const p=a(t,`SELECT o.*, i.external_id AS path FROM identities i JOIN objects o ON o.rowid = i.object
|
|
3
|
+
WHERE o.type = 'repo' AND i.scheme = 'local-path'`).all();for(const{path:o,...i}of p)(r===o||r.startsWith(o.endsWith(f)?o:o+f))&&n.push({root:o,repo:i});n.sort((o,i)=>i.root.length-o.root.length);const c=new Set;return n.filter(({repo:o})=>!c.has(o.rowid)&&(c.add(o.rowid),!0))}s(R,"checkoutsForCwd");export{R as checkoutsForCwd,O as ensureRepo,x as handleHint,W as reposForCwd};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** The repo-sync engine in crtrd: per repo at most one sync running and one queued. No timer and
|
|
2
|
+
* no retry loop — the next trigger is the retry. A failed sync keeps the local mirror commit and
|
|
3
|
+
* every canvas.db revision; the next run sends them. Every outcome is written as an event. */
|
|
4
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
5
|
+
import type { DetachedWorkLifecycle } from '../../../daemon/reconcilers/broker-supervision.js';
|
|
6
|
+
import type { ObjectRow } from '../types.js';
|
|
7
|
+
import { type ImportResult } from './exchange.js';
|
|
8
|
+
export declare const FIRST_FETCH_WAIT_MS = 20000;
|
|
9
|
+
export type SyncStep = 'export' | 'fetch' | 'merge' | 'import' | 'push';
|
|
10
|
+
export type SyncOutcome = {
|
|
11
|
+
ok: true;
|
|
12
|
+
pushed: boolean;
|
|
13
|
+
imported: ImportResult;
|
|
14
|
+
} | {
|
|
15
|
+
ok: false;
|
|
16
|
+
step: SyncStep;
|
|
17
|
+
reason: string;
|
|
18
|
+
};
|
|
19
|
+
/** Called once by crtrd. Until then triggers are refused loudly. */
|
|
20
|
+
export declare function startRepoSync(lifecycle: DetachedWorkLifecycle, db: () => DatabaseSync): void;
|
|
21
|
+
/**
|
|
22
|
+
* A node starts working in `cwd`, enclosed by `repos`. For each syncing repo: when no fetch has
|
|
23
|
+
* ever succeeded on this machine and none was attempted in this daemon's lifetime, wait for its
|
|
24
|
+
* sync, at most FIRST_FETCH_WAIT_MS; otherwise schedule it and return at once.
|
|
25
|
+
*/
|
|
26
|
+
export declare function noteNodeWorking(repos: ObjectRow[], cwd: string): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* A node's boot delivery is about to render: it starts working in the repos enclosing its cwd.
|
|
29
|
+
* Sync them first (the first on this machine waits for the first fetch, bounded), so what the
|
|
30
|
+
* repo's collaborators wrote is on the canvas before its bearings. Never throws: a failed sync
|
|
31
|
+
* never fails a boot, and every failure is an event.
|
|
32
|
+
*/
|
|
33
|
+
export declare function noteNodeBooting(nodeId: string): Promise<void>;
|
|
34
|
+
/** A repo-owned document changed (write, edit, move at either end, delete). `cwd`, when the caller
|
|
35
|
+
* has one inside a checkout, records the fetch URL. */
|
|
36
|
+
export declare function noteRepoDocumentsChanged(repo: ObjectRow, cwd?: string): void;
|
|
37
|
+
/**
|
|
38
|
+
* One sync: export canvas.db to a local commit, fetch the remote ref, fast-forward or merge,
|
|
39
|
+
* import the merged tree into canvas.db, push (never forced). A rejected push fetches again,
|
|
40
|
+
* at most PUSH_ATTEMPTS times.
|
|
41
|
+
*/
|
|
42
|
+
export declare function syncRepo(repo: ObjectRow): Promise<SyncOutcome>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var N=Object.defineProperty;var s=(t,r)=>N(t,"name",{value:r,configurable:!0});import{prepared as R}from"../../sqlite-statements.js";import{existsSync as D}from"node:fs";import{readFile as z,writeFile as B}from"node:fs/promises";import{join as M}from"node:path";import{emitEvent as K}from"../../events/emit.js";import{exportRepo as q,importTree as G}from"./exchange.js";import{checkoutChain as J}from"./identity.js";import{checkoutsForCwd as Q,reposForCwd as V}from"./repos.js";import{commitTree as I,fetchDocs as X,FIRST_FETCH_MARKER as Y,isAncestor as L,mergeBase as Z,openMirror as k,pushDocs as ee,readTree as p,remoteDocsTip as te,resolveRef as w,setRef as h}from"./mirror.js";import{mergeTrees as re}from"./ref-format.js";const ne=2e4,A=3,O="remote-url",l="refs/crtr/docs",oe="refs/crtr/remote-docs",g="refs/crtr/imported";function y(t){try{K(t)}catch{}}s(y,"emitEvent");let T=null;const S=new Map,H=new Set;function Re(t,r){T={lifecycle:t,db:r}}s(Re,"startRepoSync");function U(t,r){return r.type!=="repo"?!1:R(t,"SELECT 1 FROM identities WHERE object = ? AND scheme = 'git'").get(r.rowid)!==void 0}s(U,"gitScheme");async function W(t,r){const e=new Map;for(const f of J(r))f.ok&&f.scheme==="git"&&e.set(f.externalId,f.remoteUrl);if(e.size===0)return;const i=T.db(),o=R(i,"SELECT external_id FROM identities WHERE object = ? AND scheme = 'git'");for(const f of t){const a=o.get(f.rowid),c=a&&e.get(a.external_id);if(!c)continue;const n=await k(f.id);await B(M(n.dir,O),`${c}
|
|
2
|
+
`)}}s(W,"recordRemoteUrls");async function se(t,r){const i=E().db(),o=t.filter(n=>U(i,n));if(o.length===0)return;await W(o,r);const f=[];for(const n of o){const d=!H.has(n.id)&&!D(M((await k(n.id)).dir,Y)),u=v(n);d&&u&&f.push(u)}if(f.length===0)return;let a;const c=new Promise(n=>{a=setTimeout(n,ne)});await Promise.race([Promise.all(f),c]),clearTimeout(a)}s(se,"noteNodeWorking");async function Me(t){try{const r=E().db(),e=R(r,"SELECT cwd FROM nodes WHERE node_id = ?").get(t);if(!e)return;const i=ie(r,()=>V(r,e.cwd));i.length>0&&await se(i,e.cwd)}catch(r){y({level:"warn",event:"repo_sync.failed",outcome:"failed",error:r,node_id:t,fields:{step:"fetch",reason:`the boot trigger failed: ${r instanceof Error?r.message:String(r)}`}})}}s(Me,"noteNodeBooting");function ie(t,r){if(t.isTransaction)return r();t.exec("BEGIN IMMEDIATE");try{const e=r();return t.exec("COMMIT"),e}catch(e){throw t.exec("ROLLBACK"),e}}s(ie,"inWrite");function ke(t,r){const e=E();if(!U(e.db(),t))return;if(r===void 0){v(t);return}const i=W([t],r).then(()=>{v(t)},o=>{y({level:"error",event:"repo_sync.failed",error:o,fields:{repo:t.name,step:"fetch",reason:"recording the remote URL failed"}})});e.lifecycle.registerDetached(i)}s(ke,"noteRepoDocumentsChanged");function E(){if(!T)throw new Error("repo sync is not started: crtrd must call startRepoSync first");return T}s(E,"requireEngine");function v(t){const r=E(),e=S.get(t.id)??{running:null,again:!1};if(S.set(t.id,e),e.running)return e.again=!0,e.running.then(()=>S.get(t.id)?.running??null).then(o=>o??{ok:!0,pushed:!1,imported:$()});if(!r.lifecycle.acceptsDetachedWork())return null;H.add(t.id);const i=ae(t).then(o=>(P(t,o),o),o=>{const f={ok:!1,step:"export",reason:o instanceof Error?o.message:String(o)};return P(t,f),f}).finally(()=>{e.running=null,e.again&&(e.again=!1,v(t))});return e.running=i,r.lifecycle.registerDetached(i.then(()=>{})),i}s(v,"schedule");function P(t,r){if(r.ok){const e=r.imported;y({level:"info",event:"repo_sync.completed",outcome:"succeeded",fields:{repo:t.name,pushed:r.pushed,created:e.created,revisions:e.revisions,deleted:e.deleted,needs_merge:e.needsMerge,refused:e.refused}})}else y({level:"warn",event:"repo_sync.failed",outcome:"failed",fields:{repo:t.name,step:r.step,reason:r.reason}})}s(P,"report");function $(){return{created:0,revisions:0,deleted:0,needsMerge:[],refused:[]}}s($,"emptyImport");class x extends Error{static{s(this,"StepError")}step;constructor(r,e){super(e),this.step=r}}async function _(t,r){try{return await r()}catch(e){throw e instanceof x?e:new x(t,e instanceof Error?e.message:String(e))}}s(_,"step");async function ae(t){const r=E();try{const e=await k(t.id),i=await ce(e);if(i===null)return{ok:!1,step:"fetch",reason:`no checkout of ${t.name} with an origin remote has been seen by this runtime`};let o=$();const f=s(()=>_("import",async()=>{const a=await w(e,l),c=await w(e,g);if(a===null||c===a)return;const n=c?await p(e,g):new Map,d=r.db(),u=G(d,t,n,await p(e,l),m=>Q(d,m));o={created:o.created+u.created,revisions:o.revisions+u.revisions,deleted:o.deleted+u.deleted,needsMerge:[...new Set([...o.needsMerge,...u.needsMerge])],refused:[...o.refused,...u.refused]},await h(e,g,a,c)}),"importLocal");await f(),await _("export",async()=>{const a=await w(e,l),c=a?await p(e,l):null,n=q(r.db(),t,c);if(a?ue(c,n):n.size===0)return;const d=await I(e,n,a?[a]:[],`crtr: export ${t.name}`);await h(e,l,d,a),await h(e,g,d,await w(e,g))});for(let a=1;;a++){const c=await te(e,i);if(!c.ok)return{ok:!1,step:"fetch",reason:c.reason};let n=await w(e,l);if(c.value!==null&&!(n&&await fe(e,c.value)&&await L(e,c.value,n))){const u=await X(e,i);if(!u.ok)return{ok:!1,step:"fetch",reason:u.reason};const m=u.value;n=await _("merge",async()=>{if(!n||await L(e,n,m))return await h(e,l,m,n),m;const b=await Z(e,n,m),C=re(b?await p(e,b):new Map,await p(e,l),await p(e,oe));for(const j of C.refused)o.refused.push(j);const F=await I(e,C.tree,[n,m],`crtr: merge ${t.name}`);return await h(e,l,F,n),F})}if(await f(),n===null||n===c.value)return{ok:!0,pushed:!1,imported:o};const d=await ee(e,i,n);if(d.ok)return{ok:!0,pushed:!0,imported:o};if(d.reason!=="rejected")return{ok:!1,step:"push",reason:d.reason};if(a>=A)return{ok:!1,step:"push",reason:`push rejected ${A} times`}}}catch(e){if(e instanceof x)return{ok:!1,step:e.step,reason:e.message};throw e}}s(ae,"syncRepo");async function ce(t){const r=M(t.dir,O);return D(r)&&(await z(r,"utf8")).trim()||null}s(ce,"readUrl");async function fe(t,r){return await w(t,r)!==null}s(fe,"hasCommit");function ue(t,r){if(t.size!==r.size)return!1;for(const[e,i]of t)if(r.get(e)!==i)return!1;return!0}s(ue,"sameTree");export{ne as FIRST_FETCH_WAIT_MS,Me as noteNodeBooting,se as noteNodeWorking,ke as noteRepoDocumentsChanged,Re as startRepoSync,ae as syncRepo};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** A document's delivery rules as `rules` rows. `rules.owner` mirrors the
|
|
2
|
+
* document's `objects.owner` so delivery can select rules by owner through
|
|
3
|
+
* `rules_on_owner`; `replaceRules` and `setRulesOwner` are the only writers. */
|
|
4
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
5
|
+
import type { ObjectRow, RuleOn, RuleSpec } from './types.js';
|
|
6
|
+
export declare const RULE_ONS: readonly RuleOn[];
|
|
7
|
+
export interface RuleRow extends RuleSpec {
|
|
8
|
+
rowid: number;
|
|
9
|
+
object: number;
|
|
10
|
+
owner: number | null;
|
|
11
|
+
position: number;
|
|
12
|
+
}
|
|
13
|
+
/** Replace the document's rules; `position` is the array index, `owner` the document's owner. */
|
|
14
|
+
export declare function replaceRules(db: DatabaseSync, object: ObjectRow, specs: readonly RuleSpec[]): void;
|
|
15
|
+
/** Re-point the document's rule rows at its current owner (after a move). */
|
|
16
|
+
export declare function setRulesOwner(db: DatabaseSync, object: ObjectRow): void;
|
|
17
|
+
export declare function rulesOf(db: DatabaseSync, object: ObjectRow): RuleRow[];
|
|
18
|
+
/** Every rule on one of `on` whose document belongs to one of `owners`. */
|
|
19
|
+
export declare function rulesForOwners(db: DatabaseSync, on: readonly RuleOn[], owners: readonly number[]): RuleRow[];
|
|
20
|
+
/** The only converter from package/legacy frontmatter (`surfaces`, `gate`,
|
|
21
|
+
* `slash`) to rules. Tolerant like the runtime parser it replaces: invalid
|
|
22
|
+
* entries are dropped; `lintRules` is the strict check. A document-level
|
|
23
|
+
* `gate` is ANDed into every rule's `if`. */
|
|
24
|
+
export declare function rulesFromFrontmatter(fm: Record<string, unknown>): RuleSpec[];
|
|
25
|
+
/** Strict validation of a rule list; null when valid. */
|
|
26
|
+
export declare function lintRules(value: unknown): string | null;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var R=Object.defineProperty;var a=(e,n)=>R(e,"name",{value:n,configurable:!0});import{prepared as u}from"../sqlite-statements.js";const E=["boot","workspace-open","file-read","document-read","command","pre-command","slash-command"],p=["name","preview","content"],y=["file-read","document-read","command","pre-command"],O=["on","match","matchFrontmatter","if","deliver"];function g(e){return{rowid:e.rowid,object:e.object,owner:e.owner,position:e.position,on:e.on_event,deliver:e.deliver,...e.match_json!==null?{match:JSON.parse(e.match_json)}:{},...e.match_frontmatter_json!==null?{matchFrontmatter:JSON.parse(e.match_frontmatter_json)}:{},...e.if_json!==null?{if:JSON.parse(e.if_json)}:{}}}a(g,"fromRaw");function _(e,n,t){const i=w(t);if(i!==null)throw new Error(`replaceRules(${n.id}): ${i}`);u(e,"DELETE FROM rules WHERE object = ?").run(n.rowid);const c=u(e,`INSERT INTO rules (object, owner, position, on_event, match_json, match_frontmatter_json, if_json, deliver)
|
|
2
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?)`);t.forEach((r,o)=>{c.run(n.rowid,n.owner,o,r.on,r.match!==void 0?JSON.stringify(r.match):null,r.matchFrontmatter!==void 0?JSON.stringify(r.matchFrontmatter):null,r.if!==void 0?JSON.stringify(r.if):null,r.deliver)})}a(_,"replaceRules");function v(e,n){const t=u(e,"SELECT owner FROM objects WHERE rowid = ?").get(n.rowid);if(t===void 0)throw new Error(`setRulesOwner: object ${n.id} does not exist`);u(e,"UPDATE rules SET owner = ? WHERE object = ?").run(t.owner,n.rowid)}a(v,"setRulesOwner");function $(e,n){return u(e,"SELECT * FROM rules WHERE object = ? ORDER BY position").all(n.rowid).map(g)}a($,"rulesOf");function b(e,n,t){if(n.length===0||t.length===0)return[];const i=`SELECT * FROM rules WHERE on_event IN (${n.map(()=>"?").join(",")})
|
|
3
|
+
AND owner IN (${t.map(()=>"?").join(",")}) ORDER BY object, position`;return e.prepare(i).all(...n,...t).map(g)}a(b,"rulesForOwners");const S={boot:"boot","workspace-open":"workspace-open",read:"file-read","memory-read":"document-read",command:"command","pre-command":"pre-command"};function s(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:void 0}a(s,"predicate");function j(e){if(typeof e=="string")return e.trim()===""?void 0:[e.trim()];if(!Array.isArray(e))return;const n=e.filter(t=>typeof t=="string"&&t.trim()!=="").map(t=>t.trim());return n.length>0?n:void 0}a(j,"globs");function x(e){const n=s(e.gate),t=a(r=>n!==void 0&&r!==void 0?{all:[n,r]}:n??r,"withGate"),i=[],c=Array.isArray(e.surfaces)?e.surfaces:[];for(const r of c){const o=s(r);if(o===void 0)continue;const d=typeof o.on=="string"?S[o.on]:void 0,f=o.at;if(d===void 0||typeof f!="string"||!p.includes(f))continue;const l=j(o.match),m=d==="file-read"?s(o["match-frontmatter"]):void 0;if(y.includes(d)&&l===void 0&&m===void 0)continue;const h=t(s(o.gate));i.push({on:d,deliver:f,...l!==void 0&&d!=="boot"&&d!=="workspace-open"?{match:l}:{},...m!==void 0?{matchFrontmatter:m}:{},...h!==void 0?{if:h}:{}})}return e.slash===!0&&i.push({on:"slash-command",deliver:"content",...n!==void 0?{if:n}:{}}),i}a(x,"rulesFromFrontmatter");function w(e){if(!Array.isArray(e))return`invalid rules: ${JSON.stringify(e)} (expected a list of {on, deliver, match?, matchFrontmatter?, if?} entries)`;for(const n of e){const t=s(n);if(t===void 0)return`invalid rule: ${JSON.stringify(n)} (expected an {on, deliver, match?, matchFrontmatter?, if?} object)`;for(const d of Object.keys(t))if(!O.includes(d))return`invalid rule: unknown key \`${d}\` (a rule carries only ${O.join(", ")})`;const i=t.on;if(typeof i!="string"||!E.includes(i))return`invalid rule \`on\`: ${JSON.stringify(i)} (expected ${E.join("|")})`;const c=t.deliver;if(typeof c!="string"||!p.includes(c))return`invalid rule \`deliver\`: ${JSON.stringify(c)} (expected ${p.join("|")})`;const r=t.match;if(r!==void 0){if(i==="boot"||i==="workspace-open"||i==="slash-command")return`invalid rule: \`match\` is meaningless on \`${i}\`; drop it`;if(!Array.isArray(r)||r.length===0||r.some(d=>typeof d!="string"||d.trim()===""))return`invalid rule \`match\`: ${JSON.stringify(r)} (expected a non-empty list of non-empty globs)`}const o=t.matchFrontmatter;if(o!==void 0){if(i!=="file-read")return"invalid rule: `matchFrontmatter` applies to `file-read` rules only";if(s(o)===void 0)return`invalid rule \`matchFrontmatter\`: ${JSON.stringify(o)} (expected a field\u2192matcher object)`}if(y.includes(i)&&r===void 0&&o===void 0)return`invalid rule: a \`${i}\` rule requires \`match\`${i==="file-read"?" or `matchFrontmatter`":""}`;if(t.if!==void 0&&s(t.if)===void 0)return`invalid rule \`if\`: ${JSON.stringify(t.if)} (expected a predicate object)`}return null}a(w,"lintRules");export{E as RULE_ONS,w as lintRules,_ as replaceRules,b as rulesForOwners,x as rulesFromFrontmatter,$ as rulesOf,v as setRulesOwner};
|