toolroll 0.9.104 → 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 +62 -5
- package/README.md +18 -20
- 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 +17 -139
- 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 +1 -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 +0 -17
- 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 +0 -53
- package/dist/local-owner.js +2 -93
- 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 +0 -17
- package/dist/operate-remote.js +0 -33
- package/dist/operate.js +227 -2326
- 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 +0 -20
- 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 +0 -34
- package/dist/public-check.js +0 -16
- package/dist/publish.js +1 -150
- package/dist/pull-request-flow.js +0 -77
- 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 +0 -100
- 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 +0 -25
- 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 +4 -567
- 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 +21 -555
- 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 +1 -88
- 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 +13 -493
- 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 +6 -135
- 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 +9 -227
- package/dist/server/tasks.js +5 -539
- 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 +0 -75
- 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 +17 -28
- 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 +16 -36
- package/dist/tui.js +1 -1
- 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 +4 -3
- 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 -350
- 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 -1985
- 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 -540
- 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 -43
- 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-acts.d.ts +0 -83
- package/dist/local-owner.d.ts +0 -135
- 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 -61
- 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 -170
- 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 -39
- 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 -1098
- 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 -81
- 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 -60
- 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 -758
- package/dist/server/render-settings.d.ts +0 -93
- package/dist/server/render-tasks.d.ts +0 -783
- 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 -343
- 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 -108
- 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 -48
- 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 -202
- 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
|
@@ -21,7 +21,7 @@ import { recentGitReads, taskBaseOf } from "../task-base.js";
|
|
|
21
21
|
import { assignmentPresentationOf, historicalAssessmentReason } from '../assignment-presentation.js';
|
|
22
22
|
import { html, joinHtml } from "../html.js";
|
|
23
23
|
import { assignmentStatusOf, assignmentWithEvidence } from '../assignment-ui.js';
|
|
24
|
-
import { assignmentOf } from '../assignment.js';
|
|
24
|
+
import { assignmentOf, personCompletionRefusal } from '../assignment.js';
|
|
25
25
|
import { knowledgeContextHtml } from "../knowledge-ui.js";
|
|
26
26
|
import { failedAttemptSentence, failingCheckSuggestion, GENERAL_SUGGESTION, isInternalErrorReason, latestFinishedAttempt, missedRequirementLine, missedRequirementSuggestion, NO_REASON_RECORDED, stopSuggestionOf } from '../needs-you.js';
|
|
27
27
|
import { planAutoPending } from "../plan-auto.js";
|
|
@@ -32,6 +32,7 @@ import { readSkillsSnapshot, skillTestResult } from "../project-skills.js";
|
|
|
32
32
|
import { newestPullRequestOf, publishingOf, pullRequestBlocker } from '../pull-request-flow.js';
|
|
33
33
|
import { structuredHandoffView, terminalDiffView } from "../result-evidence-readers.js";
|
|
34
34
|
import { resultCheckLevel } from '../result-follow-ups.js';
|
|
35
|
+
import { projectCheckSet } from '../check-levels.js';
|
|
35
36
|
import { followThroughView } from "./render-follow-through.js";
|
|
36
37
|
import { skillsSnapshotHtml, skillTestFeedbackHtml } from "../skills-ui.js";
|
|
37
38
|
import { archiveOf } from "../store.js";
|
|
@@ -72,10 +73,7 @@ import {} from "../store.js";
|
|
|
72
73
|
import { taskControlOf } from "../task-control.js";
|
|
73
74
|
import { lastErrorLineOf, missedRequirementOf, workStatusOf } from "../workspace-ui.js";
|
|
74
75
|
export function createTaskViews(runtime) {
|
|
75
|
-
// The task page's base line reads Git through a frozen view of the project (~0.2-0.5 s on a large repository) and
|
|
76
|
-
// the page renders it twice per view and again on every live refresh: its answers are kept for a moment.
|
|
77
76
|
const baseGit = recentGitReads();
|
|
78
|
-
/** The first task's way to Ready shows until the first Ready result, and stays on the installation's first task. */
|
|
79
77
|
function guided(rootId, now) {
|
|
80
78
|
if (runtime.store.isDemo())
|
|
81
79
|
return false;
|
|
@@ -125,21 +123,12 @@ export function createTaskViews(runtime) {
|
|
|
125
123
|
});
|
|
126
124
|
return html `${warning}${active}<details class="task-history" data-root-task="${family.root.id}"><summary>History</summary><ol>${versions}</ol></details>`;
|
|
127
125
|
}
|
|
128
|
-
/** Keep detailed receipt diagnostics; shared assignment reads own readiness. */
|
|
129
126
|
function freshAssignment(assignment, receipt) {
|
|
130
127
|
if (assignment === null)
|
|
131
128
|
return null;
|
|
132
129
|
const value = assignmentWithEvidence(assignment, receipt === null ? null : receiptStatusOf(receipt), receipt?.runId ?? null);
|
|
133
130
|
return receipt === null ? value : { ...value, attention: [...new Set([...value.attention, ...receipt.facts.evidenceProblems, ...receipt.caveats.filter(reason => !historicalAssessmentReason(reason))])] };
|
|
134
131
|
}
|
|
135
|
-
/**
|
|
136
|
-
* One Work row's facts (workspace package 1), from the records the task
|
|
137
|
-
* page already reads: the dispatch diagnosis, the latest finished
|
|
138
|
-
* builder/scout run with its machine verdict and any acceptance, the
|
|
139
|
-
* run's publication, and the live claim. The words come from the pure
|
|
140
|
-
* projection so this row, the task page, the focused chat, and the
|
|
141
|
-
* review cockpit cannot disagree about the same run.
|
|
142
|
-
*/
|
|
143
132
|
function workRowOf(task, now, receipt) {
|
|
144
133
|
const ref = runtime.store.lookupRef(task.id);
|
|
145
134
|
const runs = ref === null ? [] : runtime.store.runsFor(ref.id);
|
|
@@ -166,6 +155,7 @@ export function createTaskViews(runtime) {
|
|
|
166
155
|
reasons: verdict?.reasons ?? [],
|
|
167
156
|
accepted: runtime.store.proofAcceptance(latest.id) !== null,
|
|
168
157
|
checkLevel: resultCheckLevel(runtime.store, latest.id, now),
|
|
158
|
+
...(ref?.repo == null ? {} : { checkSet: projectCheckSet(runtime.store, ref.repo) }),
|
|
169
159
|
review: runtime.reviewFactsFor(latest.id),
|
|
170
160
|
...(latest.outcome !== "no-change"
|
|
171
161
|
? {}
|
|
@@ -178,8 +168,6 @@ export function createTaskViews(runtime) {
|
|
|
178
168
|
unfinishedRunId: runs.find(one => one.outcome === null && one.role !== "reviewer")?.id ?? null,
|
|
179
169
|
control: ref === null ? { kind: "none" } : taskControlOf(runtime.store, ref.id, now),
|
|
180
170
|
};
|
|
181
|
-
// Read the same evidence-health projection as the receipt, including
|
|
182
|
-
// damaged files discovered after a stored verdict was written.
|
|
183
171
|
const result = receipt === undefined && task.state === "done" && latest !== null && (latest.outcome === "built" || latest.outcome === "no-change")
|
|
184
172
|
? completionReceiptView(runtime.store, latest, runtime.store.artifactsFor(latest.id), runtime.evidenceRoot, runtime.reviewFactsFor(latest.id)) : receipt;
|
|
185
173
|
const status = workStatusOf(facts, result == null ? undefined : receiptStatusOf(result));
|
|
@@ -196,7 +184,6 @@ export function createTaskViews(runtime) {
|
|
|
196
184
|
familyNotice: task.family?.problem ?? (otherActive ? `${otherActive} earlier version${otherActive === 1 ? " is" : "s are"} still waiting or running. Open History.` : null),
|
|
197
185
|
status: assignment === null ? status : { ...assignmentStatus, diagnostics: assignmentPresentationOf(assignment, { workStatus: status, diagnostics: [...(status.diagnostics ?? []), ...(status.tone === "problem" && status.detail !== assignment.detail ? [status] : [])] }).diagnostics }, assignment, assignmentProblem: status.tone === "problem", resultRunId: latest === null ? null : latest.id };
|
|
198
186
|
}
|
|
199
|
-
/** The compact task list for the master pane, the current row marked. */
|
|
200
187
|
function taskListPane(project, currentId) {
|
|
201
188
|
const rows = familyTasksInView(project, undefined, 100);
|
|
202
189
|
if (currentId !== null && !rows.some(one => one.id === currentId)) {
|
|
@@ -208,26 +195,10 @@ export function createTaskViews(runtime) {
|
|
|
208
195
|
.map(task => html `<a class="item${task.id === currentId ? " current" : ""}" href="${taskHref(task.id)}"><span class="t">${task.title}</span></a>`), "\n");
|
|
209
196
|
return html `<h2>Tasks</h2>\n${rows.length === 0 ? html `<p class="meta">None yet</p>` : items}`;
|
|
210
197
|
}
|
|
211
|
-
/**
|
|
212
|
-
* The one liveness fact (round-4 findings 14/15): a run is being built
|
|
213
|
-
* right now iff its outcome is null AND its lease is the task's current
|
|
214
|
-
* live claim \u2014 maximum generation, unreleased, strictly unexpired. Every
|
|
215
|
-
* "running" label, poller, and watch link derives from this; nothing
|
|
216
|
-
* ever infers liveness from a null outcome alone.
|
|
217
|
-
*/
|
|
218
198
|
function runIsLive(run) {
|
|
219
199
|
return run.outcome === null && runtime.store.currentLiveLease(run.taskRef, runtime.clock()) === run.leaseId;
|
|
220
200
|
}
|
|
221
|
-
/** Planner, reviewer, and structured-output correction bookkeeping can
|
|
222
|
-
* finish around a build but are never the task's delivered result. */
|
|
223
201
|
const runIsTaskResult = (run) => run.finishedAt !== null && (run.role === "builder" || run.role === "scout");
|
|
224
|
-
/** The task screen, shared by the GET and by every refusal that re-renders it. */
|
|
225
|
-
/**
|
|
226
|
-
* What a revision task's approval must restate (M6.8): the exact comment
|
|
227
|
-
* batch, read back through the verified artifact path. A brief that no
|
|
228
|
-
* longer verifies is a named problem on the screen — approving against
|
|
229
|
-
* bytes nobody can prove is not approving anything.
|
|
230
|
-
*/
|
|
231
202
|
function revisionViewOf(ref) {
|
|
232
203
|
if (ref === null || ref.revisionBriefArtifact === null)
|
|
233
204
|
return null;
|
|
@@ -257,8 +228,6 @@ export function createTaskViews(runtime) {
|
|
|
257
228
|
return { problem: "the revision brief did not parse" };
|
|
258
229
|
}
|
|
259
230
|
}
|
|
260
|
-
/** The task view's facts, shared by the full screen and the workbench
|
|
261
|
-
* pane (attended A1): one assembly, one authorization story. */
|
|
262
231
|
function taskViewData(taskId, who, problem, render = {}) {
|
|
263
232
|
const found = runtime.store.getTask(taskId);
|
|
264
233
|
if (found === null)
|
|
@@ -269,30 +238,15 @@ export function createTaskViews(runtime) {
|
|
|
269
238
|
const now = runtime.clock();
|
|
270
239
|
const scope = runtime.store.getScope(taskId);
|
|
271
240
|
const revision = revisionViewOf(ref);
|
|
272
|
-
// A broken revision brief blocks the whole approval surface (audit
|
|
273
|
-
// IV-3): no nonce is minted over a batch nobody can verify.
|
|
274
241
|
const revisionBroken = revision !== null && "problem" in revision;
|
|
275
242
|
const planView = ref === null ? null : planViewOf(ref.id);
|
|
276
243
|
const approvalDigest = scope === null ? null : approvalFormDigest(scope.digest, planView?.sha256 ?? null);
|
|
277
|
-
// The nonce is minted at render, per viewer, bound to the digest being
|
|
278
|
-
// shown — the browser approval flow starts here and nowhere else.
|
|
279
|
-
// …and only through an OPEN consent door (v48): an unreadable route,
|
|
280
|
-
// a route that cannot run, or a pre-routing row whose approval lapsed
|
|
281
|
-
// gets recovery copy, never a nonce.
|
|
282
244
|
const routeView = routeViewOf(taskId, ref, scope, now, who);
|
|
283
|
-
// A read-only refresh (package 2) reads the same facts WITHOUT minting:
|
|
284
|
-
// a five-second poll must never churn the bounded nonce store, and a
|
|
285
|
-
// fragment carries no password form to bind a nonce to.
|
|
286
245
|
const nonce = who.via === "cookie" && scope !== null && approvalDigest !== null && !approvalOf(scope).approved && !revisionBroken && ref?.plan !== "requested" && consentDoorOf(scope, routeView).open
|
|
287
246
|
? render.mintNonce === false ? "unminted" : runtime.mintApprovalNonce(who.name, taskId, approvalDigest)
|
|
288
247
|
: "";
|
|
289
248
|
const runs = ref === null ? [] : runtime.store.runsFor(ref.id);
|
|
290
249
|
const completion = (() => {
|
|
291
|
-
// v40 fix: a reviewer run finishes AFTER the build it reviews and
|
|
292
|
-
// carries no proof verdict of its own — without this filter, its
|
|
293
|
-
// "no-change" outcome would hijack the task's own completion card
|
|
294
|
-
// the instant a review lands, showing "proof missing" for a proof
|
|
295
|
-
// that is right there on the builder's run.
|
|
296
250
|
const latest = runs.find(runIsTaskResult);
|
|
297
251
|
if (latest === undefined)
|
|
298
252
|
return null;
|
|
@@ -304,9 +258,6 @@ export function createTaskViews(runtime) {
|
|
|
304
258
|
outcome: latest.outcome,
|
|
305
259
|
hasTerminalDiff: artifacts.some(one => one.kind === "terminal-diff"),
|
|
306
260
|
hasHandoff: artifacts.some(one => one.kind === "handoff"),
|
|
307
|
-
// The closed machine-authored verdict (Priority 2), computed once
|
|
308
|
-
// at completion by adjudicate() and never re-inferred here — null
|
|
309
|
-
// only for a run that predates the proof system.
|
|
310
261
|
proofVerdict: verdict?.verdict ?? null,
|
|
311
262
|
machineVerdict: verdict?.machineVerdict ?? null,
|
|
312
263
|
proofReasons: verdict?.reasons ?? [],
|
|
@@ -314,24 +265,14 @@ export function createTaskViews(runtime) {
|
|
|
314
265
|
proofMatrixLinks: evidenceLinksFor(artifacts),
|
|
315
266
|
proofAccepted: runtime.store.proofAcceptance(latest.id) !== null,
|
|
316
267
|
qualityMode: latest.qualityMode ?? "default",
|
|
317
|
-
// Either direction: the ORIGINAL task's page finds the chain by
|
|
318
|
-
// its own latest run (the one that triggered a draft); a DRAFT
|
|
319
|
-
// task's page finds the SAME chain by being named as the draft.
|
|
320
268
|
repairChain: runtime.store.repairChainFor(latest.id) ?? runtime.store.repairChainForDraft(taskId),
|
|
321
|
-
// v50: the bounded review-retry history of this exact result —
|
|
322
|
-
// the same projection the CLI and dispatch diagnosis read.
|
|
323
269
|
reviewRetry: runtime.store.reviewRetryStateOf(latest.id),
|
|
324
|
-
// The same review facts every other surface projects for this run.
|
|
325
270
|
review,
|
|
326
271
|
receipt: latest.outcome === "built" || latest.outcome === "no-change"
|
|
327
272
|
? completionReceiptView(runtime.store, latest, artifacts, runtime.evidenceRoot, review)
|
|
328
273
|
: null,
|
|
329
274
|
};
|
|
330
275
|
})();
|
|
331
|
-
// Adaptive execution plans (v44): the plan-revision ledger and live
|
|
332
|
-
// milestone projection, both null for a task with no plan at all.
|
|
333
|
-
// taskChatFocus below reads the SAME two calls, so the task page and
|
|
334
|
-
// focused chat always render identical facts (c2).
|
|
335
276
|
const planRevisions = ref === null ? null : revisionLedgerOf(ref.id);
|
|
336
277
|
const milestoneProgress = ref === null ? null : progressOf(ref.id, planRevisions?.current?.document ?? null);
|
|
337
278
|
const family = runtime.familyOf(taskId);
|
|
@@ -345,17 +286,13 @@ export function createTaskViews(runtime) {
|
|
|
345
286
|
task: found,
|
|
346
287
|
status: workRowOf({ ...found, repo: ref?.repo ?? null }, now, completion?.receipt).status,
|
|
347
288
|
dispatch: diagnoseTaskDispatch(runtime.store, taskId, now),
|
|
348
|
-
// v52: the exact-run control — the same projection the focused
|
|
349
|
-
// chat and `task show` read.
|
|
350
289
|
control: ref === null ? { kind: "none" } : taskControlOf(runtime.store, ref.id, now),
|
|
351
290
|
canRetryReview: who.via === "cookie" && who.role === "approver",
|
|
352
291
|
strikes: ref?.strikes ?? 0,
|
|
353
292
|
filer: runtime.store.taskFiler(taskId),
|
|
354
|
-
// v105: a waiting task whose monthly budget is used up says so.
|
|
355
293
|
budgetHold: (() => {
|
|
356
294
|
if (ref === null || found.state !== "queued")
|
|
357
295
|
return null;
|
|
358
|
-
// Only work billed to an API key waits on a budget (its approved agent's, or Claude's by default).
|
|
359
296
|
const hold = runtime.store.budgetGate(now)({ ...runtime.store.budgetSubject(ref.id),
|
|
360
297
|
agents: runtime.store.agentsFor([runtime.store.getScope(taskId)?.approvedProfile?.provider ?? "claude"]) });
|
|
361
298
|
if (hold.over === null)
|
|
@@ -363,7 +300,6 @@ export function createTaskViews(runtime) {
|
|
|
363
300
|
return hold.why === "unpriced" ? `${budgetHoldWords(hold, monthOf(now).name)}; this waits until then`
|
|
364
301
|
: `${budgetLabel(hold.over)} monthly budget is used up, so this waits until next month or a higher budget`;
|
|
365
302
|
})(),
|
|
366
|
-
// Sprint 8: a waiting task the organisation policy stops says which rule, or that it runs lowered.
|
|
367
303
|
policyHold: (() => {
|
|
368
304
|
if (ref === null || found.state !== "queued")
|
|
369
305
|
return null;
|
|
@@ -395,20 +331,14 @@ export function createTaskViews(runtime) {
|
|
|
395
331
|
revision,
|
|
396
332
|
planRevisions,
|
|
397
333
|
milestoneProgress,
|
|
398
|
-
// v40: the fallback for a task page with no completed run yet (a
|
|
399
|
-
// freshly drafted, unapproved repair) — completion's own branches
|
|
400
|
-
// cover every case once a run exists.
|
|
401
334
|
repairChain: completion !== null ? null : runtime.store.repairChainForDraft(taskId),
|
|
402
335
|
repo: ref?.repo ?? null,
|
|
403
336
|
filedVia: runtime.store.filedViaOf(taskId),
|
|
404
|
-
// v126: where the work came from (a flow, an outside event), from what was kept when it was filed.
|
|
405
337
|
origin: (() => { const repos = runtime.workAccess().repos; return originOf(runtime.store, taskId, repo => repos === null || repos.includes(repo)); })(),
|
|
406
338
|
coordinator: (() => {
|
|
407
339
|
const who = runtime.store.coordinatorProvenanceOf(taskId);
|
|
408
340
|
if (who === null)
|
|
409
341
|
return null;
|
|
410
|
-
// RELATIVE age (round-2 finding 5): "12m ago" reads at a glance;
|
|
411
|
-
// an absolute stamp makes the operator do arithmetic.
|
|
412
342
|
const ago = who.filedAt === null
|
|
413
343
|
? null
|
|
414
344
|
: (() => {
|
|
@@ -423,18 +353,12 @@ export function createTaskViews(runtime) {
|
|
|
423
353
|
})(),
|
|
424
354
|
holds: ref === null ? [] : runtime.store.activeHolds(ref.id, now),
|
|
425
355
|
claimed: ref === null ? false : runtime.store.hasLiveClaim(ref.id, now),
|
|
426
|
-
// The chain, both directions of trust: blockers outside the ceiling
|
|
427
|
-
// are named but wear no state and no link (same redaction the board
|
|
428
|
-
// applies to blockerState).
|
|
429
356
|
waitsFor: runtime.store.blockers(taskId).map(blockerId => {
|
|
430
357
|
const blockerRef = runtime.store.lookupRef(blockerId);
|
|
431
358
|
const admitted = blockerRef !== null && runtime.visible(blockerRef.repo);
|
|
432
359
|
const blocker = admitted ? runtime.store.getTask(blockerId) : null;
|
|
433
360
|
return { id: !admitted && runtime.restricted() ? "restricted task" : blockerId, title: blocker === null ? null : blocker.title, state: blocker === null ? null : blocker.state, admitted };
|
|
434
361
|
}),
|
|
435
|
-
// Candidates a "wait for" or replacement select may offer: this
|
|
436
|
-
// TASK's own project, even when the sidebar is in all-project mode.
|
|
437
|
-
// That keeps repair complete without ever mixing unrelated projects.
|
|
438
362
|
waitCandidates: (() => {
|
|
439
363
|
if (who.via !== "cookie")
|
|
440
364
|
return [];
|
|
@@ -446,16 +370,12 @@ export function createTaskViews(runtime) {
|
|
|
446
370
|
.filter(one => one.id !== taskId && (one.state === "queued" || one.state === "running") && runtime.visible(one.repo))
|
|
447
371
|
.map(one => ({ id: one.id, title: one.title }));
|
|
448
372
|
})(),
|
|
449
|
-
// The one liveness fact, computed here where the store is: the run
|
|
450
|
-
// whose lease is the task's CURRENT claim — not merely the first
|
|
451
|
-
// unfinished run (round-4 finding, A1).
|
|
452
373
|
liveRunId: (() => {
|
|
453
374
|
if (ref === null)
|
|
454
375
|
return null;
|
|
455
376
|
const found = runtime.store.runsFor(ref.id).find(one => runIsLive(one));
|
|
456
377
|
return found === undefined ? null : found.id;
|
|
457
378
|
})(),
|
|
458
|
-
// Live steering: the Claude build that takes Pause right now, and where its latest pause stands.
|
|
459
379
|
livePause: (() => {
|
|
460
380
|
const run = ref === null ? null : runtime.store.liveInputRun(ref.id, now);
|
|
461
381
|
if (run === null)
|
|
@@ -485,11 +405,8 @@ export function createTaskViews(runtime) {
|
|
|
485
405
|
mirror: runtime.store.mirrorByTask(taskId),
|
|
486
406
|
scope,
|
|
487
407
|
approvalDigest,
|
|
488
|
-
// The phase route (v47): one projection for the card, the ceremony,
|
|
489
|
-
// and the focused chat, with the readiness this task's runners report.
|
|
490
408
|
route: routeView,
|
|
491
409
|
canEditRoute: who.role === "approver",
|
|
492
|
-
// Results routing (slice 1): the family's saved record, or the one its rows give now; never a reason to fail the page.
|
|
493
410
|
resultRecord: resultRecordWordsOf(runtime.store, taskId, runtime.evidenceRoot, now),
|
|
494
411
|
spendDefaults: runtime.store.getSpendDefaults(),
|
|
495
412
|
permissionDefault: runtime.store.permissionDefault().mode,
|
|
@@ -497,9 +414,6 @@ export function createTaskViews(runtime) {
|
|
|
497
414
|
qualityDefault: runtime.store.qualityDefault().mode,
|
|
498
415
|
qualityMode: ref?.qualityMode ?? null,
|
|
499
416
|
publication: (() => {
|
|
500
|
-
// The latest publication across this task's runs, with its
|
|
501
|
-
// OBSERVED CI state (audit SD-5): the reviewer learns PR and CI
|
|
502
|
-
// here instead of spelunking run pages.
|
|
503
417
|
if (ref === null)
|
|
504
418
|
return null;
|
|
505
419
|
for (const one of runtime.store.runsFor(ref.id)) {
|
|
@@ -528,15 +442,10 @@ export function createTaskViews(runtime) {
|
|
|
528
442
|
autoRelease: ref === null ? null : autoReleaseOf(runtime.store.getScope(ref.externalId)),
|
|
529
443
|
releaseCiRunning: ref !== null && releaseCiRunningOf(runtime.store, ref.externalId) !== null,
|
|
530
444
|
approvalProof: (() => {
|
|
531
|
-
// The proof of the approval shown: its approver, its exact sealed digest (approvedDigest === digest when approved).
|
|
532
445
|
const scope = ref === null ? null : runtime.store.getScope(ref.externalId);
|
|
533
446
|
return scope === null || scope.approvedBy === null || scope.approvedDigest === null ? null
|
|
534
447
|
: approvalProofOf(runtime.store, ref.externalId, scope.approvedBy, scope.approvedDigest);
|
|
535
448
|
})(),
|
|
536
|
-
// Cockpit B2: whether this person's remembered password may approve these exact terms (the same rule approve()
|
|
537
|
-
// applies), and since when.
|
|
538
|
-
// The one password rule every approve form reads (approval-password.ts): remembered since when, or a local
|
|
539
|
-
// owner's no-password approval (eligible, or why not and where to go).
|
|
540
449
|
...(() => {
|
|
541
450
|
const scope = ref === null ? null : runtime.store.getScope(ref.externalId);
|
|
542
451
|
if (scope === null || ref === null || who?.via !== "cookie")
|
|
@@ -557,14 +466,10 @@ export function createTaskViews(runtime) {
|
|
|
557
466
|
return last === null ? null : fastChangeProblem(runtime.store, ref.externalId, last.id);
|
|
558
467
|
})(),
|
|
559
468
|
steerRecent: ref === null ? [] : runtime.store.runsFor(ref.id).filter(one => one.outcome !== null).map(one => one.id).sort((a, b) => b - a).slice(0, 5),
|
|
560
|
-
// The running attempt's composer, for an approver on a browser session (steer-controls.ts).
|
|
561
469
|
steerComposer: (() => {
|
|
562
470
|
const run = ref === null ? null : liveAttemptOf(runtime.store, ref.id, now);
|
|
563
471
|
return run === null ? null : steerControlsFor(runtime.store, ref.externalId, run, now, who?.role === "approver");
|
|
564
472
|
})(),
|
|
565
|
-
// "publishes as" reads ONLY publicationGrantFor(repo) — the grant
|
|
566
|
-
// the publisher would act under — never listGrants(), which is
|
|
567
|
-
// dispatch authority (slice 1c).
|
|
568
473
|
grant: ref === null || ref.repo === null ? null : runtime.store.publicationGrantFor(ref.repo),
|
|
569
474
|
csrf: who.via === "cookie" ? who.session.csrf : "",
|
|
570
475
|
nonce,
|
|
@@ -572,12 +477,6 @@ export function createTaskViews(runtime) {
|
|
|
572
477
|
now,
|
|
573
478
|
};
|
|
574
479
|
}
|
|
575
|
-
/** The Agents view (v47): the task's route from the ONE resolver dispatch
|
|
576
|
-
* uses — sealed, proposed, live, a proven pre-routing profile, or
|
|
577
|
-
* unreadable — projected with the readiness its runners have reported,
|
|
578
|
-
* and the edit posture an approver's controls need. The scope digest
|
|
579
|
-
* rides along so every change form can CAS against exactly what was
|
|
580
|
-
* rendered (an empty value means "I saw no scope"). */
|
|
581
480
|
function routeViewOf(taskId, ref, scope, now, who) {
|
|
582
481
|
if (ref === null)
|
|
583
482
|
return null;
|
|
@@ -592,7 +491,6 @@ export function createTaskViews(runtime) {
|
|
|
592
491
|
replanOnPlanChange: ref.plan === "drafted" && scope !== null && !approvalOf(scope).approved,
|
|
593
492
|
digest: scope?.digest ?? null,
|
|
594
493
|
choices: agentChoicesFor(runtime.store, ref.repo, routed.kind === "route" ? routed.route : null),
|
|
595
|
-
// Results routing: why an earned rule's model builds it, from the records as they stand now.
|
|
596
494
|
evidence: routed.kind === "route" ? selectionEvidenceWords(runtime.store, routed.route, now) : null,
|
|
597
495
|
};
|
|
598
496
|
if (routed.kind === "route") {
|
|
@@ -603,8 +501,6 @@ export function createTaskViews(runtime) {
|
|
|
603
501
|
}
|
|
604
502
|
return { kind: "unreadable", source: null, projection: null, legacy: null, problem: routed.problem, ...shared };
|
|
605
503
|
}
|
|
606
|
-
/** Resolve a task-scoped chat lens without trusting its query string.
|
|
607
|
-
* Only an admitted task becomes model context or visible page copy. */
|
|
608
504
|
function taskChatFocus(taskId, now, who, options = {}) {
|
|
609
505
|
if (taskId === null || taskId.length === 0 || taskId.length > 64 || hasForbiddenControls(taskId))
|
|
610
506
|
return null;
|
|
@@ -615,10 +511,6 @@ export function createTaskViews(runtime) {
|
|
|
615
511
|
const task = family.current;
|
|
616
512
|
const ref = runtime.store.lookupRef(taskId);
|
|
617
513
|
const scope = runtime.store.getScope(taskId);
|
|
618
|
-
// The focused chat is a lens over the task page's own assembled facts.
|
|
619
|
-
// Reusing that projection keeps approval nonces, joint approval digests,
|
|
620
|
-
// revision verification, decisions, and result evidence on one source
|
|
621
|
-
// of truth instead of growing a chat-only lifecycle.
|
|
622
514
|
const view = who === undefined || family.problem !== null ? null : taskViewData(taskId, who, null, options);
|
|
623
515
|
const runs = view?.runs ?? runtime.store.runsFor(ref.id);
|
|
624
516
|
const latest = runs.find(runIsTaskResult) ?? null;
|
|
@@ -640,12 +532,8 @@ export function createTaskViews(runtime) {
|
|
|
640
532
|
dispatch: diagnoseTaskDispatch(runtime.store, taskId, now),
|
|
641
533
|
scope: scope === null ? "none" : approval.approved ? "approved" : "needs approval",
|
|
642
534
|
plan: ref.plan,
|
|
643
|
-
// Adaptive execution plans (v44): the identical ledger/progress
|
|
644
|
-
// projection the task page renders (c2) — reused from `view` when
|
|
645
|
-
// available, computed fresh only when this call has no `who`.
|
|
646
535
|
planRevisions,
|
|
647
536
|
milestoneProgress: view?.milestoneProgress ?? progressOf(ref.id, planRevisions?.current?.document ?? null),
|
|
648
|
-
// What a failed task missed, said as the task page says it.
|
|
649
537
|
failure: task.state === "failed" ? failureOf(family.versions.flatMap(version => runtime.store.runsFor(version.refId)), view?.assignment ?? assignmentOf(runtime.store, task.id, now, runtime.workAccess(), runtime.evidenceRoot)) : null,
|
|
650
538
|
claimed: view?.claimed ?? runtime.store.hasLiveClaim(ref.id, now),
|
|
651
539
|
liveRun: live === null ? null : { id: live.id, runner: live.runner, startedAt: live.startedAt, phase: live.phase },
|
|
@@ -678,9 +566,6 @@ export function createTaskViews(runtime) {
|
|
|
678
566
|
: completionReceiptView(runtime.store, latest, runtime.store.artifactsFor(latest.id), runtime.evidenceRoot, runtime.reviewFactsFor(latest.id)),
|
|
679
567
|
};
|
|
680
568
|
}
|
|
681
|
-
/** The newest pull request any version of this task opened through Complete; else, for a result completed
|
|
682
|
-
* without one, the offer to open it (an approver's browser session only). */
|
|
683
|
-
/** Where "Complete and open a pull request" would open one for this result, or null when it isn't offered. */
|
|
684
569
|
function pullRequestTargetOf(runId) {
|
|
685
570
|
const run = runtime.store.getRun(runId);
|
|
686
571
|
const publishing = publishingOf(runtime.store, run === null ? null : runtime.store.refById(run.taskRef)?.repo ?? null);
|
|
@@ -709,7 +594,6 @@ export function createTaskViews(runtime) {
|
|
|
709
594
|
return null;
|
|
710
595
|
return { taskId: rootId, view: null, offer: { taskId: receipt.taskId, runId: receipt.runId, digest: receipt.digest }, target };
|
|
711
596
|
}
|
|
712
|
-
/** What went wrong with the latest finished attempt (whatever its outcome, never an older failure). */
|
|
713
597
|
function failureOf(runs, assignment, readLog = true) {
|
|
714
598
|
const last = latestFinishedAttempt(runs);
|
|
715
599
|
if (last === null)
|
|
@@ -718,12 +602,6 @@ export function createTaskViews(runtime) {
|
|
|
718
602
|
return full === null ? { kind: "reason", line: failedAttemptSentence(last.reason), evidence: null, suggestion: stopSuggestionOf(last.reason), link: null }
|
|
719
603
|
: explainAttempt(full, assignment?.receipt?.runId === last.id ? assignment.receipt : null, readLog);
|
|
720
604
|
}
|
|
721
|
-
/** One finished attempt's failure in plain words: a failing check's last error line (linked to that line in its
|
|
722
|
-
* saved log), else the first signed requirement it missed with the evidence line behind it, else its recorded reason
|
|
723
|
-
* in plain words (or that none was recorded). Each comes with one suggestion of what to change, and a link to the
|
|
724
|
-
* attempt's own result page, where its changes, checks and failure are; machine output reads as an internal error,
|
|
725
|
-
* its detail behind a link to that line of the attempt's record. `readLog` false (a list's rows) reads no saved
|
|
726
|
-
* check log: the requirement or the reason, from the database alone. */
|
|
727
605
|
function explainAttempt(run, receipt, readLog = true) {
|
|
728
606
|
const taskId = runtime.store.externalIdFor(run.taskRef) ?? "";
|
|
729
607
|
const page = `${reviewHref(taskId)}&run=${run.id}`;
|
|
@@ -760,8 +638,6 @@ export function createTaskViews(runtime) {
|
|
|
760
638
|
return { kind: "reason", line: failedAttemptSentence(run.reason), evidence: null, suggestion: stopSuggestionOf(run.reason),
|
|
761
639
|
link: internal ? { label: "The recorded error", href: `/r/${run.id}?record=1#run-reason-detail` } : see };
|
|
762
640
|
}
|
|
763
|
-
/** Run checks in place on a result's commit: an approver's browser session, outside the demo, when the project has a
|
|
764
|
-
* check and none is waiting or running on it. Comes back to `returnTo`. */
|
|
765
641
|
function runChecksHere(runId, who, returnTo) {
|
|
766
642
|
if (runId === null || who.via !== "cookie" || who.role !== "approver" || runtime.store.isDemo())
|
|
767
643
|
return null;
|
|
@@ -771,11 +647,6 @@ export function createTaskViews(runtime) {
|
|
|
771
647
|
return null;
|
|
772
648
|
return { action: `/r/${runId}/checks`, level: followUps.full ? "full" : "quick", returnTo };
|
|
773
649
|
}
|
|
774
|
-
/**
|
|
775
|
-
* One page per task (docs/plans/one-page-task-and-agent.md): the tab the address named, the Result tab's result with
|
|
776
|
-
* every result attempt to pick from, and every link that would open a result page of this family (its /review deep
|
|
777
|
-
* link, a build's /r/<n>) pointed at this page's Result tab instead — the person stays on the task.
|
|
778
|
-
*/
|
|
779
650
|
function onePageView(view, family, runs, extras) {
|
|
780
651
|
const root = family?.root.id ?? view.id;
|
|
781
652
|
const current = family?.current.id ?? view.id;
|
|
@@ -809,11 +680,9 @@ export function createTaskViews(runtime) {
|
|
|
809
680
|
...(view.failure == null ? {} : { failure: { ...view.failure, link: link(view.failure.link) } }),
|
|
810
681
|
...(view.earlier == null ? {} : { earlier: { ...view.earlier, attempts: view.earlier.attempts.map(one => ({ ...one, href: toTab(one.href) })) } }),
|
|
811
682
|
...(view.thread === undefined ? {} : { thread: view.thread.map(one => ({ ...one, link: link(one.link) })) }),
|
|
812
|
-
// The previous result's fold moves to the Result tab when there is one.
|
|
813
683
|
sections: selected === null ? view.sections : view.sections.filter(one => one.id !== "result"),
|
|
814
684
|
tab: extras.tab ?? "activity",
|
|
815
685
|
result: selected === null ? null : { selected, current: extras.result.current, attempts,
|
|
816
|
-
// Fresh per-render request tokens (32 hex) are not what it shows: left out, so an unchanged result keeps its stamp.
|
|
817
686
|
revision: createHash("sha256").update(JSON.stringify(selected).replace(/\b[a-f0-9]{32}\b/g, "")).digest("hex").slice(0, 16) },
|
|
818
687
|
};
|
|
819
688
|
}
|
|
@@ -821,7 +690,6 @@ export function createTaskViews(runtime) {
|
|
|
821
690
|
const admittedFamily = runtime.familyOf(taskId);
|
|
822
691
|
if (admittedFamily?.problem != null)
|
|
823
692
|
return runtime.sendScreen(response, status, screen(admittedFamily.root.title, html `<h1>${admittedFamily.root.title}</h1><p>${admittedFamily.current.state}</p><p class="problem" data-history-problem>${admittedFamily.problem}</p>`, { chrome: runtime.chromeFor(admittedFamily.root.repo, "tasks") }));
|
|
824
|
-
// A read ahead (x-toolroll-read: prefetch, live-pages-and-home.md A1.4) mints nothing: its plan form says "unminted".
|
|
825
693
|
const data = taskViewData(taskId, who, problem, { mintNonce: requestContext.getStore()?.readPurpose !== "prefetch" });
|
|
826
694
|
if (data === null)
|
|
827
695
|
return refuse(response, who, 404, "no such task", "/tasks");
|
|
@@ -829,7 +697,6 @@ export function createTaskViews(runtime) {
|
|
|
829
697
|
const presentedData = { ...data, rootId: family?.root.id ?? taskId, rootTitle: family?.root.title ?? data.task.title,
|
|
830
698
|
...(family === null || data.assignment != null ? {} : { history: familyHistory(family) }),
|
|
831
699
|
versionLabel: family !== null && family.current.id !== taskId ? `Viewing ${family.versions.findIndex(one => one.id === taskId) === 0 ? "Original" : `Revision ${family.versions.findIndex(one => one.id === taskId)}`} · ${family.current.state === "running" ? "A newer revision is running" : "A newer revision is current"}` : null };
|
|
832
|
-
// Put away (v145, task-tidy.md): who or what put it away and why, and whether this person can put it away or restore it.
|
|
833
700
|
const archived = archiveOf(runtime.store, taskId);
|
|
834
701
|
presentedData.archived = archived;
|
|
835
702
|
presentedData.canPutAway = who.via === "cookie" && who.role === "approver";
|
|
@@ -840,13 +707,11 @@ export function createTaskViews(runtime) {
|
|
|
840
707
|
if (editPlan)
|
|
841
708
|
presentedData.editPlan = true;
|
|
842
709
|
presentedData.pullRequest = taskPullRequestOf(taskId, who);
|
|
843
|
-
// The thread reads the whole family: the original, its revisions, and every attempt across them.
|
|
844
710
|
if (family !== null && family.problem === null) {
|
|
845
711
|
presentedData.family = { root: { id: family.root.id, title: family.root.title, createdAt: family.root.createdAt, goal: runtime.store.getScope(family.root.id)?.goal ?? null },
|
|
846
712
|
versions: family.versions.map(one => ({ id: one.id, title: one.title, state: one.state })),
|
|
847
713
|
runs: family.versions.flatMap(version => version.id === data.task.id ? data.runs.map(run => ({ ...run, taskId: version.id })) : runtime.store.runsFor(version.refId).map(run => ({ ...run, taskId: version.id }))) };
|
|
848
714
|
}
|
|
849
|
-
// What went wrong reads the family's latest finished attempt, as the Tasks row does.
|
|
850
715
|
presentedData.failure = failureOf(presentedData.family?.runs ?? data.runs, data.assignment ?? null);
|
|
851
716
|
presentedData.runChecks = runChecksHere(data.assignment?.receipt?.runId ?? null, who, taskHref(taskId));
|
|
852
717
|
const liveRun = data.liveRunId == null ? undefined : data.runs.find(one => one.id === data.liveRunId);
|
|
@@ -857,31 +722,21 @@ export function createTaskViews(runtime) {
|
|
|
857
722
|
const page = taskPage(paneProject === null && !runtime.unscopedMode
|
|
858
723
|
? runtime.chromeFor(paneProject, "tasks")
|
|
859
724
|
: runtime.chromeFor(paneProject, "tasks", taskListPane(paneProject, family?.root.id ?? taskId)), presentedData);
|
|
860
|
-
// The task's own conversation, docked beside the page (v77).
|
|
861
725
|
const focus = taskChatFocus(family?.root.id ?? taskId, runtime.clock(), who, { mintNonce: false });
|
|
862
726
|
const docked = focus === null ? null : runtime.dockedConversation(who, focus, null, runtime.clock(), taskHref(focus.id));
|
|
863
|
-
// The conversation is the page's own thread here, so the page drops its Ask tab;
|
|
864
|
-
// only an approver is offered a road to message the agent.
|
|
865
727
|
const taskView = page.workspace?.view?.kind === "task" ? { ...page.workspace.view, ...(docked === null ? {} : { tabs: [] }), ...(who.role === "approver" ? {} : { chatHref: null }),
|
|
866
|
-
// A signed-in page hears the moment the task changes, and who else has it open.
|
|
867
728
|
...(who.via === "cookie" ? { live: { room: `task:${encodeURIComponent(family?.root.id ?? taskId)}`, at: (() => { try {
|
|
868
729
|
return taskFingerprint(runtime.store, family?.root.id ?? taskId, runtime.clock());
|
|
869
730
|
}
|
|
870
731
|
catch {
|
|
871
732
|
return null;
|
|
872
733
|
} })() } } : {}) } : page.workspace?.view;
|
|
873
|
-
// A refusal that keeps a draft (a scope edit, an armed cancel) or asks for the plan editor reopens on Plan, where the
|
|
874
|
-
// draft and its error are; anything else on Activity unless the address named a tab.
|
|
875
734
|
const tab = extras.tab ?? "plan";
|
|
876
735
|
const onePage = taskView?.kind === "task" ? onePageView(taskView, family, presentedData.family?.runs ?? data.runs.map(run => ({ ...run, taskId: data.task.id })), { ...extras, tab }) : taskView;
|
|
877
|
-
// Ship (its pull request's checks, each on one time axis) and a release's own steps, read from the store now.
|
|
878
736
|
const rootId = family?.root.id ?? taskId;
|
|
879
737
|
const oneTaskView = onePage?.kind === "task" ? { ...onePage, ship: shipViewOf(shipChecksForTask(runtime.store, rootId), runtime.clock()),
|
|
880
738
|
release: releaseStepsViewOf(releaseProgressFor(runtime.store, rootId), runtime.clock()),
|
|
881
|
-
// "Can I merge?" (P1.6): the checklist from the same assignment this page read, each blocker with its own form.
|
|
882
739
|
mergeReady: mergeReadyViewOf(runtime.store, taskId, data.assignment, who, presentedData.runChecks ?? null, taskHref(taskId)) } : onePage;
|
|
883
|
-
// A check the machine runs (a prepared candidate: a release's check) is said as the check it is, with no agent's
|
|
884
|
-
// activity, no notes to read, and for a release its own steps instead of the generic Plan → Build stepper.
|
|
885
740
|
if (oneTaskView?.kind === "task" && machineChecked(runtime.store, taskId)) {
|
|
886
741
|
const words = machineCheckWords(runtime.store, taskId, data.liveRunId ?? null, oneTaskView.release ?? null, runtime.clock());
|
|
887
742
|
const card = oneTaskView.status;
|
|
@@ -892,15 +747,10 @@ export function createTaskViews(runtime) {
|
|
|
892
747
|
if (oneTaskView.release != null)
|
|
893
748
|
oneTaskView.journey = null;
|
|
894
749
|
}
|
|
895
|
-
// The step rows read the view as the page will show it (its result, its release, its checks words).
|
|
896
750
|
if (oneTaskView?.kind === "task")
|
|
897
751
|
oneTaskView.steps = stepRowsOf(oneTaskView);
|
|
898
|
-
// The Result tab's no-script page, under the task's own (the same HTML its result page serves), and its script.
|
|
899
752
|
if (extras.result != null) {
|
|
900
753
|
page.body = html `${page.body}<section class="task-result-tab" id="task-result" aria-label="Result">${extras.result.html}</section>`;
|
|
901
|
-
// The result's own script, as its result page ships it (a password form there keeps it too: Request changes and
|
|
902
|
-
// the line notes need it).
|
|
903
|
-
// The app runs its own version (browser/work/result.ts), so a task with a result can open in place.
|
|
904
754
|
page.functional = withScript(page.functional, { script: `${reviewEvidenceScript()}${RESULT_REVIEW_SCRIPT}`, app: [{ kind: "result" }] });
|
|
905
755
|
}
|
|
906
756
|
if (docked !== null)
|
|
@@ -910,13 +760,7 @@ export function createTaskViews(runtime) {
|
|
|
910
760
|
page.refreshSeconds = runtime.liveRefreshSeconds();
|
|
911
761
|
return runtime.sendScreen(response, status, page);
|
|
912
762
|
}
|
|
913
|
-
/** Shared by task controls and chat proposals; both callers authorize the task first. */
|
|
914
763
|
function armTaskResume(response, who, taskId, named, returnTo, now) {
|
|
915
|
-
// The resume ceremony's first half (v52): minted by THIS POST, never
|
|
916
|
-
// a GET. The nonce is bound to the exact run, this approver, and a
|
|
917
|
-
// digest of the facts the confirmation restates — the run, its
|
|
918
|
-
// settlement, and the scope's current approval — so a page read
|
|
919
|
-
// before the approval changed cannot resume under the new terms.
|
|
920
764
|
if (who.via !== "cookie")
|
|
921
765
|
return refuse(response, who, 403, "resuming a task is a browser session's act");
|
|
922
766
|
if (who.role !== "approver")
|
|
@@ -954,8 +798,6 @@ export function createTaskViews(runtime) {
|
|
|
954
798
|
approved: (() => { const scope = runtime.store.getScope(taskId); return scope !== null && approvalOf(scope).approved; })(),
|
|
955
799
|
}));
|
|
956
800
|
}
|
|
957
|
-
/** The newest plan document for a task, verified before a byte renders.
|
|
958
|
-
* Its hash is also the plan revision the approval form was minted for. */
|
|
959
801
|
function planViewOf(taskRef) {
|
|
960
802
|
const artifact = runtime.store.latestPlanArtifact(taskRef);
|
|
961
803
|
if (artifact === null)
|
|
@@ -968,14 +810,6 @@ export function createTaskViews(runtime) {
|
|
|
968
810
|
return null;
|
|
969
811
|
}
|
|
970
812
|
}
|
|
971
|
-
/**
|
|
972
|
-
* The plan-contract record of the newest drafted plan (contract handoff,
|
|
973
|
-
* task 1): what the planner was filed, what it proposed, its explicit
|
|
974
|
-
* amendment, and every mechanical change between the two — verified
|
|
975
|
-
* before a byte renders, and marked `current` only while the proposed
|
|
976
|
-
* terms are still exactly the scope row (an operator's later edit turns
|
|
977
|
-
* the record into history, never a claim about the row).
|
|
978
|
-
*/
|
|
979
813
|
function planContractViewOf(taskRef, scope) {
|
|
980
814
|
const artifact = runtime.store.latestPlanContractArtifact(taskRef);
|
|
981
815
|
if (artifact === null)
|
|
@@ -1031,16 +865,6 @@ export function createTaskViews(runtime) {
|
|
|
1031
865
|
return null;
|
|
1032
866
|
}
|
|
1033
867
|
}
|
|
1034
|
-
/**
|
|
1035
|
-
* The adaptive-plan ledger for one task: the revision currently in force,
|
|
1036
|
-
* any revision still 'blocked' awaiting an operator's accept or reject,
|
|
1037
|
-
* and the full immutable history. A task with no `plan_revision` rows at
|
|
1038
|
-
* all — every task filed before this feature, or one whose first
|
|
1039
|
-
* revision is still 'blocked' — reads `current` as a read-only
|
|
1040
|
-
* projection off the existing planner artifact (`planViewOf`), never
|
|
1041
|
-
* written back as a row: c1's "older builds with no checkpoints remain
|
|
1042
|
-
* readable."
|
|
1043
|
-
*/
|
|
1044
868
|
function revisionLedgerOf(taskRef) {
|
|
1045
869
|
const history = runtime.store.listPlanRevisions(taskRef).map(revisionDocOf).filter((view) => view !== null);
|
|
1046
870
|
const currentRow = runtime.store.currentPlanRevision(taskRef);
|
|
@@ -1071,12 +895,6 @@ export function createTaskViews(runtime) {
|
|
|
1071
895
|
}
|
|
1072
896
|
return { current, pending, history };
|
|
1073
897
|
}
|
|
1074
|
-
/** The live milestone projection for a task: every milestone in the
|
|
1075
|
-
* CURRENT revision's document, in order, each carrying the newest
|
|
1076
|
-
* checkpoint's state for its exact id — a checkpoint filed against an
|
|
1077
|
-
* older, differently-worded revision simply has no matching ids, so its
|
|
1078
|
-
* milestones fall back to "pending" rather than showing stale progress
|
|
1079
|
-
* under a plan that no longer says that. */
|
|
1080
898
|
function progressOf(taskRef, currentDocument) {
|
|
1081
899
|
if (currentDocument === null)
|
|
1082
900
|
return null;
|
|
@@ -1091,21 +909,6 @@ export function createTaskViews(runtime) {
|
|
|
1091
909
|
return { id: milestone.id, description: milestone.description, state: entry?.state ?? "pending", note: entry?.note ?? null };
|
|
1092
910
|
});
|
|
1093
911
|
}
|
|
1094
|
-
/**
|
|
1095
|
-
* The review cockpit's projection of ONE completed task (Priority 5):
|
|
1096
|
-
* approved intent from the scope and plan already on file, the result
|
|
1097
|
-
* run's sealed artifacts through the same verified readers the run page
|
|
1098
|
-
* uses, the stored verdict and matrix, the publication
|
|
1099
|
-
* rows. Nothing here is a new record: a manual completion (no run), a
|
|
1100
|
-
* legacy result (no proof verdict), and a broken artifact each read as
|
|
1101
|
-
* exactly what they are. Only the selected result is enriched — the
|
|
1102
|
-
* queue rows carry the done list's own facts and nothing more.
|
|
1103
|
-
*/
|
|
1104
|
-
/**
|
|
1105
|
-
* The result detail (workspace package 3): every verified record one
|
|
1106
|
-
* finished run's result presentation reads, assembled once for the run
|
|
1107
|
-
* page, the review cockpit, and the chat's result view. Read-only.
|
|
1108
|
-
*/
|
|
1109
912
|
function resultDetailOf(run, who, now) {
|
|
1110
913
|
const taskId = runtime.store.externalIdFor(run.taskRef) ?? "?";
|
|
1111
914
|
const scope = runtime.store.getScope(taskId);
|
|
@@ -1115,8 +918,6 @@ export function createTaskViews(runtime) {
|
|
|
1115
918
|
const handoff = structuredHandoffView(artifacts, runtime.evidenceRoot);
|
|
1116
919
|
const review = runtime.reviewFactsFor(run.id);
|
|
1117
920
|
const receipt = completionReceiptView(runtime.store, run, artifacts, runtime.evidenceRoot, review);
|
|
1118
|
-
// File anchors come from the PARSED sealed patch — a stat path with no
|
|
1119
|
-
// hunk in the patch gets no anchor, never a dangling one.
|
|
1120
921
|
const patch = terminal?.patch ?? null;
|
|
1121
922
|
const patchOk = patch !== null && !("problem" in patch);
|
|
1122
923
|
const parsedPaths = patchOk ? parseReviewDiff(patch.text).files.filter(one => one.hunks.length > 0).map(one => one.path) : [];
|
|
@@ -1144,7 +945,7 @@ export function createTaskViews(runtime) {
|
|
|
1144
945
|
try {
|
|
1145
946
|
learning = learningHtml(learningView(runtime.store, runtime.evidenceRoot, learningRepo, who.name), who.via === "cookie" ? who.session.csrf : "", who.role === "approver", run.id);
|
|
1146
947
|
}
|
|
1147
|
-
catch {
|
|
948
|
+
catch { }
|
|
1148
949
|
try {
|
|
1149
950
|
const test = skillTestResult(runtime.store, run.id, who.name);
|
|
1150
951
|
if (test) {
|
|
@@ -1170,9 +971,12 @@ export function createTaskViews(runtime) {
|
|
|
1170
971
|
...(() => { const family = runtime.familyOf(taskId); return family === null ? {} : { history: familyHistory(family) }; })(),
|
|
1171
972
|
run,
|
|
1172
973
|
receipt,
|
|
1173
|
-
|
|
974
|
+
...(() => {
|
|
1174
975
|
const value = assignmentOf(runtime.store, taskId, now, runtime.workAccess(), runtime.evidenceRoot);
|
|
1175
|
-
|
|
976
|
+
const assignment = value?.receipt?.runId === run.id && value.activeTaskId === taskId ? freshAssignment(value, receipt) : null;
|
|
977
|
+
const completeRefusal = assignment?.state !== "ready-to-check" || assignment.receipt === null ? null
|
|
978
|
+
: personCompletionRefusal(runtime.store, assignment.receipt.taskId, run.id, who.via === "cookie" ? who.name : null, runtime.evidenceRoot, who.via === "cookie" && who.authority === "local-owner" ? { rootId: assignment.rootId } : null);
|
|
979
|
+
return { assignment, completeRefusal };
|
|
1176
980
|
})(),
|
|
1177
981
|
handoff,
|
|
1178
982
|
proof,
|
|
@@ -1185,7 +989,6 @@ export function createTaskViews(runtime) {
|
|
|
1185
989
|
outsideTouches: files.filter(one => one.outsideTouches).map(one => one.path),
|
|
1186
990
|
fileAnchors,
|
|
1187
991
|
comments: runtime.store.liveDiffComments(run.id).filter(isRevisionFeedback),
|
|
1188
|
-
// The same check that refuses a saved note's screenshot at revision time decides when it can be removed.
|
|
1189
992
|
unusableImageNotes: runtime.store.liveDiffComments(run.id).filter(one => isRevisionFeedback(one) && one.image != null
|
|
1190
993
|
&& feedbackImageProblem(runtime.store, runtime.evidenceRoot, run.id, one.image) !== null).map(one => one.id),
|
|
1191
994
|
pastComments: runtime.store.allDiffComments(run.id).filter(one => one.reviewerRun === null && (one.consumedBy !== null || one.supersededBy !== null)),
|
|
@@ -1195,16 +998,12 @@ export function createTaskViews(runtime) {
|
|
|
1195
998
|
const child = runtime.store.getTask(one.id);
|
|
1196
999
|
if (child === null || !runtime.visible(runtime.store.lookupRef(one.id)?.repo ?? null))
|
|
1197
1000
|
return [];
|
|
1198
|
-
// The same projection the Work list and the child's own page wear.
|
|
1199
1001
|
const status = workRowOf({ ...child, repo: runtime.store.lookupRef(one.id)?.repo ?? null }, now).status;
|
|
1200
1002
|
return [{ id: one.id, title: one.title, state: one.state, approved: approvalOf(runtime.store.getScope(one.id)).approved, standing: status.label, tone: status.tone }];
|
|
1201
1003
|
}),
|
|
1202
1004
|
sourceDigest: scope?.digest ?? null,
|
|
1203
1005
|
followUps: followUpsFor(runtime.store, runtime.evidenceRoot, run, now),
|
|
1204
1006
|
route: runtime.store.runRoute(run.id),
|
|
1205
|
-
// Editor links (arc 6): the deployment capability, THIS machine's
|
|
1206
|
-
// runner owning the run, the session's own device-side yes, and a
|
|
1207
|
-
// checkout to open — or nothing renders.
|
|
1208
1007
|
editor: runtime.options.editorLinks !== undefined && runtime.options.localRunner !== undefined && run.runner === runtime.options.localRunner && who.via === "cookie" && who.session.editorLinks === true && run.worktree !== null && existsSync(run.worktree)
|
|
1209
1008
|
? { worktree: run.worktree }
|
|
1210
1009
|
: null,
|
|
@@ -1214,15 +1013,12 @@ export function createTaskViews(runtime) {
|
|
|
1214
1013
|
}
|
|
1215
1014
|
return { guided, projectFamilyPeek, familiesInView, familyTasksInView, revisionDestination, earlierLiveVersions, familyHistory, freshAssignment, workRowOf, taskListPane, runIsLive, runIsTaskResult, revisionViewOf, taskViewData, routeViewOf, taskChatFocus, pullRequestTargetOf, taskPullRequestOf, failureOf, explainAttempt, runChecksHere, taskScreen, armTaskResume, planViewOf, planContractViewOf, revisionDocOf, revisionLedgerOf, progressOf, resultDetailOf };
|
|
1216
1015
|
}
|
|
1217
|
-
/** A release task the plane approved (or is checking) itself, for the task page (docs/plans/auto-approve-green.md). */
|
|
1218
1016
|
function autoReleaseOf(scope) {
|
|
1219
1017
|
if (scope === null || scope.approvedDigest !== scope.digest || (scope.candidate ?? null) === null)
|
|
1220
1018
|
return null;
|
|
1221
1019
|
return scope.approvalBasis === "auto-green" ? { kind: "approved", candidate: scope.candidate }
|
|
1222
1020
|
: scope.approvalBasis === "auto-check" ? { kind: "checking", candidate: scope.candidate } : null;
|
|
1223
1021
|
}
|
|
1224
|
-
/** A pull request's checks as Ship shows them (src/design/KIT.md timing rows): each check on one elapsed-time axis
|
|
1225
|
-
* from the first one's start, its state in the five words' tones, and one line for the whole. Null: no checks read. */
|
|
1226
1022
|
export function shipViewOf(ship, now) {
|
|
1227
1023
|
if (ship === null || ship.checks.length === 0)
|
|
1228
1024
|
return null;
|
|
@@ -1242,8 +1038,6 @@ export function shipViewOf(ship, now) {
|
|
|
1242
1038
|
const passed = ship.checks.filter(one => one.state === "passed" || one.state === "skipped" || one.state === "neutral").length;
|
|
1243
1039
|
const failed = ship.checks.filter(one => one.state === "failed" || one.state === "cancelled").length;
|
|
1244
1040
|
const running = ship.checks.length - passed - failed;
|
|
1245
|
-
// The overall status is the observation's own (the one merges read); the rows only time each check.
|
|
1246
|
-
// `none` (the pull request closed or merged, or GitHub reported no checks) is never painted as passed.
|
|
1247
1041
|
const state = ship.observed === "failing" ? "failed" : ship.observed === "passing" ? "passed" : ship.observed === "running" ? "running" : "none";
|
|
1248
1042
|
return {
|
|
1249
1043
|
pr: ship.prNumber, head: ship.headSha.slice(0, 7), state, rows,
|
|
@@ -1253,22 +1047,16 @@ export function shipViewOf(ship, now) {
|
|
|
1253
1047
|
observedAt: ship.observedAt,
|
|
1254
1048
|
};
|
|
1255
1049
|
}
|
|
1256
|
-
/** A release step's name in words (release.ts RELEASE_STEPS). */
|
|
1257
1050
|
const RELEASE_STEP_WORDS = {
|
|
1258
1051
|
gate: "Release gate", approval: "Approval", check: "Release check", complete: "Complete the task", quiet: "Wait for quiet", deploy: "Deploy to this Mac",
|
|
1259
1052
|
link: "Point the CLI at it", ci: "Pull request checks", merge: "Merge into main", tree: "Verify the merged tree", tag: "Tag", publish: "Publish to npm", homebrew: "Homebrew",
|
|
1260
1053
|
};
|
|
1261
|
-
/** A release's steps as its progress view shows them: every step in order on one time axis, the ones not reached
|
|
1262
|
-
* queued, and where it stands in one line. Null: this task is no release. */
|
|
1263
1054
|
export function releaseStepsViewOf(progress, now) {
|
|
1264
1055
|
if (progress === null)
|
|
1265
1056
|
return null;
|
|
1266
1057
|
const origin = Date.parse(progress.startedAt);
|
|
1267
1058
|
const recorded = new Map(progress.steps.map(one => [one.step, one]));
|
|
1268
1059
|
const all = RELEASE_STEPS.filter(step => step !== "done");
|
|
1269
|
-
// A release that started part way (one carried under an earlier approval, or resumed from an older journal) shows
|
|
1270
|
-
// the steps from where its own record starts; a step missing between two recorded ones is a write that was lost.
|
|
1271
|
-
// A build running since the stop is the release's check, wherever the release last stopped; what follows it is to come.
|
|
1272
1060
|
const building = progress.building, checkAt = all.indexOf("check");
|
|
1273
1061
|
const firstAt = building === null ? all.findIndex(step => recorded.has(step)) : Math.min(all.findIndex(step => recorded.has(step)), checkAt);
|
|
1274
1062
|
const lastAt = all.reduce((at, step, index) => recorded.has(step) ? index : at, -1);
|
|
@@ -1281,28 +1069,22 @@ export function releaseStepsViewOf(progress, now) {
|
|
|
1281
1069
|
}
|
|
1282
1070
|
if (building !== null && all.indexOf(step) > checkAt)
|
|
1283
1071
|
return { name: RELEASE_STEP_WORDS[step] ?? step, st: "q", start: 0, dur: 0 };
|
|
1284
|
-
// A step with no record is never painted as done: between recorded ones it says so, after them it is queued.
|
|
1285
1072
|
if (one === undefined)
|
|
1286
1073
|
return all.indexOf(step) < lastAt ? { name: RELEASE_STEP_WORDS[step] ?? step, sub: "not recorded", st: "q", start: 0, dur: 0 }
|
|
1287
1074
|
: { name: RELEASE_STEP_WORDS[step] ?? step, st: "q", start: 0, dur: 0 };
|
|
1288
1075
|
const start = Date.parse(one.startedAt), end = one.endedAt === null ? now.getTime() : Date.parse(one.endedAt);
|
|
1289
|
-
// A failure the release has gone on from (resumed past it, or a build since) is history, not where it stands.
|
|
1290
1076
|
const passed = one.state === "failed" && progress.stopped === null;
|
|
1291
1077
|
const st = one.state === "done" || passed ? "ok" : one.state === "failed" ? "bad" : one.state === "waiting" ? "wait" : "run";
|
|
1292
1078
|
return { name: RELEASE_STEP_WORDS[step] ?? step, ...(passed ? { sub: "Stopped here, then went on" } : one.detail === null || one.state === "done" ? {} : { sub: one.detail.slice(0, 160) }), st,
|
|
1293
1079
|
start: Number.isFinite(start) && Number.isFinite(origin) ? Math.max(0, (start - origin) / 1000) : 0, dur: Number.isFinite(start) && Number.isFinite(end) ? Math.max(0, (end - start) / 1000) : 0 };
|
|
1294
1080
|
});
|
|
1295
1081
|
const current = rows.findIndex(row => row.st === "run" || row.st === "wait" || row.st === "bad");
|
|
1296
|
-
// Released only on its own evidence: the last step (Homebrew, after publication) recorded done. A merge (authority
|
|
1297
|
-
// `merged`) is not a release: verifying the tree, the tag and publication still follow it.
|
|
1298
1082
|
const done = progress.stopped === null && recorded.get("homebrew")?.state === "done";
|
|
1299
1083
|
const at = current === -1 ? null : rows[current];
|
|
1300
1084
|
const last = lastAt === -1 ? null : RELEASE_STEP_WORDS[all[lastAt]] ?? all[lastAt];
|
|
1301
1085
|
return {
|
|
1302
1086
|
tag: progress.tag, version: progress.version, pr: progress.pr,
|
|
1303
1087
|
rows,
|
|
1304
|
-
// Waiting is a person's act only at Approval; a step waiting on a machine (its check, GitHub's checks, quiet) is the
|
|
1305
|
-
// release running, never "Needs you".
|
|
1306
1088
|
state: progress.stopped !== null ? "failed" : done ? "done" : at?.st === "wait" && steps[current] === "approval" ? "waiting" : "running",
|
|
1307
1089
|
at: current === -1 ? null : { step: steps[current], name: at.name, index: current + 1, of: rows.length },
|
|
1308
1090
|
headline: done ? `Released ${progress.version}` : progress.stopped !== null ? `Stopped at ${RELEASE_STEP_WORDS[progress.stopped.step] ?? progress.stopped.step}`
|