toolroll 0.9.103 → 0.9.105
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/CHANGELOG.md +65 -0
- package/README.md +27 -27
- package/dist/accent-colors.js +0 -29
- package/dist/acp-agents.js +0 -3
- package/dist/acp-attest.js +0 -30
- package/dist/acp-check.js +3 -70
- package/dist/acp-client.js +3 -94
- package/dist/acp-inspect.js +1 -20
- package/dist/action-ledger.js +0 -8
- package/dist/activity-line.js +0 -14
- package/dist/actor.js +0 -15
- package/dist/advanced-schema.js +12 -0
- package/dist/advanced-view.js +26 -0
- package/dist/advanced.js +61 -0
- package/dist/agent-board.js +0 -117
- package/dist/agent-fence.js +11 -367
- package/dist/agent-onboard.js +12 -50
- package/dist/agent-pulse.js +5 -38
- package/dist/agent-state-words.js +0 -8
- package/dist/agent-state.js +1 -45
- package/dist/agent-turns.js +3 -17
- package/dist/agentconfig.js +1 -99
- package/dist/agents-board.js +0 -60
- package/dist/agents-live.js +1 -8
- package/dist/api-tokens.js +0 -27
- package/dist/approval-authority.js +0 -59
- package/dist/approval-password.js +0 -10
- package/dist/approval-policy.js +0 -29
- package/dist/approval-rules-ui.js +0 -9
- package/dist/assignment-adapters.js +0 -14
- package/dist/assignment-brief.js +1 -17
- package/dist/assignment-delivery.js +0 -22
- package/dist/assignment-presentation.js +0 -14
- package/dist/assignment-status.js +1 -30
- package/dist/assignment-ui.js +0 -12
- package/dist/assignment.js +117 -103
- package/dist/attest.js +0 -38
- package/dist/audit-cli.js +0 -9
- package/dist/backend.js +0 -59
- package/dist/backup-ui.js +0 -12
- package/dist/backup.js +8 -61
- package/dist/batch-checks.js +0 -20
- package/dist/batch-policy.js +0 -4
- package/dist/beads.js +0 -48
- package/dist/bin.js +0 -8
- package/dist/board.js +1 -36
- package/dist/boot-identity.js +0 -42
- package/dist/bounded-spawn.js +4 -28
- package/dist/brand-mark.js +0 -21
- package/dist/brief-fence.js +0 -16
- package/dist/browser/terminal.css +1 -1
- package/dist/browser/terminal.js +16 -16
- package/dist/browser/workspace.css +2 -2
- package/dist/browser/workspace.js +26 -26
- package/dist/browser-crew.js +0 -8
- package/dist/browser-shell.js +2 -15
- package/dist/browser-workspace.js +6 -30
- package/dist/budget-alerts.js +1 -4
- package/dist/build-review.js +2 -50
- package/dist/builder-restart.js +0 -13
- package/dist/builder.js +21 -1035
- package/dist/canonical-json.js +0 -12
- package/dist/capscan.js +1 -32
- package/dist/card-catalog.js +0 -12
- package/dist/card-cli.js +0 -1
- package/dist/card-render.js +0 -25
- package/dist/card-sources.js +0 -10
- package/dist/chat-acceptance.js +0 -7
- package/dist/chat-actions.js +5 -190
- package/dist/chat-admission.js +0 -7
- package/dist/chat-approval.js +0 -25
- package/dist/chat-ask.js +0 -17
- package/dist/chat-card-part.js +0 -3
- package/dist/chat-card.js +0 -6
- package/dist/chat-channel.js +2 -83
- package/dist/chat-continuity.js +0 -31
- package/dist/chat-controls.js +0 -7
- package/dist/chat-core.js +0 -55
- package/dist/chat-decide.js +2 -153
- package/dist/chat-delivery-state.js +0 -49
- package/dist/chat-delivery.js +2 -143
- package/dist/chat-display.js +0 -2
- package/dist/chat-evidence.js +0 -65
- package/dist/chat-flow.js +0 -72
- package/dist/chat-follow.js +0 -13
- package/dist/chat-inbox.js +0 -34
- package/dist/chat-live-schema.js +0 -14
- package/dist/chat-live.js +2 -87
- package/dist/chat-message-states.js +13 -40
- package/dist/chat-messages.js +0 -153
- package/dist/chat-migration.js +0 -57
- package/dist/chat-polish.js +0 -7
- package/dist/chat-quiet.js +0 -37
- package/dist/chat-review.js +0 -4
- package/dist/chat-rooms.js +0 -22
- package/dist/chat-settings-page.js +0 -4
- package/dist/chat-task-actions.js +0 -7
- package/dist/chat-terms.js +0 -21
- package/dist/chat-voice.js +0 -38
- package/dist/chat-warmth.js +1 -3
- package/dist/check-access.js +0 -30
- package/dist/check-facts.js +2 -62
- package/dist/check-failure.js +0 -98
- package/dist/check-levels-ui.js +4 -10
- package/dist/check-levels.js +3 -35
- package/dist/check-load.js +1 -49
- package/dist/check-only-standing.js +0 -6
- package/dist/check-only.js +0 -22
- package/dist/check-progress.js +0 -32
- package/dist/check-repair.js +2 -35
- package/dist/check-report.js +1 -108
- package/dist/check-stamp.js +0 -20
- package/dist/checkout-cleanup.js +0 -84
- package/dist/checkout-proof.js +1 -13
- package/dist/child-database.js +0 -3
- package/dist/claim.js +4 -508
- package/dist/claude-print.js +0 -10
- package/dist/cli-fast.js +0 -8
- package/dist/cli-help.js +90 -78
- package/dist/cli-http.js +0 -10
- package/dist/cli.js +26 -241
- package/dist/code-extract.js +0 -6
- package/dist/code-map-acts.js +0 -7
- package/dist/code-map-admission.js +2 -26
- package/dist/code-map-build.js +3 -24
- package/dist/code-map-cli.js +0 -4
- package/dist/code-map-main.js +0 -6
- package/dist/code-map-read.js +0 -12
- package/dist/code-map-report.js +0 -9
- package/dist/code-map-shape.js +0 -19
- package/dist/code-map-store.js +0 -26
- package/dist/codex-limits.js +1 -17
- package/dist/coding-context.js +0 -10
- package/dist/coding-handoff.js +0 -14
- package/dist/coding-provider.js +0 -39
- package/dist/coding-shipping-ui.js +0 -1
- package/dist/coding-ui.js +0 -1
- package/dist/coding-update.js +1 -18
- package/dist/coding-workspace.js +0 -27
- package/dist/commit-extract.js +0 -83
- package/dist/connect-cli.js +0 -19
- package/dist/console-chrome.js +1 -34
- package/dist/console-instance.js +2 -91
- package/dist/container-state.js +0 -4
- package/dist/containment.js +2 -105
- package/dist/contract-changes.js +0 -6
- package/dist/contracts/acceptance-terms.js +0 -7
- package/dist/contracts/chat-actions.js +0 -46
- package/dist/contracts/chat-callback-rows.js +0 -8
- package/dist/contracts/chat-card.js +0 -14
- package/dist/contracts/chat-content.js +0 -55
- package/dist/contracts/chat-tables.js +0 -7
- package/dist/contracts/cli.js +0 -59
- package/dist/contracts/coding-activity.js +0 -15
- package/dist/contracts/coding-context.js +0 -15
- package/dist/contracts/coding-handoff.js +0 -11
- package/dist/contracts/coding-workspace.js +0 -14
- package/dist/contracts/console-api.js +3 -54
- package/dist/contracts/contract-test.js +0 -14
- package/dist/contracts/contract.js +0 -48
- package/dist/contracts/decision.js +0 -20
- package/dist/contracts/diff-stat.js +0 -16
- package/dist/contracts/discord-callback.js +0 -9
- package/dist/contracts/flow-card.js +0 -18
- package/dist/contracts/flow-propose.js +0 -8
- package/dist/contracts/flow-send.js +0 -31
- package/dist/contracts/flow.js +0 -112
- package/dist/contracts/gateway-tools.js +0 -22
- package/dist/contracts/handoff.js +0 -22
- package/dist/contracts/integration-metadata.js +0 -39
- package/dist/contracts/lead-context.js +0 -14
- package/dist/contracts/lead-tools.js +0 -49
- package/dist/contracts/mcp-oauth.js +0 -12
- package/dist/contracts/memory-pass.js +0 -21
- package/dist/contracts/model-catalog.js +0 -9
- package/dist/contracts/observation-request.js +0 -11
- package/dist/contracts/plan.js +0 -16
- package/dist/contracts/project-knowledge.js +0 -26
- package/dist/contracts/project-memory.js +0 -16
- package/dist/contracts/project-skills.js +0 -31
- package/dist/contracts/proof.js +0 -23
- package/dist/contracts/provider.js +0 -9
- package/dist/contracts/recipes.js +0 -16
- package/dist/contracts/release-check.js +0 -61
- package/dist/contracts/release-terms.js +0 -27
- package/dist/contracts/retention.js +0 -12
- package/dist/contracts/review-findings.js +0 -13
- package/dist/contracts/route-results.js +0 -15
- package/dist/contracts/route.js +0 -33
- package/dist/contracts/scope.js +0 -29
- package/dist/contracts/scout-report.js +0 -34
- package/dist/contracts/slack-callback.js +0 -11
- package/dist/contracts/sort-answer.js +0 -24
- package/dist/contracts/stage-output.js +0 -46
- package/dist/contracts/storage.js +0 -8
- package/dist/contracts/store-json.js +0 -41
- package/dist/contracts/subagent-turn.js +0 -23
- package/dist/contracts/task-sizing.js +0 -10
- package/dist/contracts/teams-callback.js +0 -7
- package/dist/contracts/telegram-callback.js +0 -27
- package/dist/contracts/trigger-payloads.js +0 -41
- package/dist/contracts/update-journal.js +0 -47
- package/dist/contracts/verification-receipt.js +0 -36
- package/dist/contracts/verification-view.js +0 -15
- package/dist/contracts/youiyoux-request.js +0 -26
- package/dist/control-setup.js +0 -7
- package/dist/control-ui.js +0 -3
- package/dist/controller-service.js +0 -4
- package/dist/controller-supervisor.js +0 -15
- package/dist/converse.js +3 -129
- package/dist/coordinator-proposals.js +1 -6
- package/dist/coordinator.js +0 -65
- package/dist/credentials-ui.js +0 -6
- package/dist/daemon.js +0 -137
- package/dist/database-reclaim.js +0 -3
- package/dist/decision.js +0 -78
- package/dist/demo-chat.js +4 -15
- package/dist/demo-sign-in.js +77 -0
- package/dist/demo.js +5 -194
- package/dist/deploy-gate.js +0 -20
- package/dist/deploy-lock.js +0 -4
- package/dist/deploy-phase.js +0 -22
- package/dist/deploy-rescue.js +0 -21
- package/dist/deprecations.js +0 -12
- package/dist/design/kit.css +9 -6
- package/dist/design/kit.js +2 -33
- package/dist/desktop-access.js +0 -9
- package/dist/desktop-bundle.js +1 -3
- package/dist/desktop-host.js +0 -34
- package/dist/desktop-update-gate.js +0 -8
- package/dist/desktop-update-recovery.js +1 -18
- package/dist/desktop-update.js +2 -48
- package/dist/digest-times.js +0 -2
- package/dist/disclosure.js +0 -5
- package/dist/discord-api.js +0 -6
- package/dist/discord-chat.js +0 -31
- package/dist/discord.js +0 -7
- package/dist/discover.js +0 -50
- package/dist/dispatch.js +61 -60
- package/dist/dispose.js +0 -208
- package/dist/doctor.js +0 -48
- package/dist/easy-start-args.js +7 -7
- package/dist/easy-start.js +32 -45
- package/dist/egress.js +1 -63
- package/dist/email-settings.js +0 -8
- package/dist/envelope.js +50 -86
- package/dist/eval-gate.js +1 -37
- package/dist/eval-hooks.js +0 -120
- package/dist/eval-oracle-main.js +0 -7
- package/dist/eval-oracle.js +3 -42
- package/dist/eval-world.js +1 -23
- package/dist/evals.js +6 -134
- package/dist/evidence-pack.js +0 -29
- package/dist/evidence-pair.js +0 -17
- package/dist/evidence.js +4 -280
- package/dist/exec.js +19 -404
- package/dist/exhaustion.js +0 -30
- package/dist/export-ui.js +0 -7
- package/dist/export.js +1 -38
- package/dist/failing-first.js +0 -6
- package/dist/fallback-schema.js +0 -5
- package/dist/fallback.js +0 -81
- package/dist/fast-start.js +0 -97
- package/dist/fast-terms.js +0 -3
- package/dist/fenced-check-coverage.js +0 -11
- package/dist/findings.js +1 -63
- package/dist/first-run.js +4 -57
- package/dist/first-tasks-child.js +0 -5
- package/dist/flaky-ci.js +1 -24
- package/dist/flaky-cli.js +0 -4
- package/dist/flaky.js +0 -43
- package/dist/fleet-schema.js +0 -11
- package/dist/flow-actions.js +0 -31
- package/dist/flow-browser.js +0 -42
- package/dist/flow-cadence.js +1 -24
- package/dist/flow-card-task.js +0 -11
- package/dist/flow-changed.js +0 -16
- package/dist/flow-code.js +1 -45
- package/dist/flow-draft.js +0 -17
- package/dist/flow-engine.js +2 -76
- package/dist/flow-gallery-ui.js +0 -28
- package/dist/flow-gallery.js +0 -54
- package/dist/flow-insights.js +0 -12
- package/dist/flow-items.js +0 -27
- package/dist/flow-live.js +0 -31
- package/dist/flow-people.js +0 -14
- package/dist/flow-pull-request.js +0 -32
- package/dist/flow-replies.js +0 -9
- package/dist/flow-result-card.js +0 -8
- package/dist/flow-schedule.js +0 -74
- package/dist/flow-scripts.js +0 -13
- package/dist/flow-secrets.js +0 -10
- package/dist/flow-send.js +0 -45
- package/dist/flow-share.js +0 -60
- package/dist/flow-sort.js +1 -24
- package/dist/flow-starters-ui.js +0 -2
- package/dist/flow-starters.js +0 -13
- package/dist/flow-steps.js +0 -80
- package/dist/flow-triggers.js +2 -256
- package/dist/flow-unattended-words.js +0 -13
- package/dist/flow-unattended.js +2 -115
- package/dist/flows-cli.js +2 -36
- package/dist/flows-ui.js +0 -51
- package/dist/flows.js +0 -158
- package/dist/folder-gate.js +0 -21
- package/dist/folder-look.js +0 -42
- package/dist/follow-through-brief.js +0 -6
- package/dist/follow-through-cli.js +0 -5
- package/dist/fonts.js +0 -13
- package/dist/gaps.js +0 -20
- package/dist/gate-failure.js +0 -7
- package/dist/git-floor.js +0 -12
- package/dist/git-incident.js +2 -38
- package/dist/git-views.js +0 -24
- package/dist/git.js +0 -31
- package/dist/github-import.js +0 -22
- package/dist/github-jobs.js +0 -12
- package/dist/google-mail.js +2 -27
- package/dist/grant.js +0 -110
- package/dist/graph.js +0 -108
- package/dist/guides.js +4 -15
- package/dist/handover-note.js +0 -12
- package/dist/health-cli.js +0 -2
- package/dist/home-groups.js +0 -15
- package/dist/html.js +0 -54
- package/dist/install-method.js +0 -12
- package/dist/integrations-ui.js +0 -15
- package/dist/integrations.js +7 -50
- package/dist/invoke.js +1 -381
- package/dist/is-record.js +0 -1
- package/dist/issues.js +0 -48
- package/dist/jsonl-discriminants.js +0 -6
- package/dist/keymap.js +2 -16
- package/dist/keys.js +0 -56
- package/dist/kits-ui.js +0 -3
- package/dist/kits.js +1 -24
- package/dist/knowledge-cli.js +0 -4
- package/dist/knowledge-ui.js +0 -8
- package/dist/landed-cleanup.js +0 -119
- package/dist/laptop-background.js +0 -85
- package/dist/laptop-service.js +0 -67
- package/dist/latency-timeline.js +2 -23
- package/dist/lead-about.js +0 -7
- package/dist/lead-answer-eval.js +0 -39
- package/dist/lead-capabilities.js +0 -19
- package/dist/lead-cli-live.js +0 -22
- package/dist/lead-cli.js +0 -27
- package/dist/lead-commitments.js +1 -27
- package/dist/lead-context.js +2 -42
- package/dist/lead-contract.js +0 -8
- package/dist/lead-doors.js +0 -105
- package/dist/lead-follow.js +0 -41
- package/dist/lead-identity.js +1 -4
- package/dist/lead-latency-schema.js +0 -13
- package/dist/lead-people.js +3 -18
- package/dist/lead-progress.js +0 -12
- package/dist/lead-queue-runtime.js +0 -26
- package/dist/lead-queue.js +0 -35
- package/dist/lead-route.js +0 -33
- package/dist/lead-status.js +0 -37
- package/dist/lead-sweep.js +0 -18
- package/dist/lead-tools.js +0 -160
- package/dist/lead-voice.js +0 -54
- package/dist/lead.js +2 -105
- package/dist/learning-child.js +0 -6
- package/dist/learning-look.js +0 -14
- package/dist/ledger-chain.js +0 -34
- package/dist/ledger-csv.js +0 -2
- package/dist/ledger-view.js +0 -3
- package/dist/lesson-notes.js +0 -56
- package/dist/limits-ui.js +0 -14
- package/dist/link.js +0 -79
- package/dist/live-backup.js +3 -33
- package/dist/live-bus.js +7 -81
- package/dist/live-children-read.js +4 -47
- package/dist/live-children.js +4 -44
- package/dist/live-detail.js +0 -17
- package/dist/live-input.js +5 -68
- package/dist/live-main-read.js +1 -14
- package/dist/live-notes.js +0 -12
- package/dist/live-open.js +1 -23
- package/dist/live-records.js +4 -151
- package/dist/live-reply.js +1 -51
- package/dist/live-terminal.js +12 -111
- package/dist/live.js +4 -130
- package/dist/local-owner-acts.js +168 -0
- package/dist/local-owner.js +15 -80
- package/dist/log.js +0 -8
- package/dist/login-secrets.js +2 -38
- package/dist/machine-check.js +0 -2
- package/dist/machine-identity.js +1 -46
- package/dist/mailbox.js +0 -30
- package/dist/maintenance.js +1 -3
- package/dist/mcp-connect.js +0 -88
- package/dist/mcp-core.js +0 -45
- package/dist/mcp-http.js +0 -13
- package/dist/mcp-oauth.js +0 -37
- package/dist/mcp-person.js +0 -11
- package/dist/mcp.js +3 -73
- package/dist/memory-cli.js +0 -3
- package/dist/memory-pass.js +0 -53
- package/dist/memory-tidy.js +0 -55
- package/dist/memory-use.js +2 -24
- package/dist/merge-checklist.js +21 -29
- package/dist/metrics.js +0 -10
- package/dist/mobile-viewport.js +0 -6
- package/dist/model-catalog.js +1 -33
- package/dist/model-choices.js +9 -84
- package/dist/model-names.js +0 -9
- package/dist/models-cli.js +0 -13
- package/dist/models-ui.js +0 -17
- package/dist/modes.js +0 -35
- package/dist/monitoring-settings.js +2 -27
- package/dist/monitoring-ui.js +2 -14
- package/dist/monitoring.js +2 -38
- package/dist/names.js +0 -39
- package/dist/needs-you.js +7 -70
- package/dist/never-index.js +0 -9
- package/dist/nightly-check.js +0 -74
- package/dist/nightly-github.js +0 -168
- package/dist/notification-delivery.js +0 -3
- package/dist/notification-rows.js +0 -17
- package/dist/oauth-run-token.js +1 -37
- package/dist/observations.js +0 -16
- package/dist/oidc.js +1 -20
- package/dist/onboard.js +4 -57
- package/dist/one-step-chat-schema.js +0 -15
- package/dist/openrouter-models.js +0 -6
- package/dist/operate-remote-arguments.js +2 -17
- package/dist/operate-remote.js +0 -33
- package/dist/operate.js +280 -2304
- package/dist/orphan-sweep.js +3 -37
- package/dist/page-work-contract.js +0 -3
- package/dist/password-bearer.js +1 -11
- package/dist/passwordless.js +0 -3
- package/dist/peek-cli.js +0 -46
- package/dist/peek.js +2 -61
- package/dist/people-audit-ui.js +0 -6
- package/dist/person-proof.js +0 -6
- package/dist/phase-routing.js +8 -183
- package/dist/plain-schema.js +0 -14
- package/dist/plain-words.js +18 -12
- package/dist/plan-auto.js +3 -18
- package/dist/plan-login.js +0 -16
- package/dist/plan.js +0 -68
- package/dist/plane-review.js +0 -56
- package/dist/planner-source.js +0 -96
- package/dist/planner.js +0 -117
- package/dist/policy-ui.js +0 -8
- package/dist/policy.js +0 -47
- package/dist/prepared-evidence.js +0 -5
- package/dist/principal.js +0 -29
- package/dist/probe.js +0 -30
- package/dist/process-custody.js +0 -15
- package/dist/process-liveness.js +0 -32
- package/dist/process-tree.js +3 -29
- package/dist/project-access.js +0 -10
- package/dist/project-admission.js +1 -41
- package/dist/project-cli.js +0 -6
- package/dist/project-concurrency.js +0 -35
- package/dist/project-delete-ui.js +4 -29
- package/dist/project-delete.js +1 -73
- package/dist/project-demo.js +0 -13
- package/dist/project-file.js +0 -2
- package/dist/project-identity.js +0 -41
- package/dist/project-knowledge.js +0 -39
- package/dist/project-learning.js +3 -55
- package/dist/project-memory.js +2 -45
- package/dist/project-outcomes.js +0 -6
- package/dist/project-sandbox.js +0 -23
- package/dist/project-skills.js +0 -12
- package/dist/project-tools.js +6 -184
- package/dist/project.js +0 -48
- package/dist/prompt.js +0 -31
- package/dist/proof.js +0 -220
- package/dist/proposal.js +0 -50
- package/dist/protected-storage-look.js +0 -6
- package/dist/protected-storage.js +1 -84
- package/dist/provider-auth.js +3 -69
- package/dist/provider-capture.js +1 -15
- package/dist/provider-connection.js +0 -8
- package/dist/provider-home.js +0 -25
- package/dist/provider-limits.js +0 -14
- package/dist/provider.js +0 -324
- package/dist/public-access.js +11 -30
- package/dist/public-check.js +0 -16
- package/dist/publish.js +1 -150
- package/dist/pull-request-flow.js +6 -74
- package/dist/pull-request-schema.js +0 -4
- package/dist/pull-request-ui.js +0 -5
- package/dist/pulls.js +0 -80
- package/dist/push.js +5 -89
- package/dist/quick-start.js +1 -23
- package/dist/read-executor-worker.js +0 -1
- package/dist/read-executor.js +0 -10
- package/dist/read-only-request.js +0 -7
- package/dist/recipe-ui.js +0 -6
- package/dist/recipes.js +0 -13
- package/dist/release-adapters.js +6 -214
- package/dist/release-approval.js +0 -74
- package/dist/release-authority.js +0 -42
- package/dist/release-auto.js +0 -142
- package/dist/release-card.js +26 -103
- package/dist/release-carry.js +0 -132
- package/dist/release-ci-hold.js +0 -20
- package/dist/release-cli.js +0 -46
- package/dist/release-coverage.js +0 -16
- package/dist/release-gate.js +0 -30
- package/dist/release-git.js +0 -24
- package/dist/release-links.js +0 -17
- package/dist/release-net.js +0 -42
- package/dist/release-next.js +0 -25
- package/dist/release-recheck.js +0 -89
- package/dist/release-refusal.js +0 -18
- package/dist/release-view.js +0 -5
- package/dist/release.js +7 -341
- package/dist/releases.js +0 -49
- package/dist/remote-audit.js +0 -25
- package/dist/remote-command.js +0 -16
- package/dist/remote-destination.js +5 -26
- package/dist/remote-exec.js +1 -27
- package/dist/remote-main.js +1 -53
- package/dist/remote-run.js +0 -5
- package/dist/remote.js +0 -49
- package/dist/render.js +0 -133
- package/dist/reply-shape.js +0 -85
- package/dist/reply-voice.js +0 -7
- package/dist/report-summary.js +0 -5
- package/dist/reported-usage.js +0 -30
- package/dist/repos.js +9 -62
- package/dist/repository-context.js +1 -24
- package/dist/request-budget-ui.js +0 -4
- package/dist/request-budget.js +0 -23
- package/dist/restart-certification.js +0 -37
- package/dist/result-actions.js +0 -62
- package/dist/result-acts.js +0 -34
- package/dist/result-completion.js +9 -28
- package/dist/result-evidence-readers.js +0 -3
- package/dist/result-follow-ups.js +1 -39
- package/dist/result-review.js +0 -86
- package/dist/result-shots.js +0 -39
- package/dist/retention-ui.js +0 -7
- package/dist/retention.js +2 -46
- package/dist/review-context.js +0 -129
- package/dist/review-evidence.js +0 -4
- package/dist/review-switch.js +1 -7
- package/dist/reviewer.js +0 -35
- package/dist/route-change-check.js +0 -2
- package/dist/route-change.js +0 -16
- package/dist/route-hooks.js +0 -27
- package/dist/route-results.js +2 -58
- package/dist/route-rules.js +1 -106
- package/dist/route-savings.js +0 -36
- package/dist/route-store.js +1 -133
- package/dist/run-closeout.js +2 -50
- package/dist/run-efficiency.js +2 -44
- package/dist/run-ending.js +0 -13
- package/dist/runner-process.js +0 -33
- package/dist/runner.js +17 -189
- package/dist/sample-project.js +2 -27
- package/dist/sandbox-launch.js +4 -25
- package/dist/sandbox-runtime.js +1 -88
- package/dist/scan.js +0 -27
- package/dist/scope.js +88 -566
- package/dist/scout-browser-lock.js +0 -6
- package/dist/scout-browser.js +2 -68
- package/dist/scout-net.js +1 -32
- package/dist/scout-report.js +0 -22
- package/dist/scout.js +1 -116
- package/dist/secret-mint.js +0 -6
- package/dist/serve.js +29 -564
- package/dist/server/agents-computers.js +0 -10
- package/dist/server/agents-live-filed.js +0 -13
- package/dist/server/agents-live-lead.js +0 -19
- package/dist/server/agents-live-room.js +0 -19
- package/dist/server/chat.js +2 -194
- package/dist/server/chrome.js +17 -263
- package/dist/server/console.css +4 -4
- package/dist/server/edge-refusal.js +0 -3
- package/dist/server/flows.js +5 -74
- package/dist/server/guards.js +9 -86
- package/dist/server/handler-registry.js +0 -2
- package/dist/server/home-asks.js +1 -22
- package/dist/server/home.js +1 -30
- package/dist/server/http.js +0 -82
- package/dist/server/in-place.js +0 -15
- package/dist/server/kit-standalone.js +0 -20
- package/dist/server/kit.js +2 -114
- package/dist/server/last-checks.js +0 -2
- package/dist/server/live.js +1 -36
- package/dist/server/merge-ready-view.js +0 -6
- package/dist/server/mutation-key.js +3 -40
- package/dist/server/pages-assets.js +0 -16
- package/dist/server/pages.js +7 -195
- package/dist/server/people-tokens.js +3 -101
- package/dist/server/remote-hooks.js +0 -13
- package/dist/server/remote.js +0 -28
- package/dist/server/render-chat.js +8 -144
- package/dist/server/render-code-map.js +0 -5
- package/dist/server/render-flaky.js +0 -8
- package/dist/server/render-follow-through.js +2 -5
- package/dist/server/render-history.js +2 -34
- package/dist/server/render-new-task.js +2 -29
- package/dist/server/render-pages.js +1 -111
- package/dist/server/render-people.js +2 -46
- package/dist/server/render-projects.js +15 -32
- package/dist/server/render-release.js +1 -14
- package/dist/server/render-results.js +4 -355
- package/dist/server/render-settings.js +0 -15
- package/dist/server/render-tasks.js +17 -497
- package/dist/server/request-context.js +2 -9
- package/dist/server/retired-routes.js +0 -11
- package/dist/server/route-policy.js +0 -3
- package/dist/server/route-table.js +8 -133
- package/dist/server/runtime.js +0 -1
- package/dist/server/session.js +0 -28
- package/dist/server/settings.js +40 -246
- package/dist/server/signup-gate.js +0 -11
- package/dist/server/sweeps.js +0 -6
- package/dist/server/task-views.js +12 -227
- package/dist/server/tasks.js +37 -531
- package/dist/server/terminals.js +2 -46
- package/dist/server/welcome.js +2 -22
- package/dist/server-telemetry.js +0 -9
- package/dist/settings-groups-ui.js +50 -63
- package/dist/settings-kit-script.js +0 -19
- package/dist/settings-kit.js +0 -63
- package/dist/settings-proofs.js +0 -23
- package/dist/setup-guide.js +1 -9
- package/dist/shared-deps.js +9 -84
- package/dist/sign-in-guard.js +0 -27
- package/dist/skills-ui.js +0 -2
- package/dist/skills.js +2 -54
- package/dist/slack-api.js +0 -3
- package/dist/slack-chat.js +0 -25
- package/dist/slack-settings.js +0 -1
- package/dist/slack-socket.js +0 -5
- package/dist/slack.js +0 -4
- package/dist/sleep.js +0 -1
- package/dist/source-key.js +0 -10
- package/dist/spend-report.js +0 -29
- package/dist/spend-ui.js +0 -26
- package/dist/spend.js +0 -40
- package/dist/sqlite-runtime.js +0 -2
- package/dist/sqlite-telemetry.js +0 -9
- package/dist/sso-settings.js +0 -13
- package/dist/sso-ui.js +0 -2
- package/dist/staged-runtimes.js +5 -39
- package/dist/steer-capabilities.js +1 -7
- package/dist/steer-controls.js +0 -10
- package/dist/steer-live.js +0 -31
- package/dist/steer-mailbox.js +4 -65
- package/dist/steer-status.js +0 -7
- package/dist/stop-proof.js +5 -62
- package/dist/storage-sweep-child.js +1 -5
- package/dist/storage-sweep-process.js +2 -20
- package/dist/storage-sweep-schedule.js +0 -32
- package/dist/storage-sweep.js +2 -51
- package/dist/storage-ui.js +0 -18
- package/dist/storage.js +0 -31
- package/dist/store-baseline.js +0 -14
- package/dist/store.js +109 -4763
- package/dist/stream-scope.js +0 -16
- package/dist/structured-output.js +0 -39
- package/dist/style-asset.js +0 -2
- package/dist/subagent-admin.js +0 -9
- package/dist/subagent-desk.js +0 -29
- package/dist/subagent-memory.js +0 -38
- package/dist/subagent-question.js +0 -29
- package/dist/subagent-tools.js +1 -60
- package/dist/subagent-week.js +0 -28
- package/dist/subagent-work.js +1 -39
- package/dist/subagents-ui.js +1 -13
- package/dist/subagents.js +0 -40
- package/dist/subscription-chat.js +1 -42
- package/dist/summary.js +0 -19
- package/dist/surface.js +8 -73
- package/dist/sweep-gate.js +0 -2
- package/dist/sweep-quarantine.js +2 -13
- package/dist/sync.js +0 -47
- package/dist/tailnet.js +0 -9
- package/dist/tamper-scan.js +0 -15
- package/dist/task-activity.js +1 -16
- package/dist/task-aliases.js +0 -3
- package/dist/task-archive.js +0 -7
- package/dist/task-base.js +0 -18
- package/dist/task-composer.js +0 -2
- package/dist/task-control.js +0 -74
- package/dist/task-live.js +0 -23
- package/dist/task-moves.js +0 -28
- package/dist/task-outcome-cli.js +66 -19
- package/dist/task-review-brief.js +0 -7
- package/dist/task-sizing.js +0 -47
- package/dist/task-source.js +0 -23
- package/dist/task-status.js +0 -106
- package/dist/task-text.js +0 -12
- package/dist/team-chat-authorization.js +0 -3
- package/dist/team-contract.js +0 -2
- package/dist/team-http.js +0 -4
- package/dist/team-leads.js +1 -16
- package/dist/team-runtime.js +0 -13
- package/dist/team-ui.js +0 -1
- package/dist/team-updates.js +0 -4
- package/dist/teams-api.js +0 -12
- package/dist/teams-chat.js +0 -28
- package/dist/teams.js +0 -12
- package/dist/teardown-git.js +6 -294
- package/dist/telegram-flow.js +0 -51
- package/dist/telegram-lead.js +2 -203
- package/dist/telegram-live.js +1 -42
- package/dist/telegram-progress.js +0 -18
- package/dist/telegram-settings.js +0 -7
- package/dist/telegram-status.js +0 -46
- package/dist/telegram-team.js +1 -33
- package/dist/telegram.js +6 -454
- package/dist/templates.js +0 -24
- package/dist/terminal-catalog.js +2 -20
- package/dist/terminal-text.js +0 -12
- package/dist/test-infra.js +0 -50
- package/dist/test-temp.js +3 -26
- package/dist/text-limits.js +0 -92
- package/dist/tidy.js +0 -76
- package/dist/tier-report.js +0 -2
- package/dist/token-notices.js +1 -9
- package/dist/tokens-cli.js +0 -13
- package/dist/tool-broker.js +2 -53
- package/dist/tool-launcher.js +0 -14
- package/dist/tool-secret-store.js +3 -125
- package/dist/toolroll-update-cli.js +0 -9
- package/dist/toolroll-update-ui.js +0 -14
- package/dist/toolroll-update.js +13 -252
- package/dist/tools-ui.js +0 -17
- package/dist/transitions-recipes.js +0 -2
- package/dist/tree-proof.js +0 -23
- package/dist/tui-contract.js +0 -8
- package/dist/tui-source.js +91 -40
- package/dist/tui.js +54 -54
- package/dist/typed-start.js +0 -27
- package/dist/unfenced-test-support.js +0 -5
- package/dist/up-processes.js +1 -40
- package/dist/up-role-child.js +1 -13
- package/dist/update-notice.js +0 -1
- package/dist/vanished-retry.js +0 -40
- package/dist/verification-evidence.js +0 -39
- package/dist/version.js +0 -1
- package/dist/wake-hub.js +0 -28
- package/dist/webhook-limits.js +0 -7
- package/dist/webhook-readers.js +0 -30
- package/dist/webhook-signing.js +0 -14
- package/dist/webhooks.js +0 -54
- package/dist/welcome-facts.js +2 -14
- package/dist/when-html.js +0 -27
- package/dist/work-index.js +26 -98
- package/dist/work-summary.js +2 -17
- package/dist/workspace-motion.js +0 -2
- package/dist/workspace-revision.js +1 -21
- package/dist/workspace-ui.js +15 -135
- package/dist/worktree-notices.js +0 -3
- package/dist/worktree.js +0 -308
- package/dist/writes-mode.js +0 -1
- package/dist/youiyoux-intake.js +4 -159
- package/package.json +5 -4
- package/dist/accent-colors.d.ts +0 -51
- package/dist/acp-agents.d.ts +0 -43
- package/dist/acp-attest.d.ts +0 -44
- package/dist/acp-check.d.ts +0 -37
- package/dist/acp-client.d.ts +0 -163
- package/dist/acp-inspect.d.ts +0 -23
- package/dist/action-ledger.d.ts +0 -27
- package/dist/activity-line.d.ts +0 -29
- package/dist/actor.d.ts +0 -11
- package/dist/agent-board.d.ts +0 -229
- package/dist/agent-fence.d.ts +0 -479
- package/dist/agent-onboard.d.ts +0 -158
- package/dist/agent-pulse.d.ts +0 -43
- package/dist/agent-state-words.d.ts +0 -19
- package/dist/agent-state.d.ts +0 -65
- package/dist/agent-turns.d.ts +0 -52
- package/dist/agentconfig.d.ts +0 -191
- package/dist/agents-board.d.ts +0 -145
- package/dist/agents-live.d.ts +0 -31
- package/dist/api-tokens.d.ts +0 -80
- package/dist/approval-authority.d.ts +0 -51
- package/dist/approval-password.d.ts +0 -31
- package/dist/approval-policy.d.ts +0 -69
- package/dist/approval-rules-ui.d.ts +0 -40
- package/dist/assignment-adapters.d.ts +0 -152
- package/dist/assignment-brief.d.ts +0 -83
- package/dist/assignment-delivery.d.ts +0 -86
- package/dist/assignment-presentation.d.ts +0 -37
- package/dist/assignment-status.d.ts +0 -71
- package/dist/assignment-ui.d.ts +0 -68
- package/dist/assignment.d.ts +0 -318
- package/dist/attest.d.ts +0 -59
- package/dist/audit-cli.d.ts +0 -17
- package/dist/backend.d.ts +0 -97
- package/dist/backup-ui.d.ts +0 -32
- package/dist/backup.d.ts +0 -92
- package/dist/batch-checks.d.ts +0 -15
- package/dist/batch-policy.d.ts +0 -23
- package/dist/beads.d.ts +0 -34
- package/dist/bin.d.ts +0 -2
- package/dist/board.d.ts +0 -134
- package/dist/boot-identity.d.ts +0 -64
- package/dist/bounded-spawn.d.ts +0 -57
- package/dist/brand-icons.d.ts +0 -168
- package/dist/brand-mark.d.ts +0 -28
- package/dist/brief-fence.d.ts +0 -9
- package/dist/browser-crew.d.ts +0 -12
- package/dist/browser-shell.d.ts +0 -9
- package/dist/browser-workspace.d.ts +0 -1972
- package/dist/budget-alerts.d.ts +0 -19
- package/dist/build-review.d.ts +0 -38
- package/dist/builder-restart.d.ts +0 -21
- package/dist/builder.d.ts +0 -409
- package/dist/canonical-json.d.ts +0 -14
- package/dist/capscan.d.ts +0 -35
- package/dist/card-catalog.d.ts +0 -209
- package/dist/card-cli.d.ts +0 -43
- package/dist/card-render.d.ts +0 -43
- package/dist/card-sources.d.ts +0 -68
- package/dist/chat-acceptance.d.ts +0 -74
- package/dist/chat-actions.d.ts +0 -460
- package/dist/chat-admission.d.ts +0 -19
- package/dist/chat-approval.d.ts +0 -58
- package/dist/chat-ask.d.ts +0 -32
- package/dist/chat-card-part.d.ts +0 -11
- package/dist/chat-card.d.ts +0 -46
- package/dist/chat-channel.d.ts +0 -126
- package/dist/chat-continuity.d.ts +0 -32
- package/dist/chat-controls.d.ts +0 -117
- package/dist/chat-core.d.ts +0 -177
- package/dist/chat-decide.d.ts +0 -269
- package/dist/chat-delivery-state.d.ts +0 -132
- package/dist/chat-delivery.d.ts +0 -71
- package/dist/chat-display.d.ts +0 -1
- package/dist/chat-evidence.d.ts +0 -123
- package/dist/chat-flow.d.ts +0 -70
- package/dist/chat-follow.d.ts +0 -20
- package/dist/chat-inbox.d.ts +0 -57
- package/dist/chat-live-schema.d.ts +0 -17
- package/dist/chat-live.d.ts +0 -161
- package/dist/chat-message-states.d.ts +0 -75
- package/dist/chat-messages.d.ts +0 -338
- package/dist/chat-migration.d.ts +0 -30
- package/dist/chat-polish.d.ts +0 -17
- package/dist/chat-quiet.d.ts +0 -40
- package/dist/chat-review.d.ts +0 -51
- package/dist/chat-rooms.d.ts +0 -123
- package/dist/chat-settings-page.d.ts +0 -43
- package/dist/chat-task-actions.d.ts +0 -59
- package/dist/chat-terms.d.ts +0 -29
- package/dist/chat-voice.d.ts +0 -69
- package/dist/chat-warmth.d.ts +0 -21
- package/dist/check-access.d.ts +0 -54
- package/dist/check-facts.d.ts +0 -126
- package/dist/check-failure.d.ts +0 -113
- package/dist/check-levels-ui.d.ts +0 -36
- package/dist/check-levels.d.ts +0 -70
- package/dist/check-load.d.ts +0 -85
- package/dist/check-only-standing.d.ts +0 -36
- package/dist/check-only.d.ts +0 -15
- package/dist/check-progress.d.ts +0 -78
- package/dist/check-repair.d.ts +0 -47
- package/dist/check-report.d.ts +0 -177
- package/dist/check-stamp.d.ts +0 -46
- package/dist/checkout-cleanup.d.ts +0 -157
- package/dist/checkout-proof.d.ts +0 -28
- package/dist/child-database.d.ts +0 -12
- package/dist/claim.d.ts +0 -627
- package/dist/claude-print.d.ts +0 -12
- package/dist/cli-fast.d.ts +0 -8
- package/dist/cli-help.d.ts +0 -8
- package/dist/cli-http.d.ts +0 -58
- package/dist/cli.d.ts +0 -149
- package/dist/code-extract.d.ts +0 -44
- package/dist/code-map-acts.d.ts +0 -24
- package/dist/code-map-admission.d.ts +0 -52
- package/dist/code-map-build.d.ts +0 -63
- package/dist/code-map-cli.d.ts +0 -153
- package/dist/code-map-main.d.ts +0 -1
- package/dist/code-map-read.d.ts +0 -106
- package/dist/code-map-report.d.ts +0 -37
- package/dist/code-map-shape.d.ts +0 -172
- package/dist/code-map-store.d.ts +0 -136
- package/dist/codex-limits.d.ts +0 -15
- package/dist/coding-context.d.ts +0 -18
- package/dist/coding-handoff.d.ts +0 -39
- package/dist/coding-provider.d.ts +0 -88
- package/dist/coding-shipping-ui.d.ts +0 -5
- package/dist/coding-types.d.ts +0 -16
- package/dist/coding-ui.d.ts +0 -19
- package/dist/coding-update.d.ts +0 -28
- package/dist/coding-workspace.d.ts +0 -141
- package/dist/commit-extract.d.ts +0 -135
- package/dist/connect-cli.d.ts +0 -34
- package/dist/console-chrome.d.ts +0 -41
- package/dist/console-instance.d.ts +0 -157
- package/dist/container-state.d.ts +0 -5
- package/dist/containment.d.ts +0 -205
- package/dist/contract-changes.d.ts +0 -52
- package/dist/contracts/acceptance-terms.d.ts +0 -14
- package/dist/contracts/chat-actions.d.ts +0 -465
- package/dist/contracts/chat-callback-rows.d.ts +0 -59
- package/dist/contracts/chat-card.d.ts +0 -91
- package/dist/contracts/chat-content.d.ts +0 -551
- package/dist/contracts/chat-tables.d.ts +0 -12
- package/dist/contracts/cli.d.ts +0 -987
- package/dist/contracts/coding-activity.d.ts +0 -64
- package/dist/contracts/coding-context.d.ts +0 -97
- package/dist/contracts/coding-handoff.d.ts +0 -44
- package/dist/contracts/coding-workspace.d.ts +0 -165
- package/dist/contracts/console-api.d.ts +0 -539
- package/dist/contracts/contract-test.d.ts +0 -45
- package/dist/contracts/contract.d.ts +0 -92
- package/dist/contracts/decision.d.ts +0 -45
- package/dist/contracts/diff-stat.d.ts +0 -58
- package/dist/contracts/discord-callback.d.ts +0 -45
- package/dist/contracts/flow-card.d.ts +0 -53
- package/dist/contracts/flow-propose.d.ts +0 -334
- package/dist/contracts/flow-send.d.ts +0 -245
- package/dist/contracts/flow.d.ts +0 -19565
- package/dist/contracts/gateway-tools.d.ts +0 -472
- package/dist/contracts/handoff.d.ts +0 -91
- package/dist/contracts/health.d.ts +0 -82
- package/dist/contracts/integration-metadata.d.ts +0 -100
- package/dist/contracts/lead-context.d.ts +0 -165
- package/dist/contracts/lead-tools.d.ts +0 -2312
- package/dist/contracts/mcp-oauth.d.ts +0 -53
- package/dist/contracts/memory-pass.d.ts +0 -157
- package/dist/contracts/model-catalog.d.ts +0 -21
- package/dist/contracts/observation-request.d.ts +0 -37
- package/dist/contracts/plan.d.ts +0 -58
- package/dist/contracts/project-knowledge.d.ts +0 -159
- package/dist/contracts/project-memory.d.ts +0 -119
- package/dist/contracts/project-skills.d.ts +0 -120
- package/dist/contracts/proof.d.ts +0 -136
- package/dist/contracts/provider.d.ts +0 -40
- package/dist/contracts/recipes.d.ts +0 -166
- package/dist/contracts/release-check.d.ts +0 -371
- package/dist/contracts/release-terms.d.ts +0 -107
- package/dist/contracts/retention.d.ts +0 -42
- package/dist/contracts/review-findings.d.ts +0 -46
- package/dist/contracts/route-results.d.ts +0 -121
- package/dist/contracts/route.d.ts +0 -897
- package/dist/contracts/scope.d.ts +0 -105
- package/dist/contracts/scout-report.d.ts +0 -234
- package/dist/contracts/slack-callback.d.ts +0 -43
- package/dist/contracts/sort-answer.d.ts +0 -83
- package/dist/contracts/stage-output.d.ts +0 -127
- package/dist/contracts/storage.d.ts +0 -37
- package/dist/contracts/store-json.d.ts +0 -313
- package/dist/contracts/subagent-turn.d.ts +0 -43
- package/dist/contracts/task-sizing.d.ts +0 -24
- package/dist/contracts/teams-callback.d.ts +0 -13
- package/dist/contracts/telegram-callback.d.ts +0 -120
- package/dist/contracts/trigger-payloads.d.ts +0 -389
- package/dist/contracts/update-journal.d.ts +0 -254
- package/dist/contracts/verification-receipt.d.ts +0 -200
- package/dist/contracts/verification-view.d.ts +0 -102
- package/dist/contracts/youiyoux-request.d.ts +0 -248
- package/dist/control-setup.d.ts +0 -44
- package/dist/control-ui.d.ts +0 -37
- package/dist/controller-service.d.ts +0 -1
- package/dist/controller-supervisor.d.ts +0 -38
- package/dist/converse.d.ts +0 -316
- package/dist/coordinator-proposals.d.ts +0 -29
- package/dist/coordinator.d.ts +0 -186
- package/dist/credentials-ui.d.ts +0 -33
- package/dist/daemon.d.ts +0 -226
- package/dist/database-reclaim.d.ts +0 -4
- package/dist/decision.d.ts +0 -119
- package/dist/demo-chat.d.ts +0 -32
- package/dist/demo.d.ts +0 -153
- package/dist/deploy-gate.d.ts +0 -20
- package/dist/deploy-lock.d.ts +0 -8
- package/dist/deploy-phase.d.ts +0 -37
- package/dist/deploy-rescue.d.ts +0 -42
- package/dist/deprecations.d.ts +0 -20
- package/dist/design/kit.d.ts +0 -216
- package/dist/desktop-access.d.ts +0 -28
- package/dist/desktop-bundle.d.ts +0 -16
- package/dist/desktop-host.d.ts +0 -54
- package/dist/desktop-update-gate.d.ts +0 -12
- package/dist/desktop-update-recovery.d.ts +0 -14
- package/dist/desktop-update.d.ts +0 -147
- package/dist/digest-times.d.ts +0 -3
- package/dist/disclosure.d.ts +0 -6
- package/dist/discord-api.d.ts +0 -24
- package/dist/discord-chat.d.ts +0 -27
- package/dist/discord-settings.d.ts +0 -4
- package/dist/discord.d.ts +0 -10
- package/dist/discover.d.ts +0 -75
- package/dist/dispatch.d.ts +0 -123
- package/dist/dispose.d.ts +0 -194
- package/dist/doctor.d.ts +0 -67
- package/dist/easy-start-args.d.ts +0 -13
- package/dist/easy-start.d.ts +0 -77
- package/dist/egress.d.ts +0 -121
- package/dist/email-settings.d.ts +0 -34
- package/dist/envelope.d.ts +0 -47
- package/dist/eval-gate.d.ts +0 -51
- package/dist/eval-hooks.d.ts +0 -94
- package/dist/eval-oracle-main.d.ts +0 -1
- package/dist/eval-oracle.d.ts +0 -60
- package/dist/eval-world.d.ts +0 -17
- package/dist/evals.d.ts +0 -299
- package/dist/evidence-pack.d.ts +0 -186
- package/dist/evidence-pair.d.ts +0 -53
- package/dist/evidence.d.ts +0 -371
- package/dist/exec.d.ts +0 -355
- package/dist/exhaustion.d.ts +0 -58
- package/dist/export-ui.d.ts +0 -11
- package/dist/export.d.ts +0 -48
- package/dist/failing-first.d.ts +0 -31
- package/dist/fallback-schema.d.ts +0 -8
- package/dist/fallback.d.ts +0 -138
- package/dist/fast-start.d.ts +0 -213
- package/dist/fast-terms.d.ts +0 -9
- package/dist/fenced-check-coverage.d.ts +0 -62
- package/dist/findings.d.ts +0 -224
- package/dist/first-run.d.ts +0 -197
- package/dist/first-tasks-child.d.ts +0 -1
- package/dist/flaky-ci.d.ts +0 -31
- package/dist/flaky-cli.d.ts +0 -60
- package/dist/flaky.d.ts +0 -83
- package/dist/fleet-schema.d.ts +0 -17
- package/dist/flow-actions.d.ts +0 -79
- package/dist/flow-browser.d.ts +0 -103
- package/dist/flow-cadence.d.ts +0 -48
- package/dist/flow-card-task.d.ts +0 -11
- package/dist/flow-changed.d.ts +0 -14
- package/dist/flow-code.d.ts +0 -84
- package/dist/flow-draft.d.ts +0 -42
- package/dist/flow-engine.d.ts +0 -82
- package/dist/flow-gallery-ui.d.ts +0 -73
- package/dist/flow-gallery.d.ts +0 -147
- package/dist/flow-insights.d.ts +0 -104
- package/dist/flow-items.d.ts +0 -37
- package/dist/flow-live.d.ts +0 -16
- package/dist/flow-people.d.ts +0 -23
- package/dist/flow-pull-request.d.ts +0 -14
- package/dist/flow-replies.d.ts +0 -48
- package/dist/flow-result-card.d.ts +0 -22
- package/dist/flow-schedule.d.ts +0 -154
- package/dist/flow-scripts.d.ts +0 -31
- package/dist/flow-secrets.d.ts +0 -13
- package/dist/flow-send.d.ts +0 -54
- package/dist/flow-share.d.ts +0 -78
- package/dist/flow-sort.d.ts +0 -63
- package/dist/flow-starters-ui.d.ts +0 -15
- package/dist/flow-starters.d.ts +0 -63
- package/dist/flow-steps.d.ts +0 -52
- package/dist/flow-triggers.d.ts +0 -303
- package/dist/flow-unattended-words.d.ts +0 -48
- package/dist/flow-unattended.d.ts +0 -259
- package/dist/flows-cli.d.ts +0 -358
- package/dist/flows-ui.d.ts +0 -70
- package/dist/flows.d.ts +0 -136
- package/dist/folder-gate.d.ts +0 -32
- package/dist/folder-look.d.ts +0 -110
- package/dist/follow-through-brief.d.ts +0 -12
- package/dist/follow-through-cli.d.ts +0 -23
- package/dist/fonts.d.ts +0 -19
- package/dist/gaps.d.ts +0 -35
- package/dist/gate-failure.d.ts +0 -40
- package/dist/git-floor.d.ts +0 -16
- package/dist/git-incident.d.ts +0 -65
- package/dist/git-views.d.ts +0 -20
- package/dist/git.d.ts +0 -54
- package/dist/github-import.d.ts +0 -62
- package/dist/github-jobs.d.ts +0 -25
- package/dist/google-mail.d.ts +0 -59
- package/dist/grant.d.ts +0 -136
- package/dist/graph.d.ts +0 -164
- package/dist/guides.d.ts +0 -22
- package/dist/handover-note.d.ts +0 -33
- package/dist/health-cli.d.ts +0 -3
- package/dist/home-groups.d.ts +0 -39
- package/dist/html.d.ts +0 -85
- package/dist/install-method.d.ts +0 -17
- package/dist/integrations-ui.d.ts +0 -17
- package/dist/integrations.d.ts +0 -138
- package/dist/invoke.d.ts +0 -228
- package/dist/is-record.d.ts +0 -2
- package/dist/issues.d.ts +0 -41
- package/dist/jsonl-discriminants.d.ts +0 -11
- package/dist/keymap.d.ts +0 -41
- package/dist/keys.d.ts +0 -108
- package/dist/kits-ui.d.ts +0 -16
- package/dist/kits.d.ts +0 -88
- package/dist/knowledge-cli.d.ts +0 -132
- package/dist/knowledge-ui.d.ts +0 -45
- package/dist/landed-cleanup.d.ts +0 -175
- package/dist/laptop-background.d.ts +0 -187
- package/dist/laptop-service.d.ts +0 -111
- package/dist/latency-timeline.d.ts +0 -46
- package/dist/lead-about.d.ts +0 -35
- package/dist/lead-answer-eval.d.ts +0 -93
- package/dist/lead-capabilities.d.ts +0 -57
- package/dist/lead-cli-live.d.ts +0 -56
- package/dist/lead-cli.d.ts +0 -58
- package/dist/lead-commitments.d.ts +0 -84
- package/dist/lead-context.d.ts +0 -45
- package/dist/lead-contract.d.ts +0 -10
- package/dist/lead-doors.d.ts +0 -122
- package/dist/lead-follow.d.ts +0 -26
- package/dist/lead-identity.d.ts +0 -23
- package/dist/lead-latency-schema.d.ts +0 -24
- package/dist/lead-people.d.ts +0 -55
- package/dist/lead-progress.d.ts +0 -67
- package/dist/lead-queue-runtime.d.ts +0 -46
- package/dist/lead-queue.d.ts +0 -104
- package/dist/lead-route.d.ts +0 -56
- package/dist/lead-status.d.ts +0 -116
- package/dist/lead-sweep.d.ts +0 -67
- package/dist/lead-tools.d.ts +0 -167
- package/dist/lead-voice.d.ts +0 -85
- package/dist/lead.d.ts +0 -142
- package/dist/learning-child.d.ts +0 -1
- package/dist/learning-look.d.ts +0 -25
- package/dist/ledger-chain.d.ts +0 -46
- package/dist/ledger-csv.d.ts +0 -4
- package/dist/ledger-view.d.ts +0 -27
- package/dist/lesson-notes.d.ts +0 -81
- package/dist/limits-ui.d.ts +0 -34
- package/dist/link.d.ts +0 -72
- package/dist/live-backup.d.ts +0 -39
- package/dist/live-bus.d.ts +0 -141
- package/dist/live-children-read.d.ts +0 -52
- package/dist/live-children.d.ts +0 -73
- package/dist/live-detail.d.ts +0 -27
- package/dist/live-input.d.ts +0 -68
- package/dist/live-main-read.d.ts +0 -19
- package/dist/live-notes.d.ts +0 -20
- package/dist/live-open.d.ts +0 -28
- package/dist/live-records.d.ts +0 -149
- package/dist/live-reply.d.ts +0 -83
- package/dist/live-terminal.d.ts +0 -273
- package/dist/live.d.ts +0 -152
- package/dist/local-owner.d.ts +0 -124
- package/dist/log.d.ts +0 -7
- package/dist/login-secrets.d.ts +0 -60
- package/dist/machine-check.d.ts +0 -16
- package/dist/machine-identity.d.ts +0 -75
- package/dist/mailbox.d.ts +0 -57
- package/dist/maintenance.d.ts +0 -13
- package/dist/mcp-connect.d.ts +0 -181
- package/dist/mcp-core.d.ts +0 -110
- package/dist/mcp-http.d.ts +0 -32
- package/dist/mcp-oauth.d.ts +0 -92
- package/dist/mcp-person.d.ts +0 -22
- package/dist/mcp.d.ts +0 -20
- package/dist/memory-cli.d.ts +0 -768
- package/dist/memory-pass.d.ts +0 -151
- package/dist/memory-tidy.d.ts +0 -181
- package/dist/memory-use.d.ts +0 -35
- package/dist/merge-checklist.d.ts +0 -55
- package/dist/metrics.d.ts +0 -6
- package/dist/mobile-viewport.d.ts +0 -7
- package/dist/model-catalog.d.ts +0 -123
- package/dist/model-choices.d.ts +0 -235
- package/dist/model-names.d.ts +0 -6
- package/dist/models-cli.d.ts +0 -307
- package/dist/models-ui.d.ts +0 -161
- package/dist/modes.d.ts +0 -99
- package/dist/monitoring-settings.d.ts +0 -44
- package/dist/monitoring-ui.d.ts +0 -23
- package/dist/monitoring.d.ts +0 -34
- package/dist/names.d.ts +0 -67
- package/dist/needs-you.d.ts +0 -164
- package/dist/never-index.d.ts +0 -3
- package/dist/nightly-check.d.ts +0 -107
- package/dist/nightly-github.d.ts +0 -318
- package/dist/notification-delivery.d.ts +0 -19
- package/dist/notification-rows.d.ts +0 -30
- package/dist/oauth-run-token.d.ts +0 -51
- package/dist/observations.d.ts +0 -36
- package/dist/oidc.d.ts +0 -71
- package/dist/onboard.d.ts +0 -108
- package/dist/one-step-chat-schema.d.ts +0 -22
- package/dist/openrouter-models.d.ts +0 -34
- package/dist/operate-remote-arguments.d.ts +0 -36
- package/dist/operate-remote.d.ts +0 -98
- package/dist/operate.d.ts +0 -401
- package/dist/orphan-sweep.d.ts +0 -65
- package/dist/page-work-contract.d.ts +0 -21
- package/dist/password-bearer.d.ts +0 -25
- package/dist/passwordless.d.ts +0 -23
- package/dist/peek-cli.d.ts +0 -112
- package/dist/peek.d.ts +0 -110
- package/dist/people-audit-ui.d.ts +0 -16
- package/dist/person-proof.d.ts +0 -2
- package/dist/phase-routing.d.ts +0 -401
- package/dist/plain-schema.d.ts +0 -23
- package/dist/plain-words.d.ts +0 -20
- package/dist/plan-auto.d.ts +0 -25
- package/dist/plan-login.d.ts +0 -14
- package/dist/plan.d.ts +0 -188
- package/dist/plane-review.d.ts +0 -54
- package/dist/planner-source.d.ts +0 -225
- package/dist/planner.d.ts +0 -76
- package/dist/policy-ui.d.ts +0 -22
- package/dist/policy.d.ts +0 -92
- package/dist/prepared-evidence.d.ts +0 -17
- package/dist/principal.d.ts +0 -42
- package/dist/probe.d.ts +0 -46
- package/dist/process-custody.d.ts +0 -17
- package/dist/process-liveness.d.ts +0 -13
- package/dist/process-tree.d.ts +0 -39
- package/dist/project-access.d.ts +0 -17
- package/dist/project-activity.d.ts +0 -20
- package/dist/project-admission.d.ts +0 -105
- package/dist/project-cli.d.ts +0 -19
- package/dist/project-concurrency.d.ts +0 -62
- package/dist/project-delete-ui.d.ts +0 -96
- package/dist/project-delete.d.ts +0 -59
- package/dist/project-demo.d.ts +0 -12
- package/dist/project-file.d.ts +0 -3
- package/dist/project-identity.d.ts +0 -52
- package/dist/project-knowledge.d.ts +0 -124
- package/dist/project-learning.d.ts +0 -120
- package/dist/project-memory.d.ts +0 -70
- package/dist/project-outcomes.d.ts +0 -119
- package/dist/project-sandbox.d.ts +0 -59
- package/dist/project-skills.d.ts +0 -139
- package/dist/project-tools.d.ts +0 -318
- package/dist/project.d.ts +0 -65
- package/dist/prompt.d.ts +0 -33
- package/dist/proof.d.ts +0 -457
- package/dist/proposal.d.ts +0 -70
- package/dist/protected-storage-look.d.ts +0 -1
- package/dist/protected-storage.d.ts +0 -98
- package/dist/provider-auth.d.ts +0 -143
- package/dist/provider-capture.d.ts +0 -34
- package/dist/provider-connection.d.ts +0 -23
- package/dist/provider-home.d.ts +0 -22
- package/dist/provider-limits.d.ts +0 -37
- package/dist/provider.d.ts +0 -369
- package/dist/public-access.d.ts +0 -52
- package/dist/public-check.d.ts +0 -37
- package/dist/publish.d.ts +0 -146
- package/dist/pull-request-flow.d.ts +0 -189
- package/dist/pull-request-schema.d.ts +0 -5
- package/dist/pull-request-ui.d.ts +0 -25
- package/dist/pulls.d.ts +0 -121
- package/dist/push.d.ts +0 -120
- package/dist/quality.d.ts +0 -8
- package/dist/quick-start.d.ts +0 -26
- package/dist/read-executor-worker.d.ts +0 -1
- package/dist/read-executor.d.ts +0 -66
- package/dist/read-only-request.d.ts +0 -4
- package/dist/recipe-ui.d.ts +0 -21
- package/dist/recipes.d.ts +0 -56
- package/dist/release-adapters.d.ts +0 -205
- package/dist/release-approval.d.ts +0 -180
- package/dist/release-authority.d.ts +0 -173
- package/dist/release-auto.d.ts +0 -184
- package/dist/release-card.d.ts +0 -156
- package/dist/release-carry.d.ts +0 -261
- package/dist/release-ci-hold.d.ts +0 -41
- package/dist/release-cli.d.ts +0 -34
- package/dist/release-coverage.d.ts +0 -16
- package/dist/release-gate.d.ts +0 -84
- package/dist/release-git.d.ts +0 -43
- package/dist/release-links.d.ts +0 -29
- package/dist/release-net.d.ts +0 -90
- package/dist/release-next.d.ts +0 -48
- package/dist/release-recheck.d.ts +0 -146
- package/dist/release-refusal.d.ts +0 -32
- package/dist/release-view.d.ts +0 -37
- package/dist/release.d.ts +0 -806
- package/dist/releases.d.ts +0 -94
- package/dist/remote-audit.d.ts +0 -79
- package/dist/remote-command.d.ts +0 -45
- package/dist/remote-destination.d.ts +0 -36
- package/dist/remote-exec.d.ts +0 -38
- package/dist/remote-main.d.ts +0 -111
- package/dist/remote-run.d.ts +0 -20
- package/dist/remote.d.ts +0 -67
- package/dist/render.d.ts +0 -64
- package/dist/reply-shape.d.ts +0 -106
- package/dist/reply-voice.d.ts +0 -23
- package/dist/report-summary.d.ts +0 -22
- package/dist/reported-usage.d.ts +0 -69
- package/dist/repos.d.ts +0 -67
- package/dist/repository-context-ui.d.ts +0 -3
- package/dist/repository-context.d.ts +0 -66
- package/dist/request-budget-ui.d.ts +0 -14
- package/dist/request-budget.d.ts +0 -127
- package/dist/restart-certification.d.ts +0 -133
- package/dist/result-actions.d.ts +0 -36
- package/dist/result-acts.d.ts +0 -112
- package/dist/result-completion.d.ts +0 -35
- package/dist/result-evidence-readers.d.ts +0 -42
- package/dist/result-follow-ups.d.ts +0 -118
- package/dist/result-review.d.ts +0 -220
- package/dist/result-shots.d.ts +0 -59
- package/dist/retention-ui.d.ts +0 -21
- package/dist/retention.d.ts +0 -77
- package/dist/review-context.d.ts +0 -245
- package/dist/review-evidence.d.ts +0 -33
- package/dist/review-switch.d.ts +0 -36
- package/dist/reviewer.d.ts +0 -99
- package/dist/route-change-check.d.ts +0 -4
- package/dist/route-change.d.ts +0 -22
- package/dist/route-hooks.d.ts +0 -54
- package/dist/route-results.d.ts +0 -75
- package/dist/route-rules.d.ts +0 -324
- package/dist/route-savings.d.ts +0 -136
- package/dist/route-store.d.ts +0 -300
- package/dist/run-closeout.d.ts +0 -89
- package/dist/run-efficiency.d.ts +0 -74
- package/dist/run-ending.d.ts +0 -21
- package/dist/runner-process.d.ts +0 -76
- package/dist/runner.d.ts +0 -324
- package/dist/sample-project.d.ts +0 -31
- package/dist/sandbox-launch.d.ts +0 -1
- package/dist/sandbox-runtime.d.ts +0 -128
- package/dist/scan.d.ts +0 -32
- package/dist/scope.d.ts +0 -1067
- package/dist/scout-browser-lock.d.ts +0 -69
- package/dist/scout-browser.d.ts +0 -107
- package/dist/scout-net.d.ts +0 -25
- package/dist/scout-report.d.ts +0 -23
- package/dist/scout.d.ts +0 -142
- package/dist/secret-mint.d.ts +0 -1
- package/dist/serve.d.ts +0 -11
- package/dist/server/agents-computers.d.ts +0 -9
- package/dist/server/agents-live-filed.d.ts +0 -17
- package/dist/server/agents-live-lead.d.ts +0 -47
- package/dist/server/agents-live-room.d.ts +0 -23
- package/dist/server/chat.d.ts +0 -39
- package/dist/server/chrome.d.ts +0 -328
- package/dist/server/edge-refusal.d.ts +0 -7
- package/dist/server/flows.d.ts +0 -8
- package/dist/server/guards.d.ts +0 -80
- package/dist/server/handler-context.d.ts +0 -22
- package/dist/server/handler-registry.d.ts +0 -23
- package/dist/server/home-asks.d.ts +0 -45
- package/dist/server/home.d.ts +0 -65
- package/dist/server/http.d.ts +0 -337
- package/dist/server/in-place.d.ts +0 -15
- package/dist/server/kit-standalone.d.ts +0 -22
- package/dist/server/kit.d.ts +0 -452
- package/dist/server/last-checks.d.ts +0 -17
- package/dist/server/live.d.ts +0 -74
- package/dist/server/merge-ready-view.d.ts +0 -10
- package/dist/server/mutation-key.d.ts +0 -70
- package/dist/server/pages-assets.d.ts +0 -11
- package/dist/server/pages.d.ts +0 -8
- package/dist/server/people-tokens.d.ts +0 -18
- package/dist/server/remote-hooks.d.ts +0 -29
- package/dist/server/remote.d.ts +0 -59
- package/dist/server/render-chat.d.ts +0 -439
- package/dist/server/render-code-map.d.ts +0 -30
- package/dist/server/render-flaky.d.ts +0 -20
- package/dist/server/render-follow-through.d.ts +0 -11
- package/dist/server/render-history.d.ts +0 -51
- package/dist/server/render-new-task.d.ts +0 -54
- package/dist/server/render-pages.d.ts +0 -236
- package/dist/server/render-people.d.ts +0 -102
- package/dist/server/render-projects.d.ts +0 -104
- package/dist/server/render-release.d.ts +0 -19
- package/dist/server/render-results.d.ts +0 -754
- package/dist/server/render-settings.d.ts +0 -93
- package/dist/server/render-tasks.d.ts +0 -774
- package/dist/server/request-context.d.ts +0 -78
- package/dist/server/retired-routes.d.ts +0 -17
- package/dist/server/route-policy.d.ts +0 -18
- package/dist/server/route-table.d.ts +0 -114
- package/dist/server/runtime.d.ts +0 -342
- package/dist/server/session.d.ts +0 -192
- package/dist/server/settings.d.ts +0 -76
- package/dist/server/signup-gate.d.ts +0 -9
- package/dist/server/sweeps.d.ts +0 -4
- package/dist/server/task-views.d.ts +0 -98
- package/dist/server/tasks.d.ts +0 -83
- package/dist/server/terminals.d.ts +0 -31
- package/dist/server/welcome.d.ts +0 -28
- package/dist/server-telemetry.d.ts +0 -87
- package/dist/settings-groups-ui.d.ts +0 -286
- package/dist/settings-kit-script.d.ts +0 -21
- package/dist/settings-kit.d.ts +0 -173
- package/dist/settings-proofs.d.ts +0 -64
- package/dist/setup-guide.d.ts +0 -39
- package/dist/shared-deps.d.ts +0 -115
- package/dist/sign-in-guard.d.ts +0 -70
- package/dist/skills-ui.d.ts +0 -12
- package/dist/skills.d.ts +0 -99
- package/dist/slack-api.d.ts +0 -59
- package/dist/slack-chat.d.ts +0 -37
- package/dist/slack-settings.d.ts +0 -4
- package/dist/slack-socket.d.ts +0 -12
- package/dist/slack.d.ts +0 -6
- package/dist/sleep.d.ts +0 -2
- package/dist/source-key.d.ts +0 -2
- package/dist/spend-report.d.ts +0 -87
- package/dist/spend-ui.d.ts +0 -80
- package/dist/spend.d.ts +0 -142
- package/dist/sqlite-runtime.d.ts +0 -3
- package/dist/sqlite-telemetry.d.ts +0 -9
- package/dist/sso-settings.d.ts +0 -33
- package/dist/sso-ui.d.ts +0 -26
- package/dist/staged-runtimes.d.ts +0 -54
- package/dist/steer-capabilities.d.ts +0 -32
- package/dist/steer-controls.d.ts +0 -14
- package/dist/steer-live.d.ts +0 -19
- package/dist/steer-mailbox.d.ts +0 -46
- package/dist/steer-status.d.ts +0 -25
- package/dist/stop-proof.d.ts +0 -67
- package/dist/storage-sweep-child.d.ts +0 -1
- package/dist/storage-sweep-process.d.ts +0 -55
- package/dist/storage-sweep-schedule.d.ts +0 -30
- package/dist/storage-sweep.d.ts +0 -77
- package/dist/storage-ui.d.ts +0 -23
- package/dist/storage.d.ts +0 -68
- package/dist/store-baseline.d.ts +0 -19
- package/dist/store.d.ts +0 -8613
- package/dist/stream-scope.d.ts +0 -18
- package/dist/structured-output.d.ts +0 -57
- package/dist/style-asset.d.ts +0 -7
- package/dist/subagent-admin.d.ts +0 -53
- package/dist/subagent-desk.d.ts +0 -59
- package/dist/subagent-memory.d.ts +0 -65
- package/dist/subagent-question.d.ts +0 -59
- package/dist/subagent-tools.d.ts +0 -125
- package/dist/subagent-week.d.ts +0 -68
- package/dist/subagent-work.d.ts +0 -76
- package/dist/subagents-ui.d.ts +0 -22
- package/dist/subagents.d.ts +0 -146
- package/dist/subscription-chat.d.ts +0 -54
- package/dist/summary.d.ts +0 -33
- package/dist/surface.d.ts +0 -49
- package/dist/sweep-gate.d.ts +0 -10
- package/dist/sweep-quarantine.d.ts +0 -29
- package/dist/sync.d.ts +0 -94
- package/dist/tailnet.d.ts +0 -11
- package/dist/tamper-scan.d.ts +0 -4
- package/dist/task-activity.d.ts +0 -27
- package/dist/task-aliases.d.ts +0 -5
- package/dist/task-archive.d.ts +0 -13
- package/dist/task-base.d.ts +0 -39
- package/dist/task-composer.d.ts +0 -14
- package/dist/task-control.d.ts +0 -159
- package/dist/task-live.d.ts +0 -8
- package/dist/task-moves.d.ts +0 -90
- package/dist/task-outcome-cli.d.ts +0 -30
- package/dist/task-review-brief.d.ts +0 -69
- package/dist/task-sizing.d.ts +0 -58
- package/dist/task-source.d.ts +0 -77
- package/dist/task-status.d.ts +0 -324
- package/dist/task-text.d.ts +0 -31
- package/dist/team-chat-authorization.d.ts +0 -11
- package/dist/team-contract.d.ts +0 -103
- package/dist/team-http.d.ts +0 -25
- package/dist/team-leads.d.ts +0 -85
- package/dist/team-runtime.d.ts +0 -25
- package/dist/team-ui.d.ts +0 -4
- package/dist/team-updates.d.ts +0 -8
- package/dist/teams-api.d.ts +0 -33
- package/dist/teams-chat.d.ts +0 -36
- package/dist/teams-settings.d.ts +0 -14
- package/dist/teams.d.ts +0 -24
- package/dist/teardown-git.d.ts +0 -164
- package/dist/telegram-flow.d.ts +0 -112
- package/dist/telegram-lead.d.ts +0 -151
- package/dist/telegram-live.d.ts +0 -116
- package/dist/telegram-progress.d.ts +0 -20
- package/dist/telegram-settings.d.ts +0 -9
- package/dist/telegram-status.d.ts +0 -83
- package/dist/telegram-team.d.ts +0 -68
- package/dist/telegram.d.ts +0 -271
- package/dist/templates.d.ts +0 -69
- package/dist/terminal-catalog.d.ts +0 -11
- package/dist/terminal-text.d.ts +0 -11
- package/dist/test-infra.d.ts +0 -34
- package/dist/test-temp.d.ts +0 -40
- package/dist/text-limits.d.ts +0 -297
- package/dist/tidy.d.ts +0 -130
- package/dist/tier-report.d.ts +0 -44
- package/dist/token-notices.d.ts +0 -11
- package/dist/tokens-cli.d.ts +0 -21
- package/dist/tool-broker.d.ts +0 -52
- package/dist/tool-launcher.d.ts +0 -1
- package/dist/tool-secret-store.d.ts +0 -167
- package/dist/toolroll-update-cli.d.ts +0 -15
- package/dist/toolroll-update-ui.d.ts +0 -47
- package/dist/toolroll-update.d.ts +0 -265
- package/dist/tools-ui.d.ts +0 -51
- package/dist/transitions-recipes.d.ts +0 -1
- package/dist/tree-proof.d.ts +0 -34
- package/dist/tui-contract.d.ts +0 -144
- package/dist/tui-source.d.ts +0 -14
- package/dist/typed-start.d.ts +0 -51
- package/dist/unfenced-test-support.d.ts +0 -2
- package/dist/up-processes.d.ts +0 -162
- package/dist/up-role-child.d.ts +0 -1
- package/dist/update-notice.d.ts +0 -5
- package/dist/vanished-retry.d.ts +0 -30
- package/dist/verification-evidence.d.ts +0 -68
- package/dist/version.d.ts +0 -2
- package/dist/wake-hub.d.ts +0 -72
- package/dist/webhook-limits.d.ts +0 -23
- package/dist/webhook-readers.d.ts +0 -56
- package/dist/webhook-signing.d.ts +0 -27
- package/dist/webhooks.d.ts +0 -84
- package/dist/welcome-facts.d.ts +0 -18
- package/dist/when-html.d.ts +0 -40
- package/dist/work-index.d.ts +0 -175
- package/dist/work-summary.d.ts +0 -61
- package/dist/workspace-motion.d.ts +0 -4
- package/dist/workspace-revision.d.ts +0 -48
- package/dist/workspace-ui.d.ts +0 -385
- package/dist/worktree-notices.d.ts +0 -13
- package/dist/worktree.d.ts +0 -365
- package/dist/writes-mode.d.ts +0 -9
- package/dist/youiyoux-intake.d.ts +0 -234
package/dist/phase-routing.js
CHANGED
|
@@ -1,62 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Explainable phase routing (v47), sized since v2.
|
|
3
|
-
*
|
|
4
|
-
* WHICH agent plans, builds, repairs, and reviews a task is decided here,
|
|
5
|
-
* once, from signed facts — never guessed from a model's name and never
|
|
6
|
-
* re-decided behind an approval's back. The policy is a small table over
|
|
7
|
-
* explicit inputs:
|
|
8
|
-
*
|
|
9
|
-
* size — how big a change the task is (small / medium / large, risky or not)
|
|
10
|
-
* quality — the evidence policy the scope signs (default / strict)
|
|
11
|
-
* evidence — what the acceptance rubric demands (screenshots, …)
|
|
12
|
-
* publication — how far the plane may carry the result unattended
|
|
13
|
-
* candidates — the operator's CONFIGURED routine and strong agents
|
|
14
|
-
* overrides — an approver's explicit per-phase choice, recorded
|
|
15
|
-
* pins — a routine firing's or plan request's pinned pair
|
|
16
|
-
*
|
|
17
|
-
* and its output is one canonical ROUTE: four legs, each with an exact
|
|
18
|
-
* provider AND an exact model id, which tier it came from, whether a
|
|
19
|
-
* person overrode it, and plain-English reasons. The same inputs always
|
|
20
|
-
* yield the same route and the same words — `recommendRoute` is pure, so
|
|
21
|
-
* the surfaces (CLI, task page, chat) render one projection rather than
|
|
22
|
-
* three.
|
|
23
|
-
*
|
|
24
|
-
* EXACTNESS is the law of this module: a candidate, an override, a pin,
|
|
25
|
-
* and every frozen leg name an exact model id — "the harness default"
|
|
26
|
-
* is not a term an approval can bind. A configuration that cannot make a
|
|
27
|
-
* leg exact (no model configured, a cross-provider repair row, gemini on
|
|
28
|
-
* the review phase) becomes a stated PROBLEM on that leg, and the scope
|
|
29
|
-
* files unresolved with those words; nothing is guessed or substituted.
|
|
30
|
-
*
|
|
31
|
-
* Strength is never inferred: "strong" means the operator named a strong
|
|
32
|
-
* candidate for that phase (`config set <phase> --tier strong …`). With
|
|
33
|
-
* none configured, a demanding task still routes to the configured
|
|
34
|
-
* default and SAYS so — and its posture reads as economical, because that
|
|
35
|
-
* is what actually runs. Provider readiness is a runner's observation,
|
|
36
|
-
* not a term — it rides beside the route (ready / unavailable / unknown),
|
|
37
|
-
* it is stated wherever the route is shown, and an unavailable provider
|
|
38
|
-
* is never substituted: admission halts with the reason.
|
|
39
|
-
*
|
|
40
|
-
* Every route carries `risk: "routine"`: the declared risk level was
|
|
41
|
-
* removed in v115 (size does that job), and older sealed routes keep
|
|
42
|
-
* whatever risk they were recommended for, read back exactly.
|
|
43
|
-
*
|
|
44
|
-
* Approval seals the route (`approvedRouteJson`); its digest folds into
|
|
45
|
-
* the scope digest of EVERY route filed since v47 — routine-shaped routes
|
|
46
|
-
* included — so a task-level route edit stales the approval exactly as a
|
|
47
|
-
* goal edit does, while a global configuration change can never rewrite a
|
|
48
|
-
* sealed route. Only a row proven to predate v47 (no route era) reads as
|
|
49
|
-
* a legacy approval governed by its sealed profile alone.
|
|
50
|
-
*/
|
|
51
1
|
import { ACP_AGENTS, isAcpProvider } from "./acp-agents.js";
|
|
52
2
|
import { createHash } from "node:crypto";
|
|
53
3
|
import { MODEL_ID_SHAPE, postureOf, readRouteOverrides, PLAIN_ROUTE_VERSION, readSealedRoute, RISKS, ROUTE_PHASES, ROUTE_PROVIDERS, ROUTE_VERSION, TASK_SIZE_WORDS, } from "./contracts/route.js";
|
|
54
4
|
import { canonicalJson } from "./canonical-json.js";
|
|
55
5
|
export { MODEL_ID_SHAPE };
|
|
56
|
-
// Type-only imports from provider.ts: it sits under evidence.ts and scope.ts
|
|
57
|
-
// in the module graph, and this policy is imported by scope.ts — a value
|
|
58
|
-
// import would be a cycle at load time. The route contract restates the id
|
|
59
|
-
// list, pinned to provider.ts's by the test suite.
|
|
60
6
|
export const PROVIDER_ID_LIST = ROUTE_PROVIDERS;
|
|
61
7
|
function isProviderId(value) {
|
|
62
8
|
return PROVIDER_ID_LIST.includes(value);
|
|
@@ -64,20 +10,10 @@ function isProviderId(value) {
|
|
|
64
10
|
function exactModel(v) {
|
|
65
11
|
return typeof v === "string" && MODEL_ID_SHAPE.test(v);
|
|
66
12
|
}
|
|
67
|
-
/** The same exactness for callers outside this policy (the profile
|
|
68
|
-
* rehydrator): one shape, one definition. */
|
|
69
13
|
export function exactModelId(v) {
|
|
70
14
|
return exactModel(v);
|
|
71
15
|
}
|
|
72
|
-
/** v2 adds the task's size (small / medium / large, risky or not), the
|
|
73
|
-
* light tier, and plan headroom. A v1 route — sealed before sizing — still
|
|
74
|
-
* reads back exactly and keeps its own digest domain. */
|
|
75
16
|
export { PLAIN_ROUTE_VERSION, ROUTE_VERSION };
|
|
76
|
-
/** The durable route ERA a scope row carries once it was filed under this
|
|
77
|
-
* policy: NULL on a row proven to predate v47 (legacy — the sealed profile
|
|
78
|
-
* alone governs), this value on every row filed since. A row with an era
|
|
79
|
-
* and no readable route is corrupt and fails closed. The era marks a ROUTED
|
|
80
|
-
* row; which route version it holds rides in the snapshot itself. */
|
|
81
17
|
export const ROUTE_ERA = 1;
|
|
82
18
|
export const PHASES = ROUTE_PHASES;
|
|
83
19
|
export function isRiskLevel(value) {
|
|
@@ -87,12 +23,9 @@ export const TASK_SIZES = TASK_SIZE_WORDS;
|
|
|
87
23
|
export function isTaskSize(value) {
|
|
88
24
|
return value === "small" || value === "medium" || value === "large";
|
|
89
25
|
}
|
|
90
|
-
/** Whether a task makes no plan: a small change that is not risky (on an
|
|
91
|
-
* older route sealed at elevated or high risk, it always planned). */
|
|
92
26
|
export function makesNoPlan(size, risk) {
|
|
93
27
|
return size != null && size.size === "small" && !size.risky && risk === "routine";
|
|
94
28
|
}
|
|
95
|
-
/** Where a size came from, in words. */
|
|
96
29
|
export function sizeSourceWords(source) {
|
|
97
30
|
return source === "classifier" ? "sized automatically" : source === "person" ? "set by a person" : "sized from the description";
|
|
98
31
|
}
|
|
@@ -100,15 +33,8 @@ export function riskTitle(risk) {
|
|
|
100
33
|
return risk === "high" ? "High risk" : risk === "elevated" ? "Elevated risk" : "Routine";
|
|
101
34
|
}
|
|
102
35
|
const TIER_RANK = { light: 0, routine: 1, strong: 2 };
|
|
103
|
-
/** Above these a provider has no headroom: even a candidate one tier
|
|
104
|
-
* stronger on another provider takes the phase. Below them, a tier's
|
|
105
|
-
* candidates on different providers still go to the one with more room. */
|
|
106
36
|
export const HEADROOM_FIVE_HOUR_LIMIT = 80;
|
|
107
37
|
export const HEADROOM_WEEKLY_LIMIT = 90;
|
|
108
|
-
/** The latest plan-window readings as headroom: a window whose reset time
|
|
109
|
-
* has passed counts as empty; a reading older than its own window is
|
|
110
|
-
* unknown. Weekly is the plan-wide week (`seven_day`), else the fullest
|
|
111
|
-
* model-specific week. */
|
|
112
38
|
export function headroomFrom(limits, now) {
|
|
113
39
|
const out = new Map();
|
|
114
40
|
const value = (one) => {
|
|
@@ -132,7 +58,6 @@ export function headroomFrom(limits, now) {
|
|
|
132
58
|
room.weekly = used;
|
|
133
59
|
out.set(one.provider, room);
|
|
134
60
|
}
|
|
135
|
-
// A plan-wide week beats a model's week: re-read seven_day last.
|
|
136
61
|
for (const one of limits)
|
|
137
62
|
if (isProviderId(one.provider) && one.window === "seven_day")
|
|
138
63
|
out.get(one.provider).weekly = value(one);
|
|
@@ -191,7 +116,6 @@ function demandedTier(input, phase) {
|
|
|
191
116
|
}
|
|
192
117
|
function economyReason(input, phase) {
|
|
193
118
|
const facts = [
|
|
194
|
-
// Said as it always was, so a route's words (and its digest) stay the same.
|
|
195
119
|
"risk is routine",
|
|
196
120
|
`quality is ${input.qualityMode === "strict" ? "strict" : "default"}`,
|
|
197
121
|
...(input.publication === "notify" ? ["publication waits for a person"] : []),
|
|
@@ -205,16 +129,9 @@ function reviewProblem(spec) {
|
|
|
205
129
|
? "gemini has no isolation posture for the review phase yet — configure or override the reviewer to claude or codex"
|
|
206
130
|
: null;
|
|
207
131
|
}
|
|
208
|
-
/** ACP agents run with full access inside the fence; a plan is read-only work, which they can't be held to. */
|
|
209
132
|
function planProblem(spec) {
|
|
210
133
|
return isAcpProvider(spec.provider) ? `${ACP_AGENTS[spec.provider].name} builds and repairs only — configure or override the planner to claude, codex or gemini` : null;
|
|
211
134
|
}
|
|
212
|
-
/**
|
|
213
|
-
* The recommendation: pure, deterministic, table-driven. Same inputs,
|
|
214
|
-
* same route, same words. Every leg it returns is exact; a leg the
|
|
215
|
-
* configuration cannot make runnable carries a `problem` instead of a
|
|
216
|
-
* guess.
|
|
217
|
-
*/
|
|
218
135
|
export function recommendRoute(input) {
|
|
219
136
|
const demands = DEMANDS.filter(one => one.when(input)).map(one => one.reason);
|
|
220
137
|
const overrides = [...input.overrides]
|
|
@@ -254,7 +171,6 @@ export function recommendRoute(input) {
|
|
|
254
171
|
}
|
|
255
172
|
return { spec: candidates.routine, tier: "routine", reasons: [economyReason(input, phase), `configured ${PHASE_NOUN[phase]} from ${candidates.routine.source}`] };
|
|
256
173
|
};
|
|
257
|
-
// plan — pin > override > recommendation.
|
|
258
174
|
{
|
|
259
175
|
const rec = pick("plan");
|
|
260
176
|
const pin = input.pins?.plan ?? null;
|
|
@@ -270,7 +186,6 @@ export function recommendRoute(input) {
|
|
|
270
186
|
legs.push({ phase: "plan", provider: rec.spec.provider, model: rec.spec.model, tier: rec.tier, chosen: "recommended", recommended, reasons: rec.reasons, problem: planProblem(rec.spec) });
|
|
271
187
|
}
|
|
272
188
|
}
|
|
273
|
-
// build — one precedence order (selectBuildLeg): pin > override > trial > earned rule > configured > headroom.
|
|
274
189
|
let buildMoved = false;
|
|
275
190
|
const build = (() => {
|
|
276
191
|
const chosen = selectBuildLeg(input, pickTier("build"));
|
|
@@ -278,11 +193,6 @@ export function recommendRoute(input) {
|
|
|
278
193
|
legs.push(chosen.leg);
|
|
279
194
|
return chosen.leg;
|
|
280
195
|
})();
|
|
281
|
-
// repair — ALWAYS the build provider (repair resumes the builder's
|
|
282
|
-
// session; cross-provider repair does not exist). Only the model routes:
|
|
283
|
-
// the same-provider strong row when demanded, else the same-provider
|
|
284
|
-
// configured row, else the build's own exact model (inherit). A
|
|
285
|
-
// configured row on ANOTHER provider is a stated problem, never skipped.
|
|
286
196
|
{
|
|
287
197
|
const demanded = demandedTier(input, "repair");
|
|
288
198
|
const candidates = input.candidates.repair;
|
|
@@ -291,8 +201,6 @@ export function recommendRoute(input) {
|
|
|
291
201
|
let tier;
|
|
292
202
|
let reasons;
|
|
293
203
|
let problem = null;
|
|
294
|
-
// A build moved to another provider for headroom takes its repairs
|
|
295
|
-
// with it: repair rows on the provider it left cannot resume its session.
|
|
296
204
|
const usedRow = demanded.tier === "strong" && candidates.strong !== null ? candidates.strong : candidates.routine;
|
|
297
205
|
if (buildMoved && usedRow !== null && usedRow.provider !== build.provider) {
|
|
298
206
|
model = build.model;
|
|
@@ -360,7 +268,6 @@ export function recommendRoute(input) {
|
|
|
360
268
|
legs.push({ phase: "repair", provider: build.provider, model, tier, chosen: "recommended", recommended, reasons: [...reasons, `same provider as the build (${build.provider}) — repairs resume the builder's session`], problem });
|
|
361
269
|
}
|
|
362
270
|
}
|
|
363
|
-
// review — override > recommendation; gemini cannot run it at all.
|
|
364
271
|
{
|
|
365
272
|
const rec = pick("review");
|
|
366
273
|
const override = overrideFor("review");
|
|
@@ -373,15 +280,11 @@ export function recommendRoute(input) {
|
|
|
373
280
|
}
|
|
374
281
|
}
|
|
375
282
|
return {
|
|
376
|
-
// Version 3 only for a build leg that carries a selection: every other route's bytes stay version 2's.
|
|
377
283
|
version: build.selection !== undefined ? ROUTE_VERSION : PLAIN_ROUTE_VERSION,
|
|
378
284
|
risk: "routine",
|
|
379
285
|
qualityMode: input.qualityMode,
|
|
380
286
|
publication: input.publication,
|
|
381
287
|
evidence: [...new Set(input.evidence)].sort(),
|
|
382
|
-
// The posture is what RUNS, not what was wanted: only a leg that
|
|
383
|
-
// actually draws from a configured strong agent makes the route strong
|
|
384
|
-
// — an overridden or pinned leg runs the person's choice, not a tier.
|
|
385
288
|
posture: drawsStrong(legs) ? "strong" : "economy",
|
|
386
289
|
demands,
|
|
387
290
|
legs,
|
|
@@ -389,25 +292,10 @@ export function recommendRoute(input) {
|
|
|
389
292
|
size: input.size ?? null,
|
|
390
293
|
};
|
|
391
294
|
}
|
|
392
|
-
/**
|
|
393
|
-
* THE BUILD LEG'S ONE PRECEDENCE ORDER (results routing, docs/plans/results-routing.md slice 2), pure:
|
|
394
|
-
*
|
|
395
|
-
* pin > person override > trial > earned rule > configured row (light / routine / strong by size)
|
|
396
|
-
* > headroom move
|
|
397
|
-
*
|
|
398
|
-
* Headroom moves only a configured leg, never a rule's or a trial's: their evidence is about one exact model. A rule
|
|
399
|
-
* or trial whose provider is past the headroom limits is skipped for this filing, and its reason says so. A trial
|
|
400
|
-
* applies only with a place reserved for this task (slice 3). A rule or trial applies only to an
|
|
401
|
-
* eligible task — small or medium, not risky, default quality, no screenshot or manual-review evidence, not a
|
|
402
|
-
* merging mode, not a release or candidate, nothing protected declared — and only over the configured builder it was
|
|
403
|
-
* earned against. Its leg says how it was selected (`selection`), so the route seals as version 3 and every later
|
|
404
|
-
* check reads the sealed selection, never the current rules or the reason text.
|
|
405
|
-
*/
|
|
406
295
|
export function selectBuildLeg(input, configured) {
|
|
407
296
|
const pin = input.pins?.build ?? null;
|
|
408
297
|
const override = input.overrides.find(one => one.phase === "build") ?? null;
|
|
409
298
|
if (pin !== null || override !== null) {
|
|
410
|
-
// What would have run otherwise is said as it always was: the configured leg after headroom.
|
|
411
299
|
const rec = withHeadroom(input, "build", configured);
|
|
412
300
|
const recommended = { provider: rec.spec.provider, model: rec.spec.model, tier: rec.tier };
|
|
413
301
|
const leg = pin !== null
|
|
@@ -452,8 +340,6 @@ export function selectBuildLeg(input, configured) {
|
|
|
452
340
|
moved: rec.moved,
|
|
453
341
|
};
|
|
454
342
|
}
|
|
455
|
-
/** The earned rule this task's build takes (pure): null when none could apply (no rule for its size, or the task
|
|
456
|
-
* isn't eligible), or a rule skipped for this filing with the words why. */
|
|
457
343
|
export function earnedRuleFor(input, configured) {
|
|
458
344
|
const earned = input.earned ?? null;
|
|
459
345
|
const size = input.size ?? null;
|
|
@@ -468,7 +354,6 @@ export function earnedRuleFor(input, configured) {
|
|
|
468
354
|
return null;
|
|
469
355
|
if (demandedTier(input, "build").tier !== "routine")
|
|
470
356
|
return null;
|
|
471
|
-
// Only Claude reports the model it ran, so only a Claude cohort can earn a rule.
|
|
472
357
|
if (rule.provider !== "claude" || !exactModel(rule.model))
|
|
473
358
|
return null;
|
|
474
359
|
if (configured.spec.provider !== rule.configured.provider || configured.spec.model !== rule.configured.model) {
|
|
@@ -480,9 +365,6 @@ export function earnedRuleFor(input, configured) {
|
|
|
480
365
|
return { kind: "skipped", reason: `earned rule skipped for this filing: ${tight} — the configured builder runs it` };
|
|
481
366
|
return { kind: "rule", rule };
|
|
482
367
|
}
|
|
483
|
-
/** The trial this task's build takes (pure, results routing slice 3): null when none could apply (no live trial for
|
|
484
|
-
* its size, or the task isn't eligible: the same facts an earned rule needs), a trial with this task's place, or a
|
|
485
|
-
* trial skipped for this filing with the words why (another configured builder, no place left, no headroom). */
|
|
486
368
|
export function trialFor(input, configured) {
|
|
487
369
|
const trial = input.earned?.trial ?? null;
|
|
488
370
|
const size = input.size ?? null;
|
|
@@ -494,7 +376,6 @@ export function trialFor(input, configured) {
|
|
|
494
376
|
return null;
|
|
495
377
|
if (demandedTier(input, "build").tier !== "routine")
|
|
496
378
|
return null;
|
|
497
|
-
// Only Claude reports the model it ran, so only a Claude cohort runs a trial.
|
|
498
379
|
if (trial.provider !== "claude" || !exactModel(trial.model) || !Number.isSafeInteger(trial.limit) || trial.limit < 1)
|
|
499
380
|
return null;
|
|
500
381
|
const words = size.size === "small" ? "small" : "routine";
|
|
@@ -510,21 +391,6 @@ export function trialFor(input, configured) {
|
|
|
510
391
|
}
|
|
511
392
|
return { kind: "trial", trial: { ...trial, reservation: trial.reservation } };
|
|
512
393
|
}
|
|
513
|
-
/**
|
|
514
|
-
* PLAN HEADROOM (v2), at filing:
|
|
515
|
-
*
|
|
516
|
-
* - a tier with candidates on more than one provider (`--also`) runs on
|
|
517
|
-
* the provider with more plan room — the lower window use — so work
|
|
518
|
-
* spreads across plans before either fills;
|
|
519
|
-
* - a chosen provider past its limits (80% of the 5-hour window, 90% of
|
|
520
|
-
* the weekly) gives way to the roomiest other provider at the same
|
|
521
|
-
* tier or one tier stronger, never weaker.
|
|
522
|
-
*
|
|
523
|
-
* Readings are the providers' own; a provider with no reading is unknown,
|
|
524
|
-
* never "empty", so nothing moves toward or away from it on a guess. Ties
|
|
525
|
-
* keep the tier's own candidate. The choice and its reason are sealed with
|
|
526
|
-
* the route.
|
|
527
|
-
*/
|
|
528
394
|
function withHeadroom(input, phase, chosen) {
|
|
529
395
|
const rooms = input.headroom ?? [];
|
|
530
396
|
const roomOf = (provider) => {
|
|
@@ -542,7 +408,6 @@ function withHeadroom(input, phase, chosen) {
|
|
|
542
408
|
for (const spec of [own, ...(candidates.alternates?.[tier] ?? [])]) {
|
|
543
409
|
if (spec === null || spec.provider === chosen.spec.provider || pool.some(one => one.spec.provider === spec.provider && one.tier === tier))
|
|
544
410
|
continue;
|
|
545
|
-
// Not tight: only the same tier competes on room. Tight: one tier stronger may take it too.
|
|
546
411
|
if (tight === null ? tier !== chosen.tier : TIER_RANK[tier] < TIER_RANK[chosen.tier] || TIER_RANK[tier] > TIER_RANK[chosen.tier] + 1)
|
|
547
412
|
continue;
|
|
548
413
|
pool.push({ spec, tier });
|
|
@@ -567,7 +432,6 @@ function withHeadroom(input, phase, chosen) {
|
|
|
567
432
|
moved: true,
|
|
568
433
|
};
|
|
569
434
|
}
|
|
570
|
-
/** Whether any leg actually runs a configured strong agent. */
|
|
571
435
|
function drawsStrong(legs) {
|
|
572
436
|
return postureOf(legs) === "strong";
|
|
573
437
|
}
|
|
@@ -577,17 +441,12 @@ export function legOf(route, phase) {
|
|
|
577
441
|
throw new Error(`route has no ${phase} leg`);
|
|
578
442
|
return leg;
|
|
579
443
|
}
|
|
580
|
-
/** Every stated problem on the route, in phase order — a non-empty list
|
|
581
|
-
* means the scope files unresolved with these words. */
|
|
582
444
|
export function routeProblems(route) {
|
|
583
445
|
return route.legs.filter(leg => leg.phase !== "review").flatMap(leg => (leg.problem === null ? [] : [`${leg.phase}: ${leg.problem}`]));
|
|
584
446
|
}
|
|
585
|
-
/** Whether two exact pairs are the same agent. */
|
|
586
447
|
export function sameSpec(a, b) {
|
|
587
448
|
return a.provider === b.provider && a.model === b.model;
|
|
588
449
|
}
|
|
589
|
-
// ---- canonical bytes, digest, strict rehydration ---------------------------
|
|
590
|
-
/** The stored snapshot bytes: the version rides IN the snapshot. */
|
|
591
450
|
export function canonicalRouteJson(route) {
|
|
592
451
|
return canonicalJson({
|
|
593
452
|
version: route.version,
|
|
@@ -606,17 +465,12 @@ export function canonicalRouteJson(route) {
|
|
|
606
465
|
recommended: leg.recommended,
|
|
607
466
|
reasons: leg.reasons,
|
|
608
467
|
problem: leg.problem,
|
|
609
|
-
// v3 (results routing): the build leg's selection is in the bytes, so in the digest; v1 and v2 bytes never change.
|
|
610
468
|
...(route.version === 3 && leg.selection !== undefined ? { selection: leg.selection } : {}),
|
|
611
469
|
})),
|
|
612
470
|
overrides: route.overrides.map(one => ({ phase: one.phase, provider: one.provider, model: one.model, by: one.by, at: one.at })),
|
|
613
|
-
// v2 carries the size it was routed for; a v1 snapshot's bytes never change.
|
|
614
471
|
...(route.version === 1 ? {} : { size: route.size === null ? null : { size: route.size.size, risky: route.size.risky, source: route.size.source, reason: route.size.reason } }),
|
|
615
472
|
});
|
|
616
473
|
}
|
|
617
|
-
/** sha256 over a domain-separated canonical encoding, truncated to the
|
|
618
|
-
* same 128 bits every other safety digest here uses. Its own domain, so a
|
|
619
|
-
* route digest can never collide with a profile or chain digest. */
|
|
620
474
|
export function routeDigestOf(route) {
|
|
621
475
|
return createHash("sha256")
|
|
622
476
|
.update(`standing-orders:route:v${route.version}:${canonicalRouteJson(route)}`, "utf8")
|
|
@@ -626,19 +480,12 @@ export function routeDigestOf(route) {
|
|
|
626
480
|
function str(v) {
|
|
627
481
|
return typeof v === "string" && v !== "";
|
|
628
482
|
}
|
|
629
|
-
/** Strict rehydration of a stored route through the route contract — every
|
|
630
|
-
* field type-proved, every model an exact non-empty string, nothing unknown;
|
|
631
|
-
* anything unexpected is null, never a guess. A null from a row that carries
|
|
632
|
-
* a route era is a corrupt seal. */
|
|
633
|
-
// Recovery and normal admission share this strict decoder; neither may replace
|
|
634
|
-
// unreadable signed routing with a convenient current default.
|
|
635
483
|
export function routeFromJson(json) {
|
|
636
484
|
if (json === null)
|
|
637
485
|
return null;
|
|
638
486
|
const read = readRouteJson(json);
|
|
639
487
|
return read.ok ? read.route : null;
|
|
640
488
|
}
|
|
641
|
-
/** Why a stored route does not read, as path-named lines (`legs[1].model: …`); null when it reads. */
|
|
642
489
|
export function routeJsonProblem(json) {
|
|
643
490
|
const read = readRouteJson(json);
|
|
644
491
|
return read.ok ? null : read.lines.join("; ");
|
|
@@ -654,15 +501,10 @@ function readRouteJson(json) {
|
|
|
654
501
|
const read = readSealedRoute(parsed);
|
|
655
502
|
return read.ok ? { ok: true, route: read.value } : { ok: false, lines: read.issues.map(one => one.line) };
|
|
656
503
|
}
|
|
657
|
-
/** Strict parse of an override list (the route contract's): one per phase,
|
|
658
|
-
* every field proved, every model exact, in phase order. */
|
|
659
504
|
export function parseOverrides(raw) {
|
|
660
505
|
const read = readRouteOverrides(raw);
|
|
661
506
|
return read.ok ? read.value : null;
|
|
662
507
|
}
|
|
663
|
-
/** The stored override list (a task-level column). Malformed reads as
|
|
664
|
-
* null — the caller files the scope unresolved rather than routing as if
|
|
665
|
-
* nobody had overridden anything. */
|
|
666
508
|
export function overridesFromJson(json) {
|
|
667
509
|
if (json === null)
|
|
668
510
|
return [];
|
|
@@ -680,23 +522,19 @@ export function canonicalOverridesJson(overrides) {
|
|
|
680
522
|
.sort((a, b) => PHASES.indexOf(a.phase) - PHASES.indexOf(b.phase))
|
|
681
523
|
.map(one => ({ phase: one.phase, provider: one.provider, model: one.model, by: one.by, at: one.at })));
|
|
682
524
|
}
|
|
683
|
-
/** What actually runs: stronger agents only when a leg draws from one. */
|
|
684
525
|
export function postureWords(route) {
|
|
685
526
|
const active = route.legs.filter(leg => leg.phase !== "review");
|
|
686
527
|
if (drawsStrong(active))
|
|
687
528
|
return "stronger configured agents";
|
|
688
529
|
return active.some(leg => leg.phase === "build" && leg.chosen === "recommended" && leg.tier === "light") ? "a fast configured agent" : "everyday configured agents";
|
|
689
530
|
}
|
|
690
|
-
/** The size line, plainly: what the size does to this route. */
|
|
691
531
|
export function sizeWords(route) {
|
|
692
532
|
if (route.size === null)
|
|
693
533
|
return null;
|
|
694
534
|
const build = route.legs.find(leg => leg.phase === "build");
|
|
695
|
-
// Said from the build leg that actually runs: another demand (strict quality, screenshots) can lift it.
|
|
696
535
|
const model = build?.tier === "light" ? "fast model" : build?.tier === "strong" ? "strongest model" : "everyday model";
|
|
697
536
|
if (makesNoPlan(route.size, route.risk))
|
|
698
537
|
return `Small change: ${model}, no plan`;
|
|
699
|
-
// (A route sealed at elevated or high risk planned a small change too.)
|
|
700
538
|
const label = route.size.size === "large" ? "Large change" : route.size.size === "small" ? (route.size.risky ? "Small but risky change" : "Small change") : route.size.risky ? "Risky change" : "Medium change";
|
|
701
539
|
if (route.size.size !== "large" && !route.size.risky && route.risk === "routine")
|
|
702
540
|
return build?.tier === "strong" ? "Medium change: strongest agents" : "Medium change: everyday agents";
|
|
@@ -712,15 +550,8 @@ export function readinessWords(state, reason) {
|
|
|
712
550
|
export function chosenWords(leg) {
|
|
713
551
|
return leg.chosen === "override" ? "overridden" : leg.chosen === "pinned" ? "pinned" : leg.tier === "strong" ? "recommended · strong" : leg.tier === "light" ? "recommended · fast" : "recommended";
|
|
714
552
|
}
|
|
715
|
-
/**
|
|
716
|
-
* The one-line Agents summary every surface can show above the details:
|
|
717
|
-
* agents grouped by identical pair, in phase order — "claude · sonnet
|
|
718
|
-
* plans, builds, and repairs; claude · opus reviews" — with the posture
|
|
719
|
-
* said honestly (stronger agents only when one is actually selected).
|
|
720
|
-
*/
|
|
721
553
|
export function agentsSummary(route) {
|
|
722
554
|
const groups = [];
|
|
723
|
-
// A small change makes no plan: its planner is not one of the agents that work on it.
|
|
724
555
|
const unplanned = makesNoPlan(route.size, route.risk ?? "routine");
|
|
725
556
|
for (const leg of route.legs.filter(leg => leg.phase !== "review" && !(unplanned && leg.phase === "plan" && leg.chosen === "recommended"))) {
|
|
726
557
|
const spec = specWords(leg);
|
|
@@ -736,7 +567,6 @@ export function agentsSummary(route) {
|
|
|
736
567
|
export function legLine(leg) {
|
|
737
568
|
return `${leg.phase.padEnd(7)}${specWords(leg)} [${chosenWords(leg)}] — ${readinessWords(leg.readiness, leg.readinessReason)}${leg.problem === null ? "" : ` — ${leg.problem}`}`;
|
|
738
569
|
}
|
|
739
|
-
/** The one projection CLI, task page, and chat all render from. */
|
|
740
570
|
export function projectRoute(route, readiness) {
|
|
741
571
|
const legs = route.legs.filter(leg => leg.phase !== "review").map(leg => {
|
|
742
572
|
const seen = readiness(leg.provider);
|
|
@@ -766,12 +596,9 @@ export function projectRoute(route, readiness) {
|
|
|
766
596
|
problems: routeProblems(route),
|
|
767
597
|
size: route.size,
|
|
768
598
|
sizeWords: sizeWords(route),
|
|
769
|
-
// A person's size already says who set it.
|
|
770
599
|
sizeReason: route.size === null ? null : route.size.source === "person" && route.size.reason !== "" ? route.size.reason : `${route.size.reason === "" ? "" : `${route.size.reason} · `}${sizeSourceWords(route.size.source)}`,
|
|
771
600
|
};
|
|
772
601
|
}
|
|
773
|
-
/** The approval-card lines: one route header, one line per leg, then the
|
|
774
|
-
* reasons indented — identical bytes on every text surface. */
|
|
775
602
|
export function routeWords(projection, indent = " ") {
|
|
776
603
|
const pad = `${indent} `;
|
|
777
604
|
return [
|
|
@@ -782,21 +609,11 @@ export function routeWords(projection, indent = " ") {
|
|
|
782
609
|
...(projection.halted ? [`${pad}HALTED: a provider on this route is reported unavailable — nothing substitutes; override the phase or restore the provider`] : []),
|
|
783
610
|
];
|
|
784
611
|
}
|
|
785
|
-
/** The empty readiness lookup: every provider unknown. */
|
|
786
612
|
export const NO_READINESS = () => null;
|
|
787
613
|
export const ROUTE_CHOSEN = ["recommended", "override", "pinned", "legacy", "fallback"];
|
|
788
|
-
/** A run's role, as the route phase it spends as: a scout runs the build
|
|
789
|
-
* leg's agent (the same sealed profile a build proves against). */
|
|
790
614
|
export function phaseOfRole(role) {
|
|
791
615
|
return role === "planner" ? "plan" : role === "repair" ? "repair" : role === "reviewer" ? "review" : "build";
|
|
792
616
|
}
|
|
793
|
-
/**
|
|
794
|
-
* Strict proof of a route stamp's SHAPE, before anything about it is
|
|
795
|
-
* believed: a known phase and provenance word, a known provider, a
|
|
796
|
-
* non-empty digest, and an exact model on every stamp except a legacy
|
|
797
|
-
* one (a pre-routing profile may carry no model). Anything else is the
|
|
798
|
-
* words for why — admission refuses on them, never coerces.
|
|
799
|
-
*/
|
|
800
617
|
export function routeStampProblem(stamp) {
|
|
801
618
|
if (stamp === null || typeof stamp !== "object")
|
|
802
619
|
return "the route stamp is not an object";
|
|
@@ -818,3 +635,11 @@ export function routeStampProblem(stamp) {
|
|
|
818
635
|
return `a ${String(s["chosen"])} leg names an exact model — the stamp carries none`;
|
|
819
636
|
return null;
|
|
820
637
|
}
|
|
638
|
+
export const LOGIN_PROBE = "login";
|
|
639
|
+
export const PATH_PROBE = "path";
|
|
640
|
+
export const IDENTITY_FAILED_PROBE = "identity-failed";
|
|
641
|
+
export function readinessRefuses(observation, authMode) {
|
|
642
|
+
if (observation === null || observation.state !== "unavailable")
|
|
643
|
+
return false;
|
|
644
|
+
return !(observation.probe === LOGIN_PROBE && authMode !== "subscription");
|
|
645
|
+
}
|
package/dist/plain-schema.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
/** v153 (docs/plans/plain-toolroll.md Phase 2): the tables the authority slices own, new tables only. Kept apart so
|
|
2
|
-
* store.ts loads them without loading the roads that use them. */
|
|
3
|
-
/** A vanished build's one charge per run, and the episode its automatic retries stay inside (vanished-retry.ts). */
|
|
4
1
|
export const VANISHED_SCHEMA = `
|
|
5
2
|
CREATE TABLE IF NOT EXISTS vanished_charge (
|
|
6
3
|
run INTEGER PRIMARY KEY REFERENCES run(id),
|
|
@@ -19,9 +16,6 @@ CREATE TABLE IF NOT EXISTS retry_episode (
|
|
|
19
16
|
updated_at TEXT NOT NULL
|
|
20
17
|
);
|
|
21
18
|
`;
|
|
22
|
-
/** A check-only authorization (check-only.ts): one automatic run of the approved check on one exact commit. The unique
|
|
23
|
-
* key is the cap: one per (commit, command digest), however many workers race. Written only from the approval that
|
|
24
|
-
* built that commit; it seals nothing and starts no agent. */
|
|
25
19
|
export const CHECK_ONLY_SCHEMA = `
|
|
26
20
|
CREATE TABLE IF NOT EXISTS check_authorization (
|
|
27
21
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -41,8 +35,6 @@ CREATE TABLE IF NOT EXISTS check_authorization (
|
|
|
41
35
|
);
|
|
42
36
|
CREATE INDEX IF NOT EXISTS check_authorization_open ON check_authorization (expires_at) WHERE used_at IS NULL AND closed_at IS NULL;
|
|
43
37
|
`;
|
|
44
|
-
/** Whether this computer's own builder is meant to be running, and with what (builder-restart.ts): set by `background
|
|
45
|
-
* on` and `up`, cleared by `background off` and `stop`. `builder_restart` is every automatic restart Toolroll tried. */
|
|
46
38
|
export const BUILDER_SERVICE_SCHEMA = `
|
|
47
39
|
CREATE TABLE IF NOT EXISTS builder_service (
|
|
48
40
|
id INTEGER PRIMARY KEY CHECK (id = 1),
|
|
@@ -57,8 +49,6 @@ CREATE TABLE IF NOT EXISTS builder_restart (
|
|
|
57
49
|
at TEXT NOT NULL
|
|
58
50
|
);
|
|
59
51
|
`;
|
|
60
|
-
/** A fast start's form as it was rendered (fast-start.ts): what the person typed and what the classifier said, kept here
|
|
61
|
-
* so Build files exactly that, whatever a form posts. Used once. */
|
|
62
52
|
export const FAST_PREVIEW_SCHEMA = `
|
|
63
53
|
CREATE TABLE IF NOT EXISTS fast_preview (
|
|
64
54
|
id TEXT PRIMARY KEY,
|
|
@@ -75,8 +65,6 @@ CREATE TABLE IF NOT EXISTS fast_preview (
|
|
|
75
65
|
consumed_at TEXT
|
|
76
66
|
);
|
|
77
67
|
`;
|
|
78
|
-
/** The one new route Toolroll proposed for a task whose sealed one no longer matches (route-change.ts): the line a person
|
|
79
|
-
* reads, bound to the exact route digest it describes. */
|
|
80
68
|
export const ROUTE_CHANGE_SCHEMA = `
|
|
81
69
|
CREATE TABLE IF NOT EXISTS route_change (
|
|
82
70
|
task_ref INTEGER PRIMARY KEY REFERENCES task_ref(id),
|
|
@@ -86,8 +74,6 @@ CREATE TABLE IF NOT EXISTS route_change (
|
|
|
86
74
|
created_at TEXT NOT NULL
|
|
87
75
|
);
|
|
88
76
|
`;
|
|
89
|
-
/** v153's columns: a fast start's marker and start window on the task (both NULL on saved rows) and the project setting
|
|
90
|
-
* Small tasks start right away (NULL: the default). */
|
|
91
77
|
export const V153_ADDED_COLUMNS = Object.freeze({
|
|
92
78
|
task_ref: { fast_start_at: { definition: "TEXT", saved: "NULL" }, fast_start_until: { definition: "TEXT", saved: "NULL" } },
|
|
93
79
|
project: { fast_start: { definition: "INTEGER CHECK (fast_start IS NULL OR fast_start IN (0, 1))", saved: "NULL" } },
|
package/dist/plain-words.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
/** One vocabulary for the words Toolroll writes (docs/plans/plain-toolroll.md, "The words"): each row is a word or
|
|
2
|
-
* phrase product copy never says, and what it says instead. Matching is by whole word and ignores case.
|
|
3
|
-
*
|
|
4
|
-
* Product copy is the text Toolroll writes. Preserved content (goals, requirements, notes, agent reports, issue text,
|
|
5
|
-
* commit messages and the exact terms a consent shows) is never rewritten to satisfy this table. Code, the database,
|
|
6
|
-
* `--json`, the agent contract and the audit page's hash detail keep their own words. */
|
|
7
1
|
const row = (never, pattern, say) => ({ never, pattern: new RegExp(`(?<![\\w-])(?:${pattern})(?![\\w-])`, "i"), say });
|
|
8
2
|
export const PLAIN_WORDS = [
|
|
9
3
|
row("scope", "scopes?|scoped", "plan"),
|
|
10
4
|
row("contract", "contracts?", "plan"),
|
|
11
|
-
// "Sign in", "signed in" and "signed out" are a person signing in, not an approval.
|
|
12
5
|
row("signs", "signs|signed(?!\\s+(?:in|out|into)\\b)", "Approved by …"),
|
|
13
6
|
row("sealed", "seal|seals|sealed|sealing", "approved"),
|
|
14
7
|
row("binds", "binds?", "approved"),
|
|
@@ -51,16 +44,29 @@ export const PLAIN_WORDS = [
|
|
|
51
44
|
row("quiescence", "quiescen(?:ce|t)", "Waiting: Toolroll is …"),
|
|
52
45
|
row("witness", "witness(?:es|ed)?", "Waiting: Toolroll is …"),
|
|
53
46
|
row("unproven", "unproven", "Waiting: Toolroll is …"),
|
|
54
|
-
// A plan version or digest written out: twelve or more hex characters. A short commit (seven) is fine.
|
|
55
47
|
row("version hex", "(?=[0-9a-f]*\\d)(?=[0-9a-f]*[a-f])[0-9a-f]{12,64}", "(the plan version, in Details)"),
|
|
56
48
|
];
|
|
57
|
-
/** The words, for messages and tests. */
|
|
58
49
|
export const BANNED_WORDS = PLAIN_WORDS.map(one => one.never);
|
|
59
|
-
/** Every banned word in `text`, as the table names it. */
|
|
60
50
|
export function bannedWordsIn(text) {
|
|
61
51
|
return PLAIN_WORDS.filter(one => one.pattern.test(text)).map(one => one.never);
|
|
62
52
|
}
|
|
63
|
-
/** Whether `text` says any word product copy never says. */
|
|
64
53
|
export const hasInternalWords = (text) => PLAIN_WORDS.some(one => one.pattern.test(text));
|
|
65
|
-
/** A plan's version as Details shows it: a short handle, never the whole digest. */
|
|
66
54
|
export const planVersionWords = (digest) => `Plan version ${digest.slice(0, 8)}`;
|
|
55
|
+
export const FIRST_HOUR_WORDS = [
|
|
56
|
+
row("lead", "lead", "Toolroll, or Chat"),
|
|
57
|
+
row("crew", "crew", "Toolroll"),
|
|
58
|
+
row("scope", "scopes?|scoped", "plan"),
|
|
59
|
+
row("mode", "modes?", "(Settings)"),
|
|
60
|
+
row("flow", "flows?", "(Settings)"),
|
|
61
|
+
row("fleet", "fleet", "(Settings)"),
|
|
62
|
+
row("fallback", "fallbacks?", "(Settings)"),
|
|
63
|
+
row("routing", "routing|routed", "(Settings)"),
|
|
64
|
+
row("spend", "spend|spends|spending|spent", "cost"),
|
|
65
|
+
row("MCP", "mcp", "(Settings)"),
|
|
66
|
+
row("password", "passwords?|passwordless", "(only where one is asked for)"),
|
|
67
|
+
row("token", "tokens?", "(Settings)"),
|
|
68
|
+
row("builder", "builders?", "taking work"),
|
|
69
|
+
];
|
|
70
|
+
export function firstHourWordsIn(text) {
|
|
71
|
+
return FIRST_HOUR_WORDS.filter(one => one.pattern.test(text)).map(one => one.never);
|
|
72
|
+
}
|
package/dist/plan-auto.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { releaseUnattendedRun, reserveUnattendedRun, unattendedGrantStands } from "./flow-unattended.js";
|
|
2
2
|
import { modeTermsFromJson } from "./modes.js";
|
|
3
|
+
import { currentLocalOwner } from "./local-owner.js";
|
|
3
4
|
import { plannerContractOf, plannerSourceDigest } from "./planner-source.js";
|
|
4
5
|
import { modeFilingCoverage, propose, quarantinedAuthor } from "./scope.js";
|
|
5
6
|
export const PLAN_AUTO_SCHEMA = `CREATE TABLE IF NOT EXISTS plan_authorization (
|
|
@@ -15,8 +16,6 @@ function plainPlan(store, taskId) {
|
|
|
15
16
|
return ref !== null && ref.deliverable === "branch" && ref.coordinatorCid === null &&
|
|
16
17
|
store.mirrorByTask(taskId) === null;
|
|
17
18
|
}
|
|
18
|
-
/** Join the console's authority-free proposal to the authenticated filing
|
|
19
|
-
* road in one transaction. Planning defers the seal until verified ingestion. */
|
|
20
19
|
export function applyModeToNewFiling(store, taskId, actor, now) {
|
|
21
20
|
const ref = store.lookupRef(taskId);
|
|
22
21
|
const scope = store.getScope(taskId);
|
|
@@ -32,11 +31,10 @@ export function applyModeToNewFiling(store, taskId, actor, now) {
|
|
|
32
31
|
else if (filed.profileState === "resolved")
|
|
33
32
|
store.sealScopeApproval(taskId, actor, now, {}, { kind: "mode", modeDigest: coverage.digest });
|
|
34
33
|
}
|
|
35
|
-
/** Called only by credentialed operator roads, never by proposal/intake
|
|
36
|
-
* code. This authorizes the exact filed contract, not arbitrary future
|
|
37
|
-
* planner text. Rewrites, mode renewal, expiry and revocation fail closed. */
|
|
38
34
|
export function authorizePlanUnderMode(store, taskId, actor, now) {
|
|
39
35
|
return store.transact(() => {
|
|
36
|
+
if (currentLocalOwner() !== null)
|
|
37
|
+
return false;
|
|
40
38
|
const ref = store.lookupRef(taskId);
|
|
41
39
|
if (ref === null || ref.repo === null || ref.plan !== "requested" || !plainPlan(store, taskId) || store.hasLiveClaim(ref.id, now))
|
|
42
40
|
return false;
|
|
@@ -57,18 +55,11 @@ export function authorizePlanUnderMode(store, taskId, actor, now) {
|
|
|
57
55
|
return true;
|
|
58
56
|
});
|
|
59
57
|
}
|
|
60
|
-
/** A scope whose resolved profile or route runs with full permissions: a flow grant never seals one. */
|
|
61
58
|
function escalatedPosture(store, taskId) {
|
|
62
59
|
const row = store.raw().prepare("SELECT profile_json, proposed_route_json FROM task_scope WHERE task_id = ?").get(taskId);
|
|
63
60
|
const text = `${row?.["profile_json"] ?? ""} ${row?.["proposed_route_json"] ?? ""}`;
|
|
64
61
|
return /"(?:bypassPermissions|danger-full-access|yolo)"/.test(text);
|
|
65
62
|
}
|
|
66
|
-
/**
|
|
67
|
-
* A flow card's new filing under its flow's "runs on its own" grant (flow-unattended.ts), inside the engine's filing
|
|
68
|
-
* transaction, which has just proved the grant covers this card. A plain build that plans is pre-authorized for an
|
|
69
|
-
* unchanged plan only; anything else is sealed now, under a distinct `grant` basis. False (the filing then waits for a
|
|
70
|
-
* person, as it always did) when the filed terms aren't the safe, fixed ones the grant was signed for.
|
|
71
|
-
*/
|
|
72
63
|
export function sealFlowFilingUnderGrant(store, taskId, grant, card, now) {
|
|
73
64
|
const ref = store.lookupRef(taskId);
|
|
74
65
|
const scope = store.getScope(taskId);
|
|
@@ -76,7 +67,6 @@ export function sealFlowFilingUnderGrant(store, taskId, grant, card, now) {
|
|
|
76
67
|
return false;
|
|
77
68
|
if (!unattendedGrantStands(store, grant.digest, grant.signedBy, ref.repo, scope.touches, now))
|
|
78
69
|
return false;
|
|
79
|
-
// The day's run is taken first, in one capped statement; a filing that then can't be sealed gives it back.
|
|
80
70
|
if (!reserveUnattendedRun(store, grant, taskId, now))
|
|
81
71
|
return false;
|
|
82
72
|
let done = false;
|
|
@@ -100,7 +90,6 @@ export function sealFlowFilingUnderGrant(store, taskId, grant, card, now) {
|
|
|
100
90
|
action: ref.plan === "requested" ? "flow ran on its own: unchanged plan pre-authorized" : "flow ran on its own: approved", outcome: "authorized", detail: `flow #${card.flow} · card ${card.id}` });
|
|
101
91
|
return true;
|
|
102
92
|
}
|
|
103
|
-
/** Whether the authority that armed this plan authorization still stands (read side and finalization alike). */
|
|
104
93
|
function armedAuthorityStands(store, row, repo, now) {
|
|
105
94
|
const by = String(row["signed_by"]), digest = String(row["mode_digest"]);
|
|
106
95
|
if (row["basis"] === "grant") {
|
|
@@ -112,7 +101,6 @@ function armedAuthorityStands(store, row, repo, now) {
|
|
|
112
101
|
return mode !== null && terms?.planAuto === true && terms.autoApproveFiling && mode.digest === digest && mode.signedBy === by && store.accountCanAccess(by, repo)
|
|
113
102
|
? { basis: "mode", digest } : null;
|
|
114
103
|
}
|
|
115
|
-
/** Read-side status only; finalization still proves the authority anew. */
|
|
116
104
|
export function planAutoPending(store, taskId, now) {
|
|
117
105
|
const ref = store.lookupRef(taskId);
|
|
118
106
|
if (ref?.repo == null || ref.plan !== "requested" || !plainPlan(store, taskId))
|
|
@@ -123,13 +111,10 @@ export function planAutoPending(store, taskId, now) {
|
|
|
123
111
|
const source = plannerContractOf(store, taskId);
|
|
124
112
|
return armedAuthorityStands(store, row, ref.repo, now) !== null && source.ok && plannerSourceDigest(source.contract) === row["source_digest"];
|
|
125
113
|
}
|
|
126
|
-
/** Inside the verified planner finalization transaction, after the source,
|
|
127
|
-
* artifact, contract changes and lease fence have all been checked. */
|
|
128
114
|
export function sealUnchangedPlanUnderMode(store, taskId, sourceDigest, runId, eligible, now) {
|
|
129
115
|
const authorization = store.raw().prepare("SELECT * FROM plan_authorization WHERE task_id = ?").get(taskId);
|
|
130
116
|
if (authorization === undefined)
|
|
131
117
|
return false;
|
|
132
|
-
// One conclusion consumes the authorization even when it needs a human.
|
|
133
118
|
store.raw().prepare("DELETE FROM plan_authorization WHERE task_id = ?").run(taskId);
|
|
134
119
|
const ref = store.lookupRef(taskId);
|
|
135
120
|
const scope = store.getScope(taskId);
|