@aragon-agent/cli 0.6.46 → 0.6.48
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 +28 -0
- package/README.md +80 -12
- package/dist/agent/coalesce.d.ts +5 -1
- package/dist/agent/coalesce.js +13 -0
- package/dist/agent/controller.d.ts +41 -20
- package/dist/agent/controller.js +68 -15
- package/dist/agent/conversation-reset.d.ts +1 -1
- package/dist/agent/governance-wiring.d.ts +6 -6
- package/dist/agent/governance-wiring.js +4 -4
- package/dist/agent/headless.d.ts +5 -5
- package/dist/agent/headless.js +4 -4
- package/dist/agent/job-notices.d.ts +1 -1
- package/dist/agent/job-notices.js +1 -1
- package/dist/agent/kit-apply.d.ts +3 -3
- package/dist/agent/kit-apply.js +3 -3
- package/dist/agent/model-profile-settings.d.ts +2 -2
- package/dist/agent/model-profile-settings.js +6 -6
- package/dist/agent/prompt-options.d.ts +1 -1
- package/dist/agent/system-prompt.d.ts +1 -1
- package/dist/agent/user-attention.d.ts +17 -0
- package/dist/agent/user-attention.js +32 -0
- package/dist/{ui → app}/App.d.ts +9 -9
- package/dist/{ui → app}/App.js +113 -79
- package/dist/{ui → app}/use-startup-notices.d.ts +1 -1
- package/dist/{ui → app}/use-startup-notices.js +2 -2
- package/dist/cli.js +31 -32
- package/dist/commands/agents-command.js +1 -1
- package/dist/commands/builtins.js +9 -9
- package/dist/commands/governance-command.js +2 -2
- package/dist/commands/governance-runs-table.js +1 -1
- package/dist/commands/kit-command.js +1 -1
- package/dist/commands/perf.d.ts +3 -3
- package/dist/commands/perf.js +1 -1
- package/dist/commands/registry.d.ts +8 -8
- package/dist/commands/skills.js +2 -2
- package/dist/commands/team-command.js +1 -1
- package/dist/compaction/archive.d.ts +1 -1
- package/dist/compaction/archive.js +1 -1
- package/dist/compaction/child.d.ts +3 -3
- package/dist/compaction/child.js +4 -4
- package/dist/compaction/command.js +5 -5
- package/dist/compaction/compactor.d.ts +6 -6
- package/dist/compaction/compactor.js +6 -6
- package/dist/compaction/context-command.js +1 -1
- package/dist/compaction/digest.js +1 -1
- package/dist/compaction/memory-input.js +1 -1
- package/dist/compaction/memory-validation.js +1 -1
- package/dist/compaction/memory.js +1 -1
- package/dist/compaction/summarize-call.js +1 -1
- package/dist/compaction/summary-prompt.js +1 -1
- package/dist/compaction/tail-budget.js +2 -2
- package/dist/compaction/wiring.d.ts +5 -5
- package/dist/compaction/wiring.js +2 -2
- package/dist/config/cli-commands.d.ts +1 -1
- package/dist/config/cli-commands.js +3 -3
- package/dist/config/env.d.ts +1 -1
- package/dist/config/env.js +4 -4
- package/dist/config/load.d.ts +2 -2
- package/dist/config/load.js +10 -31
- package/dist/config/migrate-state-out-of-config.js +1 -1
- package/dist/config/model-profile-store.d.ts +4 -54
- package/dist/config/model-profile-store.js +3 -3
- package/dist/config/prompt-history.js +1 -1
- package/dist/config/store.d.ts +2 -2
- package/dist/config/store.js +3 -3
- package/dist/diagnostics/doctor.js +4 -4
- package/dist/exec/bridge/decisions.d.ts +1 -1
- package/dist/exec/bridge/human-answers.d.ts +1 -1
- package/dist/exec/bridge/human-answers.js +1 -1
- package/dist/exec/bridge/protocol.d.ts +1 -1
- package/dist/exec/bridge/server.js +1 -1
- package/dist/exec/events.d.ts +2 -2
- package/dist/exec/index.d.ts +1 -1
- package/dist/exec/index.js +1 -1
- package/dist/exec/permission.js +1 -1
- package/dist/exec/runner.d.ts +3 -3
- package/dist/exec/runner.js +2 -2
- package/dist/exec/threads/runtime.js +1 -1
- package/dist/fast/digest.d.ts +1 -1
- package/dist/fast/digest.js +1 -1
- package/dist/fast/frames.d.ts +1 -1
- package/dist/fast/frames.js +1 -1
- package/dist/fast/prompt.d.ts +1 -1
- package/dist/fast/prompt.js +1 -1
- package/dist/fast/review-call.js +1 -1
- package/dist/fast/reviewer.d.ts +3 -3
- package/dist/fast/reviewer.js +1 -1
- package/dist/fast/summary-call.d.ts +3 -3
- package/dist/fast/summary-call.js +2 -2
- package/dist/fast/summary-prompt.d.ts +1 -1
- package/dist/fast/summary-prompt.js +1 -1
- package/dist/fast/wiring.d.ts +4 -4
- package/dist/fast/wiring.js +1 -1
- package/dist/governance/card-normalize.d.ts +1 -1
- package/dist/governance/copy.d.ts +1 -1
- package/dist/governance/copy.js +2 -2
- package/dist/governance/engine/artifact-persist.d.ts +1 -1
- package/dist/governance/engine/budget.d.ts +1 -1
- package/dist/governance/engine/budget.js +1 -1
- package/dist/governance/engine/cards.d.ts +1 -1
- package/dist/governance/engine/digest.js +1 -1
- package/dist/governance/engine/engine-core.d.ts +5 -5
- package/dist/governance/engine/engine-core.js +1 -1
- package/dist/governance/engine/engine.d.ts +1 -1
- package/dist/governance/engine/engine.js +1 -1
- package/dist/governance/engine/estimate.d.ts +1 -1
- package/dist/governance/engine/estimate.js +1 -1
- package/dist/governance/engine/inspector.js +2 -2
- package/dist/governance/engine/integration.d.ts +1 -1
- package/dist/governance/engine/lifecycle.d.ts +1 -1
- package/dist/governance/engine/lifecycle.js +1 -1
- package/dist/governance/engine/phase-members.d.ts +1 -1
- package/dist/governance/engine/phase-planner.d.ts +1 -1
- package/dist/governance/engine/phase-planner.js +1 -1
- package/dist/governance/engine/rebuild.d.ts +1 -1
- package/dist/governance/engine/report.d.ts +1 -1
- package/dist/governance/engine/report.js +1 -1
- package/dist/governance/engine/run-digest.d.ts +1 -1
- package/dist/governance/engine/spec-builder.d.ts +2 -2
- package/dist/governance/engine/spec-builder.js +2 -2
- package/dist/governance/engine/stage-runner.js +2 -2
- package/dist/governance/engine/start-input.d.ts +1 -1
- package/dist/governance/engine/start-input.js +1 -1
- package/dist/governance/engine/state-machine.d.ts +1 -1
- package/dist/governance/engine/state-machine.js +3 -3
- package/dist/governance/engine/submission-queries.d.ts +1 -1
- package/dist/governance/engine/submission-render.d.ts +1 -1
- package/dist/governance/engine/submissions.d.ts +1 -1
- package/dist/governance/engine/submissions.js +1 -1
- package/dist/governance/engine/visibility.d.ts +1 -1
- package/dist/governance/engine/visibility.js +1 -1
- package/dist/governance/posture-transition.d.ts +2 -2
- package/dist/governance/posture-transition.js +1 -1
- package/dist/governance/profiles.d.ts +1 -1
- package/dist/governance/prompts/orchestrator-block.d.ts +2 -2
- package/dist/governance/prompts/orchestrator-block.js +2 -2
- package/dist/governance/prompts/plan-addendum.d.ts +1 -1
- package/dist/governance/prompts/plan-addendum.js +1 -1
- package/dist/governance/prompts/role-blocks.d.ts +2 -2
- package/dist/governance/prompts/role-blocks.js +1 -1
- package/dist/governance/report-reader.js +1 -1
- package/dist/governance/roles.d.ts +1 -1
- package/dist/governance/rules/claims.d.ts +1 -1
- package/dist/governance/rules/claims.js +1 -1
- package/dist/governance/rules/elimination.d.ts +1 -1
- package/dist/governance/rules/elimination.js +1 -1
- package/dist/governance/rules/failure-analysis.d.ts +2 -2
- package/dist/governance/rules/failure-analysis.js +1 -1
- package/dist/governance/rules/ledger-replay.d.ts +1 -1
- package/dist/governance/rules/ledger-state.d.ts +1 -1
- package/dist/governance/rules/ledger-state.js +1 -1
- package/dist/governance/rules/ledger.d.ts +2 -2
- package/dist/governance/rules/ledger.js +2 -2
- package/dist/governance/rules/rca.d.ts +1 -1
- package/dist/governance/rules/rca.js +1 -1
- package/dist/governance/rules/settlement.d.ts +2 -2
- package/dist/governance/rules/settlement.js +2 -2
- package/dist/governance/rules/suspicion.d.ts +1 -1
- package/dist/governance/store/artifacts.d.ts +1 -1
- package/dist/governance/store/artifacts.js +1 -1
- package/dist/governance/store/events-log.d.ts +1 -1
- package/dist/governance/store/run-store.d.ts +1 -1
- package/dist/governance/store/run-store.js +1 -1
- package/dist/governance/store/scoreboard-export.d.ts +1 -1
- package/dist/governance/tools/child-tools.d.ts +1 -1
- package/dist/governance/tools/guard.d.ts +1 -1
- package/dist/governance/tools/guard.js +1 -1
- package/dist/governance/tools/inspector-tools.d.ts +2 -2
- package/dist/governance/tools/inspector-tools.js +2 -2
- package/dist/governance/tools/lead-tools.d.ts +1 -1
- package/dist/governance/tools/lead-tools.js +1 -1
- package/dist/governance/tools/normalize-util.js +1 -1
- package/dist/governance/tools/scan-incomplete.js +1 -1
- package/dist/governance/tools/shared-tools.d.ts +1 -1
- package/dist/governance/tools/shared-tools.js +1 -1
- package/dist/governance/tools/submit-normalizers.d.ts +1 -1
- package/dist/governance/tools/submit-normalizers.js +1 -1
- package/dist/governance/tools/submit-tools.d.ts +1 -1
- package/dist/logging/cli-commands.js +1 -1
- package/dist/logging/install.d.ts +1 -1
- package/dist/logging/install.js +3 -3
- package/dist/logging/logger.d.ts +2 -2
- package/dist/logging/logger.js +31 -2
- package/dist/proc/kill-tree.js +1 -1
- package/dist/proc/log-mirror.js +1 -1
- package/dist/proc/log-ring.js +2 -2
- package/dist/proc/notices.d.ts +1 -1
- package/dist/proc/notices.js +2 -2
- package/dist/proc/prompt.d.ts +1 -1
- package/dist/proc/prompt.js +8 -5
- package/dist/proc/readiness.js +1 -1
- package/dist/proc/supervisor.d.ts +1 -1
- package/dist/proc/supervisor.js +10 -4
- package/dist/proc/wait-plan.d.ts +39 -0
- package/dist/proc/wait-plan.js +77 -0
- package/dist/proc/wait.d.ts +37 -4
- package/dist/proc/wait.js +68 -5
- package/dist/prompts/command.d.ts +1 -1
- package/dist/prompts/command.js +1 -1
- package/dist/prompts/normalize.d.ts +1 -1
- package/dist/prompts/normalize.js +1 -1
- package/dist/prompts/resolve.d.ts +1 -1
- package/dist/prompts/store.d.ts +2 -12
- package/dist/prompts/store.js +6 -60
- package/dist/session/checkpoint.d.ts +2 -2
- package/dist/session/checkpoint.js +2 -0
- package/dist/session/clear-archive.d.ts +2 -2
- package/dist/session/persist.d.ts +2 -2
- package/dist/session/persist.js +20 -3
- package/dist/session/startup-session.d.ts +2 -2
- package/dist/session/validate-session.js +6 -3
- package/dist/skills/service.d.ts +2 -2
- package/dist/team/bus.d.ts +1 -1
- package/dist/team/bus.js +1 -1
- package/dist/team/child-reviewer.d.ts +2 -2
- package/dist/team/child-reviewer.js +1 -1
- package/dist/team/comm-tools.js +1 -1
- package/dist/team/dispatch-gate.js +1 -1
- package/dist/team/forced-dispatch.js +1 -1
- package/dist/team/forced-mode.d.ts +1 -1
- package/dist/team/forced-prompt.d.ts +1 -1
- package/dist/team/forced-prompt.js +1 -1
- package/dist/team/normalize.d.ts +1 -1
- package/dist/team/normalize.js +1 -1
- package/dist/team/overseer.d.ts +3 -3
- package/dist/team/overseer.js +3 -3
- package/dist/team/prompt.d.ts +1 -1
- package/dist/team/prompt.js +1 -1
- package/dist/team/report.d.ts +2 -2
- package/dist/team/report.js +2 -2
- package/dist/team/retry.d.ts +1 -1
- package/dist/team/retry.js +1 -1
- package/dist/team/runtime.d.ts +4 -4
- package/dist/team/runtime.js +2 -2
- package/dist/team/settled.d.ts +2 -2
- package/dist/team/subagent.d.ts +4 -4
- package/dist/team/subagent.js +5 -5
- package/dist/team/task-tool.d.ts +1 -1
- package/dist/team/task-tool.js +1 -1
- package/dist/todo/normalize.d.ts +1 -1
- package/dist/todo/normalize.js +1 -1
- package/dist/todo/prompt.d.ts +1 -1
- package/dist/todo/prompt.js +1 -1
- package/dist/todo/store.d.ts +1 -1
- package/dist/todo/store.js +2 -2
- package/dist/todo/todo-tool.d.ts +1 -1
- package/dist/todo/todo-tool.js +2 -2
- package/dist/tools/bash-tool.d.ts +1 -1
- package/dist/tools/bash-tool.js +2 -2
- package/dist/tools/diff.d.ts +1 -1
- package/dist/tools/diff.js +1 -1
- package/dist/tools/file-change-store.d.ts +1 -1
- package/dist/tools/fs-tools.d.ts +2 -2
- package/dist/tools/fs-tools.js +1 -1
- package/dist/tools/index.d.ts +3 -3
- package/dist/tools/index.js +1 -1
- package/dist/tools/job-tools.d.ts +14 -3
- package/dist/tools/job-tools.js +158 -35
- package/dist/tools/plan-tools.d.ts +1 -1
- package/dist/tools/plan-tools.js +1 -1
- package/dist/tools/proc-tools.d.ts +1 -1
- package/dist/tools/proc-tools.js +2 -2
- package/dist/update/classify-failure.d.ts +1 -1
- package/dist/update/install-lock.js +1 -1
- package/dist/update/install-source.d.ts +1 -1
- package/dist/update/installer.js +2 -2
- package/dist/update/npm-view.d.ts +1 -1
- package/dist/update/npm-view.js +1 -1
- package/dist/update/registry.d.ts +1 -1
- package/dist/update/registry.js +1 -1
- package/dist/update/service.d.ts +2 -2
- package/dist/update/service.js +2 -2
- package/package.json +7 -7
- package/dist/agent/agent-mode.d.ts +0 -108
- package/dist/agent/agent-mode.js +0 -121
- package/dist/agent/entry-limits.d.ts +0 -65
- package/dist/agent/entry-limits.js +0 -133
- package/dist/agent/governance-view.d.ts +0 -40
- package/dist/agent/governance-view.js +0 -40
- package/dist/agent/invocation-card.d.ts +0 -77
- package/dist/agent/invocation-card.js +0 -169
- package/dist/agent/model-probe-limits.d.ts +0 -39
- package/dist/agent/model-probe-limits.js +0 -25
- package/dist/agent/model-probe.d.ts +0 -104
- package/dist/agent/model-probe.js +0 -391
- package/dist/agent/queued-messages.d.ts +0 -23
- package/dist/agent/queued-messages.js +0 -49
- package/dist/agent/reducer.d.ts +0 -837
- package/dist/agent/reducer.js +0 -1617
- package/dist/agent/retry-view.d.ts +0 -68
- package/dist/agent/retry-view.js +0 -95
- package/dist/agent/usage.d.ts +0 -47
- package/dist/agent/usage.js +0 -84
- package/dist/compaction/limits.d.ts +0 -61
- package/dist/compaction/limits.js +0 -64
- package/dist/compaction/meter.d.ts +0 -276
- package/dist/compaction/meter.js +0 -512
- package/dist/compaction/pressure.d.ts +0 -163
- package/dist/compaction/pressure.js +0 -199
- package/dist/compaction/reason-text.d.ts +0 -36
- package/dist/compaction/reason-text.js +0 -78
- package/dist/compaction/types.d.ts +0 -360
- package/dist/compaction/types.js +0 -22
- package/dist/config/governance-config.d.ts +0 -125
- package/dist/config/governance-config.js +0 -164
- package/dist/config/kit-resolution.d.ts +0 -93
- package/dist/config/kit-resolution.js +0 -226
- package/dist/config/model-kits.d.ts +0 -225
- package/dist/config/model-kits.js +0 -302
- package/dist/config/model-profile-resolution.d.ts +0 -28
- package/dist/config/model-profile-resolution.js +0 -88
- package/dist/config/model-profiles.d.ts +0 -103
- package/dist/config/model-profiles.js +0 -188
- package/dist/config/schema.d.ts +0 -1645
- package/dist/config/schema.js +0 -1377
- package/dist/fast/limits.d.ts +0 -152
- package/dist/fast/limits.js +0 -152
- package/dist/fast/resolve.d.ts +0 -44
- package/dist/fast/resolve.js +0 -107
- package/dist/fast/task-summary-types.d.ts +0 -66
- package/dist/fast/task-summary-types.js +0 -17
- package/dist/fast/types.d.ts +0 -141
- package/dist/fast/types.js +0 -14
- package/dist/governance/governed-dispatch.d.ts +0 -19
- package/dist/governance/governed-dispatch.js +0 -17
- package/dist/governance/limits.d.ts +0 -107
- package/dist/governance/limits.js +0 -131
- package/dist/governance/posture.d.ts +0 -35
- package/dist/governance/posture.js +0 -59
- package/dist/governance/rules/events-table.d.ts +0 -46
- package/dist/governance/rules/events-table.js +0 -94
- package/dist/governance/types.d.ts +0 -661
- package/dist/governance/types.js +0 -27
- package/dist/input/control-sequences.d.ts +0 -71
- package/dist/input/control-sequences.js +0 -222
- package/dist/input/csiu-keys.d.ts +0 -66
- package/dist/input/csiu-keys.js +0 -181
- package/dist/input/cursor-report.d.ts +0 -61
- package/dist/input/cursor-report.js +0 -97
- package/dist/input/enter-sequences.d.ts +0 -64
- package/dist/input/enter-sequences.js +0 -153
- package/dist/input/interrupt-gesture.d.ts +0 -18
- package/dist/input/interrupt-gesture.js +0 -19
- package/dist/input/keyboard-enhancement.d.ts +0 -42
- package/dist/input/keyboard-enhancement.js +0 -65
- package/dist/input/keymap.d.ts +0 -20
- package/dist/input/keymap.js +0 -99
- package/dist/input/limits.d.ts +0 -118
- package/dist/input/limits.js +0 -109
- package/dist/input/mouse-events.d.ts +0 -87
- package/dist/input/mouse-events.js +0 -212
- package/dist/input/paste-parse.d.ts +0 -83
- package/dist/input/paste-parse.js +0 -107
- package/dist/input/pointer-router.d.ts +0 -11
- package/dist/input/pointer-router.js +0 -14
- package/dist/input/stdin-filter.d.ts +0 -112
- package/dist/input/stdin-filter.js +0 -657
- package/dist/input/win32-input-mode.d.ts +0 -61
- package/dist/input/win32-input-mode.js +0 -269
- package/dist/logging/levels.d.ts +0 -40
- package/dist/logging/levels.js +0 -59
- package/dist/logging/secret-registry.d.ts +0 -32
- package/dist/logging/secret-registry.js +0 -73
- package/dist/proc/limits.d.ts +0 -200
- package/dist/proc/limits.js +0 -207
- package/dist/proc/progress.d.ts +0 -40
- package/dist/proc/progress.js +0 -135
- package/dist/proc/types.d.ts +0 -263
- package/dist/proc/types.js +0 -15
- package/dist/prompts/copy.d.ts +0 -89
- package/dist/prompts/copy.js +0 -131
- package/dist/prompts/fill.d.ts +0 -51
- package/dist/prompts/fill.js +0 -46
- package/dist/prompts/limits.d.ts +0 -53
- package/dist/prompts/limits.js +0 -53
- package/dist/prompts/search.d.ts +0 -58
- package/dist/prompts/search.js +0 -146
- package/dist/prompts/types.d.ts +0 -204
- package/dist/prompts/types.js +0 -13
- package/dist/team/activity.d.ts +0 -67
- package/dist/team/activity.js +0 -130
- package/dist/team/limits.d.ts +0 -308
- package/dist/team/limits.js +0 -330
- package/dist/team/model.d.ts +0 -104
- package/dist/team/model.js +0 -150
- package/dist/team/panel-rows.d.ts +0 -48
- package/dist/team/panel-rows.js +0 -75
- package/dist/team/timeline.d.ts +0 -74
- package/dist/team/timeline.js +0 -101
- package/dist/team/types.d.ts +0 -354
- package/dist/team/types.js +0 -13
- package/dist/todo/acceptance.d.ts +0 -120
- package/dist/todo/acceptance.js +0 -399
- package/dist/todo/follow-through.d.ts +0 -138
- package/dist/todo/follow-through.js +0 -248
- package/dist/todo/limits.d.ts +0 -152
- package/dist/todo/limits.js +0 -152
- package/dist/todo/panel-rows.d.ts +0 -45
- package/dist/todo/panel-rows.js +0 -70
- package/dist/todo/plan-sections.d.ts +0 -60
- package/dist/todo/plan-sections.js +0 -108
- package/dist/todo/row-window.d.ts +0 -51
- package/dist/todo/row-window.js +0 -107
- package/dist/todo/types.d.ts +0 -124
- package/dist/todo/types.js +0 -12
- package/dist/tools/human-input.d.ts +0 -212
- package/dist/tools/human-input.js +0 -265
- package/dist/tools/patch.d.ts +0 -115
- package/dist/tools/patch.js +0 -453
- package/dist/tools/terminal-output.d.ts +0 -115
- package/dist/tools/terminal-output.js +0 -201
- package/dist/tools/tool-output-store.d.ts +0 -68
- package/dist/tools/tool-output-store.js +0 -102
- package/dist/ui/ActivityLine.d.ts +0 -26
- package/dist/ui/ActivityLine.js +0 -48
- package/dist/ui/AutocompletePopup.d.ts +0 -23
- package/dist/ui/AutocompletePopup.js +0 -17
- package/dist/ui/BottomStatusRow.d.ts +0 -10
- package/dist/ui/BottomStatusRow.js +0 -9
- package/dist/ui/Composer.d.ts +0 -115
- package/dist/ui/Composer.js +0 -64
- package/dist/ui/GovernancePanel.d.ts +0 -50
- package/dist/ui/GovernancePanel.js +0 -77
- package/dist/ui/GovernanceRun.d.ts +0 -18
- package/dist/ui/GovernanceRun.js +0 -11
- package/dist/ui/Header.d.ts +0 -48
- package/dist/ui/Header.js +0 -27
- package/dist/ui/Logo.d.ts +0 -32
- package/dist/ui/Logo.js +0 -65
- package/dist/ui/Markdown.d.ts +0 -29
- package/dist/ui/Markdown.js +0 -116
- package/dist/ui/PromptCaret.d.ts +0 -11
- package/dist/ui/PromptCaret.js +0 -31
- package/dist/ui/PromptInput.d.ts +0 -192
- package/dist/ui/PromptInput.js +0 -689
- package/dist/ui/QueuePanel.d.ts +0 -8
- package/dist/ui/QueuePanel.js +0 -9
- package/dist/ui/QueueStatusRow.d.ts +0 -24
- package/dist/ui/QueueStatusRow.js +0 -51
- package/dist/ui/ScrollbackShell.d.ts +0 -132
- package/dist/ui/ScrollbackShell.js +0 -26
- package/dist/ui/SessionOpener.d.ts +0 -30
- package/dist/ui/SessionOpener.js +0 -12
- package/dist/ui/StatusBar.d.ts +0 -129
- package/dist/ui/StatusBar.js +0 -61
- package/dist/ui/TeamPanel.d.ts +0 -76
- package/dist/ui/TeamPanel.js +0 -103
- package/dist/ui/ToastStack.d.ts +0 -8
- package/dist/ui/ToastStack.js +0 -31
- package/dist/ui/TodoPanel.d.ts +0 -52
- package/dist/ui/TodoPanel.js +0 -214
- package/dist/ui/Transcript.d.ts +0 -105
- package/dist/ui/Transcript.js +0 -251
- package/dist/ui/UpdateLine.d.ts +0 -44
- package/dist/ui/UpdateLine.js +0 -129
- package/dist/ui/activity-phrases.d.ts +0 -33
- package/dist/ui/activity-phrases.js +0 -50
- package/dist/ui/capabilities.d.ts +0 -27
- package/dist/ui/capabilities.js +0 -65
- package/dist/ui/clipboard-task.d.ts +0 -29
- package/dist/ui/clipboard-task.js +0 -66
- package/dist/ui/clipboard.d.ts +0 -31
- package/dist/ui/clipboard.js +0 -157
- package/dist/ui/color-runtime.d.ts +0 -5
- package/dist/ui/color-runtime.js +0 -29
- package/dist/ui/composer-input.d.ts +0 -38
- package/dist/ui/composer-input.js +0 -79
- package/dist/ui/composer-limits.d.ts +0 -30
- package/dist/ui/composer-limits.js +0 -45
- package/dist/ui/composer-rows.d.ts +0 -73
- package/dist/ui/composer-rows.js +0 -129
- package/dist/ui/console-bridge.d.ts +0 -19
- package/dist/ui/console-bridge.js +0 -52
- package/dist/ui/density.d.ts +0 -26
- package/dist/ui/density.js +0 -34
- package/dist/ui/display-tab.d.ts +0 -51
- package/dist/ui/display-tab.js +0 -82
- package/dist/ui/editor-navigation.d.ts +0 -55
- package/dist/ui/editor-navigation.js +0 -96
- package/dist/ui/editor-reducer.d.ts +0 -108
- package/dist/ui/editor-reducer.js +0 -187
- package/dist/ui/enter-frames.d.ts +0 -47
- package/dist/ui/enter-frames.js +0 -117
- package/dist/ui/entries/AssistantEntry.d.ts +0 -37
- package/dist/ui/entries/AssistantEntry.js +0 -43
- package/dist/ui/entries/CompactionCard.d.ts +0 -88
- package/dist/ui/entries/CompactionCard.js +0 -222
- package/dist/ui/entries/DiffView.d.ts +0 -61
- package/dist/ui/entries/DiffView.js +0 -103
- package/dist/ui/entries/EntryFrame.d.ts +0 -23
- package/dist/ui/entries/EntryFrame.js +0 -6
- package/dist/ui/entries/FastCard.d.ts +0 -53
- package/dist/ui/entries/FastCard.js +0 -105
- package/dist/ui/entries/GovernanceCard.d.ts +0 -30
- package/dist/ui/entries/GovernanceCard.js +0 -32
- package/dist/ui/entries/InvocationCard.d.ts +0 -20
- package/dist/ui/entries/InvocationCard.js +0 -32
- package/dist/ui/entries/QueuedEntry.d.ts +0 -27
- package/dist/ui/entries/QueuedEntry.js +0 -33
- package/dist/ui/entries/RetryCard.d.ts +0 -56
- package/dist/ui/entries/RetryCard.js +0 -60
- package/dist/ui/entries/ServiceCard.d.ts +0 -82
- package/dist/ui/entries/ServiceCard.js +0 -151
- package/dist/ui/entries/TeamCard.d.ts +0 -55
- package/dist/ui/entries/TeamCard.js +0 -94
- package/dist/ui/entries/TodoCard.d.ts +0 -54
- package/dist/ui/entries/TodoCard.js +0 -98
- package/dist/ui/entries/ToolCard.d.ts +0 -81
- package/dist/ui/entries/ToolCard.js +0 -160
- package/dist/ui/entries/ToolPreview.d.ts +0 -59
- package/dist/ui/entries/ToolPreview.js +0 -208
- package/dist/ui/entries/UserEntry.d.ts +0 -36
- package/dist/ui/entries/UserEntry.js +0 -57
- package/dist/ui/exit-snapshot.d.ts +0 -43
- package/dist/ui/exit-snapshot.js +0 -26
- package/dist/ui/frame-differ.d.ts +0 -166
- package/dist/ui/frame-differ.js +0 -354
- package/dist/ui/frame-observer.d.ts +0 -17
- package/dist/ui/frame-observer.js +0 -94
- package/dist/ui/frame-parser.d.ts +0 -7
- package/dist/ui/frame-parser.js +0 -18
- package/dist/ui/gauge.d.ts +0 -39
- package/dist/ui/gauge.js +0 -55
- package/dist/ui/glyphs.d.ts +0 -178
- package/dist/ui/glyphs.js +0 -165
- package/dist/ui/governance-copy.d.ts +0 -69
- package/dist/ui/governance-copy.js +0 -104
- package/dist/ui/governance-status.d.ts +0 -145
- package/dist/ui/governance-status.js +0 -326
- package/dist/ui/gradient.d.ts +0 -11
- package/dist/ui/gradient.js +0 -50
- package/dist/ui/ink-runtime.d.ts +0 -4
- package/dist/ui/ink-runtime.js +0 -51
- package/dist/ui/interaction-copy.d.ts +0 -82
- package/dist/ui/interaction-copy.js +0 -38
- package/dist/ui/interaction-hints.d.ts +0 -44
- package/dist/ui/interaction-hints.js +0 -97
- package/dist/ui/layout/AppShell.d.ts +0 -17
- package/dist/ui/layout/AppShell.js +0 -6
- package/dist/ui/layout/Gutter.d.ts +0 -67
- package/dist/ui/layout/Gutter.js +0 -42
- package/dist/ui/layout/MeasuredEntry.d.ts +0 -21
- package/dist/ui/layout/MeasuredEntry.js +0 -30
- package/dist/ui/layout/OverlayFrame.d.ts +0 -73
- package/dist/ui/layout/OverlayFrame.js +0 -110
- package/dist/ui/layout/ScrollIndicator.d.ts +0 -32
- package/dist/ui/layout/ScrollIndicator.js +0 -22
- package/dist/ui/layout/ScrollViewport.d.ts +0 -40
- package/dist/ui/layout/ScrollViewport.js +0 -222
- package/dist/ui/layout/agents-board.d.ts +0 -102
- package/dist/ui/layout/agents-board.js +0 -389
- package/dist/ui/layout/autocomplete.d.ts +0 -18
- package/dist/ui/layout/autocomplete.js +0 -26
- package/dist/ui/layout/budget.d.ts +0 -43
- package/dist/ui/layout/budget.js +0 -52
- package/dist/ui/layout/cells.d.ts +0 -61
- package/dist/ui/layout/cells.js +0 -156
- package/dist/ui/layout/document-layout.d.ts +0 -13
- package/dist/ui/layout/document-layout.js +0 -10
- package/dist/ui/layout/follow-state.d.ts +0 -138
- package/dist/ui/layout/follow-state.js +0 -148
- package/dist/ui/layout/frame.d.ts +0 -36
- package/dist/ui/layout/frame.js +0 -39
- package/dist/ui/layout/governance-board.d.ts +0 -121
- package/dist/ui/layout/governance-board.js +0 -382
- package/dist/ui/layout/governance-card.d.ts +0 -53
- package/dist/ui/layout/governance-card.js +0 -134
- package/dist/ui/layout/governance-chip.d.ts +0 -38
- package/dist/ui/layout/governance-chip.js +0 -64
- package/dist/ui/layout/governance-panel.d.ts +0 -85
- package/dist/ui/layout/governance-panel.js +0 -358
- package/dist/ui/layout/governance-roster.d.ts +0 -65
- package/dist/ui/layout/governance-roster.js +0 -275
- package/dist/ui/layout/header-hints.d.ts +0 -90
- package/dist/ui/layout/header-hints.js +0 -110
- package/dist/ui/layout/header-left.d.ts +0 -115
- package/dist/ui/layout/header-left.js +0 -206
- package/dist/ui/layout/invocation-card.d.ts +0 -41
- package/dist/ui/layout/invocation-card.js +0 -91
- package/dist/ui/layout/kit-chip.d.ts +0 -50
- package/dist/ui/layout/kit-chip.js +0 -81
- package/dist/ui/layout/overlay-window.d.ts +0 -43
- package/dist/ui/layout/overlay-window.js +0 -51
- package/dist/ui/layout/queue-layout.d.ts +0 -19
- package/dist/ui/layout/queue-layout.js +0 -26
- package/dist/ui/layout/rail.d.ts +0 -7
- package/dist/ui/layout/rail.js +0 -16
- package/dist/ui/layout/scroll-indicator.d.ts +0 -27
- package/dist/ui/layout/scroll-indicator.js +0 -36
- package/dist/ui/layout/scroll.d.ts +0 -37
- package/dist/ui/layout/scroll.js +0 -99
- package/dist/ui/layout/scrollbar-geometry.d.ts +0 -17
- package/dist/ui/layout/scrollbar-geometry.js +0 -13
- package/dist/ui/layout/session-chip.d.ts +0 -52
- package/dist/ui/layout/session-chip.js +0 -64
- package/dist/ui/layout/shortcut-panel-layout.d.ts +0 -191
- package/dist/ui/layout/shortcut-panel-layout.js +0 -321
- package/dist/ui/layout/status-detail-layout.d.ts +0 -9
- package/dist/ui/layout/status-detail-layout.js +0 -79
- package/dist/ui/layout/status-layout.d.ts +0 -139
- package/dist/ui/layout/status-layout.js +0 -253
- package/dist/ui/layout/task-summary-cell.d.ts +0 -61
- package/dist/ui/layout/task-summary-cell.js +0 -65
- package/dist/ui/layout/team-panel.d.ts +0 -18
- package/dist/ui/layout/team-panel.js +0 -25
- package/dist/ui/layout/team-row.d.ts +0 -139
- package/dist/ui/layout/team-row.js +0 -246
- package/dist/ui/layout/todo-layout.d.ts +0 -62
- package/dist/ui/layout/todo-layout.js +0 -102
- package/dist/ui/layout/useTerminalSize.d.ts +0 -13
- package/dist/ui/layout/useTerminalSize.js +0 -50
- package/dist/ui/layout/viewport-geometry.d.ts +0 -29
- package/dist/ui/layout/viewport-geometry.js +0 -28
- package/dist/ui/layout/virtual-window.d.ts +0 -112
- package/dist/ui/layout/virtual-window.js +0 -488
- package/dist/ui/layout/wrap-rows.d.ts +0 -26
- package/dist/ui/layout/wrap-rows.js +0 -88
- package/dist/ui/live-clamp.d.ts +0 -14
- package/dist/ui/live-clamp.js +0 -46
- package/dist/ui/markdown-blocks.d.ts +0 -107
- package/dist/ui/markdown-blocks.js +0 -240
- package/dist/ui/overlays/AgentsBoardOverlay.d.ts +0 -57
- package/dist/ui/overlays/AgentsBoardOverlay.js +0 -183
- package/dist/ui/overlays/ConfirmDialog.d.ts +0 -31
- package/dist/ui/overlays/ConfirmDialog.js +0 -44
- package/dist/ui/overlays/GovernanceBoardOverlay.d.ts +0 -41
- package/dist/ui/overlays/GovernanceBoardOverlay.js +0 -76
- package/dist/ui/overlays/GovernanceSettingsPage.d.ts +0 -48
- package/dist/ui/overlays/GovernanceSettingsPage.js +0 -93
- package/dist/ui/overlays/HelpOverlay.d.ts +0 -29
- package/dist/ui/overlays/HelpOverlay.js +0 -232
- package/dist/ui/overlays/KitEditor.d.ts +0 -23
- package/dist/ui/overlays/KitEditor.js +0 -101
- package/dist/ui/overlays/KitManager.d.ts +0 -23
- package/dist/ui/overlays/KitManager.js +0 -104
- package/dist/ui/overlays/KitPicker.d.ts +0 -49
- package/dist/ui/overlays/KitPicker.js +0 -58
- package/dist/ui/overlays/ModelDiscoveryList.d.ts +0 -23
- package/dist/ui/overlays/ModelDiscoveryList.js +0 -161
- package/dist/ui/overlays/ModelPicker.d.ts +0 -26
- package/dist/ui/overlays/ModelPicker.js +0 -63
- package/dist/ui/overlays/ModelProfileEditor.d.ts +0 -29
- package/dist/ui/overlays/ModelProfileEditor.js +0 -168
- package/dist/ui/overlays/ModelProfilePicker.d.ts +0 -48
- package/dist/ui/overlays/ModelProfilePicker.js +0 -231
- package/dist/ui/overlays/PlanReviewOverlay.d.ts +0 -51
- package/dist/ui/overlays/PlanReviewOverlay.js +0 -132
- package/dist/ui/overlays/PromptEditorPage.d.ts +0 -48
- package/dist/ui/overlays/PromptEditorPage.js +0 -227
- package/dist/ui/overlays/PromptLibraryOverlay.d.ts +0 -37
- package/dist/ui/overlays/PromptLibraryOverlay.js +0 -191
- package/dist/ui/overlays/PromptPicker.d.ts +0 -36
- package/dist/ui/overlays/PromptPicker.js +0 -129
- package/dist/ui/overlays/PromptTextArea.d.ts +0 -86
- package/dist/ui/overlays/PromptTextArea.js +0 -141
- package/dist/ui/overlays/QuestionOverlay.d.ts +0 -39
- package/dist/ui/overlays/QuestionOverlay.js +0 -258
- package/dist/ui/overlays/QueueOverlay.d.ts +0 -22
- package/dist/ui/overlays/QueueOverlay.js +0 -79
- package/dist/ui/overlays/SettingsScreen.d.ts +0 -228
- package/dist/ui/overlays/SettingsScreen.js +0 -1037
- package/dist/ui/overlays/ShortcutPanel.d.ts +0 -39
- package/dist/ui/overlays/ShortcutPanel.js +0 -106
- package/dist/ui/overlays/TeamFanoutPage.d.ts +0 -51
- package/dist/ui/overlays/TeamFanoutPage.js +0 -90
- package/dist/ui/overlays/governance-settings.d.ts +0 -79
- package/dist/ui/overlays/governance-settings.js +0 -140
- package/dist/ui/overlays/kit-picker-state.d.ts +0 -87
- package/dist/ui/overlays/kit-picker-state.js +0 -136
- package/dist/ui/overlays/kit-settings-state.d.ts +0 -129
- package/dist/ui/overlays/kit-settings-state.js +0 -268
- package/dist/ui/overlays/model-probe-view.d.ts +0 -128
- package/dist/ui/overlays/model-probe-view.js +0 -225
- package/dist/ui/overlays/model-profile-state.d.ts +0 -177
- package/dist/ui/overlays/model-profile-state.js +0 -301
- package/dist/ui/overlays/prompt-library-state.d.ts +0 -162
- package/dist/ui/overlays/prompt-library-state.js +0 -335
- package/dist/ui/overlays/prompt-picker-state.d.ts +0 -71
- package/dist/ui/overlays/prompt-picker-state.js +0 -98
- package/dist/ui/overlays/team-fanout-state.d.ts +0 -106
- package/dist/ui/overlays/team-fanout-state.js +0 -155
- package/dist/ui/overlays/use-model-probe.d.ts +0 -30
- package/dist/ui/overlays/use-model-probe.js +0 -109
- package/dist/ui/palettes.d.ts +0 -112
- package/dist/ui/palettes.js +0 -130
- package/dist/ui/paste-frames.d.ts +0 -91
- package/dist/ui/paste-frames.js +0 -117
- package/dist/ui/paste-tokens.d.ts +0 -90
- package/dist/ui/paste-tokens.js +0 -147
- package/dist/ui/render-cache.d.ts +0 -81
- package/dist/ui/render-cache.js +0 -196
- package/dist/ui/render-governor.d.ts +0 -54
- package/dist/ui/render-governor.js +0 -78
- package/dist/ui/run-metrics.d.ts +0 -23
- package/dist/ui/run-metrics.js +0 -27
- package/dist/ui/run-status-row.d.ts +0 -61
- package/dist/ui/run-status-row.js +0 -54
- package/dist/ui/screen.d.ts +0 -107
- package/dist/ui/screen.js +0 -234
- package/dist/ui/scrollback/LiveTail.d.ts +0 -115
- package/dist/ui/scrollback/LiveTail.js +0 -48
- package/dist/ui/scrollback/band.d.ts +0 -114
- package/dist/ui/scrollback/band.js +0 -143
- package/dist/ui/scrollback/budget.d.ts +0 -90
- package/dist/ui/scrollback/budget.js +0 -100
- package/dist/ui/scrollback/canvas.d.ts +0 -100
- package/dist/ui/scrollback/canvas.js +0 -114
- package/dist/ui/scrollback/cursor-probe.d.ts +0 -71
- package/dist/ui/scrollback/cursor-probe.js +0 -133
- package/dist/ui/scrollback/drain.d.ts +0 -32
- package/dist/ui/scrollback/drain.js +0 -64
- package/dist/ui/scrollback/exit-summary.d.ts +0 -23
- package/dist/ui/scrollback/exit-summary.js +0 -25
- package/dist/ui/scrollback/limits.d.ts +0 -98
- package/dist/ui/scrollback/limits.js +0 -98
- package/dist/ui/scrollback/live-preview.d.ts +0 -34
- package/dist/ui/scrollback/live-preview.js +0 -118
- package/dist/ui/scrollback/overflow-print.d.ts +0 -108
- package/dist/ui/scrollback/overflow-print.js +0 -120
- package/dist/ui/scrollback/renderer.d.ts +0 -48
- package/dist/ui/scrollback/renderer.js +0 -186
- package/dist/ui/scrollback/scrollback-writer.d.ts +0 -174
- package/dist/ui/scrollback/scrollback-writer.js +0 -648
- package/dist/ui/scrollback/settled-boundary.d.ts +0 -42
- package/dist/ui/scrollback/settled-boundary.js +0 -109
- package/dist/ui/scrollback/tail-anchor.d.ts +0 -71
- package/dist/ui/scrollback/tail-anchor.js +0 -79
- package/dist/ui/scrollback/tail-window.d.ts +0 -73
- package/dist/ui/scrollback/tail-window.js +0 -89
- package/dist/ui/scrollback/use-scrollback-view.d.ts +0 -139
- package/dist/ui/scrollback/use-scrollback-view.js +0 -601
- package/dist/ui/scrollback/writer-shapes.d.ts +0 -127
- package/dist/ui/scrollback/writer-shapes.js +0 -159
- package/dist/ui/scrollbar-controller.d.ts +0 -30
- package/dist/ui/scrollbar-controller.js +0 -124
- package/dist/ui/selection/highlight.d.ts +0 -39
- package/dist/ui/selection/highlight.js +0 -64
- package/dist/ui/selection/screen-mirror.d.ts +0 -24
- package/dist/ui/selection/screen-mirror.js +0 -35
- package/dist/ui/selection/selection-controller.d.ts +0 -104
- package/dist/ui/selection/selection-controller.js +0 -372
- package/dist/ui/selection/selection.d.ts +0 -90
- package/dist/ui/selection/selection.js +0 -223
- package/dist/ui/shortcuts.d.ts +0 -81
- package/dist/ui/shortcuts.js +0 -221
- package/dist/ui/status-feedback.d.ts +0 -35
- package/dist/ui/status-feedback.js +0 -38
- package/dist/ui/stdout-frame-writer.d.ts +0 -74
- package/dist/ui/stdout-frame-writer.js +0 -155
- package/dist/ui/team-status.d.ts +0 -166
- package/dist/ui/team-status.js +0 -252
- package/dist/ui/terminal-plan.d.ts +0 -52
- package/dist/ui/terminal-plan.js +0 -49
- package/dist/ui/theme.d.ts +0 -96
- package/dist/ui/theme.js +0 -130
- package/dist/ui/transcript-text.d.ts +0 -41
- package/dist/ui/transcript-text.js +0 -282
- package/dist/ui/use-height-store.d.ts +0 -31
- package/dist/ui/use-height-store.js +0 -76
- package/dist/ui/use-render-governor.d.ts +0 -39
- package/dist/ui/use-render-governor.js +0 -57
- package/dist/ui/use-wheel-routing.d.ts +0 -57
- package/dist/ui/use-wheel-routing.js +0 -152
- package/dist/ui/win-vt-force.d.ts +0 -136
- package/dist/ui/win-vt-force.js +0 -237
- package/dist/ui/win-vt-input.d.ts +0 -57
- package/dist/ui/win-vt-input.js +0 -62
- package/dist/update/limits.d.ts +0 -111
- package/dist/update/limits.js +0 -111
- package/dist/update/semver.d.ts +0 -89
- package/dist/update/semver.js +0 -295
- package/dist/update/types.d.ts +0 -169
- package/dist/update/types.js +0 -68
- /package/dist/{ui → app}/session-bridge.d.ts +0 -0
- /package/dist/{ui → app}/session-bridge.js +0 -0
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Commit-cost timing for the render governor (tui-render-performance L4).
|
|
3
|
-
*
|
|
4
|
-
* `performance.now()` is taken at the TOP of the `App` render body (this hook
|
|
5
|
-
* must therefore be called early, before any other work) and again in a layout
|
|
6
|
-
* effect. Ink computes yoga layout in `onRender`, which React runs BEFORE layout
|
|
7
|
-
* effects, so that span covers React reconciliation AND the Ink layout pass —
|
|
8
|
-
* the same mechanism `ScrollViewport.tsx:87-88` and `AppShell.tsx:100-102`
|
|
9
|
-
* already document and rely on.
|
|
10
|
-
*
|
|
11
|
-
* ONLY THE RUNG IS REACT STATE. The measured cost and the resolved interval live
|
|
12
|
-
* in refs: putting a millisecond count in state would re-render the whole tree
|
|
13
|
-
* on every frame to record how expensive rendering the whole tree was.
|
|
14
|
-
*/
|
|
15
|
-
export interface RenderGovernorOptions {
|
|
16
|
-
/** `false` pins rung 0 forever (`--no-render-governor`, `ARAGON_RENDER_GOVERNOR=0`). */
|
|
17
|
-
enabled: boolean;
|
|
18
|
-
/** Ceiling of the ladder; `33` flattens it. */
|
|
19
|
-
maxIntervalMs: number;
|
|
20
|
-
}
|
|
21
|
-
export interface RenderGovernorHandle {
|
|
22
|
-
/**
|
|
23
|
-
* The coalescing interval to arm the next flush timer with.
|
|
24
|
-
*
|
|
25
|
-
* A REF, read at `setTimeout` time. The coalescer's callbacks are `useCallback`d
|
|
26
|
-
* with stable deps and must stay that way (the controller subscription effect
|
|
27
|
-
* never re-runs), so a plain value would be pinned to the mount render.
|
|
28
|
-
*/
|
|
29
|
-
intervalMs: {
|
|
30
|
-
current: number;
|
|
31
|
-
};
|
|
32
|
-
/** Rendered as the `eco` chip when > 0 (I-L4-2). */
|
|
33
|
-
rung: number;
|
|
34
|
-
/** Most recent commit cost in ms, for `/perf`. Not state. */
|
|
35
|
-
lastCommitMs: () => number;
|
|
36
|
-
/** `/perf reset` — back to rung 0. */
|
|
37
|
-
reset: () => void;
|
|
38
|
-
}
|
|
39
|
-
export declare function useRenderGovernor(opts: RenderGovernorOptions): RenderGovernorHandle;
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Commit-cost timing for the render governor (tui-render-performance L4).
|
|
3
|
-
*
|
|
4
|
-
* `performance.now()` is taken at the TOP of the `App` render body (this hook
|
|
5
|
-
* must therefore be called early, before any other work) and again in a layout
|
|
6
|
-
* effect. Ink computes yoga layout in `onRender`, which React runs BEFORE layout
|
|
7
|
-
* effects, so that span covers React reconciliation AND the Ink layout pass —
|
|
8
|
-
* the same mechanism `ScrollViewport.tsx:87-88` and `AppShell.tsx:100-102`
|
|
9
|
-
* already document and rely on.
|
|
10
|
-
*
|
|
11
|
-
* ONLY THE RUNG IS REACT STATE. The measured cost and the resolved interval live
|
|
12
|
-
* in refs: putting a millisecond count in state would re-render the whole tree
|
|
13
|
-
* on every frame to record how expensive rendering the whole tree was.
|
|
14
|
-
*/
|
|
15
|
-
import { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';
|
|
16
|
-
import { performance } from 'node:perf_hooks';
|
|
17
|
-
import { GOVERNOR_LADDER, initialGovernor, intervalOf, stepGovernor, } from './render-governor.js';
|
|
18
|
-
export function useRenderGovernor(opts) {
|
|
19
|
-
const { enabled, maxIntervalMs } = opts;
|
|
20
|
-
const stateRef = useRef(initialGovernor());
|
|
21
|
-
const intervalMs = useRef(GOVERNOR_LADDER[0]);
|
|
22
|
-
const lastCommit = useRef(0);
|
|
23
|
-
const startedAt = useRef(0);
|
|
24
|
-
const mounted = useRef(true);
|
|
25
|
-
const [rung, setRung] = useState(0);
|
|
26
|
-
// Stamped during render, which is the whole point of calling this hook first.
|
|
27
|
-
startedAt.current = performance.now();
|
|
28
|
-
useEffect(() => () => {
|
|
29
|
-
mounted.current = false;
|
|
30
|
-
}, []);
|
|
31
|
-
useLayoutEffect(() => {
|
|
32
|
-
const cost = performance.now() - startedAt.current;
|
|
33
|
-
lastCommit.current = cost;
|
|
34
|
-
if (!enabled) {
|
|
35
|
-
stateRef.current = initialGovernor();
|
|
36
|
-
intervalMs.current = Math.min(maxIntervalMs, GOVERNOR_LADDER[0]);
|
|
37
|
-
if (rung !== 0)
|
|
38
|
-
setRung(0);
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
const next = stepGovernor(stateRef.current, cost, maxIntervalMs);
|
|
42
|
-
stateRef.current = next;
|
|
43
|
-
intervalMs.current = intervalOf(next, maxIntervalMs);
|
|
44
|
-
// React bails out when the value is unchanged, so this is a no-op on every
|
|
45
|
-
// frame that did not move the ladder — which is almost all of them.
|
|
46
|
-
if (mounted.current && next.rung !== rung)
|
|
47
|
-
setRung(next.rung);
|
|
48
|
-
});
|
|
49
|
-
const reset = useCallback(() => {
|
|
50
|
-
stateRef.current = initialGovernor();
|
|
51
|
-
intervalMs.current = Math.min(maxIntervalMs, GOVERNOR_LADDER[0]);
|
|
52
|
-
if (mounted.current)
|
|
53
|
-
setRung(0);
|
|
54
|
-
}, [maxIntervalMs]);
|
|
55
|
-
const lastCommitMs = useCallback(() => lastCommit.current, []);
|
|
56
|
-
return { intervalMs, rung, lastCommitMs, reset };
|
|
57
|
-
}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Wheel routing (wheel-scrolls-transcript-only §4.1).
|
|
3
|
-
*
|
|
4
|
-
* Subscribes to the mouse source and dispatches every notch to THE ONE
|
|
5
|
-
* SCROLLABLE REGION ON SCREEN — the transcript, or the controlled overlay
|
|
6
|
-
* covering it. Lives outside `App.tsx` because the routing table is the most
|
|
7
|
-
* testable part of this feature and a table wants to be readable on its own,
|
|
8
|
-
* away from a large component (D-13).
|
|
9
|
-
*
|
|
10
|
-
* THE POINTER ROW IS NOT CONSULTED, and that is the requirement rather than a
|
|
11
|
-
* simplification (§1). A wheel notch is a VIEWPORT gesture: the pointer in a
|
|
12
|
-
* TUI rests wherever the user last left it — in a chat-shaped app, next to the
|
|
13
|
-
* thing they type into — so routing by row meant the ordinary "scroll back to
|
|
14
|
-
* see what the agent just did" gesture landed on the composer and replaced the
|
|
15
|
-
* draft with an old prompt. Prompt history belongs to `↑` / `↓` alone (G1 / G3),
|
|
16
|
-
* which is the contract Claude Code, Codex and every full-screen terminal app
|
|
17
|
-
* the user brings muscle memory from already follow.
|
|
18
|
-
*
|
|
19
|
-
* Every notch is coalesced into one intent carrying `repeat`, no matter how fast
|
|
20
|
-
* the wheel spins: one gesture, one `setState`, one render.
|
|
21
|
-
*/
|
|
22
|
-
import type { Overlay } from '../agent/reducer.js';
|
|
23
|
-
import type { MouseSource } from '../input/stdin-filter.js';
|
|
24
|
-
import type { ScrollIntent } from './layout/scroll.js';
|
|
25
|
-
export interface WheelRoutingOptions {
|
|
26
|
-
isPointerCaptured?: () => boolean;
|
|
27
|
-
isActive?: () => boolean;
|
|
28
|
-
/** Absent when mouse support is off, or on a non-TTY. */
|
|
29
|
-
mouseSource?: MouseSource;
|
|
30
|
-
/** Read at EVENT time for the routing branch, and again at FLUSH time (P1-3). */
|
|
31
|
-
getOverlay: () => Overlay | null;
|
|
32
|
-
onScroll: (kind: ScrollIntent, repeat: number) => void;
|
|
33
|
-
/** Signed row delta; the caller clamps at 0 the way the keyboard branch does. */
|
|
34
|
-
onOverlayScroll: (delta: number) => void;
|
|
35
|
-
/**
|
|
36
|
-
* Rows one Shift+wheel notch turns inside a controlled overlay (defect 11).
|
|
37
|
-
*
|
|
38
|
-
* A GETTER, read at event time for the same reason `getOverlay` is: the window
|
|
39
|
-
* height changes with the terminal, with `statusExpanded` and with the rail, and
|
|
40
|
-
* a value captured when the subscription was built is the value that goes stale.
|
|
41
|
-
* `App` answers with `overlayPageSize(...)`, the same function its keyboard
|
|
42
|
-
* branch uses, so the wheel and `PgDn` can never disagree.
|
|
43
|
-
*/
|
|
44
|
-
getOverlayPage?: () => number;
|
|
45
|
-
}
|
|
46
|
-
export interface WheelRouting {
|
|
47
|
-
/**
|
|
48
|
-
* Drop any accumulated-but-unflushed transcript scroll.
|
|
49
|
-
*
|
|
50
|
-
* Called by `App` from its existing `state.overlay` effect rather than from a
|
|
51
|
-
* second subscriber to the same transition. This is guard #2 of the pair that
|
|
52
|
-
* has to ship together (§14 condition 3); guard #1 is the overlay re-check
|
|
53
|
-
* inside the flush, and guard #3 is `ScrollViewport`'s I-9 mount-skip.
|
|
54
|
-
*/
|
|
55
|
-
clearCoalescer: () => void;
|
|
56
|
-
}
|
|
57
|
-
export declare function useWheelRouting(options: WheelRoutingOptions): WheelRouting;
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Wheel routing (wheel-scrolls-transcript-only §4.1).
|
|
3
|
-
*
|
|
4
|
-
* Subscribes to the mouse source and dispatches every notch to THE ONE
|
|
5
|
-
* SCROLLABLE REGION ON SCREEN — the transcript, or the controlled overlay
|
|
6
|
-
* covering it. Lives outside `App.tsx` because the routing table is the most
|
|
7
|
-
* testable part of this feature and a table wants to be readable on its own,
|
|
8
|
-
* away from a large component (D-13).
|
|
9
|
-
*
|
|
10
|
-
* THE POINTER ROW IS NOT CONSULTED, and that is the requirement rather than a
|
|
11
|
-
* simplification (§1). A wheel notch is a VIEWPORT gesture: the pointer in a
|
|
12
|
-
* TUI rests wherever the user last left it — in a chat-shaped app, next to the
|
|
13
|
-
* thing they type into — so routing by row meant the ordinary "scroll back to
|
|
14
|
-
* see what the agent just did" gesture landed on the composer and replaced the
|
|
15
|
-
* draft with an old prompt. Prompt history belongs to `↑` / `↓` alone (G1 / G3),
|
|
16
|
-
* which is the contract Claude Code, Codex and every full-screen terminal app
|
|
17
|
-
* the user brings muscle memory from already follow.
|
|
18
|
-
*
|
|
19
|
-
* Every notch is coalesced into one intent carrying `repeat`, no matter how fast
|
|
20
|
-
* the wheel spins: one gesture, one `setState`, one render.
|
|
21
|
-
*/
|
|
22
|
-
import { useCallback, useEffect, useRef } from 'react';
|
|
23
|
-
/**
|
|
24
|
-
* Page rows used ONLY when the host supplies no `getOverlayPage`.
|
|
25
|
-
*
|
|
26
|
-
* `App` always supplies one (defect 11): the step is the overlay's visible window
|
|
27
|
-
* minus two rows of context, so `PgDn` in `/help` turns a page instead of 42% of
|
|
28
|
-
* one. This fallback exists so a host that owns no overlay window - this module's
|
|
29
|
-
* own routing tests are the only such host - still gets a page rather than
|
|
30
|
-
* silently degrading a Shift+wheel to a three-row notch.
|
|
31
|
-
*/
|
|
32
|
-
const FALLBACK_OVERLAY_PAGE = 8;
|
|
33
|
-
/** Transcript rows per notch. The terminal's own convention. */
|
|
34
|
-
const CONTENT_LINES_PER_NOTCH = 3;
|
|
35
|
-
/** Overlay rows per notch. Overlay content is short; a page needs Shift. */
|
|
36
|
-
const OVERLAY_LINES_PER_NOTCH = 3;
|
|
37
|
-
/**
|
|
38
|
-
* Coalescing window for transcript scrolling — one `setState`, one render, no
|
|
39
|
-
* matter how fast the wheel spins (R-10). Deliberately tighter than the 33 ms
|
|
40
|
-
* streaming coalescer: this one is in the direct path of a hand gesture.
|
|
41
|
-
*/
|
|
42
|
-
const WHEEL_COALESCE_MS = 16;
|
|
43
|
-
export function useWheelRouting(options) {
|
|
44
|
-
// Every mutable input reaches the subscription through this ref, so the
|
|
45
|
-
// effect below subscribes exactly once per `mouseSource` instead of tearing
|
|
46
|
-
// the listener down and rebuilding it on every parent render.
|
|
47
|
-
const optionsRef = useRef(options);
|
|
48
|
-
optionsRef.current = options;
|
|
49
|
-
const accumulator = useRef(null);
|
|
50
|
-
const timer = useRef(null);
|
|
51
|
-
const clearCoalescer = useCallback(() => {
|
|
52
|
-
if (timer.current) {
|
|
53
|
-
clearTimeout(timer.current);
|
|
54
|
-
timer.current = null;
|
|
55
|
-
}
|
|
56
|
-
accumulator.current = null;
|
|
57
|
-
}, []);
|
|
58
|
-
const flush = useCallback(() => {
|
|
59
|
-
if (timer.current) {
|
|
60
|
-
clearTimeout(timer.current);
|
|
61
|
-
timer.current = null;
|
|
62
|
-
}
|
|
63
|
-
const pending = accumulator.current;
|
|
64
|
-
accumulator.current = null;
|
|
65
|
-
if (!pending)
|
|
66
|
-
return;
|
|
67
|
-
if (optionsRef.current.isPointerCaptured?.() || optionsRef.current.isActive?.() === false)
|
|
68
|
-
return;
|
|
69
|
-
// P1-3: THE DECISION BELONGS AT FLUSH TIME, not at event time, because the
|
|
70
|
-
// event-time decision is the one that goes stale. `App` swaps
|
|
71
|
-
// `ScrollViewport` out for an overlay, and 16 ms is more than wide enough
|
|
72
|
-
// for an agent-raised `confirm` or an `ask_user` to land inside the window
|
|
73
|
-
// — the intent would then be applied on a component that is not there, and
|
|
74
|
-
// the transcript would jump by itself when the overlay closed.
|
|
75
|
-
if (optionsRef.current.getOverlay())
|
|
76
|
-
return;
|
|
77
|
-
optionsRef.current.onScroll(pending.kind, pending.repeat);
|
|
78
|
-
}, []);
|
|
79
|
-
const accumulate = useCallback((kind, repeat) => {
|
|
80
|
-
// A fast up-then-down must never cancel itself into a no-op, so a change
|
|
81
|
-
// of direction (or of granularity) flushes what is already held.
|
|
82
|
-
if (accumulator.current && accumulator.current.kind !== kind)
|
|
83
|
-
flush();
|
|
84
|
-
const held = accumulator.current;
|
|
85
|
-
accumulator.current = { kind, repeat: (held?.repeat ?? 0) + repeat };
|
|
86
|
-
if (!timer.current) {
|
|
87
|
-
timer.current = setTimeout(flush, WHEEL_COALESCE_MS);
|
|
88
|
-
timer.current.unref?.();
|
|
89
|
-
}
|
|
90
|
-
}, [flush]);
|
|
91
|
-
const route = useCallback((event) => {
|
|
92
|
-
// The channel now carries press / drag / release as well
|
|
93
|
-
// (tui-selection-and-scroll-follow §4.4.2). ONE LINE, AT THE TOP, and the
|
|
94
|
-
// rest of this module is untouched: widening the single channel rather
|
|
95
|
-
// than adding a second is what keeps arrival order intact between a wheel
|
|
96
|
-
// notch and a button, and each subscriber ignoring what it does not own is
|
|
97
|
-
// the price of that.
|
|
98
|
-
if (event.kind !== 'wheel')
|
|
99
|
-
return;
|
|
100
|
-
const current = optionsRef.current;
|
|
101
|
-
if (current.isPointerCaptured?.() || current.isActive?.() === false) {
|
|
102
|
-
clearCoalescer();
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
const overlay = current.getOverlay();
|
|
106
|
-
// THE OVERLAY BRANCH IS EVALUATED FIRST AND RETURNS FOR EVERY OVERLAY IT
|
|
107
|
-
// RECOGNIZES — the same two ordering rules the keyboard handler follows,
|
|
108
|
-
// and for the same reason (R-P1-7).
|
|
109
|
-
if (overlay) {
|
|
110
|
-
// Modes A only. `model` / `confirm` / `question` own their own keys and
|
|
111
|
-
// scrolling them would leave an inconsistent cursor (R-11).
|
|
112
|
-
const controlled = overlay === 'help' || overlay === 'settings' || overlay === 'plan'
|
|
113
|
-
|| overlay === 'queue' || overlay === 'kit'
|
|
114
|
-
// The prompt surfaces (quick-prompt-library appendix B-2). Missing this line
|
|
115
|
-
// makes the wheel fall through to the transcript BEHIND an open overlay,
|
|
116
|
-
// which reads as a frozen list and a jumping transcript at the same time.
|
|
117
|
-
|| overlay === 'prompts' || overlay === 'prompt-pick'
|
|
118
|
-
// The Agents board (tui-subagent-panel §6.5). Missing this line makes the
|
|
119
|
-
// wheel fall through to the transcript BEHIND the open board, which reads
|
|
120
|
-
// as a frozen list and a jumping transcript at the same time.
|
|
121
|
-
|| overlay === 'agents'
|
|
122
|
-
// The governance board pages through `overlayScroll` too (governance-mode 10.5).
|
|
123
|
-
|| overlay === 'governance';
|
|
124
|
-
if (!controlled)
|
|
125
|
-
return;
|
|
126
|
-
// D-3: the row is not consulted here either. Behind an overlay the
|
|
127
|
-
// composer is inactive and the overlay is the only scrollable thing on
|
|
128
|
-
// screen, so a notch anywhere scrolls it.
|
|
129
|
-
const step = event.shift
|
|
130
|
-
? current.getOverlayPage?.() ?? FALLBACK_OVERLAY_PAGE
|
|
131
|
-
: OVERLAY_LINES_PER_NOTCH;
|
|
132
|
-
current.onOverlayScroll(event.dir === 'up' ? -step : step);
|
|
133
|
-
return;
|
|
134
|
-
}
|
|
135
|
-
if (event.shift) {
|
|
136
|
-
accumulate(event.dir === 'up' ? 'pageUp' : 'pageDown', 1);
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
accumulate(event.dir === 'up' ? 'lineUp' : 'lineDown', CONTENT_LINES_PER_NOTCH);
|
|
140
|
-
}, [accumulate]);
|
|
141
|
-
const { mouseSource } = options;
|
|
142
|
-
useEffect(() => {
|
|
143
|
-
if (!mouseSource)
|
|
144
|
-
return undefined;
|
|
145
|
-
const unsubscribe = mouseSource.subscribe(route);
|
|
146
|
-
return () => {
|
|
147
|
-
unsubscribe();
|
|
148
|
-
clearCoalescer();
|
|
149
|
-
};
|
|
150
|
-
}, [mouseSource, route, clearCoalescer]);
|
|
151
|
-
return { clearCoalescer };
|
|
152
|
-
}
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Turn `ENABLE_VIRTUAL_TERMINAL_INPUT` on for THIS console, from outside Node
|
|
3
|
-
* (shift-tab-mode-toggle-still-dead-on-windows, C1-M1).
|
|
4
|
-
*
|
|
5
|
-
* ASCII ONLY - this tree is inside the glyph scanner's scope.
|
|
6
|
-
*
|
|
7
|
-
* `win-vt-input.ts` answers "will this console ever deliver `CSI Z`?". This
|
|
8
|
-
* module answers "can we MAKE it deliver one?", and the measured answer is yes.
|
|
9
|
-
* The bit is a property of the console input buffer, not of Node, so any process
|
|
10
|
-
* attached to the same console can set it - and libuv's pre-22.17 translator
|
|
11
|
-
* forwards whatever characters the console generates, `ESC` `[` `Z` included.
|
|
12
|
-
* On Node 20.19.0, in one run, one injected `Shift+Tab` went from `09` to
|
|
13
|
-
* `1b 5b 5a` the instant an outside process OR-ed `0x0200` in (analysis section
|
|
14
|
-
* 3.2; raw probe data under `docs/diagnoses/.../repro/`).
|
|
15
|
-
*
|
|
16
|
-
* Node ships no FFI, so the outside process is `powershell.exe` calling
|
|
17
|
-
* `SetConsoleMode` through P/Invoke. Measured cost end to end: 722 ms, roughly
|
|
18
|
-
* 280 ms of process start plus 300 ms of `Add-Type` compiling C# at run time
|
|
19
|
-
* (analysis section 3.4). That is the whole price of not adding a native
|
|
20
|
-
* dependency, and it is paid ONCE, only on an affected Windows console.
|
|
21
|
-
*
|
|
22
|
-
* THREE TRAPS ARE ENCODED HERE, all of them measured rather than imagined:
|
|
23
|
-
*
|
|
24
|
-
* 1. `windowsHide: true` maps to `CREATE_NO_WINDOW`, which hands the child its
|
|
25
|
-
* OWN console. The helper then reads, sets and reports success against a
|
|
26
|
-
* console nobody is typing into: exit code 0, `SetConsoleMode` true, log
|
|
27
|
-
* clean, and no effect whatsoever - indistinguishable from "the fix was
|
|
28
|
-
* never written" (analysis section 3.5). Hence `windowsHide: false`.
|
|
29
|
-
* 2. The helper must open `CONIN$` with `CreateFileW`, never
|
|
30
|
-
* `GetStdHandle(STD_INPUT_HANDLE)`: it is spawned with stdin `ignore`, so
|
|
31
|
-
* its standard input is `NUL`. Sharing the real stdin instead is not an
|
|
32
|
-
* option - that handle is being reconfigured underneath it.
|
|
33
|
-
* 3. The `before` mode is the ONLY signal that distinguishes trap 1 from
|
|
34
|
-
* success, so the helper reports it and `decideVtForceOutcome` checks it.
|
|
35
|
-
* The check is a POSITIVE bitmask ("is this console already in raw mode"),
|
|
36
|
-
* not `before !== 0x01F7`: that number is one machine's default and varies
|
|
37
|
-
* with QuickEdit, with the host, and with a user who already turned VT input
|
|
38
|
-
* on. A magic-number comparison passes silently on the first machine whose
|
|
39
|
-
* default happens to differ, which puts trap 1 straight back (review R-3).
|
|
40
|
-
*
|
|
41
|
-
* WHAT UNDOES IT: `setRawMode(false)`. libuv rewrites the whole console mode on
|
|
42
|
-
* every raw-mode transition and its pre-22.17 path does not know about this bit,
|
|
43
|
-
* so one transition clears it (analysis section 3.3). That is why the caller
|
|
44
|
-
* must raise raw mode BEFORE calling this, and it is also the entire restore
|
|
45
|
-
* path - the bit outlives the process otherwise, and neither Windows nor the
|
|
46
|
-
* console clears it (analysis section 3.5b).
|
|
47
|
-
*
|
|
48
|
-
* FAILURE IS ALWAYS GRACEFUL. Constrained Language Mode disables `Add-Type`
|
|
49
|
-
* outright, and enterprise fleets ship it by policy - exactly the "another PC"
|
|
50
|
-
* population this bug is about. Every failure returns `ok: false` with a reason
|
|
51
|
-
* for the log and nothing else happens; the alternate mode-toggle key
|
|
52
|
-
* (`MODE_TOGGLE_KEYS.fallback`) is the rung below that needs none of this.
|
|
53
|
-
*/
|
|
54
|
-
/** Console input mode bits (`consoleapi.h`). */
|
|
55
|
-
export declare const ENABLE_PROCESSED_INPUT = 1;
|
|
56
|
-
export declare const ENABLE_LINE_INPUT = 2;
|
|
57
|
-
export declare const ENABLE_ECHO_INPUT = 4;
|
|
58
|
-
export declare const ENABLE_WINDOW_INPUT = 8;
|
|
59
|
-
export declare const ENABLE_VIRTUAL_TERMINAL_INPUT = 512;
|
|
60
|
-
/**
|
|
61
|
-
* The three bits a cooked console has and a raw one does not.
|
|
62
|
-
*
|
|
63
|
-
* This is the fingerprint of "libuv has already put this console in raw mode",
|
|
64
|
-
* and it is what tells the two measured samples apart: `0x0008` (the CLI's own
|
|
65
|
-
* console, raw) versus `0x01F7` (a fresh `CREATE_NO_WINDOW` console, cooked).
|
|
66
|
-
*/
|
|
67
|
-
export declare const COOKED_INPUT_BITS: number;
|
|
68
|
-
export declare function isRawConsoleMode(mode: number): boolean;
|
|
69
|
-
export type VtForceFailure = 'not_windows' | 'spawn_failed' | 'helper_failed' | 'no_before' | 'wrong_console' | 'bit_not_set';
|
|
70
|
-
export interface VtForceResult {
|
|
71
|
-
ok: boolean;
|
|
72
|
-
/** Absent on success; a stable machine token on failure, for the log. */
|
|
73
|
-
reason?: VtForceFailure;
|
|
74
|
-
before?: number;
|
|
75
|
-
after?: number;
|
|
76
|
-
/** Free-form context for the log line. Never shown to the user. */
|
|
77
|
-
detail?: string;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* The PowerShell side, as a string.
|
|
81
|
-
*
|
|
82
|
-
* A LITERAL HERE-STRING (`@'` ... `'@`) around the C# so PowerShell expands
|
|
83
|
-
* nothing inside it, and `'CONIN$'` in single quotes for the same reason - the
|
|
84
|
-
* `$` is part of the device name, not a variable.
|
|
85
|
-
*
|
|
86
|
-
* Shipped inline rather than as a `.ps1` next to the build output, and that is a
|
|
87
|
-
* capability difference rather than tidiness: ExecutionPolicy blocks script
|
|
88
|
-
* FILES and does not apply to `-EncodedCommand`, so a locked-down machine - the
|
|
89
|
-
* population this bug keeps landing on - can still run it. It also removes the
|
|
90
|
-
* "where did my file go after packaging" class of failure entirely.
|
|
91
|
-
*/
|
|
92
|
-
export declare function buildHelperScript(): string;
|
|
93
|
-
/** `-EncodedCommand` takes base64 of UTF-16LE, which needs no shell quoting. */
|
|
94
|
-
export declare function encodePowerShellCommand(script: string): string;
|
|
95
|
-
/**
|
|
96
|
-
* Prefer the absolute path so a sanitized or hijacked `PATH` cannot decide what
|
|
97
|
-
* runs; fall back to the bare name, which is still better than not trying.
|
|
98
|
-
*/
|
|
99
|
-
export declare function resolvePowerShellExe(env?: NodeJS.ProcessEnv): string;
|
|
100
|
-
/** Pull `before=` / `after=` back out of the helper's stdout. */
|
|
101
|
-
export declare function parseConsoleModes(stdout: string): {
|
|
102
|
-
before?: number;
|
|
103
|
-
after?: number;
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* PURE, and the reason this feature is testable without a Windows box: every
|
|
107
|
-
* interesting outcome - including the `0x01F7` wrong-console trap that returns
|
|
108
|
-
* exit code 0 - is decided here from two strings and a number.
|
|
109
|
-
*/
|
|
110
|
-
export declare function decideVtForceOutcome(run: {
|
|
111
|
-
status: number | null;
|
|
112
|
-
stdout: string;
|
|
113
|
-
stderr?: string;
|
|
114
|
-
}): VtForceResult;
|
|
115
|
-
export interface VtForceOptions {
|
|
116
|
-
platform?: string;
|
|
117
|
-
timeoutMs?: number;
|
|
118
|
-
/** Injected by the tests; defaults to a real `spawnSync`. */
|
|
119
|
-
run?: (exe: string, args: string[]) => {
|
|
120
|
-
status: number | null;
|
|
121
|
-
stdout: string;
|
|
122
|
-
stderr: string;
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Set the bit on the console this process is attached to.
|
|
127
|
-
*
|
|
128
|
-
* SYNCHRONOUS on purpose. The caller has to know the answer before it decides
|
|
129
|
-
* whether the mouse can report and whether to warn the user, and at the one
|
|
130
|
-
* moment this runs - after raw mode is up, before Ink renders - there is nothing
|
|
131
|
-
* else for the event loop to do. An async version would buy nothing and would
|
|
132
|
-
* spread the ordering across two files.
|
|
133
|
-
*
|
|
134
|
-
* NEVER THROWS.
|
|
135
|
-
*/
|
|
136
|
-
export declare function forceWindowsVtInput(opts?: VtForceOptions): VtForceResult;
|