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":"goal-gap.d.ts","sourceRoot":"","sources":["../src/goal-gap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,QAAgB,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,IAAI,CAAC;AAE1B,iFAAiF;AACjF,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,WAAW,GAAG;IAClB,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,cAAc;AACxB,qFAAqF;AACnF;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;AACzC,mEAAmE;GACjE;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAA;CAAE;AACrC,yEAAyE;GACvE;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C,MAAM,MAAM,cAAc,GACtB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAC3D;;;;;;GAMG;GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,SAAS,EAAE,SAAS,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC;IACjE,yFAAyF;IACzF,QAAQ,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC/B,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,SAAS;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACtG;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CA4C1D;AASD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAYzF;AAgDD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAYrG"}
|
package/dist/goal-gap.js
ADDED
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MAX_GAP_TEXT = exports.MAX_GAPS = exports.GOAL_GAP_TIMEOUT_MS = void 0;
|
|
4
|
+
exports.gapKey = gapKey;
|
|
5
|
+
exports.buildGapPrompt = buildGapPrompt;
|
|
6
|
+
exports.extractVerdict = extractVerdict;
|
|
7
|
+
exports.evaluateGoalGap = evaluateGoalGap;
|
|
8
|
+
const agent_envelope_1 = require("./agent-envelope");
|
|
9
|
+
/**
|
|
10
|
+
* WHAT IS STILL MISSING, if anything.
|
|
11
|
+
*
|
|
12
|
+
* A plan finishing is not a goal being met. The compiler is heuristic — it
|
|
13
|
+
* proposes six steps for a sentence a person wrote — and when all six land, the
|
|
14
|
+
* only thing that has been established is that six particular pieces of work
|
|
15
|
+
* were done. "Add secure password reset" can have every planned step delivered
|
|
16
|
+
* and still be missing expiry, or rate limiting, or the screen.
|
|
17
|
+
*
|
|
18
|
+
* So this asks. Once, bounded, at the one moment it can be answered usefully:
|
|
19
|
+
* the current plan is exhausted and nothing else can move.
|
|
20
|
+
*
|
|
21
|
+
* WHAT IT IS NOT. It is not a second key. `AgentInvoke` is the same
|
|
22
|
+
* write-capable machinery the compiler and the implementer use — there is no
|
|
23
|
+
* read-only mode in this system, and calling this an independent review would
|
|
24
|
+
* be a lie of exactly the kind `goal-compile.ts` warns about. A `satisfied`
|
|
25
|
+
* verdict from here is NECESSARY and never SUFFICIENT: the caller pairs it with
|
|
26
|
+
* machine-enforced evidence before believing it.
|
|
27
|
+
*
|
|
28
|
+
* WHAT IT MAY NOT DO. It describes a gap; it does not produce work. The
|
|
29
|
+
* compiler turns gaps into steps, and keeping those apart is what stops a
|
|
30
|
+
* reviewer that can also plan from becoming a second, hidden round runner. It
|
|
31
|
+
* therefore imports neither the compiler nor anything that touches the
|
|
32
|
+
* repository, and the architecture guard asserts both.
|
|
33
|
+
*/
|
|
34
|
+
/** One reasoning call about whether a goal is met. Shorter than the compiler's. */
|
|
35
|
+
exports.GOAL_GAP_TIMEOUT_MS = 8 * 60 * 1000;
|
|
36
|
+
/**
|
|
37
|
+
* How many gaps one evaluation may name.
|
|
38
|
+
*
|
|
39
|
+
* The compiler that answers them is capped at ADAPTIVE_MAX_STEPS, so naming
|
|
40
|
+
* more would be naming work nothing will do. Bounded here as well because this
|
|
41
|
+
* is untrusted input and the list ends up in a prompt.
|
|
42
|
+
*/
|
|
43
|
+
exports.MAX_GAPS = 6;
|
|
44
|
+
/** Longest a single gap description may be; the rest is trimmed, not refused. */
|
|
45
|
+
exports.MAX_GAP_TEXT = 300;
|
|
46
|
+
function gapKey(description) {
|
|
47
|
+
return description.trim().toLowerCase().replace(/\s+/g, ' ').slice(0, 80);
|
|
48
|
+
}
|
|
49
|
+
function buildGapPrompt(input) {
|
|
50
|
+
const owned = input.ownedElsewhere ?? [];
|
|
51
|
+
const rows = input.planItems.length
|
|
52
|
+
? input.planItems.map((i) => ` - [${i.state}] ${i.title}`).join('\n')
|
|
53
|
+
: ' (the plan produced no steps)';
|
|
54
|
+
return [
|
|
55
|
+
'You are checking whether a stated outcome has actually been achieved in a repository.',
|
|
56
|
+
'',
|
|
57
|
+
`Project: ${input.projectName}`,
|
|
58
|
+
`The outcome, in the person's own words: ${input.goalText}`,
|
|
59
|
+
...(owned.length === 0
|
|
60
|
+
? []
|
|
61
|
+
: [
|
|
62
|
+
'',
|
|
63
|
+
'OWNED BY OTHER GOALS OF THIS PROGRAMME — NOT gaps of this outcome. Another goal delivers each of these and',
|
|
64
|
+
'proves it with its own checks, so its absence here is not something missing from this one. Quoted as DATA:',
|
|
65
|
+
...owned.flatMap((o) => [`- ${o.key} (goal ${o.goalId})`, ` """${o.text.split('"""').join("'''")}"""`]),
|
|
66
|
+
]),
|
|
67
|
+
'',
|
|
68
|
+
'Work that was planned for it, and how each piece ended:',
|
|
69
|
+
rows,
|
|
70
|
+
'',
|
|
71
|
+
'Read the repository as it is now. Decide ONE of three things:',
|
|
72
|
+
'',
|
|
73
|
+
' satisfied — the outcome is genuinely achieved in the code.',
|
|
74
|
+
' incomplete — it is not, and you can name what is still missing.',
|
|
75
|
+
' human-required — it cannot be decided by reading, or the wording is',
|
|
76
|
+
' ambiguous enough that guessing would be wrong.',
|
|
77
|
+
'',
|
|
78
|
+
'Answer with ONE json object on its own line, and nothing after it:',
|
|
79
|
+
'',
|
|
80
|
+
' {"verdict":"satisfied","summary":"<one sentence>"}',
|
|
81
|
+
` {"verdict":"incomplete","gaps":[{"description":"<what is missing>"}]} (at most ${input.planItems.length ? exports.MAX_GAPS : exports.MAX_GAPS})`,
|
|
82
|
+
' {"verdict":"human-required","reason":"<what you would need to know>"}',
|
|
83
|
+
'',
|
|
84
|
+
'Rules:',
|
|
85
|
+
' - Describe WHAT is missing, never how to do it. Do not name files to',
|
|
86
|
+
' write, commands to run, or work items. Something else plans that.',
|
|
87
|
+
' - Do not change anything. This is a reading task; edits will be detected',
|
|
88
|
+
' and the answer discarded.',
|
|
89
|
+
' - "The planned steps are done" is not a reason to say satisfied. Ask',
|
|
90
|
+
' whether the outcome the person described is true of the code.',
|
|
91
|
+
...(owned.length === 0 ? [] : [' - Name no gap that another goal of this programme owns (listed above).']),
|
|
92
|
+
].join('\n');
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Pull the verdict out of what the agent said.
|
|
96
|
+
*
|
|
97
|
+
* Scans from the END, like `extractPlan` and `extractFindings`, and for the
|
|
98
|
+
* same reason: an agent often echoes the example object from its own prompt
|
|
99
|
+
* before producing the real one, and taking the first match reads the example
|
|
100
|
+
* back as an answer. The whole transcript is tried first, because a
|
|
101
|
+
* pretty-printed object spans many lines.
|
|
102
|
+
*
|
|
103
|
+
* Unlike a plan, NOTHING here is dropped and carried on with. A plan is a list
|
|
104
|
+
* of proposals and a malformed one is simply fewer proposals; a verdict is a
|
|
105
|
+
* single decision, so a malformed one is no decision at all.
|
|
106
|
+
*/
|
|
107
|
+
function extractVerdict(transcript, maxGaps) {
|
|
108
|
+
const whole = tryParseVerdict(transcript.trim(), maxGaps);
|
|
109
|
+
if (whole)
|
|
110
|
+
return whole;
|
|
111
|
+
const lines = transcript.split('\n').map((l) => l.trim()).filter(Boolean);
|
|
112
|
+
for (let i = lines.length - 1; i >= 0; i--) {
|
|
113
|
+
const line = lines[i];
|
|
114
|
+
if (!line.startsWith('{') || !line.includes('verdict'))
|
|
115
|
+
continue;
|
|
116
|
+
const parsed = tryParseVerdict(line, maxGaps);
|
|
117
|
+
if (parsed)
|
|
118
|
+
return parsed;
|
|
119
|
+
}
|
|
120
|
+
return null;
|
|
121
|
+
}
|
|
122
|
+
function tryParseVerdict(text, maxGaps) {
|
|
123
|
+
if (!text.startsWith('{'))
|
|
124
|
+
return null;
|
|
125
|
+
let parsed;
|
|
126
|
+
try {
|
|
127
|
+
parsed = JSON.parse(text);
|
|
128
|
+
}
|
|
129
|
+
catch {
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
if (typeof parsed !== 'object' || parsed === null)
|
|
133
|
+
return null;
|
|
134
|
+
const o = parsed;
|
|
135
|
+
switch (o.verdict) {
|
|
136
|
+
case 'satisfied': {
|
|
137
|
+
const summary = typeof o.summary === 'string' ? o.summary.trim().slice(0, exports.MAX_GAP_TEXT) : '';
|
|
138
|
+
return summary ? { kind: 'satisfied', summary } : { kind: 'satisfied' };
|
|
139
|
+
}
|
|
140
|
+
case 'human-required': {
|
|
141
|
+
const reason = typeof o.reason === 'string' ? o.reason.trim().slice(0, exports.MAX_GAP_TEXT) : '';
|
|
142
|
+
// A verdict that says a person is needed and cannot say what for is not
|
|
143
|
+
// an answer anybody can act on.
|
|
144
|
+
return reason ? { kind: 'human-required', reason } : null;
|
|
145
|
+
}
|
|
146
|
+
case 'incomplete': {
|
|
147
|
+
if (!Array.isArray(o.gaps))
|
|
148
|
+
return null;
|
|
149
|
+
const seen = new Set();
|
|
150
|
+
const gaps = [];
|
|
151
|
+
for (const g of o.gaps) {
|
|
152
|
+
if (typeof g !== 'object' || g === null)
|
|
153
|
+
continue;
|
|
154
|
+
const raw = g.description;
|
|
155
|
+
const description = typeof raw === 'string' ? raw.trim().replace(/\s+/g, ' ').slice(0, exports.MAX_GAP_TEXT) : '';
|
|
156
|
+
if (!description)
|
|
157
|
+
continue;
|
|
158
|
+
const key = gapKey(description);
|
|
159
|
+
if (seen.has(key))
|
|
160
|
+
continue;
|
|
161
|
+
seen.add(key);
|
|
162
|
+
gaps.push({ key, description });
|
|
163
|
+
if (gaps.length >= maxGaps)
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
// "Incomplete, and I cannot say what is missing" is not actionable, and
|
|
167
|
+
// acting on it would spend a plan revision on nothing.
|
|
168
|
+
return gaps.length ? { kind: 'incomplete', gaps } : null;
|
|
169
|
+
}
|
|
170
|
+
default:
|
|
171
|
+
return null;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Ask, once.
|
|
176
|
+
*
|
|
177
|
+
* Every failure direction returns `ok: false` rather than a verdict, because
|
|
178
|
+
* both verdicts cost something: `satisfied` ends a goal, `incomplete` spends
|
|
179
|
+
* one of a small number of plan revisions. A truncated run that exits zero is
|
|
180
|
+
* caught by the envelope, which is the only thing that can tell a finished
|
|
181
|
+
* answer from a stopped one.
|
|
182
|
+
*/
|
|
183
|
+
async function evaluateGoalGap(input, deps) {
|
|
184
|
+
const prompt = buildGapPrompt(input);
|
|
185
|
+
const raw = await deps.invoke(prompt, deps.timeoutMs ?? exports.GOAL_GAP_TIMEOUT_MS);
|
|
186
|
+
const r = (0, agent_envelope_1.unwrapEnvelope)(raw);
|
|
187
|
+
const transcript = r.output ?? '';
|
|
188
|
+
if (r.timedOut)
|
|
189
|
+
return { ok: false, reason: 'the goal check timed out', transcript };
|
|
190
|
+
if (!r.ok)
|
|
191
|
+
return { ok: false, reason: 'the goal check failed', transcript };
|
|
192
|
+
const verdict = extractVerdict(transcript, deps.maxGaps ?? exports.MAX_GAPS);
|
|
193
|
+
if (!verdict)
|
|
194
|
+
return { ok: false, reason: 'the goal check produced no readable verdict', transcript };
|
|
195
|
+
return { ok: true, verdict, transcript };
|
|
196
|
+
}
|
|
197
|
+
//# sourceMappingURL=goal-gap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goal-gap.js","sourceRoot":"","sources":["../src/goal-gap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { Item, RunScope } from '@looply/core';
|
|
2
|
+
import { type Publication } from './completion';
|
|
3
|
+
import { type DeliveredTip } from './goal-execution-evidence';
|
|
4
|
+
import type { GitDriver } from './git-driver';
|
|
5
|
+
/**
|
|
6
|
+
* F33: WHAT A GOAL-MET START SAYS BEFORE IT MOVES HEAD. The lease is written once and never
|
|
7
|
+
* rewritten, and it names the branch the run was on; after `switchDetached` the checkout is on no
|
|
8
|
+
* branch, so a run that died mid-evaluation left a checkout recovery would BLOCK for ever (the
|
|
9
|
+
* goal's home, under F28). This names the run and the exact commit it moved to, so recovery can
|
|
10
|
+
* tell "where that run left it" from "somebody moved it".
|
|
11
|
+
*/
|
|
12
|
+
export declare const JUDGING_MARKER = "judging.json";
|
|
13
|
+
export declare function writeJudgingMarker(stateDir: string, m: {
|
|
14
|
+
readonly runId: string;
|
|
15
|
+
readonly sha: string;
|
|
16
|
+
}): void;
|
|
17
|
+
export declare function readJudgingMarker(stateDir: string): {
|
|
18
|
+
readonly runId: string;
|
|
19
|
+
readonly sha: string;
|
|
20
|
+
} | null;
|
|
21
|
+
/**
|
|
22
|
+
* WHERE A GOAL-MET START LOOKS (F27) — a programme whose lane integrates.
|
|
23
|
+
*
|
|
24
|
+
* 🔴 THE VERDICT WAS TAKEN ON THE WRONG TREE, AND THREE STALLS FOLLOWED FROM IT.
|
|
25
|
+
* A Start with nothing left to pick asks the evaluator whether the goal is met,
|
|
26
|
+
* on whatever HEAD the checkout has, and KEY 2 then needs that HEAD to be a
|
|
27
|
+
* committed round of the plan. In a programme that is the wrong question in
|
|
28
|
+
* three ways (live2/REVIEW-GROUP-A-74fa1bd.json):
|
|
29
|
+
* - the lane CARRIED the branch onto a moved base, and where the change
|
|
30
|
+
* overlapped what the base moved it owes a fresh verdict on the carried
|
|
31
|
+
* commit — which no Start could take, because every Start judged the run
|
|
32
|
+
* branch again, so the goal held for ever;
|
|
33
|
+
* - the lane could NOT carry it (the patch no longer applies): the controller
|
|
34
|
+
* bought a Start to re-cut, and that Start judged the same refused tree,
|
|
35
|
+
* said "met" again, and spent the grant's Starts in a loop (corr-6);
|
|
36
|
+
* - another goal's run had moved this checkout's HEAD in between, so KEY 2
|
|
37
|
+
* found the code "moved on" and the goal ended `human_required` (B13).
|
|
38
|
+
*
|
|
39
|
+
* So the Start judges the tree the lane HOLDS for this goal's delivered work:
|
|
40
|
+
* - the delivered round itself, while the lane has not answered for it or
|
|
41
|
+
* published it as it stands;
|
|
42
|
+
* - the lane's replay of it, when it was carried;
|
|
43
|
+
* - the moved integration tip, when it could not be carried. The goal's work
|
|
44
|
+
* is absent there, so the evaluator finds the gap and the next revision is
|
|
45
|
+
* cut from the moved base, which is the re-cut the lane asked for.
|
|
46
|
+
*
|
|
47
|
+
* ⚠️ KEY 2 PROVES WHAT IT ALWAYS PROVED. For a carried commit it is asked about
|
|
48
|
+
* the round the lane carried — the lane's own attempt names that branch and its
|
|
49
|
+
* tip — so "this plan delivered it" still rests on this checkout's ledger, and
|
|
50
|
+
* the evaluator's verdict is about the commit the lane actually published.
|
|
51
|
+
*/
|
|
52
|
+
export type EvaluationTarget =
|
|
53
|
+
/** Leave HEAD where it is — the only answer outside a programme workspace. */
|
|
54
|
+
{
|
|
55
|
+
readonly kind: 'as-is';
|
|
56
|
+
readonly because: string;
|
|
57
|
+
}
|
|
58
|
+
/** The newest committed round of this plan, as delivered. */
|
|
59
|
+
| {
|
|
60
|
+
readonly kind: 'delivered';
|
|
61
|
+
readonly sha: string;
|
|
62
|
+
}
|
|
63
|
+
/** The lane's replay `sha` of the delivered round `of`, published on `branch`. */
|
|
64
|
+
| {
|
|
65
|
+
readonly kind: 'carried';
|
|
66
|
+
readonly sha: string;
|
|
67
|
+
readonly of: string;
|
|
68
|
+
readonly branch: string;
|
|
69
|
+
}
|
|
70
|
+
/** The integration tip: the lane could not carry the delivered round onto it. */
|
|
71
|
+
| {
|
|
72
|
+
readonly kind: 'moved-base';
|
|
73
|
+
readonly sha: string;
|
|
74
|
+
readonly because: string;
|
|
75
|
+
};
|
|
76
|
+
export interface TargetInput {
|
|
77
|
+
/** The plan's newest committed round, and the branch its run delivered on (null when unrecorded). */
|
|
78
|
+
readonly delivered: (DeliveredTip & {
|
|
79
|
+
readonly branch: string | null;
|
|
80
|
+
}) | null;
|
|
81
|
+
/** The lane's answer for that branch. */
|
|
82
|
+
readonly publication: Publication | null;
|
|
83
|
+
/** The integration tip, or null when there is none. */
|
|
84
|
+
readonly integrationTip: string | null;
|
|
85
|
+
/** F33: the delivering branch's tip now (null: the ref is gone). A replay carries the round only if this IS the round. */
|
|
86
|
+
readonly branchTip?: string | null;
|
|
87
|
+
}
|
|
88
|
+
export declare function evaluationTargetOf(input: TargetInput): EvaluationTarget;
|
|
89
|
+
export declare function describeTarget(t: EvaluationTarget): string;
|
|
90
|
+
/** The target for this checkout's plan, read from the ledger, the lane's claims and attempts, and git. */
|
|
91
|
+
export declare function goalMetTarget(input: {
|
|
92
|
+
readonly cwd: string;
|
|
93
|
+
readonly git: GitDriver;
|
|
94
|
+
readonly stateDir: string;
|
|
95
|
+
readonly scope: NonNullable<RunScope>;
|
|
96
|
+
readonly items: readonly Item[];
|
|
97
|
+
}): Promise<EvaluationTarget>;
|
|
98
|
+
//# sourceMappingURL=goal-met-target.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goal-met-target.d.ts","sourceRoot":"","sources":["../src/goal-met-target.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAS9C;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAE9G;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAO3G;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,MAAM,MAAM,gBAAgB;AAC1B,8EAA8E;AAC5E;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACtD,6DAA6D;GAC3D;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE;AACtD,kFAAkF;GAChF;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAClG,iFAAiF;GAC/E;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpF,MAAM,WAAW,WAAW;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,SAAS,EAAE,CAAC,YAAY,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC/E,yCAAyC;IACzC,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IACzC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,0HAA0H;IAC1H,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAyBvE;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAW1D;AAED,0GAA0G;AAC1G,wBAAsB,aAAa,CAAC,KAAK,EAAE;IACzC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;CACjC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAU5B"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.JUDGING_MARKER = void 0;
|
|
4
|
+
exports.writeJudgingMarker = writeJudgingMarker;
|
|
5
|
+
exports.readJudgingMarker = readJudgingMarker;
|
|
6
|
+
exports.evaluationTargetOf = evaluationTargetOf;
|
|
7
|
+
exports.describeTarget = describeTarget;
|
|
8
|
+
exports.goalMetTarget = goalMetTarget;
|
|
9
|
+
const completion_1 = require("./completion");
|
|
10
|
+
const goal_execution_evidence_1 = require("./goal-execution-evidence");
|
|
11
|
+
const integration_1 = require("./integration");
|
|
12
|
+
const lane_claims_1 = require("./lane-claims");
|
|
13
|
+
const ledger_store_1 = require("./ledger-store");
|
|
14
|
+
const round_records_1 = require("./round-records");
|
|
15
|
+
const run_delivery_1 = require("./run-delivery");
|
|
16
|
+
const node_fs_1 = require("node:fs");
|
|
17
|
+
const node_path_1 = require("node:path");
|
|
18
|
+
/**
|
|
19
|
+
* F33: WHAT A GOAL-MET START SAYS BEFORE IT MOVES HEAD. The lease is written once and never
|
|
20
|
+
* rewritten, and it names the branch the run was on; after `switchDetached` the checkout is on no
|
|
21
|
+
* branch, so a run that died mid-evaluation left a checkout recovery would BLOCK for ever (the
|
|
22
|
+
* goal's home, under F28). This names the run and the exact commit it moved to, so recovery can
|
|
23
|
+
* tell "where that run left it" from "somebody moved it".
|
|
24
|
+
*/
|
|
25
|
+
exports.JUDGING_MARKER = 'judging.json';
|
|
26
|
+
function writeJudgingMarker(stateDir, m) {
|
|
27
|
+
(0, node_fs_1.writeFileSync)((0, node_path_1.join)(stateDir, exports.JUDGING_MARKER), JSON.stringify(m) + '\n', 'utf8');
|
|
28
|
+
}
|
|
29
|
+
function readJudgingMarker(stateDir) {
|
|
30
|
+
try {
|
|
31
|
+
const m = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(stateDir, exports.JUDGING_MARKER), 'utf8'));
|
|
32
|
+
return typeof m.runId === 'string' && typeof m.sha === 'string' ? { runId: m.runId, sha: m.sha } : null;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function evaluationTargetOf(input) {
|
|
39
|
+
const d = input.delivered;
|
|
40
|
+
if (d === null)
|
|
41
|
+
return { kind: 'as-is', because: 'no round of this plan reached a commit in this checkout' };
|
|
42
|
+
const p = input.publication;
|
|
43
|
+
if (d.branch === null || p === null)
|
|
44
|
+
return { kind: 'delivered', sha: d.sha };
|
|
45
|
+
switch (p.kind) {
|
|
46
|
+
case 'published':
|
|
47
|
+
// `publicationOf` answers for the REPLAY when it followed one: another branch, another commit.
|
|
48
|
+
// F33: …and only when the branch's tip is the round KEY 2 confirms — a replay of any other tip is not its carried form.
|
|
49
|
+
return p.branch !== d.branch && input.branchTip === d.sha
|
|
50
|
+
? { kind: 'carried', sha: p.sha, of: d.sha, branch: p.branch }
|
|
51
|
+
: { kind: 'delivered', sha: d.sha };
|
|
52
|
+
case 'refused':
|
|
53
|
+
// A red gate is a person's to read and buys no Start; only a base that moved is re-cut.
|
|
54
|
+
return p.rebase && input.integrationTip !== null
|
|
55
|
+
? { kind: 'moved-base', sha: input.integrationTip, because: `the lane could not carry ${p.branch}: ${p.because}` }
|
|
56
|
+
: { kind: 'delivered', sha: d.sha };
|
|
57
|
+
case 'pending':
|
|
58
|
+
case 'unknown':
|
|
59
|
+
return { kind: 'delivered', sha: d.sha };
|
|
60
|
+
default: {
|
|
61
|
+
const never = p;
|
|
62
|
+
throw new Error(`no evaluation target for publication ${String(never)}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function describeTarget(t) {
|
|
67
|
+
switch (t.kind) {
|
|
68
|
+
case 'as-is':
|
|
69
|
+
return `the checkout as it stands (${t.because})`;
|
|
70
|
+
case 'delivered':
|
|
71
|
+
return `the delivered round ${t.sha.slice(0, 12)}`;
|
|
72
|
+
case 'carried':
|
|
73
|
+
return `the lane's replay ${t.sha.slice(0, 12)} of the delivered round ${t.of.slice(0, 12)} (${t.branch})`;
|
|
74
|
+
case 'moved-base':
|
|
75
|
+
return `the integration tip ${t.sha.slice(0, 12)} — ${t.because}`;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/** The target for this checkout's plan, read from the ledger, the lane's claims and attempts, and git. */
|
|
79
|
+
async function goalMetTarget(input) {
|
|
80
|
+
const read = await (0, round_records_1.readRoundRecords)(input.stateDir, ledger_store_1.nodeLedgerFs);
|
|
81
|
+
if (!read.ok)
|
|
82
|
+
return { kind: 'as-is', because: read.because };
|
|
83
|
+
const tip = (0, goal_execution_evidence_1.deliveredTipOf)({ scope: input.scope, items: input.items, rounds: read.rounds });
|
|
84
|
+
if (tip === null)
|
|
85
|
+
return { kind: 'as-is', because: 'no round of this plan reached a commit in this checkout' };
|
|
86
|
+
const branch = (0, run_delivery_1.deliveringBranchOf)((0, lane_claims_1.readLaneClaims)(input.cwd), tip.runId);
|
|
87
|
+
const publication = branch === null ? null : await (0, completion_1.nodePublication)(input.cwd)(branch);
|
|
88
|
+
const integrationTip = (await input.git.refExists(integration_1.INTEGRATION_BRANCH)) ? await input.git.commitOf(integration_1.INTEGRATION_BRANCH) : null;
|
|
89
|
+
const branchTip = branch !== null && (await input.git.refExists(branch)) ? await input.git.commitOf(branch) : null;
|
|
90
|
+
return evaluationTargetOf({ delivered: { ...tip, branch }, publication, integrationTip, branchTip });
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=goal-met-target.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goal-met-target.js","sourceRoot":"","sources":["../src/goal-met-target.ts"],"names":[],"mappings":"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"}
|