looply-cli 0.0.0-stage → 0.3.0
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 +21 -0
- package/README.md +137 -3
- package/dist/.src-hash +1 -0
- package/dist/acceptance-observe.d.ts +108 -0
- package/dist/acceptance-observe.d.ts.map +1 -0
- package/dist/acceptance-observe.js +152 -0
- package/dist/acceptance-observe.js.map +1 -0
- package/dist/agent-cmd.d.ts +131 -0
- package/dist/agent-cmd.d.ts.map +1 -0
- package/dist/agent-cmd.js +154 -0
- package/dist/agent-cmd.js.map +1 -0
- package/dist/agent-contained.d.ts +114 -0
- package/dist/agent-contained.d.ts.map +1 -0
- package/dist/agent-contained.js +292 -0
- package/dist/agent-contained.js.map +1 -0
- package/dist/agent-driver.d.ts +130 -0
- package/dist/agent-driver.d.ts.map +1 -0
- package/dist/agent-driver.js +170 -0
- package/dist/agent-driver.js.map +1 -0
- package/dist/agent-envelope.d.ts +94 -0
- package/dist/agent-envelope.d.ts.map +1 -0
- package/dist/agent-envelope.js +214 -0
- package/dist/agent-envelope.js.map +1 -0
- package/dist/agent-exec.d.ts +182 -0
- package/dist/agent-exec.d.ts.map +1 -0
- package/dist/agent-exec.js +125 -0
- package/dist/agent-exec.js.map +1 -0
- package/dist/agent-runtime.d.ts +23 -0
- package/dist/agent-runtime.d.ts.map +1 -0
- package/dist/agent-runtime.js +143 -0
- package/dist/agent-runtime.js.map +1 -0
- package/dist/approval-gate-read.d.ts +66 -0
- package/dist/approval-gate-read.d.ts.map +1 -0
- package/dist/approval-gate-read.js +138 -0
- package/dist/approval-gate-read.js.map +1 -0
- package/dist/approval-resolution.d.ts +87 -0
- package/dist/approval-resolution.d.ts.map +1 -0
- package/dist/approval-resolution.js +100 -0
- package/dist/approval-resolution.js.map +1 -0
- package/dist/approval-resumes.d.ts +102 -0
- package/dist/approval-resumes.d.ts.map +1 -0
- package/dist/approval-resumes.js +167 -0
- package/dist/approval-resumes.js.map +1 -0
- package/dist/ask-brain.d.ts +167 -0
- package/dist/ask-brain.d.ts.map +1 -0
- package/dist/ask-brain.js +355 -0
- package/dist/ask-brain.js.map +1 -0
- package/dist/autonomy-authority.d.ts +80 -0
- package/dist/autonomy-authority.d.ts.map +1 -0
- package/dist/autonomy-authority.js +82 -0
- package/dist/autonomy-authority.js.map +1 -0
- package/dist/autonomy-controller.d.ts +321 -0
- package/dist/autonomy-controller.d.ts.map +1 -0
- package/dist/autonomy-controller.js +517 -0
- package/dist/autonomy-controller.js.map +1 -0
- package/dist/autonomy-store.d.ts +327 -0
- package/dist/autonomy-store.d.ts.map +1 -0
- package/dist/autonomy-store.js +581 -0
- package/dist/autonomy-store.js.map +1 -0
- package/dist/autonomy-tick.d.ts +257 -0
- package/dist/autonomy-tick.d.ts.map +1 -0
- package/dist/autonomy-tick.js +616 -0
- package/dist/autonomy-tick.js.map +1 -0
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +2727 -0
- package/dist/bin.js.map +1 -0
- package/dist/brain-advice.d.ts +21 -0
- package/dist/brain-advice.d.ts.map +1 -0
- package/dist/brain-advice.js +51 -0
- package/dist/brain-advice.js.map +1 -0
- package/dist/candidate-replay-runtime.d.ts +125 -0
- package/dist/candidate-replay-runtime.d.ts.map +1 -0
- package/dist/candidate-replay-runtime.js +188 -0
- package/dist/candidate-replay-runtime.js.map +1 -0
- package/dist/checkout-carry.d.ts +76 -0
- package/dist/checkout-carry.d.ts.map +1 -0
- package/dist/checkout-carry.js +125 -0
- package/dist/checkout-carry.js.map +1 -0
- package/dist/citation-readers.d.ts +26 -0
- package/dist/citation-readers.d.ts.map +1 -0
- package/dist/citation-readers.js +102 -0
- package/dist/citation-readers.js.map +1 -0
- package/dist/command-receipts.d.ts +79 -0
- package/dist/command-receipts.d.ts.map +1 -0
- package/dist/command-receipts.js +143 -0
- package/dist/command-receipts.js.map +1 -0
- package/dist/command-runner.d.ts +32 -0
- package/dist/command-runner.d.ts.map +1 -0
- package/dist/command-runner.js +108 -0
- package/dist/command-runner.js.map +1 -0
- package/dist/compatible-sets.d.ts +67 -0
- package/dist/compatible-sets.d.ts.map +1 -0
- package/dist/compatible-sets.js +81 -0
- package/dist/compatible-sets.js.map +1 -0
- package/dist/compile-check.d.ts +31 -0
- package/dist/compile-check.d.ts.map +1 -0
- package/dist/compile-check.js +34 -0
- package/dist/compile-check.js.map +1 -0
- package/dist/compile-store.d.ts +16 -0
- package/dist/compile-store.d.ts.map +1 -0
- package/dist/compile-store.js +21 -0
- package/dist/compile-store.js.map +1 -0
- package/dist/completion.d.ts +106 -0
- package/dist/completion.d.ts.map +1 -0
- package/dist/completion.js +131 -0
- package/dist/completion.js.map +1 -0
- package/dist/config.d.ts +549 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +763 -0
- package/dist/config.js.map +1 -0
- package/dist/control-file.d.ts +142 -0
- package/dist/control-file.d.ts.map +1 -0
- package/dist/control-file.js +144 -0
- package/dist/control-file.js.map +1 -0
- package/dist/coordinator-state.d.ts +131 -0
- package/dist/coordinator-state.d.ts.map +1 -0
- package/dist/coordinator-state.js +380 -0
- package/dist/coordinator-state.js.map +1 -0
- package/dist/coordinator.d.ts +95 -0
- package/dist/coordinator.d.ts.map +1 -0
- package/dist/coordinator.js +97 -0
- package/dist/coordinator.js.map +1 -0
- package/dist/cursor-store.d.ts +53 -0
- package/dist/cursor-store.d.ts.map +1 -0
- package/dist/cursor-store.js +98 -0
- package/dist/cursor-store.js.map +1 -0
- package/dist/daemon-cmd.d.ts +239 -0
- package/dist/daemon-cmd.d.ts.map +1 -0
- package/dist/daemon-cmd.js +1751 -0
- package/dist/daemon-cmd.js.map +1 -0
- package/dist/daemon-lock.d.ts +140 -0
- package/dist/daemon-lock.d.ts.map +1 -0
- package/dist/daemon-lock.js +352 -0
- package/dist/daemon-lock.js.map +1 -0
- package/dist/daemon-recovery.d.ts +78 -0
- package/dist/daemon-recovery.d.ts.map +1 -0
- package/dist/daemon-recovery.js +161 -0
- package/dist/daemon-recovery.js.map +1 -0
- package/dist/daemon.d.ts +368 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +601 -0
- package/dist/daemon.js.map +1 -0
- package/dist/declared-response-shape.d.ts +93 -0
- package/dist/declared-response-shape.d.ts.map +1 -0
- package/dist/declared-response-shape.js +200 -0
- package/dist/declared-response-shape.js.map +1 -0
- package/dist/declared-surfaces.d.ts +16 -0
- package/dist/declared-surfaces.d.ts.map +1 -0
- package/dist/declared-surfaces.js +19 -0
- package/dist/declared-surfaces.js.map +1 -0
- package/dist/depends-review.d.ts +113 -0
- package/dist/depends-review.d.ts.map +1 -0
- package/dist/depends-review.js +110 -0
- package/dist/depends-review.js.map +1 -0
- package/dist/doctor.d.ts +91 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +71 -0
- package/dist/doctor.js.map +1 -0
- package/dist/edge-approval.d.ts +105 -0
- package/dist/edge-approval.d.ts.map +1 -0
- package/dist/edge-approval.js +100 -0
- package/dist/edge-approval.js.map +1 -0
- package/dist/evidence-cache.d.ts +45 -0
- package/dist/evidence-cache.d.ts.map +1 -0
- package/dist/evidence-cache.js +90 -0
- package/dist/evidence-cache.js.map +1 -0
- package/dist/evidence-cmd.d.ts +133 -0
- package/dist/evidence-cmd.d.ts.map +1 -0
- package/dist/evidence-cmd.js +347 -0
- package/dist/evidence-cmd.js.map +1 -0
- package/dist/evidence-facts.d.ts +40 -0
- package/dist/evidence-facts.d.ts.map +1 -0
- package/dist/evidence-facts.js +114 -0
- package/dist/evidence-facts.js.map +1 -0
- package/dist/exclusive-lock.d.ts +52 -0
- package/dist/exclusive-lock.d.ts.map +1 -0
- package/dist/exclusive-lock.js +150 -0
- package/dist/exclusive-lock.js.map +1 -0
- package/dist/exec-domains.d.ts +140 -0
- package/dist/exec-domains.d.ts.map +1 -0
- package/dist/exec-domains.js +287 -0
- package/dist/exec-domains.js.map +1 -0
- package/dist/exemption-store.d.ts +197 -0
- package/dist/exemption-store.d.ts.map +1 -0
- package/dist/exemption-store.js +266 -0
- package/dist/exemption-store.js.map +1 -0
- package/dist/explicit-start-gate.d.ts +96 -0
- package/dist/explicit-start-gate.d.ts.map +1 -0
- package/dist/explicit-start-gate.js +103 -0
- package/dist/explicit-start-gate.js.map +1 -0
- package/dist/fs-trouble.d.ts +70 -0
- package/dist/fs-trouble.d.ts.map +1 -0
- package/dist/fs-trouble.js +98 -0
- package/dist/fs-trouble.js.map +1 -0
- package/dist/gate.d.ts +278 -0
- package/dist/gate.d.ts.map +1 -0
- package/dist/gate.js +278 -0
- package/dist/gate.js.map +1 -0
- package/dist/git-driver.d.ts +519 -0
- package/dist/git-driver.d.ts.map +1 -0
- package/dist/git-driver.js +900 -0
- package/dist/git-driver.js.map +1 -0
- package/dist/git-push-executor.d.ts +41 -0
- package/dist/git-push-executor.d.ts.map +1 -0
- package/dist/git-push-executor.js +142 -0
- package/dist/git-push-executor.js.map +1 -0
- package/dist/glob.d.ts +26 -0
- package/dist/glob.d.ts.map +1 -0
- package/dist/glob.js +93 -0
- package/dist/glob.js.map +1 -0
- package/dist/goal-adaptive.d.ts +295 -0
- package/dist/goal-adaptive.d.ts.map +1 -0
- package/dist/goal-adaptive.js +393 -0
- package/dist/goal-adaptive.js.map +1 -0
- package/dist/goal-compile.d.ts +342 -0
- package/dist/goal-compile.d.ts.map +1 -0
- package/dist/goal-compile.js +444 -0
- package/dist/goal-compile.js.map +1 -0
- package/dist/goal-depends-executor.d.ts +55 -0
- package/dist/goal-depends-executor.d.ts.map +1 -0
- package/dist/goal-depends-executor.js +202 -0
- package/dist/goal-depends-executor.js.map +1 -0
- package/dist/goal-execution-evidence.d.ts +135 -0
- package/dist/goal-execution-evidence.d.ts.map +1 -0
- package/dist/goal-execution-evidence.js +159 -0
- package/dist/goal-execution-evidence.js.map +1 -0
- package/dist/goal-gap.d.ts +140 -0
- package/dist/goal-gap.d.ts.map +1 -0
- package/dist/goal-gap.js +197 -0
- package/dist/goal-gap.js.map +1 -0
- package/dist/goal-met-target.d.ts +98 -0
- package/dist/goal-met-target.d.ts.map +1 -0
- package/dist/goal-met-target.js +92 -0
- package/dist/goal-met-target.js.map +1 -0
- package/dist/goal-ownership.d.ts +416 -0
- package/dist/goal-ownership.d.ts.map +1 -0
- package/dist/goal-ownership.js +576 -0
- package/dist/goal-ownership.js.map +1 -0
- package/dist/goal-runs.d.ts +82 -0
- package/dist/goal-runs.d.ts.map +1 -0
- package/dist/goal-runs.js +120 -0
- package/dist/goal-runs.js.map +1 -0
- package/dist/goal-store.d.ts +146 -0
- package/dist/goal-store.d.ts.map +1 -0
- package/dist/goal-store.js +294 -0
- package/dist/goal-store.js.map +1 -0
- package/dist/goal-view.d.ts +156 -0
- package/dist/goal-view.d.ts.map +1 -0
- package/dist/goal-view.js +499 -0
- package/dist/goal-view.js.map +1 -0
- package/dist/governed-approvals.d.ts +152 -0
- package/dist/governed-approvals.d.ts.map +1 -0
- package/dist/governed-approvals.js +246 -0
- package/dist/governed-approvals.js.map +1 -0
- package/dist/governed-broker.d.ts +169 -0
- package/dist/governed-broker.d.ts.map +1 -0
- package/dist/governed-broker.js +196 -0
- package/dist/governed-broker.js.map +1 -0
- package/dist/governed-run.d.ts +220 -0
- package/dist/governed-run.d.ts.map +1 -0
- package/dist/governed-run.js +406 -0
- package/dist/governed-run.js.map +1 -0
- package/dist/grant-reconcile.d.ts +63 -0
- package/dist/grant-reconcile.d.ts.map +1 -0
- package/dist/grant-reconcile.js +121 -0
- package/dist/grant-reconcile.js.map +1 -0
- package/dist/index-for-head.d.ts +56 -0
- package/dist/index-for-head.d.ts.map +1 -0
- package/dist/index-for-head.js +103 -0
- package/dist/index-for-head.js.map +1 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/dist/init-detect.d.ts +39 -0
- package/dist/init-detect.d.ts.map +1 -0
- package/dist/init-detect.js +188 -0
- package/dist/init-detect.js.map +1 -0
- package/dist/integration-deps.d.ts +62 -0
- package/dist/integration-deps.d.ts.map +1 -0
- package/dist/integration-deps.js +251 -0
- package/dist/integration-deps.js.map +1 -0
- package/dist/integration-runtime.d.ts +458 -0
- package/dist/integration-runtime.d.ts.map +1 -0
- package/dist/integration-runtime.js +681 -0
- package/dist/integration-runtime.js.map +1 -0
- package/dist/integration.d.ts +45 -0
- package/dist/integration.d.ts.map +1 -0
- package/dist/integration.js +87 -0
- package/dist/integration.js.map +1 -0
- package/dist/integrator.d.ts +84 -0
- package/dist/integrator.d.ts.map +1 -0
- package/dist/integrator.js +193 -0
- package/dist/integrator.js.map +1 -0
- package/dist/lane-claims.d.ts +174 -0
- package/dist/lane-claims.d.ts.map +1 -0
- package/dist/lane-claims.js +218 -0
- package/dist/lane-claims.js.map +1 -0
- package/dist/lane-coverage.d.ts +87 -0
- package/dist/lane-coverage.d.ts.map +1 -0
- package/dist/lane-coverage.js +129 -0
- package/dist/lane-coverage.js.map +1 -0
- package/dist/ledger-replay.d.ts +115 -0
- package/dist/ledger-replay.d.ts.map +1 -0
- package/dist/ledger-replay.js +155 -0
- package/dist/ledger-replay.js.map +1 -0
- package/dist/ledger-store.d.ts +68 -0
- package/dist/ledger-store.d.ts.map +1 -0
- package/dist/ledger-store.js +111 -0
- package/dist/ledger-store.js.map +1 -0
- package/dist/loop-safety-observer.d.ts +132 -0
- package/dist/loop-safety-observer.d.ts.map +1 -0
- package/dist/loop-safety-observer.js +76 -0
- package/dist/loop-safety-observer.js.map +1 -0
- package/dist/loop-safety-store.d.ts +339 -0
- package/dist/loop-safety-store.d.ts.map +1 -0
- package/dist/loop-safety-store.js +800 -0
- package/dist/loop-safety-store.js.map +1 -0
- package/dist/machine-store.d.ts +54 -0
- package/dist/machine-store.d.ts.map +1 -0
- package/dist/machine-store.js +149 -0
- package/dist/machine-store.js.map +1 -0
- package/dist/mcp-main.d.ts +2 -0
- package/dist/mcp-main.d.ts.map +1 -0
- package/dist/mcp-main.js +116 -0
- package/dist/mcp-main.js.map +1 -0
- package/dist/mcp-server.d.ts +72 -0
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/mcp-server.js +259 -0
- package/dist/mcp-server.js.map +1 -0
- package/dist/model-routing.d.ts +75 -0
- package/dist/model-routing.d.ts.map +1 -0
- package/dist/model-routing.js +108 -0
- package/dist/model-routing.js.map +1 -0
- package/dist/model-transport.d.ts +188 -0
- package/dist/model-transport.d.ts.map +1 -0
- package/dist/model-transport.js +625 -0
- package/dist/model-transport.js.map +1 -0
- package/dist/notify-cadence.d.ts +55 -0
- package/dist/notify-cadence.d.ts.map +1 -0
- package/dist/notify-cadence.js +68 -0
- package/dist/notify-cadence.js.map +1 -0
- package/dist/notify-channel.d.ts +69 -0
- package/dist/notify-channel.d.ts.map +1 -0
- package/dist/notify-channel.js +151 -0
- package/dist/notify-channel.js.map +1 -0
- package/dist/notify.d.ts +71 -0
- package/dist/notify.d.ts.map +1 -0
- package/dist/notify.js +125 -0
- package/dist/notify.js.map +1 -0
- package/dist/observation-inventory.d.ts +65 -0
- package/dist/observation-inventory.d.ts.map +1 -0
- package/dist/observation-inventory.js +139 -0
- package/dist/observation-inventory.js.map +1 -0
- package/dist/owned-children.d.ts +45 -0
- package/dist/owned-children.d.ts.map +1 -0
- package/dist/owned-children.js +64 -0
- package/dist/owned-children.js.map +1 -0
- package/dist/packet-for-goal.d.ts +19 -0
- package/dist/packet-for-goal.d.ts.map +1 -0
- package/dist/packet-for-goal.js +32 -0
- package/dist/packet-for-goal.js.map +1 -0
- package/dist/pair-cmd.d.ts +85 -0
- package/dist/pair-cmd.d.ts.map +1 -0
- package/dist/pair-cmd.js +205 -0
- package/dist/pair-cmd.js.map +1 -0
- package/dist/partial-asker.d.ts +96 -0
- package/dist/partial-asker.d.ts.map +1 -0
- package/dist/partial-asker.js +117 -0
- package/dist/partial-asker.js.map +1 -0
- package/dist/pdf-text-lines.d.ts +17 -0
- package/dist/pdf-text-lines.d.ts.map +1 -0
- package/dist/pdf-text-lines.js +70 -0
- package/dist/pdf-text-lines.js.map +1 -0
- package/dist/pdf-text-worker.d.ts +2 -0
- package/dist/pdf-text-worker.d.ts.map +1 -0
- package/dist/pdf-text-worker.js +81 -0
- package/dist/pdf-text-worker.js.map +1 -0
- package/dist/pdf-text.d.ts +56 -0
- package/dist/pdf-text.d.ts.map +1 -0
- package/dist/pdf-text.js +64 -0
- package/dist/pdf-text.js.map +1 -0
- package/dist/pending-action.d.ts +154 -0
- package/dist/pending-action.d.ts.map +1 -0
- package/dist/pending-action.js +148 -0
- package/dist/pending-action.js.map +1 -0
- package/dist/preemptor.d.ts +40 -0
- package/dist/preemptor.d.ts.map +1 -0
- package/dist/preemptor.js +49 -0
- package/dist/preemptor.js.map +1 -0
- package/dist/programme-mode.d.ts +29 -0
- package/dist/programme-mode.d.ts.map +1 -0
- package/dist/programme-mode.js +50 -0
- package/dist/programme-mode.js.map +1 -0
- package/dist/progress-view.d.ts +14 -0
- package/dist/progress-view.d.ts.map +1 -0
- package/dist/progress-view.js +114 -0
- package/dist/progress-view.js.map +1 -0
- package/dist/project-graph-builder.d.ts +81 -0
- package/dist/project-graph-builder.d.ts.map +1 -0
- package/dist/project-graph-builder.js +246 -0
- package/dist/project-graph-builder.js.map +1 -0
- package/dist/project-graph-runtime.d.ts +86 -0
- package/dist/project-graph-runtime.d.ts.map +1 -0
- package/dist/project-graph-runtime.js +112 -0
- package/dist/project-graph-runtime.js.map +1 -0
- package/dist/project-index-builder.d.ts +96 -0
- package/dist/project-index-builder.d.ts.map +1 -0
- package/dist/project-index-builder.js +298 -0
- package/dist/project-index-builder.js.map +1 -0
- package/dist/project-index-facts.d.ts +51 -0
- package/dist/project-index-facts.d.ts.map +1 -0
- package/dist/project-index-facts.js +117 -0
- package/dist/project-index-facts.js.map +1 -0
- package/dist/project-index-store.d.ts +97 -0
- package/dist/project-index-store.d.ts.map +1 -0
- package/dist/project-index-store.js +140 -0
- package/dist/project-index-store.js.map +1 -0
- package/dist/project-memory-store.d.ts +127 -0
- package/dist/project-memory-store.d.ts.map +1 -0
- package/dist/project-memory-store.js +302 -0
- package/dist/project-memory-store.js.map +1 -0
- package/dist/proposal-store.d.ts +14 -0
- package/dist/proposal-store.d.ts.map +1 -0
- package/dist/proposal-store.js +19 -0
- package/dist/proposal-store.js.map +1 -0
- package/dist/prover.d.ts +80 -0
- package/dist/prover.d.ts.map +1 -0
- package/dist/prover.js +137 -0
- package/dist/prover.js.map +1 -0
- package/dist/provider-identity-store.d.ts +34 -0
- package/dist/provider-identity-store.d.ts.map +1 -0
- package/dist/provider-identity-store.js +72 -0
- package/dist/provider-identity-store.js.map +1 -0
- package/dist/provider-identity.d.ts +104 -0
- package/dist/provider-identity.d.ts.map +1 -0
- package/dist/provider-identity.js +167 -0
- package/dist/provider-identity.js.map +1 -0
- package/dist/provider-limit.d.ts +79 -0
- package/dist/provider-limit.d.ts.map +1 -0
- package/dist/provider-limit.js +148 -0
- package/dist/provider-limit.js.map +1 -0
- package/dist/provider-preflight.d.ts +171 -0
- package/dist/provider-preflight.d.ts.map +1 -0
- package/dist/provider-preflight.js +395 -0
- package/dist/provider-preflight.js.map +1 -0
- package/dist/provider-state.d.ts +120 -0
- package/dist/provider-state.d.ts.map +1 -0
- package/dist/provider-state.js +182 -0
- package/dist/provider-state.js.map +1 -0
- package/dist/providers.d.ts +132 -0
- package/dist/providers.d.ts.map +1 -0
- package/dist/providers.js +161 -0
- package/dist/providers.js.map +1 -0
- package/dist/publication-recorder.d.ts +117 -0
- package/dist/publication-recorder.d.ts.map +1 -0
- package/dist/publication-recorder.js +124 -0
- package/dist/publication-recorder.js.map +1 -0
- package/dist/pursuit-delivery.d.ts +24 -0
- package/dist/pursuit-delivery.d.ts.map +1 -0
- package/dist/pursuit-delivery.js +38 -0
- package/dist/pursuit-delivery.js.map +1 -0
- package/dist/queue-store.d.ts +132 -0
- package/dist/queue-store.d.ts.map +1 -0
- package/dist/queue-store.js +185 -0
- package/dist/queue-store.js.map +1 -0
- package/dist/queue-summary.d.ts +14 -0
- package/dist/queue-summary.d.ts.map +1 -0
- package/dist/queue-summary.js +82 -0
- package/dist/queue-summary.js.map +1 -0
- package/dist/queue-view.d.ts +20 -0
- package/dist/queue-view.d.ts.map +1 -0
- package/dist/queue-view.js +163 -0
- package/dist/queue-view.js.map +1 -0
- package/dist/queue-write-lease.d.ts +106 -0
- package/dist/queue-write-lease.d.ts.map +1 -0
- package/dist/queue-write-lease.js +282 -0
- package/dist/queue-write-lease.js.map +1 -0
- package/dist/rails-home.d.ts +162 -0
- package/dist/rails-home.d.ts.map +1 -0
- package/dist/rails-home.js +452 -0
- package/dist/rails-home.js.map +1 -0
- package/dist/rails-migrations.d.ts +75 -0
- package/dist/rails-migrations.d.ts.map +1 -0
- package/dist/rails-migrations.js +199 -0
- package/dist/rails-migrations.js.map +1 -0
- package/dist/rails-stores.d.ts +49 -0
- package/dist/rails-stores.d.ts.map +1 -0
- package/dist/rails-stores.js +100 -0
- package/dist/rails-stores.js.map +1 -0
- package/dist/reaper.d.ts +69 -0
- package/dist/reaper.d.ts.map +1 -0
- package/dist/reaper.js +152 -0
- package/dist/reaper.js.map +1 -0
- package/dist/record-store.d.ts +36 -0
- package/dist/record-store.d.ts.map +1 -0
- package/dist/record-store.js +78 -0
- package/dist/record-store.js.map +1 -0
- package/dist/recovery-io.d.ts +50 -0
- package/dist/recovery-io.d.ts.map +1 -0
- package/dist/recovery-io.js +122 -0
- package/dist/recovery-io.js.map +1 -0
- package/dist/recovery.d.ts +146 -0
- package/dist/recovery.d.ts.map +1 -0
- package/dist/recovery.js +110 -0
- package/dist/recovery.js.map +1 -0
- package/dist/redraw.d.ts +34 -0
- package/dist/redraw.d.ts.map +1 -0
- package/dist/redraw.js +62 -0
- package/dist/redraw.js.map +1 -0
- package/dist/rejected-evidence.d.ts +255 -0
- package/dist/rejected-evidence.d.ts.map +1 -0
- package/dist/rejected-evidence.js +324 -0
- package/dist/rejected-evidence.js.map +1 -0
- package/dist/report-cmd.d.ts +32 -0
- package/dist/report-cmd.d.ts.map +1 -0
- package/dist/report-cmd.js +201 -0
- package/dist/report-cmd.js.map +1 -0
- package/dist/repos-cmd.d.ts +80 -0
- package/dist/repos-cmd.d.ts.map +1 -0
- package/dist/repos-cmd.js +240 -0
- package/dist/repos-cmd.js.map +1 -0
- package/dist/request-body-shape.d.ts +93 -0
- package/dist/request-body-shape.d.ts.map +1 -0
- package/dist/request-body-shape.js +407 -0
- package/dist/request-body-shape.js.map +1 -0
- package/dist/requirement-claims.d.ts +89 -0
- package/dist/requirement-claims.d.ts.map +1 -0
- package/dist/requirement-claims.js +92 -0
- package/dist/requirement-claims.js.map +1 -0
- package/dist/retention-apply-runtime.d.ts +105 -0
- package/dist/retention-apply-runtime.d.ts.map +1 -0
- package/dist/retention-apply-runtime.js +269 -0
- package/dist/retention-apply-runtime.js.map +1 -0
- package/dist/reverify.d.ts +41 -0
- package/dist/reverify.d.ts.map +1 -0
- package/dist/reverify.js +69 -0
- package/dist/reverify.js.map +1 -0
- package/dist/round-records.d.ts +65 -0
- package/dist/round-records.d.ts.map +1 -0
- package/dist/round-records.js +61 -0
- package/dist/round-records.js.map +1 -0
- package/dist/round-runner.d.ts +924 -0
- package/dist/round-runner.d.ts.map +1 -0
- package/dist/round-runner.js +1693 -0
- package/dist/round-runner.js.map +1 -0
- package/dist/run-approval.d.ts +180 -0
- package/dist/run-approval.d.ts.map +1 -0
- package/dist/run-approval.js +199 -0
- package/dist/run-approval.js.map +1 -0
- package/dist/run-cmd.d.ts +359 -0
- package/dist/run-cmd.d.ts.map +1 -0
- package/dist/run-cmd.js +4418 -0
- package/dist/run-cmd.js.map +1 -0
- package/dist/run-delivery.d.ts +71 -0
- package/dist/run-delivery.d.ts.map +1 -0
- package/dist/run-delivery.js +104 -0
- package/dist/run-delivery.js.map +1 -0
- package/dist/run-ended.d.ts +75 -0
- package/dist/run-ended.d.ts.map +1 -0
- package/dist/run-ended.js +27 -0
- package/dist/run-ended.js.map +1 -0
- package/dist/run-ending-locator.d.ts +125 -0
- package/dist/run-ending-locator.d.ts.map +1 -0
- package/dist/run-ending-locator.js +133 -0
- package/dist/run-ending-locator.js.map +1 -0
- package/dist/run-launcher.d.ts +459 -0
- package/dist/run-launcher.d.ts.map +1 -0
- package/dist/run-launcher.js +652 -0
- package/dist/run-launcher.js.map +1 -0
- package/dist/run-lease.d.ts +208 -0
- package/dist/run-lease.d.ts.map +1 -0
- package/dist/run-lease.js +301 -0
- package/dist/run-lease.js.map +1 -0
- package/dist/run-refusal-marks.d.ts +189 -0
- package/dist/run-refusal-marks.d.ts.map +1 -0
- package/dist/run-refusal-marks.js +249 -0
- package/dist/run-refusal-marks.js.map +1 -0
- package/dist/run-start-marks.d.ts +153 -0
- package/dist/run-start-marks.d.ts.map +1 -0
- package/dist/run-start-marks.js +269 -0
- package/dist/run-start-marks.js.map +1 -0
- package/dist/scan-cmd.d.ts +14 -0
- package/dist/scan-cmd.d.ts.map +1 -0
- package/dist/scan-cmd.js +270 -0
- package/dist/scan-cmd.js.map +1 -0
- package/dist/scan-events.d.ts +50 -0
- package/dist/scan-events.d.ts.map +1 -0
- package/dist/scan-events.js +91 -0
- package/dist/scan-events.js.map +1 -0
- package/dist/scan.d.ts +191 -0
- package/dist/scan.d.ts.map +1 -0
- package/dist/scan.js +417 -0
- package/dist/scan.js.map +1 -0
- package/dist/scope-rule.d.ts +148 -0
- package/dist/scope-rule.d.ts.map +1 -0
- package/dist/scope-rule.js +121 -0
- package/dist/scope-rule.js.map +1 -0
- package/dist/self-repo-id.d.ts +18 -0
- package/dist/self-repo-id.d.ts.map +1 -0
- package/dist/self-repo-id.js +70 -0
- package/dist/self-repo-id.js.map +1 -0
- package/dist/serve-cmd.d.ts +115 -0
- package/dist/serve-cmd.d.ts.map +1 -0
- package/dist/serve-cmd.js +505 -0
- package/dist/serve-cmd.js.map +1 -0
- package/dist/serve.d.ts +167 -0
- package/dist/serve.d.ts.map +1 -0
- package/dist/serve.js +336 -0
- package/dist/serve.js.map +1 -0
- package/dist/server-client.d.ts +766 -0
- package/dist/server-client.d.ts.map +1 -0
- package/dist/server-client.js +475 -0
- package/dist/server-client.js.map +1 -0
- package/dist/session-adapter-runtime.d.ts +195 -0
- package/dist/session-adapter-runtime.d.ts.map +1 -0
- package/dist/session-adapter-runtime.js +373 -0
- package/dist/session-adapter-runtime.js.map +1 -0
- package/dist/session-checkpoint-runtime.d.ts +62 -0
- package/dist/session-checkpoint-runtime.d.ts.map +1 -0
- package/dist/session-checkpoint-runtime.js +268 -0
- package/dist/session-checkpoint-runtime.js.map +1 -0
- package/dist/session-control-transport.d.ts +106 -0
- package/dist/session-control-transport.d.ts.map +1 -0
- package/dist/session-control-transport.js +232 -0
- package/dist/session-control-transport.js.map +1 -0
- package/dist/session-observation-store.d.ts +98 -0
- package/dist/session-observation-store.d.ts.map +1 -0
- package/dist/session-observation-store.js +155 -0
- package/dist/session-observation-store.js.map +1 -0
- package/dist/session-observe-runtime.d.ts +123 -0
- package/dist/session-observe-runtime.d.ts.map +1 -0
- package/dist/session-observe-runtime.js +317 -0
- package/dist/session-observe-runtime.js.map +1 -0
- package/dist/session-store.d.ts +98 -0
- package/dist/session-store.d.ts.map +1 -0
- package/dist/session-store.js +116 -0
- package/dist/session-store.js.map +1 -0
- package/dist/sessions-cmd.d.ts +202 -0
- package/dist/sessions-cmd.d.ts.map +1 -0
- package/dist/sessions-cmd.js +609 -0
- package/dist/sessions-cmd.js.map +1 -0
- package/dist/settings-overlay.d.ts +53 -0
- package/dist/settings-overlay.d.ts.map +1 -0
- package/dist/settings-overlay.js +175 -0
- package/dist/settings-overlay.js.map +1 -0
- package/dist/setup-prompt.d.ts +34 -0
- package/dist/setup-prompt.d.ts.map +1 -0
- package/dist/setup-prompt.js +92 -0
- package/dist/setup-prompt.js.map +1 -0
- package/dist/setup.d.ts +103 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +283 -0
- package/dist/setup.js.map +1 -0
- package/dist/shared-grants.d.ts +164 -0
- package/dist/shared-grants.d.ts.map +1 -0
- package/dist/shared-grants.js +242 -0
- package/dist/shared-grants.js.map +1 -0
- package/dist/signals.d.ts +55 -0
- package/dist/signals.d.ts.map +1 -0
- package/dist/signals.js +85 -0
- package/dist/signals.js.map +1 -0
- package/dist/source-cmd.d.ts +201 -0
- package/dist/source-cmd.d.ts.map +1 -0
- package/dist/source-cmd.js +684 -0
- package/dist/source-cmd.js.map +1 -0
- package/dist/source-verdict.d.ts +99 -0
- package/dist/source-verdict.d.ts.map +1 -0
- package/dist/source-verdict.js +182 -0
- package/dist/source-verdict.js.map +1 -0
- package/dist/spend-ledger.d.ts +350 -0
- package/dist/spend-ledger.d.ts.map +1 -0
- package/dist/spend-ledger.js +546 -0
- package/dist/spend-ledger.js.map +1 -0
- package/dist/stale-run-sweep.d.ts +79 -0
- package/dist/stale-run-sweep.d.ts.map +1 -0
- package/dist/stale-run-sweep.js +116 -0
- package/dist/stale-run-sweep.js.map +1 -0
- package/dist/start-attempts.d.ts +385 -0
- package/dist/start-attempts.d.ts.map +1 -0
- package/dist/start-attempts.js +613 -0
- package/dist/start-attempts.js.map +1 -0
- package/dist/status-cmd.d.ts +28 -0
- package/dist/status-cmd.d.ts.map +1 -0
- package/dist/status-cmd.js +116 -0
- package/dist/status-cmd.js.map +1 -0
- package/dist/stop-follow-up.d.ts +107 -0
- package/dist/stop-follow-up.d.ts.map +1 -0
- package/dist/stop-follow-up.js +172 -0
- package/dist/stop-follow-up.js.map +1 -0
- package/dist/surface-lease.d.ts +118 -0
- package/dist/surface-lease.d.ts.map +1 -0
- package/dist/surface-lease.js +485 -0
- package/dist/surface-lease.js.map +1 -0
- package/dist/sync.d.ts +54 -0
- package/dist/sync.d.ts.map +1 -0
- package/dist/sync.js +93 -0
- package/dist/sync.js.map +1 -0
- package/dist/syncing-ledger.d.ts +45 -0
- package/dist/syncing-ledger.d.ts.map +1 -0
- package/dist/syncing-ledger.js +53 -0
- package/dist/syncing-ledger.js.map +1 -0
- package/dist/temp-fixtures.d.ts +68 -0
- package/dist/temp-fixtures.d.ts.map +1 -0
- package/dist/temp-fixtures.js +38 -0
- package/dist/temp-fixtures.js.map +1 -0
- package/dist/token-window.d.ts +84 -0
- package/dist/token-window.d.ts.map +1 -0
- package/dist/token-window.js +143 -0
- package/dist/token-window.js.map +1 -0
- package/dist/tool-bridge.d.ts +177 -0
- package/dist/tool-bridge.d.ts.map +1 -0
- package/dist/tool-bridge.js +329 -0
- package/dist/tool-bridge.js.map +1 -0
- package/dist/tool-call-record.d.ts +197 -0
- package/dist/tool-call-record.d.ts.map +1 -0
- package/dist/tool-call-record.js +276 -0
- package/dist/tool-call-record.js.map +1 -0
- package/dist/tool-protocol.d.ts +135 -0
- package/dist/tool-protocol.d.ts.map +1 -0
- package/dist/tool-protocol.js +104 -0
- package/dist/tool-protocol.js.map +1 -0
- package/dist/tool-worker.d.ts +3 -0
- package/dist/tool-worker.d.ts.map +1 -0
- package/dist/tool-worker.js +478 -0
- package/dist/tool-worker.js.map +1 -0
- package/dist/toolchain-mirror.d.ts +86 -0
- package/dist/toolchain-mirror.d.ts.map +1 -0
- package/dist/toolchain-mirror.js +307 -0
- package/dist/toolchain-mirror.js.map +1 -0
- package/dist/trusted-git.d.ts +243 -0
- package/dist/trusted-git.d.ts.map +1 -0
- package/dist/trusted-git.js +920 -0
- package/dist/trusted-git.js.map +1 -0
- package/dist/ui.d.ts +76 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +118 -0
- package/dist/ui.js.map +1 -0
- package/dist/untrusted-exec.d.ts +275 -0
- package/dist/untrusted-exec.d.ts.map +1 -0
- package/dist/untrusted-exec.js +479 -0
- package/dist/untrusted-exec.js.map +1 -0
- package/dist/untrusted-gate.d.ts +73 -0
- package/dist/untrusted-gate.d.ts.map +1 -0
- package/dist/untrusted-gate.js +226 -0
- package/dist/untrusted-gate.js.map +1 -0
- package/dist/uploader.d.ts +153 -0
- package/dist/uploader.d.ts.map +1 -0
- package/dist/uploader.js +204 -0
- package/dist/uploader.js.map +1 -0
- package/dist/verifier.d.ts +66 -0
- package/dist/verifier.d.ts.map +1 -0
- package/dist/verifier.js +170 -0
- package/dist/verifier.js.map +1 -0
- package/dist/verify-apply.d.ts +26 -0
- package/dist/verify-apply.d.ts.map +1 -0
- package/dist/verify-apply.js +36 -0
- package/dist/verify-apply.js.map +1 -0
- package/dist/verify-cmd.d.ts +44 -0
- package/dist/verify-cmd.d.ts.map +1 -0
- package/dist/verify-cmd.js +125 -0
- package/dist/verify-cmd.js.map +1 -0
- package/dist/verify-pass.d.ts +73 -0
- package/dist/verify-pass.d.ts.map +1 -0
- package/dist/verify-pass.js +103 -0
- package/dist/verify-pass.js.map +1 -0
- package/dist/welcome.d.ts +43 -0
- package/dist/welcome.d.ts.map +1 -0
- package/dist/welcome.js +116 -0
- package/dist/welcome.js.map +1 -0
- package/dist/workspace-provisioner.d.ts +65 -0
- package/dist/workspace-provisioner.d.ts.map +1 -0
- package/dist/workspace-provisioner.js +66 -0
- package/dist/workspace-provisioner.js.map +1 -0
- package/dist/workspace-quarantine.d.ts +64 -0
- package/dist/workspace-quarantine.d.ts.map +1 -0
- package/dist/workspace-quarantine.js +156 -0
- package/dist/workspace-quarantine.js.map +1 -0
- package/dist/workspace-residue-sweep.d.ts +113 -0
- package/dist/workspace-residue-sweep.d.ts.map +1 -0
- package/dist/workspace-residue-sweep.js +158 -0
- package/dist/workspace-residue-sweep.js.map +1 -0
- package/dist/workspace.d.ts +639 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +2026 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +52 -4
- package/win/CredProbe.cs +64 -0
- package/win/FakeClaude.cs +56 -0
- package/win/HandleProbe.cs +116 -0
- package/win/TokenProbe.cs +53 -0
- package/win/appcontainer.ps1 +500 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-git.js","sourceRoot":"","sources":["../src/trusted-git.ts"],"names":[],"mappings":";;AA6LA,8CAcC;AAuFD,4CAmBC;AAmGD,0CAKC;AAWD,kDAuBC;AAiBD,4CAKC;AAwBD,8CAqCC;AA6BD,gCAiBC;AA4BD,8BAuBC;AAQD,wCA4BC;AAqGD,sCAoCC;AAwBD,4CAMC;AAsDD,wCAGC;AAED,4CA0BC;AAED,kDAMC;AA35BD,qCAA2G;AAC3G,yCAAoF;AACpF,qCAAiC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH;;;;;;GAMG;AACH,MAAM,eAAe,GAAsB;IACzC,sCAAsC;IACtC,gCAAgC;IAChC,kBAAkB;IAClB,qBAAqB;IACrB,uDAAuD;IACvD,oBAAoB;IACpB,UAAU;IACV,UAAU;IACV,0EAA0E;IAC1E,oDAAoD;IACpD,iBAAiB;IACjB,cAAc;IACd,6EAA6E;IAC7E,8DAA8D;IAC9D,yBAAyB;IACzB,eAAe;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,gBAAgB,GAAsB,CAAC,kBAAkB,CAAC,CAAC;AAEjE;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,CAAC,KAAK,GAAG;gBAAE,OAAO,GAAG,KAAK,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,GAAG,GAAG,CAAC,CAAC;YACR,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACjC,+EAA+E;IAC/E,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,CAAC,GAAG,8CAA8C,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,CAAC;IACjC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO;QACL,OAAO,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE;QAC5E,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAChF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,sEAAsE;gBACtE,sEAAsE;gBACtE,SAAS,GAAG,IAAI,CAAC;gBACjB,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS;YACX,CAAC;YACD,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YACzB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;QAClF,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACnC,4EAA4E;QAC5E,sEAAsE;QACtE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACxE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC/B,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,OAAO,qCAAqC,GAAG,wCAAwC,CAAC;QAC1F,CAAC;QACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9C,OAAO,qCAAqC,GAAG,gDAAgD,CAAC;QAClG,CAAC;IACH,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,iGAAiG,CAAC;IAC3G,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AA4BD,kEAAkE;AAClE,SAAS,OAAO,CAAC,CAAU;IACzB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAE,CAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAChH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC;QACH,IAAI,CAAC,IAAA,kBAAQ,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE;YAAE,OAAO,KAAK,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,kFAAkF;AAClF,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAC/C,8EAA8E;IAC9E,+EAA+E;IAC/E,yDAAyD;IACzD,MAAM,CAAC,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IAChB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,IAAA,sBAAU,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,OAAO,CAAC;IAC5C;;;;;;;;;;;;;OAaG;IACH,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,IAAI,KAAK,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,EAAE,CAAC;QACP,IAAI,CAAC;YACH,EAAE,GAAG,IAAA,kBAAQ,EAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACxB,uEAAuE;YACvE,wEAAwE;YACxE,uEAAuE;YACvE,sEAAsE;YACtE,qEAAqE;YACrE,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5C,MAAM,EAAE,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,EAAE,KAAK,GAAG;oBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBACxC,GAAG,GAAG,EAAE,CAAC;gBACT,SAAS;YACX,CAAC;YACD,+DAA+D;YAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,uBAAuB,IAAI,GAAG,EAAE,CAAC;QAC7E,CAAC;QAED,IAAI,MAAc,CAAC;QACnB,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,sEAAsE;gBACtE,sEAAsE;gBACtE,MAAM,EAAE,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,EAAE,KAAK,GAAG;oBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBACxC,GAAG,GAAG,EAAE,CAAC;gBACT,SAAS;YACX,CAAC;YACD,MAAM,GAAG,MAAM,CAAC;QAClB,CAAC;aAAM,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;YACvB,IAAI,IAAY,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAA,sBAAY,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,iDAAiD,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YAC7G,CAAC;YACD,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,+CAA+C,EAAE,CAAC;YAC9F,CAAC;YACD,iEAAiE;YACjE,uEAAuE;YACvE,4BAA4B;YAC5B,MAAM,GAAG,IAAA,qBAAS,EAAC,CAAC,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,oCAAoC,EAAE,CAAC;QACnF,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,IAAA,kBAAQ,EAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,yBAAyB,EAAE,CAAC;YACxE,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,uBAAuB,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QACnF,CAAC;QACD,0EAA0E;QAC1E,yEAAyE;QACzE,uEAAuE;QACvE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,qCAAqC,EAAE,CAAC;QACpF,CAAC;QAED,wEAAwE;QACxE,sDAAsD;QACtD,IAAI,SAAS,GAAG,MAAM,CAAC;QACvB,IAAI,CAAC;YACH,uEAAuE;YACvE,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,IAAA,gBAAI,EAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACpF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAA,gBAAI,EAAC,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC;YAC7E,CAAC;YACD,SAAS,GAAG,IAAA,qBAAS,EAAC,IAAA,sBAAU,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAA,gBAAI,EAAC,MAAM,EAAE,WAAW,CAAC,uBAAuB,IAAI,GAAG,EAAE,CAAC;YAChG,CAAC;QACH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe,CAAC,MAA0C;IACxE,MAAM,KAAK,GAAG,CAAC,IAAA,gBAAI,EAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,IAAA,gBAAI,EAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,0EAA0E;QAC1E,2DAA2D;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,0FAA0F,MAAM,CAAC,OAAO,EAAE,CAAC;IACpH,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,IAAI,KAAK,QAAQ;gBAAE,SAAS;YAChC,OAAO,mCAAmC,IAAI,uBAAuB,IAAI,+BAA+B,CAAC;QAC3G,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;AAChE,CAAC;AAED,0EAA0E;AAC1E,SAAS,cAAc,CAAC,CAAS;IAC/B,IAAI,CAAC;QACH,OAAO,IAAA,sBAAY,EAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAA,mBAAO,EAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,iBAAiB,CAAC,GAAW;IAC3C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,yEAAyE;QACzE,wDAAwD;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,sDAAsD,MAAM,CAAC,OAAO,EAAE,CAAC;IAChF,CAAC;IACD,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACxD;;;;;;;;;;;WAWG;QACH,MAAM,IAAI,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACnC,OAAO,CACL,gDAAgD,IAAI,wCAAwC;gBAC5F,oBAAoB,MAAM,CAAC,IAAI,oCAAoC,CACpE,CAAC;QACJ,CAAC;QACD,OAAO,CACL,8CAA8C,IAAI,gBAAgB,MAAM,CAAC,IAAI,IAAI;YACjF,MAAM,MAAM,CAAC,IAAI,8DAA8D;YAC/E,oCAAoC,CACrC,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,UAAU;IACxB,MAAM,GAAG,GAAG,IAAA,gBAAI,EAAC,IAAA,gBAAM,GAAE,EAAE,iBAAiB,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,IAAA,mBAAS,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,sEAAsE;QACtE,4DAA4D;IAC9D,CAAC;IACD,IAAI,CAAC;QACH,KAAK,MAAM,IAAI,IAAI,IAAA,qBAAW,EAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAA,gBAAM,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;QAC1E,yEAAyE;IAC3E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,IAAI,eAA0C,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,SAAS;IACvB,IAAI,eAAe,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IACzC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACxE,0EAA0E;IAC1E,oBAAoB;IACpB,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,IAAA,gBAAI,EAAC,CAAC,EAAE,MAAM,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC;gBACH,IAAI,IAAA,kBAAQ,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBACjC,eAAe,GAAG,SAAS,CAAC;oBAC5B,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0BAA0B;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IACD,eAAe,GAAG,IAAI,CAAC;IACvB,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAgB,cAAc;IAC5B,OAAO;QACL,IAAI;QACJ,kBAAkB,UAAU,EAAE,EAAE;QAChC;;;;;;;;;;;;;;;;;;WAkBG;QACH,IAAI;QACJ,sBAAsB;QACtB,IAAI;QACJ,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,gBAAgB,GAAsB;IAC1C,6CAA6C;IAC7C,uBAAuB;IACvB,YAAY;CACb,CAAC;AAEF,SAAgB,aAAa,CAAC,IAAuB,EAAE,GAAY;IACjE;;;;;OAKG;IACH,MAAM,GAAG,GAAuC,EAAE,CAAC;IACnD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IACD,iEAAiE;IACjE,GAAG,CAAC,qBAAqB,CAAC,GAAG,GAAG,CAAC;IACjC;;;;;;;;;;;;;;OAcG;IACH,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,GAAG,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,GAAwB,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,IAAA,oBAAQ,EAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAC3D,OAAO,IAAA,mBAAO,EAAC,MAAM,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,GAAW;IACxC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC,IAAI,KAAK,IAAI,IAAI,IAAA,mBAAO,EAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;AACvE,CAAC;AAED,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,IAAI,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACrE,CAAC;AAED,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,IAAA,mBAAO,EAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/ui.d.ts
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Terminal presentation.
|
|
3
|
+
*
|
|
4
|
+
* Dependency-free on purpose: a CLI people run with `npx` should not drag a
|
|
5
|
+
* colour library and its transitive tree behind it, and ANSI is a dozen lines.
|
|
6
|
+
*
|
|
7
|
+
* Colour is a hint, never the message. Everything here reads correctly with
|
|
8
|
+
* colour stripped — piped to a file, on a dumb terminal, or by someone who
|
|
9
|
+
* cannot distinguish the volt from the grey.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* What an environment lookup needs to be, which is less than `process.env` is.
|
|
13
|
+
*
|
|
14
|
+
* `NodeJS.ProcessEnv` is a global interface, so any dependency anywhere in the
|
|
15
|
+
* install can widen it — expo-modules-core declares `NODE_ENV` **required**,
|
|
16
|
+
* which made `{ TERM: 'dumb' }` stop being a legal argument and failed this
|
|
17
|
+
* file's whole suite at compile time from a package the CLI never imports.
|
|
18
|
+
* These functions only ever index by name, so that is what they ask for.
|
|
19
|
+
*/
|
|
20
|
+
export type EnvLike = Readonly<Record<string, string | undefined>>;
|
|
21
|
+
/**
|
|
22
|
+
* Whether to emit escape codes at all.
|
|
23
|
+
*
|
|
24
|
+
* Honours NO_COLOR (the de-facto standard), FORCE_COLOR, and the absence of a
|
|
25
|
+
* TTY — output redirected to a file should not be full of escape sequences, and
|
|
26
|
+
* a CI log full of `[38;5;154m` is worse than no colour.
|
|
27
|
+
*/
|
|
28
|
+
export declare function colorEnabled(env?: EnvLike, isTty?: boolean): boolean;
|
|
29
|
+
/** Test seam, and the flag behind `--no-color`. */
|
|
30
|
+
export declare function setColor(on: boolean): void;
|
|
31
|
+
/** Volt is the accent, matching the brand: live state, wins, primary actions. */
|
|
32
|
+
export declare const volt: (s: string) => string;
|
|
33
|
+
export declare const dim: (s: string) => string;
|
|
34
|
+
export declare const bold: (s: string) => string;
|
|
35
|
+
export declare const red: (s: string) => string;
|
|
36
|
+
export declare const amber: (s: string) => string;
|
|
37
|
+
export declare const grey: (s: string) => string;
|
|
38
|
+
export declare const white: (s: string) => string;
|
|
39
|
+
/**
|
|
40
|
+
* The wordmark, in the two states the brand defines.
|
|
41
|
+
*
|
|
42
|
+
* The lockup is `looply_` — the mark IS the first letter, and the trailing
|
|
43
|
+
* block is a cursor, filled while a run is live. Printing a standalone `l_`
|
|
44
|
+
* beside the word spells the l twice, which is what this used to do.
|
|
45
|
+
*/
|
|
46
|
+
export declare function wordmark(live?: boolean): string;
|
|
47
|
+
export declare function stripAnsi(s: string): string;
|
|
48
|
+
/** Visible width, so box drawing lines up regardless of colour codes. */
|
|
49
|
+
export declare function width(s: string): number;
|
|
50
|
+
export declare function pad(s: string, to: number): string;
|
|
51
|
+
export interface BoxOptions {
|
|
52
|
+
title?: string;
|
|
53
|
+
/** Border colour; defaults to a quiet grey so content stays the loud part. */
|
|
54
|
+
tone?: (s: string) => string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* A bordered block.
|
|
58
|
+
*
|
|
59
|
+
* Sized to its content rather than the terminal, because a box stretched to 200
|
|
60
|
+
* columns on a wide monitor is harder to read than one that hugs what it holds.
|
|
61
|
+
*/
|
|
62
|
+
export declare function box(lines: readonly string[], opts?: BoxOptions): string;
|
|
63
|
+
/** `key : value`, with keys aligned across the block. */
|
|
64
|
+
export declare function fields(rows: readonly [string, string][]): string[];
|
|
65
|
+
export declare const ok: (s: string) => string;
|
|
66
|
+
export declare const warn: (s: string) => string;
|
|
67
|
+
export declare const bad: (s: string) => string;
|
|
68
|
+
export declare const step: (s: string) => string;
|
|
69
|
+
/**
|
|
70
|
+
* A command in the help list.
|
|
71
|
+
*
|
|
72
|
+
* The one-liner says what it does for you, not what it does internally —
|
|
73
|
+
* "watch it work from your phone" rather than "initialise pairing handshake".
|
|
74
|
+
*/
|
|
75
|
+
export declare function commandLine(name: string, args: string, blurb: string, nameWidth: number): string;
|
|
76
|
+
//# sourceMappingURL=ui.d.ts.map
|
package/dist/ui.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,GAAE,OAAqB,EAAE,KAAK,UAAuB,GAAG,OAAO,CAK9F;AAID,mDAAmD;AACnD,wBAAgB,QAAQ,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI,CAE1C;AAID,iFAAiF;AACjF,eAAO,MAAM,IAAI,MAHiC,MAAM,WAGd,CAAC;AAC3C,eAAO,MAAM,GAAG,MAJkC,MAAM,WAItB,CAAC;AACnC,eAAO,MAAM,IAAI,MALiC,MAAM,WAKrB,CAAC;AACpC,eAAO,MAAM,GAAG,MANkC,MAAM,WAMf,CAAC;AAC1C,eAAO,MAAM,KAAK,MAPgC,MAAM,WAOb,CAAC;AAC5C,eAAO,MAAM,IAAI,MARiC,MAAM,WAQd,CAAC;AAC3C,eAAO,MAAM,KAAK,MATgC,MAAM,WASb,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,UAAQ,GAAG,MAAM,CAE7C;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3C;AAED,yEAAyE;AACzE,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,GAAE,UAAe,GAAG,MAAM,CAe3E;AAED,yDAAyD;AACzD,wBAAgB,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAGlE;AAED,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,KAAG,MAA6B,CAAC;AAC7D,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,KAAG,MAA8B,CAAC;AAChE,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,KAAG,MAA4B,CAAC;AAC7D,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,KAAG,MAA6B,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGhG"}
|
package/dist/ui.js
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Terminal presentation.
|
|
4
|
+
*
|
|
5
|
+
* Dependency-free on purpose: a CLI people run with `npx` should not drag a
|
|
6
|
+
* colour library and its transitive tree behind it, and ANSI is a dozen lines.
|
|
7
|
+
*
|
|
8
|
+
* Colour is a hint, never the message. Everything here reads correctly with
|
|
9
|
+
* colour stripped — piped to a file, on a dumb terminal, or by someone who
|
|
10
|
+
* cannot distinguish the volt from the grey.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.step = exports.bad = exports.warn = exports.ok = exports.white = exports.grey = exports.amber = exports.red = exports.bold = exports.dim = exports.volt = void 0;
|
|
14
|
+
exports.colorEnabled = colorEnabled;
|
|
15
|
+
exports.setColor = setColor;
|
|
16
|
+
exports.wordmark = wordmark;
|
|
17
|
+
exports.stripAnsi = stripAnsi;
|
|
18
|
+
exports.width = width;
|
|
19
|
+
exports.pad = pad;
|
|
20
|
+
exports.box = box;
|
|
21
|
+
exports.fields = fields;
|
|
22
|
+
exports.commandLine = commandLine;
|
|
23
|
+
const ESC = '[';
|
|
24
|
+
/**
|
|
25
|
+
* Whether to emit escape codes at all.
|
|
26
|
+
*
|
|
27
|
+
* Honours NO_COLOR (the de-facto standard), FORCE_COLOR, and the absence of a
|
|
28
|
+
* TTY — output redirected to a file should not be full of escape sequences, and
|
|
29
|
+
* a CI log full of `[38;5;154m` is worse than no colour.
|
|
30
|
+
*/
|
|
31
|
+
function colorEnabled(env = process.env, isTty = process.stdout.isTTY) {
|
|
32
|
+
if (env['NO_COLOR'] !== undefined && env['NO_COLOR'] !== '')
|
|
33
|
+
return false;
|
|
34
|
+
if (env['FORCE_COLOR'] !== undefined && env['FORCE_COLOR'] !== '0')
|
|
35
|
+
return true;
|
|
36
|
+
if (env['TERM'] === 'dumb')
|
|
37
|
+
return false;
|
|
38
|
+
return Boolean(isTty);
|
|
39
|
+
}
|
|
40
|
+
let enabled = colorEnabled();
|
|
41
|
+
/** Test seam, and the flag behind `--no-color`. */
|
|
42
|
+
function setColor(on) {
|
|
43
|
+
enabled = on;
|
|
44
|
+
}
|
|
45
|
+
const wrap = (open, close) => (s) => (enabled ? `${ESC}${open}m${s}${ESC}${close}m` : s);
|
|
46
|
+
/** Volt is the accent, matching the brand: live state, wins, primary actions. */
|
|
47
|
+
exports.volt = wrap('38;5;154', '39');
|
|
48
|
+
exports.dim = wrap('2', '22');
|
|
49
|
+
exports.bold = wrap('1', '22');
|
|
50
|
+
exports.red = wrap('38;5;203', '39');
|
|
51
|
+
exports.amber = wrap('38;5;214', '39');
|
|
52
|
+
exports.grey = wrap('38;5;245', '39');
|
|
53
|
+
exports.white = wrap('38;5;255', '39');
|
|
54
|
+
/**
|
|
55
|
+
* The wordmark, in the two states the brand defines.
|
|
56
|
+
*
|
|
57
|
+
* The lockup is `looply_` — the mark IS the first letter, and the trailing
|
|
58
|
+
* block is a cursor, filled while a run is live. Printing a standalone `l_`
|
|
59
|
+
* beside the word spells the l twice, which is what this used to do.
|
|
60
|
+
*/
|
|
61
|
+
function wordmark(live = false) {
|
|
62
|
+
return `${(0, exports.white)('looply')}${live ? (0, exports.volt)('▌') : (0, exports.volt)('_')}`;
|
|
63
|
+
}
|
|
64
|
+
function stripAnsi(s) {
|
|
65
|
+
// eslint-disable-next-line no-control-regex
|
|
66
|
+
return s.replace(/\[[0-9;]*m/g, '');
|
|
67
|
+
}
|
|
68
|
+
/** Visible width, so box drawing lines up regardless of colour codes. */
|
|
69
|
+
function width(s) {
|
|
70
|
+
return stripAnsi(s).length;
|
|
71
|
+
}
|
|
72
|
+
function pad(s, to) {
|
|
73
|
+
const n = to - width(s);
|
|
74
|
+
return n > 0 ? s + ' '.repeat(n) : s;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* A bordered block.
|
|
78
|
+
*
|
|
79
|
+
* Sized to its content rather than the terminal, because a box stretched to 200
|
|
80
|
+
* columns on a wide monitor is harder to read than one that hugs what it holds.
|
|
81
|
+
*/
|
|
82
|
+
function box(lines, opts = {}) {
|
|
83
|
+
const tone = opts.tone ?? exports.grey;
|
|
84
|
+
const inner = Math.max(...lines.map(width), opts.title ? width(opts.title) + 2 : 0, 20);
|
|
85
|
+
// The title row is `┌─ title ` plus fill plus `┐`, which must come to the same
|
|
86
|
+
// width as `┌` plus inner+2 plus `┐`. Getting this off by one is the classic
|
|
87
|
+
// box-drawing bug and it shows up as a corner that does not meet.
|
|
88
|
+
const top = opts.title
|
|
89
|
+
? tone('┌─ ') + (0, exports.bold)(opts.title) + tone(' ' + '─'.repeat(Math.max(0, inner - width(opts.title) - 1)) + '┐')
|
|
90
|
+
: tone(`┌${'─'.repeat(inner + 2)}┐`);
|
|
91
|
+
const body = lines.map((l) => `${tone('│')} ${pad(l, inner)} ${tone('│')}`);
|
|
92
|
+
const bottom = tone(`└${'─'.repeat(inner + 2)}┘`);
|
|
93
|
+
return [top, ...body, bottom].join('\n');
|
|
94
|
+
}
|
|
95
|
+
/** `key : value`, with keys aligned across the block. */
|
|
96
|
+
function fields(rows) {
|
|
97
|
+
const keyWidth = Math.max(...rows.map(([k]) => k.length));
|
|
98
|
+
return rows.map(([k, v]) => `${(0, exports.grey)(pad(k, keyWidth))} ${(0, exports.dim)('·')} ${v}`);
|
|
99
|
+
}
|
|
100
|
+
const ok = (s) => `${(0, exports.volt)('✓')} ${s}`;
|
|
101
|
+
exports.ok = ok;
|
|
102
|
+
const warn = (s) => `${(0, exports.amber)('!')} ${s}`;
|
|
103
|
+
exports.warn = warn;
|
|
104
|
+
const bad = (s) => `${(0, exports.red)('✗')} ${s}`;
|
|
105
|
+
exports.bad = bad;
|
|
106
|
+
const step = (s) => `${(0, exports.grey)('›')} ${s}`;
|
|
107
|
+
exports.step = step;
|
|
108
|
+
/**
|
|
109
|
+
* A command in the help list.
|
|
110
|
+
*
|
|
111
|
+
* The one-liner says what it does for you, not what it does internally —
|
|
112
|
+
* "watch it work from your phone" rather than "initialise pairing handshake".
|
|
113
|
+
*/
|
|
114
|
+
function commandLine(name, args, blurb, nameWidth) {
|
|
115
|
+
const invocation = `${(0, exports.volt)(name)}${args ? ' ' + (0, exports.dim)(args) : ''}`;
|
|
116
|
+
return ` ${pad(invocation, nameWidth + 2)} ${(0, exports.grey)(blurb)}`;
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=ui.js.map
|
package/dist/ui.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RUNNING CODE WE DO NOT TRUST, ON THE MACHINE THAT HOLDS THE CREDENTIALS.
|
|
3
|
+
*
|
|
4
|
+
* The coding agent writes the repository and the gate executes it, so both are
|
|
5
|
+
* project-controlled code running beside a daemon that holds a machine token
|
|
6
|
+
* and — later — broker credentials. Until now they ran as the daemon, with its
|
|
7
|
+
* environment and its whole profile readable, and the only thing standing
|
|
8
|
+
* between a round and those secrets was that nothing had tried.
|
|
9
|
+
*
|
|
10
|
+
* The boundary is the operating system, not a wrapper. On Windows that is a
|
|
11
|
+
* classic AppContainer: access is the intersection of what the user may do and
|
|
12
|
+
* what the container was granted, so a path nobody granted is a path the child
|
|
13
|
+
* cannot reach — whatever it tries, however it spawns, whatever it removes from
|
|
14
|
+
* its own environment. Measured on an ordinary non-administrator account: no
|
|
15
|
+
* second user, no password, no service, no elevation.
|
|
16
|
+
*
|
|
17
|
+
* NO FALLBACK, EVER. A caller that asks for untrusted execution and cannot have
|
|
18
|
+
* it gets a refusal. Quietly running the same code as the daemon because
|
|
19
|
+
* containment was unavailable is the one outcome this file exists to prevent.
|
|
20
|
+
*/
|
|
21
|
+
/** What a contained process may reach. Everything absent is denied. */
|
|
22
|
+
export interface FsGrant {
|
|
23
|
+
path: string;
|
|
24
|
+
/** Read and execute by default; `true` also allows writing. */
|
|
25
|
+
write?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* How much of a contained child's output crosses back into the daemon.
|
|
29
|
+
*
|
|
30
|
+
* 🔴 IT WAS UNBOUNDED. `readFileSync(path, 'utf8')` pulled the whole file into
|
|
31
|
+
* the daemon's heap, so a contained process — project-controlled code, which is
|
|
32
|
+
* the entire premise of this file — could exhaust the daemon's memory simply by
|
|
33
|
+
* writing to stdout. The boundary held on authority and leaked on VOLUME.
|
|
34
|
+
*
|
|
35
|
+
* Two megabytes, and the derivation rather than the taste: the largest thing a
|
|
36
|
+
* legitimate gate step produces here is a verbose test run, which is tens of
|
|
37
|
+
* kilobytes; `tool-protocol.ts` already caps a single file READ at 256 KB; and
|
|
38
|
+
* this must stay comfortably below the point where a handful of concurrent runs
|
|
39
|
+
* matters. Generous by two orders of magnitude for real use, and finite.
|
|
40
|
+
*/
|
|
41
|
+
export declare const MAX_CONTAINED_OUTPUT_BYTES: number;
|
|
42
|
+
/**
|
|
43
|
+
* 🔴 BOTH ENDS, NOT THE FIRST N BYTES.
|
|
44
|
+
*
|
|
45
|
+
* A compiler prints its errors first and a test runner prints its summary LAST
|
|
46
|
+
* — `Tests: 3 failed` is the final line, and the mutation batteries read exactly
|
|
47
|
+
* that. Truncating to the head would silently turn a red run into an
|
|
48
|
+
* unclassifiable one, which is a worse failure than the one being prevented.
|
|
49
|
+
*/
|
|
50
|
+
export type NetworkPolicy = 'none' | 'internet-client';
|
|
51
|
+
/**
|
|
52
|
+
* Which trust domain a child belongs to.
|
|
53
|
+
*
|
|
54
|
+
* `gate` is project test/build/typecheck code. `agent` is the coding model.
|
|
55
|
+
* They differ in network policy and in what they are granted, which is why the
|
|
56
|
+
* container identity differs too — one profile for both would give the gate
|
|
57
|
+
* whatever the agent needs.
|
|
58
|
+
*/
|
|
59
|
+
export type UntrustedKind = 'gate' | 'agent' | 'fixture';
|
|
60
|
+
export interface UntrustedExecutionSpec {
|
|
61
|
+
kind: UntrustedKind;
|
|
62
|
+
/** Stable identity for the project this execution belongs to. */
|
|
63
|
+
projectKey: string;
|
|
64
|
+
executable: string;
|
|
65
|
+
argv: readonly string[];
|
|
66
|
+
cwd: string;
|
|
67
|
+
/** The COMPLETE environment. Nothing is inherited. */
|
|
68
|
+
env: Record<string, string>;
|
|
69
|
+
/**
|
|
70
|
+
* A command line to pass verbatim, instead of building one from `argv`.
|
|
71
|
+
*
|
|
72
|
+
* `argv` is quoted by the rules the C runtime parses back, which is right for
|
|
73
|
+
* an ordinary program and WRONG for `cmd /c`: cmd does not understand `\"`,
|
|
74
|
+
* so a step containing a quoted path arrives mangled and fails with an error
|
|
75
|
+
* about a command it never received. A shell line is one argument by
|
|
76
|
+
* contract, so the caller that knows it is a shell line builds it.
|
|
77
|
+
*/
|
|
78
|
+
rawCommandLine?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Bytes to hand the child on stdin.
|
|
81
|
+
*
|
|
82
|
+
* The agent's prompt is many lines of instructions and must never become part
|
|
83
|
+
* of a command line — a shell would eat its newlines and quoting, and Windows
|
|
84
|
+
* caps a command line besides. It travels through an inherited handle, so the
|
|
85
|
+
* container needs no grant to read it.
|
|
86
|
+
*/
|
|
87
|
+
stdin?: string;
|
|
88
|
+
grants: readonly FsGrant[];
|
|
89
|
+
/**
|
|
90
|
+
* Subtrees INSIDE a grant that the container must not reach.
|
|
91
|
+
*
|
|
92
|
+
* A grant on the project root is inheritable, so `.git` and `.looply/state`
|
|
93
|
+
* arrive with it. These are taken back afterwards by breaking inheritance and
|
|
94
|
+
* removing the container's own entries — never by a deny rule, which would
|
|
95
|
+
* sort ahead of allows and can lock the person out of their own repository.
|
|
96
|
+
*
|
|
97
|
+
* If a protected path cannot be protected, nothing is launched.
|
|
98
|
+
*/
|
|
99
|
+
protect?: readonly string[];
|
|
100
|
+
network: NetworkPolicy;
|
|
101
|
+
timeoutMs: number;
|
|
102
|
+
}
|
|
103
|
+
export type UntrustedExecutionResult = {
|
|
104
|
+
ok: true;
|
|
105
|
+
exitCode: number;
|
|
106
|
+
stdout: string;
|
|
107
|
+
stderr: string;
|
|
108
|
+
timedOut: boolean;
|
|
109
|
+
} | {
|
|
110
|
+
ok: false;
|
|
111
|
+
/** `containment_unavailable` — no boundary here; nothing was run. */
|
|
112
|
+
reason: 'containment_unavailable' | 'containment_launch_failed';
|
|
113
|
+
stage: string;
|
|
114
|
+
because: string;
|
|
115
|
+
};
|
|
116
|
+
export interface ContainmentProbe {
|
|
117
|
+
available: boolean;
|
|
118
|
+
backend: string;
|
|
119
|
+
because?: string;
|
|
120
|
+
}
|
|
121
|
+
export interface UntrustedExecutionBackend {
|
|
122
|
+
probe(): Promise<ContainmentProbe>;
|
|
123
|
+
run(spec: UntrustedExecutionSpec): Promise<UntrustedExecutionResult>;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* A container identity for one project and one trust domain.
|
|
127
|
+
*
|
|
128
|
+
* Deterministic so a restart reuses the profile rather than leaking a new one,
|
|
129
|
+
* and hashed so no part of a path — which the user chose and which may contain
|
|
130
|
+
* anything — reaches a Windows profile name.
|
|
131
|
+
*/
|
|
132
|
+
export declare function containerName(kind: UntrustedKind, projectKey: string): string;
|
|
133
|
+
/**
|
|
134
|
+
* One Windows command line from an executable and its arguments.
|
|
135
|
+
*
|
|
136
|
+
* CreateProcess takes a single string, so the arguments have to be joined — and
|
|
137
|
+
* that join is the place a filename with a space or a quote in it turns into a
|
|
138
|
+
* second argument. The rules are the ones the C runtime parses back.
|
|
139
|
+
*/
|
|
140
|
+
export declare function windowsCommandLine(exe: string, argv: readonly string[]): string;
|
|
141
|
+
/**
|
|
142
|
+
* The caller's environment, plus the one variable Windows cannot start without.
|
|
143
|
+
*
|
|
144
|
+
* A custom environment block that omits `SystemRoot` makes CreateProcess fail
|
|
145
|
+
* with ERROR_ENVVAR_NOT_FOUND (203) — the loader resolves system libraries
|
|
146
|
+
* through it, so a child without it cannot start at all. That is not a policy
|
|
147
|
+
* choice a caller should be able to get wrong: it is not a secret, it names a
|
|
148
|
+
* directory every process on the machine can already see, and the failure it
|
|
149
|
+
* causes names an environment variable without saying which one.
|
|
150
|
+
*/
|
|
151
|
+
export declare function systemEnv(env: Record<string, string>): Record<string, string>;
|
|
152
|
+
/**
|
|
153
|
+
* What Windows needs before a contained process can start at all.
|
|
154
|
+
*
|
|
155
|
+
* Found by bisection, not by taste. A block with only `SystemRoot` fails, and
|
|
156
|
+
* so does one with `SystemRoot`, `windir`, `SystemDrive`, `PATH`, `PATHEXT` and
|
|
157
|
+
* `ComSpec` — CreateProcess answers ERROR_ENVVAR_NOT_FOUND (203), which says a
|
|
158
|
+
* required variable is missing without saying which. Adding the profile and
|
|
159
|
+
* AppData roots is what makes it launch: an AppContainer REDIRECTS AppData, so
|
|
160
|
+
* the loader needs those roots to resolve the container's own storage.
|
|
161
|
+
*
|
|
162
|
+
* None of these is a secret. They name directories every process on the machine
|
|
163
|
+
* can already see, and none of them carries a credential — which is the whole
|
|
164
|
+
* distinction this file is built on. Anything that does carry one is supplied
|
|
165
|
+
* per-domain by the caller, or not at all.
|
|
166
|
+
*/
|
|
167
|
+
export declare const PLATFORM_BASE: readonly string[];
|
|
168
|
+
interface HelperReply {
|
|
169
|
+
ok: boolean;
|
|
170
|
+
stage?: string;
|
|
171
|
+
error?: string;
|
|
172
|
+
sid?: string;
|
|
173
|
+
exitCode?: number;
|
|
174
|
+
timedOut?: boolean;
|
|
175
|
+
}
|
|
176
|
+
/** Where the source-controlled helper lives, relative to the built CLI. */
|
|
177
|
+
/**
|
|
178
|
+
* The Windows system root, as an ABSOLUTE path or not at all.
|
|
179
|
+
*
|
|
180
|
+
* ⚠️ `?? 'C:\Windows'` WAS NOT ENOUGH, TWICE OVER.
|
|
181
|
+
*
|
|
182
|
+
* First: in a single-quoted TypeScript string `\W` is not an escape, so
|
|
183
|
+
* `'C:\Windows'` is the RELATIVE path `C:Windows` — `join` then yields
|
|
184
|
+
* `C:Windows\System32\…`, resolved against whatever the working directory
|
|
185
|
+
* happens to be. Measured, not assumed: `path.isAbsolute('C:\Windows')` is
|
|
186
|
+
* false. That is why the fallback here is spelled with `join`, not a literal.
|
|
187
|
+
*
|
|
188
|
+
* Second, and still open until this existed: `??` falls through on `undefined`
|
|
189
|
+
* and `null` ONLY. An EMPTY `SystemRoot` — `SystemRoot=` in the environment, or
|
|
190
|
+
* an allowlist that copied the name but not the value — passed straight
|
|
191
|
+
* through, and `join('', 'System32')` is `System32`: relative again, and this
|
|
192
|
+
* time resolved against the CHILD's working directory, which for a contained
|
|
193
|
+
* agent is the project worktree. A `System32\taskkill.exe` planted there would
|
|
194
|
+
* be found first. It is the `gitBinary` hole spelled with an environment
|
|
195
|
+
* variable instead of a bare command name.
|
|
196
|
+
*
|
|
197
|
+
* ⚠️ SO IT CHECKS THE VALUE, NOT ITS PRESENCE. A system root that is not
|
|
198
|
+
* absolute is not a system root, whatever the environment says. Five call
|
|
199
|
+
* sites used to spell this two different ways; they all ask here now.
|
|
200
|
+
*
|
|
201
|
+
* 🔴 ABSOLUTE BY WINDOWS' RULES, NOT THE HOST'S. `isAbsolute` from `node:path`
|
|
202
|
+
* answers for the platform the process is on, and on a POSIX host it reports
|
|
203
|
+
* `D:\Windows` — and the `C:\Windows` fallback itself — as RELATIVE. So every
|
|
204
|
+
* value failed the guard and the fallback was returned in a spelling that then
|
|
205
|
+
* failed its own test. The value this function deals in is a Windows path
|
|
206
|
+
* whatever host is asking about it, so it is judged and built with `win32`,
|
|
207
|
+
* which answers the same on both platforms. Still not a literal, for the
|
|
208
|
+
* escaping reason above.
|
|
209
|
+
*/
|
|
210
|
+
export declare function systemRoot(env?: Record<string, string | undefined>): string;
|
|
211
|
+
export interface AppContainerDeps {
|
|
212
|
+
/** Overridable so tests can drive the helper without PowerShell. */
|
|
213
|
+
invoke?(request: unknown): Promise<HelperReply>;
|
|
214
|
+
helper?: string;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* How long the containment helper may take to answer, in total.
|
|
218
|
+
*
|
|
219
|
+
* Generous on purpose. The helper's slow parts are real work, not hangs: a cold
|
|
220
|
+
* PowerShell start, an `Add-Type` C# compilation, and an inheritable-ACL
|
|
221
|
+
* propagation that was measured at ~6 s when the 166 MB toolchain mirror is in
|
|
222
|
+
* the grant set. This is a floor under a wedge, not a performance budget, and a
|
|
223
|
+
* ceiling that fired during ordinary work would be worse than none.
|
|
224
|
+
*/
|
|
225
|
+
/** How long a killed helper gets to actually die before the answer is sent. */
|
|
226
|
+
export declare const HELPER_KILL_GRACE_MS = 5000;
|
|
227
|
+
export declare const HELPER_SETUP_CEILING_MS = 60000;
|
|
228
|
+
/**
|
|
229
|
+
* The flat ceiling, for calls that run no contained child.
|
|
230
|
+
*
|
|
231
|
+
* `probe` and `remove` do profile work only, so a constant is right for them.
|
|
232
|
+
* `run` MUST NOT use it — see {@link AppContainerBackend.call}.
|
|
233
|
+
*/
|
|
234
|
+
export declare const HELPER_TIMEOUT_MS = 60000;
|
|
235
|
+
/**
|
|
236
|
+
* The ceiling for one helper call, given the child budget that call carries.
|
|
237
|
+
*
|
|
238
|
+
* Exported as a pure function because the timer itself has no test seam:
|
|
239
|
+
* `AppContainerDeps.invoke` short-circuits before the timer is ever created, so
|
|
240
|
+
* every injected backend bypasses it. This is the part worth pinning — that the
|
|
241
|
+
* ceiling lands ABOVE `spec.timeoutMs` and never underneath it.
|
|
242
|
+
*/
|
|
243
|
+
export declare function helperCeilingMs(childTimeoutMs?: number): number;
|
|
244
|
+
export declare class AppContainerBackend implements UntrustedExecutionBackend {
|
|
245
|
+
private readonly deps;
|
|
246
|
+
constructor(deps?: AppContainerDeps);
|
|
247
|
+
private call;
|
|
248
|
+
probe(): Promise<ContainmentProbe>;
|
|
249
|
+
run(spec: UntrustedExecutionSpec): Promise<UntrustedExecutionResult>;
|
|
250
|
+
/** Remove a container profile. Used by tests; production profiles persist. */
|
|
251
|
+
remove(kind: UntrustedKind, projectKey: string): Promise<boolean>;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* The environment Windows PowerShell 5.1 needs, rather than the one it inherited.
|
|
255
|
+
*
|
|
256
|
+
* 🔴 POWERSHELL 7 POISONS `PSModulePath` FOR POWERSHELL 5.1. When the daemon is
|
|
257
|
+
* started from a `pwsh` session, `PSModulePath` carries
|
|
258
|
+
* `…\PowerShell\7\Modules`, and 5.1 then loads SEVEN's
|
|
259
|
+
* `Microsoft.PowerShell.Security` on top of its own. The extended type data
|
|
260
|
+
* collides — "The member AuditToString is already present" — the module fails to
|
|
261
|
+
* load, `Get-Acl` cannot resolve, and every containment request is refused.
|
|
262
|
+
*
|
|
263
|
+
* ⚠️ IT FAILS CLOSED, WHICH IS WHY IT WENT UNNOTICED. Containment refuses rather
|
|
264
|
+
* than running uncontained, so nothing unsafe happens; the run simply cannot
|
|
265
|
+
* start, with a message about a PowerShell module that says nothing about
|
|
266
|
+
* PowerShell versions. Reproduced by launching the same suite from `pwsh`
|
|
267
|
+
* (5 of 5 red) and from bash (5 of 5 green) on one machine, one commit.
|
|
268
|
+
*
|
|
269
|
+
* The variable is REPLACED with 5.1's own default rather than deleted: deleting
|
|
270
|
+
* it makes 5.1 fall back to a built-in default that omits the machine-wide
|
|
271
|
+
* module directory, which is a different breakage for anyone relying on it.
|
|
272
|
+
*/
|
|
273
|
+
export declare function windowsPowerShellEnv(): NodeJS.ProcessEnv;
|
|
274
|
+
export {};
|
|
275
|
+
//# sourceMappingURL=untrusted-exec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"untrusted-exec.d.ts","sourceRoot":"","sources":["../src/untrusted-exec.ts"],"names":[],"mappings":"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"}
|