@pentoshi/clai 3.6.0 → 3.7.3
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/dist/agent/compaction-summary.d.ts +17 -0
- package/dist/agent/compaction-summary.js +64 -0
- package/dist/agent/compaction-summary.js.map +1 -0
- package/dist/agent/confirm-port.d.ts +3 -1
- package/dist/agent/confirm-port.js +5 -1
- package/dist/agent/confirm-port.js.map +1 -1
- package/dist/agent/context-manager.js +45 -22
- package/dist/agent/context-manager.js.map +1 -1
- package/dist/agent/events.d.ts +6 -0
- package/dist/agent/evidence-governor.d.ts +37 -0
- package/dist/agent/evidence-governor.js +70 -0
- package/dist/agent/evidence-governor.js.map +1 -0
- package/dist/agent/loop-guard.d.ts +29 -11
- package/dist/agent/loop-guard.js +93 -39
- package/dist/agent/loop-guard.js.map +1 -1
- package/dist/agent/must-continue.d.ts +56 -0
- package/dist/agent/must-continue.js +240 -0
- package/dist/agent/must-continue.js.map +1 -0
- package/dist/agent/outcomes.d.ts +101 -0
- package/dist/agent/outcomes.js +359 -0
- package/dist/agent/outcomes.js.map +1 -0
- package/dist/agent/plan-decision.d.ts +33 -0
- package/dist/agent/plan-decision.js +104 -0
- package/dist/agent/plan-decision.js.map +1 -0
- package/dist/agent/plan-tool.d.ts +12 -0
- package/dist/agent/plan-tool.js +312 -104
- package/dist/agent/plan-tool.js.map +1 -1
- package/dist/agent/project-root.js +3 -0
- package/dist/agent/project-root.js.map +1 -1
- package/dist/agent/prompt-composer.d.ts +21 -0
- package/dist/agent/prompt-composer.js +46 -0
- package/dist/agent/prompt-composer.js.map +1 -0
- package/dist/agent/runner.d.ts +11 -1
- package/dist/agent/runner.js +1226 -971
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/scope-context.d.ts +3 -0
- package/dist/agent/scope-context.js +24 -0
- package/dist/agent/scope-context.js.map +1 -0
- package/dist/agent/scratch-write.d.ts +4 -0
- package/dist/agent/scratch-write.js +54 -0
- package/dist/agent/scratch-write.js.map +1 -0
- package/dist/agent/session-policy.d.ts +7 -0
- package/dist/agent/session-policy.js +61 -0
- package/dist/agent/session-policy.js.map +1 -1
- package/dist/agent/session-state.d.ts +41 -0
- package/dist/agent/session-state.js +107 -0
- package/dist/agent/session-state.js.map +1 -0
- package/dist/agent/step-budget.d.ts +14 -0
- package/dist/agent/step-budget.js +26 -0
- package/dist/agent/step-budget.js.map +1 -0
- package/dist/agent/task-analyzer.d.ts +12 -3
- package/dist/agent/task-analyzer.js +263 -23
- package/dist/agent/task-analyzer.js.map +1 -1
- package/dist/agent/task-evidence.d.ts +111 -29
- package/dist/agent/task-evidence.js +519 -91
- package/dist/agent/task-evidence.js.map +1 -1
- package/dist/agent/task-plan.d.ts +57 -0
- package/dist/agent/task-plan.js +147 -1
- package/dist/agent/task-plan.js.map +1 -1
- package/dist/agent/tool-call-parser.d.ts +4 -12
- package/dist/agent/tool-call-parser.js +34 -67
- package/dist/agent/tool-call-parser.js.map +1 -1
- package/dist/agent/tool-history.d.ts +7 -0
- package/dist/agent/tool-history.js +50 -0
- package/dist/agent/tool-history.js.map +1 -1
- package/dist/agent/tool-output-formatting.d.ts +13 -1
- package/dist/agent/tool-output-formatting.js +75 -22
- package/dist/agent/tool-output-formatting.js.map +1 -1
- package/dist/agent/turn-outcome.d.ts +11 -0
- package/dist/agent/turn-outcome.js +17 -0
- package/dist/agent/turn-outcome.js.map +1 -0
- package/dist/agent/turn-state.d.ts +11 -0
- package/dist/agent/turn-state.js +28 -0
- package/dist/agent/turn-state.js.map +1 -0
- package/dist/agent/workspace-orient.d.ts +11 -0
- package/dist/agent/workspace-orient.js +103 -12
- package/dist/agent/workspace-orient.js.map +1 -1
- package/dist/app/adapters/agent-event-adapter.d.ts +2 -13
- package/dist/app/adapters/agent-event-adapter.js +63 -25
- package/dist/app/adapters/agent-event-adapter.js.map +1 -1
- package/dist/app/adapters/current-agent-adapter.d.ts +0 -5
- package/dist/app/adapters/current-agent-adapter.js +4 -7
- package/dist/app/adapters/current-agent-adapter.js.map +1 -1
- package/dist/app/adapters/current-jobs-adapter.js +1 -0
- package/dist/app/adapters/current-jobs-adapter.js.map +1 -1
- package/dist/app/adapters/current-terminal-adapter.d.ts +0 -7
- package/dist/app/adapters/current-terminal-adapter.js +0 -7
- package/dist/app/adapters/current-terminal-adapter.js.map +1 -1
- package/dist/app/adapters/current-updates-adapter.d.ts +0 -5
- package/dist/app/adapters/current-updates-adapter.js +0 -5
- package/dist/app/adapters/current-updates-adapter.js.map +1 -1
- package/dist/app/adapters/in-memory-clipboard-adapter.d.ts +0 -5
- package/dist/app/adapters/in-memory-clipboard-adapter.js +0 -5
- package/dist/app/adapters/in-memory-clipboard-adapter.js.map +1 -1
- package/dist/app/commands/command.d.ts +0 -5
- package/dist/app/commands/command.js.map +1 -1
- package/dist/app/commands/registry.d.ts +0 -14
- package/dist/app/commands/registry.js +0 -20
- package/dist/app/commands/registry.js.map +1 -1
- package/dist/app/controllers/disposable.d.ts +0 -5
- package/dist/app/controllers/disposable.js +0 -5
- package/dist/app/controllers/disposable.js.map +1 -1
- package/dist/app/controllers/job-controller.d.ts +1 -5
- package/dist/app/controllers/job-controller.js +0 -4
- package/dist/app/controllers/job-controller.js.map +1 -1
- package/dist/app/controllers/plan-controller.d.ts +5 -8
- package/dist/app/controllers/plan-controller.js +30 -12
- package/dist/app/controllers/plan-controller.js.map +1 -1
- package/dist/app/controllers/session-controller.d.ts +17 -32
- package/dist/app/controllers/session-controller.js +56 -35
- package/dist/app/controllers/session-controller.js.map +1 -1
- package/dist/app/controllers/turn-controller.d.ts +2 -6
- package/dist/app/controllers/turn-controller.js +8 -8
- package/dist/app/controllers/turn-controller.js.map +1 -1
- package/dist/app/events/app-event.d.ts +4 -7
- package/dist/app/events/app-event.js +0 -6
- package/dist/app/events/app-event.js.map +1 -1
- package/dist/app/events/event-buffer.d.ts +6 -17
- package/dist/app/events/event-buffer.js +27 -24
- package/dist/app/events/event-buffer.js.map +1 -1
- package/dist/app/events/sequencer.d.ts +0 -9
- package/dist/app/events/sequencer.js +0 -4
- package/dist/app/events/sequencer.js.map +1 -1
- package/dist/app/ports/agent-port.d.ts +13 -3
- package/dist/app/ports/clipboard-port.d.ts +0 -5
- package/dist/app/ports/confirm-port.d.ts +0 -7
- package/dist/app/ports/jobs-port.d.ts +2 -5
- package/dist/app/ports/persistence-port.d.ts +0 -4
- package/dist/app/ports/secret-port.d.ts +0 -5
- package/dist/app/ports/terminal-port.d.ts +0 -6
- package/dist/app/ports/updates-port.d.ts +0 -4
- package/dist/attachments/service.d.ts +29 -0
- package/dist/attachments/service.js +47 -0
- package/dist/attachments/service.js.map +1 -0
- package/dist/commands/providers.js +0 -3
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/search-providers.d.ts +0 -33
- package/dist/commands/search-providers.js +0 -33
- package/dist/commands/search-providers.js.map +1 -1
- package/dist/commands/update.js +1 -9
- package/dist/commands/update.js.map +1 -1
- package/dist/index.js +22 -42
- package/dist/index.js.map +1 -1
- package/dist/llm/adapters/ollama-tools.d.ts +0 -4
- package/dist/llm/adapters/ollama-tools.js +0 -4
- package/dist/llm/adapters/ollama-tools.js.map +1 -1
- package/dist/llm/capabilities.d.ts +10 -10
- package/dist/llm/capabilities.js +43 -17
- package/dist/llm/capabilities.js.map +1 -1
- package/dist/llm/groq.js +0 -6
- package/dist/llm/groq.js.map +1 -1
- package/dist/llm/http.d.ts +0 -17
- package/dist/llm/http.js +0 -45
- package/dist/llm/http.js.map +1 -1
- package/dist/llm/router.d.ts +0 -6
- package/dist/llm/router.js +0 -15
- package/dist/llm/router.js.map +1 -1
- package/dist/llm/tool-protocol.d.ts +0 -6
- package/dist/llm/tool-protocol.js +3 -7
- package/dist/llm/tool-protocol.js.map +1 -1
- package/dist/modes/agent.d.ts +2 -1
- package/dist/modes/agent.js +4 -2
- package/dist/modes/agent.js.map +1 -1
- package/dist/modes/ask.d.ts +0 -18
- package/dist/modes/ask.js +0 -49
- package/dist/modes/ask.js.map +1 -1
- package/dist/os/cwd.d.ts +0 -21
- package/dist/os/cwd.js +0 -24
- package/dist/os/cwd.js.map +1 -1
- package/dist/os/pkgmgr.js +0 -6
- package/dist/os/pkgmgr.js.map +1 -1
- package/dist/prompts/embedded.d.ts +1 -0
- package/dist/prompts/embedded.js +9 -0
- package/dist/prompts/embedded.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -18
- package/dist/prompts/index.js +104 -293
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/system.agent.md +228 -0
- package/dist/prompts/system.ask.md +56 -0
- package/dist/repl/prompt-line.js +0 -36
- package/dist/repl/prompt-line.js.map +1 -1
- package/dist/repl/slash-commands.d.ts +0 -9
- package/dist/repl/slash-commands.js +2 -23
- package/dist/repl/slash-commands.js.map +1 -1
- package/dist/repl.d.ts +5 -0
- package/dist/repl.js +169 -55
- package/dist/repl.js.map +1 -1
- package/dist/safety/classifier.js +17 -9
- package/dist/safety/classifier.js.map +1 -1
- package/dist/safety/engagement-policy.d.ts +46 -0
- package/dist/safety/engagement-policy.js +198 -0
- package/dist/safety/engagement-policy.js.map +1 -0
- package/dist/store/engagement.d.ts +115 -0
- package/dist/store/engagement.js +278 -0
- package/dist/store/engagement.js.map +1 -0
- package/dist/store/logs.d.ts +5 -0
- package/dist/store/logs.js +52 -2
- package/dist/store/logs.js.map +1 -1
- package/dist/store/plan.d.ts +57 -5
- package/dist/store/plan.js +182 -8
- package/dist/store/plan.js.map +1 -1
- package/dist/store/scope.d.ts +4 -1
- package/dist/store/scope.js +2 -2
- package/dist/store/scope.js.map +1 -1
- package/dist/tools/definitions.js +70 -1
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/elevated-shell.d.ts +60 -0
- package/dist/tools/elevated-shell.js +233 -0
- package/dist/tools/elevated-shell.js.map +1 -0
- package/dist/tools/file-diff.d.ts +125 -0
- package/dist/tools/file-diff.js +495 -0
- package/dist/tools/file-diff.js.map +1 -0
- package/dist/tools/fs.d.ts +11 -13
- package/dist/tools/fs.js +269 -78
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/http.d.ts +15 -0
- package/dist/tools/http.js +202 -61
- package/dist/tools/http.js.map +1 -1
- package/dist/tools/jobs.d.ts +71 -10
- package/dist/tools/jobs.js +403 -124
- package/dist/tools/jobs.js.map +1 -1
- package/dist/tools/nmap-runner.d.ts +11 -0
- package/dist/tools/nmap-runner.js +115 -74
- package/dist/tools/nmap-runner.js.map +1 -1
- package/dist/tools/pentest-workflows.d.ts +8 -0
- package/dist/tools/pentest-workflows.js +71 -0
- package/dist/tools/pentest-workflows.js.map +1 -0
- package/dist/tools/registry.d.ts +9 -0
- package/dist/tools/registry.js +244 -57
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/shell.d.ts +3 -0
- package/dist/tools/shell.js +35 -13
- package/dist/tools/shell.js.map +1 -1
- package/dist/tools/tool-types.d.ts +11 -0
- package/dist/tools/web/fetch-core.d.ts +7 -0
- package/dist/tools/web/fetch-core.js +40 -1
- package/dist/tools/web/fetch-core.js.map +1 -1
- package/dist/tools/web/fetch.js +8 -1
- package/dist/tools/web/fetch.js.map +1 -1
- package/dist/tui-v2/app/App.js +34 -41
- package/dist/tui-v2/app/App.js.map +1 -1
- package/dist/tui-v2/app/command-handlers.js +20 -1
- package/dist/tui-v2/app/command-handlers.js.map +1 -1
- package/dist/tui-v2/app/commands/picker-commands.js +3 -0
- package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
- package/dist/tui-v2/app/commands/session-commands.js +5 -0
- package/dist/tui-v2/app/commands/session-commands.js.map +1 -1
- package/dist/tui-v2/app/plan-lifecycle.d.ts +25 -3
- package/dist/tui-v2/app/plan-lifecycle.js +87 -24
- package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
- package/dist/tui-v2/bootstrap/patch-opentui-text.d.ts +6 -0
- package/dist/tui-v2/bootstrap/patch-opentui-text.js +53 -0
- package/dist/tui-v2/bootstrap/patch-opentui-text.js.map +1 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js +7 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
- package/dist/tui-v2/components/jobs/jobs-panel.js +23 -14
- package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
- package/dist/tui-v2/components/modal/confirm-modal.d.ts +1 -1
- package/dist/tui-v2/components/modal/confirm-modal.js +18 -7
- package/dist/tui-v2/components/modal/confirm-modal.js.map +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
- package/dist/tui-v2/components/pager/pager.d.ts +6 -0
- package/dist/tui-v2/components/pager/pager.js +313 -67
- package/dist/tui-v2/components/pager/pager.js.map +1 -1
- package/dist/tui-v2/components/status/status-line.d.ts +9 -0
- package/dist/tui-v2/components/status/status-line.js +17 -3
- package/dist/tui-v2/components/status/status-line.js.map +1 -1
- package/dist/tui-v2/components/transcript/assistant-message.js +1 -1
- package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/tool-card.d.ts +9 -1
- package/dist/tui-v2/components/transcript/tool-card.js +114 -9
- package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-row.js +2 -2
- package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
- package/dist/tui-v2/composer/composer-editor.js +16 -0
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/controllers/overlay-controller.d.ts +16 -2
- package/dist/tui-v2/controllers/overlay-controller.js +92 -12
- package/dist/tui-v2/controllers/overlay-controller.js.map +1 -1
- package/dist/tui-v2/rendering/artifact-pager-source.d.ts +19 -0
- package/dist/tui-v2/rendering/artifact-pager-source.js +103 -0
- package/dist/tui-v2/rendering/artifact-pager-source.js.map +1 -0
- package/dist/tui-v2/rendering/file-diff-view.d.ts +63 -0
- package/dist/tui-v2/rendering/file-diff-view.js +263 -0
- package/dist/tui-v2/rendering/file-diff-view.js.map +1 -0
- package/dist/tui-v2/rendering/open-tool-output.d.ts +9 -1
- package/dist/tui-v2/rendering/open-tool-output.js +65 -12
- package/dist/tui-v2/rendering/open-tool-output.js.map +1 -1
- package/dist/tui-v2/rendering/pager-chrome.d.ts +12 -0
- package/dist/tui-v2/rendering/pager-chrome.js +56 -0
- package/dist/tui-v2/rendering/pager-chrome.js.map +1 -0
- package/dist/tui-v2/rendering/plan-view.js +1 -1
- package/dist/tui-v2/rendering/plan-view.js.map +1 -1
- package/dist/tui-v2/rendering/syntax-highlight.d.ts +37 -0
- package/dist/tui-v2/rendering/syntax-highlight.js +1303 -0
- package/dist/tui-v2/rendering/syntax-highlight.js.map +1 -0
- package/dist/tui-v2/rendering/theme.d.ts +28 -0
- package/dist/tui-v2/rendering/theme.js +28 -0
- package/dist/tui-v2/rendering/theme.js.map +1 -1
- package/dist/tui-v2/rendering/tool-presenter.d.ts +5 -0
- package/dist/tui-v2/rendering/tool-presenter.js +35 -3
- package/dist/tui-v2/rendering/tool-presenter.js.map +1 -1
- package/dist/tui-v2/state/transcript-hydrate.js +5 -0
- package/dist/tui-v2/state/transcript-hydrate.js.map +1 -1
- package/dist/tui-v2/state/transcript-reducer.js +12 -2
- package/dist/tui-v2/state/transcript-reducer.js.map +1 -1
- package/dist/tui-v2/state/transcript-store.d.ts +7 -0
- package/dist/tui-v2/state/transcript-store.js +46 -0
- package/dist/tui-v2/state/transcript-store.js.map +1 -1
- package/dist/tui-v2/state/transcript-types.d.ts +12 -0
- package/dist/tui-v2/state/transcript-types.js +9 -0
- package/dist/tui-v2/state/transcript-types.js.map +1 -1
- package/dist/types.d.ts +17 -1
- package/dist/ui/mentions.d.ts +6 -0
- package/dist/ui/mentions.js +50 -12
- package/dist/ui/mentions.js.map +1 -1
- package/dist/ui/plan-pane.js +1 -1
- package/dist/ui/plan-pane.js.map +1 -1
- package/package.json +18 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-controller.js","sourceRoot":"","sources":["../../../src/app/controllers/session-controller.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,GAEvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAsB,MAAM,+BAA+B,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EACL,WAAW,GAIZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,cAAc,GAGf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKxD,OAAO,EAAE,cAAc,EAAmB,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAmB,MAAM,iBAAiB,CAAC;AAmDvE,SAAS,aAAa;IACpB,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,MAAM,OAAO,iBAAiB;IA8BC;IA7BpB,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;IAE3B,cAAc,CAAY;IACjB,SAAS,CAAiB;IAC1B,IAAI,CAAiB;IAC9B,MAAM,CAAgB;IACb,WAAW,GAAG,IAAI,mBAAmB,EAAE,CAAC;IACxC,gBAAgB,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC9C,cAAc,GAAG,IAAI,GAAG,EAAwB,CAAC;IAE1D,OAAO,GAAkB,EAAE,CAAC;IACnB,KAAK,GAAa,EAAE,CAAC;IACtC;;;OAGG;IACK,cAAc,CAAqB;IAC3C,mDAAmD;IAC3C,eAAe,GAAG,KAAK,CAAC;IACxB,QAAQ,CAAyB;IACjC,KAAK,CAAqB;IAC1B,IAAI,CAAO;IACX,cAAc,GAAG,KAAK,CAAC;IAC/B,8EAA8E;IACtE,YAAY,CAAqB;IACzC,gFAAgF;IACxE,iBAAiB,GAAG,CAAC,CAAC;IACtB,aAAa,GAAG,KAAK,CAAC;IAE9B,YAA6B,IAA2B;QAA3B,SAAI,GAAJ,IAAI,CAAuB;QACtD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,IAAI,aAAa,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CACjC,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,CACX,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAC9B,IAAI,cAAc,CAAC;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CACH,CAAC;IACJ,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,QAAQ;QACN,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,cAAc;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YAC1B,UAAU,EAAE,IAAI,CAAC,cAAc;YAC/B,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAClC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,KAAK,EAAE,IAAI,CAAC,YAAY;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,oEAAoE;IACpE,SAAS,CAAC,QAA8B;QACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,WAAW,CAAC,QAAgC;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,mBAAmB,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,KAAyB;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,qFAAqF;QACrF,mBAAmB,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,IAAU;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,WAAW,CACT,QAAgC,EAChC,UAA8D,EAAE;QAEhE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,yEAAyE;QACzE,iDAAiD;QACjD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QAC1E,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,KAAkB,EAAE,IAAY;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAmC,EAAE;QACzC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,iBAA0B,EAC1B,UAAU,GAAG,CAAC,EACd,MAAoB;QAEpB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAE3E,yEAAyE;QACzE,4EAA4E;QAC5E,4DAA4D;QAC5D,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAK,GAAG,CAAC,eAA0C,CAAC;QAClF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,YAAY,CAAC;QAE7C,uEAAuE;QACvE,2EAA2E;QAC3E,+DAA+D;QAC/D,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,KAAK,EAAE,MAAc,EAAmB,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC;oBAC1C,QAAQ;oBACR,KAAK;oBACL,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,sEAAsE;yBAChF;wBACD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;qBAClC;oBACD,WAAW,EAAE,GAAG;oBAChB,SAAS,EAAE,KAAK;oBAChB,MAAM;iBACP,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAC7C,eAAe,EACf,KAAK,EAAE,MAAM,EAAE,EAAE;gBACf,MAAM,SAAS,GAAG,MAAM,CAAC;gBACzB,IAAI,MAAM,CAAC,MAAM,IAAI,SAAS;oBAAE,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CACvB,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAChD,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CACvE,CAAC;gBACF,MAAM,QAAQ,GAAa,EAAE,CAAC;gBAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBACtD,MAAM,EAAE,cAAc,EAAE,CAAC;oBACzB,QAAQ,CAAC,IAAI,CACX,MAAM,eAAe,CACnB,kBAAkB,KAAK,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,sHAAsH,MAAM,CAAC,KAAK,CAAC,EAAE,CACrL,CACF,CAAC;gBACJ,CAAC;gBACD,MAAM,EAAE,cAAc,EAAE,CAAC;gBACzB,OAAO,eAAe,CACpB,+QAA+Q;oBAC7Q,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,KAAK,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAC5E,CAAC;YACJ,CAAC,EACD,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,EAC/B,iBAAiB,CAClB,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxD,MAAM,IAAI,GACR,MAAM,CAAC,QAAQ,CAAC,IAAI,CAClB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CACrE,EAAE,OAAO,IAAI,mBAAmB,CAAC;gBACpC,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,SAAS,CAAC,KAAK,CAClB,WAAW,EACX;oBACE,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,WAAW,EAAE,MAAM,CAAC,WAAW;iBAChC,EACD,SAAS,CACV,CACF,CAAC;gBACF,gEAAgE;gBAChE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;YAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,KAAK,CAAC,UAAU,CAAC,IAAa;QAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,WAAW;YAAE,OAAO;QAC3D,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACtC,2EAA2E;QAC3E,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;YAAE,OAAO;QACzD,IAAI,IAAI;YAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QACvD,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE;YACpD,SAAS,EAAE,IAAI,CAAC,cAAc;YAC9B,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,YAAY;YAC/B,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB;QACrB,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,WAAW;YAAE,OAAO;QAC3D,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QACvE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAC7D,CAAC;QACF,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC7C,MAAM,cAAc,GAClB,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,SAAS,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc;YAAE,OAAO;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;YAAE,OAAO;QAEhC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC;QAC7C,MAAM,WAAW,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE;gBACrD,QAAQ;gBACR,KAAK;aACN,CAAC,CAAC;YACH,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,uEAAuE;YACvE,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB;gBAAE,OAAO;YACrD,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,sEAAsE;QACxE,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,eAAe;QACb,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC7B,MAAM,EAAE,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC;SAC7C,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,MAAc;QACpB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,KAAa;QACtB,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,UAAU,CAAC,KAAa,EAAE,IAAY;QACpC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,aAAa,CAAC,SAAiB,EAAE,OAAe;QAC9C,IACE,SAAS,GAAG,CAAC;YACb,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YAC9B,OAAO,GAAG,CAAC;YACX,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YAC5B,SAAS,KAAK,OAAO,EACrB,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAa;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC1B,IAAI,IAAwB,CAAC;gBAC7B,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;oBACtC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;oBAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;gBAClC,CAAC;qBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,MAAM;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBAAE,SAAS;gBACjD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,eAAe,CAAC,KAAc;QAC5B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;IACzC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC;IACxC,CAAC;IAED,iFAAiF;IACjF,SAAS,CAAC,QAAyB;QACjC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc;QACzB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAChC,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM;YAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;gBAAE,MAAM;QAC3C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,MAAc;QAClC,MAAM,OAAO,GAAmB;YAC9B,MAAM;YACN,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YACrC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YAC1B,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;YACtC,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACvB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;gBACxB,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,CAAC;SACF,CAAC,CAAC;QACH,0EAA0E;QAC1E,uEAAuE;QACvE,gCAAgC;QAChC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACxB,uEAAuE;YACvE,uEAAuE;YACvE,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAChC,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,gBAAgB;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,WAAW;QACjB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc;YAAE,QAAQ,EAAE,CAAC;IACzD,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"session-controller.js","sourceRoot":"","sources":["../../../src/app/controllers/session-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type TurnOutcome } from "../../agent/turn-outcome.js";
|
|
1
2
|
import type { ChatMessage } from "../../types.js";
|
|
2
3
|
import { type SessionPolicy } from "../../agent/session-policy.js";
|
|
3
4
|
import { type AnyAppEvent, type TurnId } from "../events/app-event.js";
|
|
@@ -10,6 +11,7 @@ import type { Disposable } from "./disposable.js";
|
|
|
10
11
|
export type TurnResult = {
|
|
11
12
|
readonly status: "completed";
|
|
12
13
|
readonly turnId: TurnId;
|
|
14
|
+
readonly outcome: TurnOutcome;
|
|
13
15
|
readonly finalAnswer: string;
|
|
14
16
|
} | {
|
|
15
17
|
readonly status: "aborted";
|
|
@@ -33,12 +35,6 @@ export interface TurnControllerDeps {
|
|
|
33
35
|
readonly emit: (event: AnyAppEvent) => void;
|
|
34
36
|
readonly mintTurnId?: (() => TurnId) | undefined;
|
|
35
37
|
}
|
|
36
|
-
/**
|
|
37
|
-
* Owns one turn's execution: mints the turn id, owns the AbortController, wires
|
|
38
|
-
* the agent's events through delta coalescing and the AppEvent adapter, and
|
|
39
|
-
* resolves a discriminated result. Abort is a distinct result, never an error
|
|
40
|
-
* (REL, ARCHITECTURE.md).
|
|
41
|
-
*/
|
|
42
38
|
export declare class TurnController implements Disposable {
|
|
43
39
|
private readonly deps;
|
|
44
40
|
private ac;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { renderTurnOutcome } from "../../agent/turn-outcome.js";
|
|
2
3
|
import { isAbortError } from "../../agent/session-policy.js";
|
|
3
4
|
import { asTurnId } from "../events/app-event.js";
|
|
4
5
|
import { AgentEventAdapter } from "../adapters/agent-event-adapter.js";
|
|
@@ -37,12 +38,6 @@ class DeltaCoalescer {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
const defaultMintTurnId = () => asTurnId(`turn-${randomUUID()}`);
|
|
40
|
-
/**
|
|
41
|
-
* Owns one turn's execution: mints the turn id, owns the AbortController, wires
|
|
42
|
-
* the agent's events through delta coalescing and the AppEvent adapter, and
|
|
43
|
-
* resolves a discriminated result. Abort is a distinct result, never an error
|
|
44
|
-
* (REL, ARCHITECTURE.md).
|
|
45
|
-
*/
|
|
46
41
|
export class TurnController {
|
|
47
42
|
deps;
|
|
48
43
|
ac;
|
|
@@ -78,7 +73,7 @@ export class TurnController {
|
|
|
78
73
|
external.addEventListener("abort", onExternalAbort, { once: true });
|
|
79
74
|
}
|
|
80
75
|
try {
|
|
81
|
-
const
|
|
76
|
+
const outcome = await this.deps.agent.runTurn(request, {
|
|
82
77
|
onEvent: (event) => coalescer.push(event),
|
|
83
78
|
onMessages: options.onMessages,
|
|
84
79
|
signal: ac.signal,
|
|
@@ -87,7 +82,12 @@ export class TurnController {
|
|
|
87
82
|
session: options.session,
|
|
88
83
|
});
|
|
89
84
|
coalescer.flush();
|
|
90
|
-
return {
|
|
85
|
+
return {
|
|
86
|
+
status: "completed",
|
|
87
|
+
turnId,
|
|
88
|
+
outcome,
|
|
89
|
+
finalAnswer: renderTurnOutcome(outcome),
|
|
90
|
+
};
|
|
91
91
|
}
|
|
92
92
|
catch (error) {
|
|
93
93
|
coalescer.flush();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-controller.js","sourceRoot":"","sources":["../../../src/app/controllers/turn-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"turn-controller.js","sourceRoot":"","sources":["../../../src/app/controllers/turn-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { SessionPlan } from "../../store/plan.js";
|
|
2
|
-
/** Opaque/branded string ID so distinct ID kinds cannot be mixed by accident. */
|
|
3
2
|
export type Brand<T, B extends string> = T & {
|
|
4
3
|
readonly __brand: B;
|
|
5
4
|
};
|
|
@@ -29,11 +28,6 @@ export interface AppEvent<TType extends string, TPayload> {
|
|
|
29
28
|
readonly type: TType;
|
|
30
29
|
readonly payload: TPayload;
|
|
31
30
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Tool output chunks are NOT concatenated into an unbounded string in the
|
|
34
|
-
* envelope. The payload carries a reference into the `OutputSpool` (keyed by
|
|
35
|
-
* tool-call id); components read a bounded tail on demand. See event-buffer.ts.
|
|
36
|
-
*/
|
|
37
31
|
export interface OutputChunkRef {
|
|
38
32
|
readonly toolCallId: ToolCallId;
|
|
39
33
|
/** Byte length of the chunk that was just spooled (for progress display). */
|
|
@@ -44,6 +38,8 @@ export interface OutputChunkRef {
|
|
|
44
38
|
export interface AppEventPayloads {
|
|
45
39
|
"turn-started": {
|
|
46
40
|
readonly prompt: string;
|
|
41
|
+
/** Transcript YOU text; null = omit user bubble (backend-only directives). */
|
|
42
|
+
readonly displayPrompt?: string | null | undefined;
|
|
47
43
|
};
|
|
48
44
|
status: {
|
|
49
45
|
readonly text: string;
|
|
@@ -72,7 +68,6 @@ export interface AppEventPayloads {
|
|
|
72
68
|
readonly name: string;
|
|
73
69
|
readonly argsDisplay: string;
|
|
74
70
|
};
|
|
75
|
-
/** Card was queued; now actively executing. */
|
|
76
71
|
"tool-started": {
|
|
77
72
|
readonly toolCallId: ToolCallId;
|
|
78
73
|
};
|
|
@@ -85,6 +80,8 @@ export interface AppEventPayloads {
|
|
|
85
80
|
readonly exitCode?: number | undefined;
|
|
86
81
|
readonly summary: string;
|
|
87
82
|
readonly artifactPath?: string | undefined;
|
|
83
|
+
/** Cursor-style file diffs for fs.* mutation tools. */
|
|
84
|
+
readonly fileChanges?: import("../../tools/file-diff.js").FileChange[] | undefined;
|
|
88
85
|
};
|
|
89
86
|
"tool-blocked": {
|
|
90
87
|
readonly toolCallId: ToolCallId;
|
|
@@ -6,12 +6,6 @@ export const asPlanId = (value) => value;
|
|
|
6
6
|
export const asTaskId = (value) => value;
|
|
7
7
|
/** Bumped only when the envelope shape changes in a non-additive way. */
|
|
8
8
|
export const APP_EVENT_VERSION = 1;
|
|
9
|
-
/**
|
|
10
|
-
* Structural events end a run of coalescible deltas. The TurnController flushes
|
|
11
|
-
* pending `assistant-delta`/`thinking-delta` text before emitting any of these
|
|
12
|
-
* so visible order is preserved (ARCHITECTURE.md "flush before structural
|
|
13
|
-
* events"). Deltas themselves are the only non-structural events.
|
|
14
|
-
*/
|
|
15
9
|
const DELTA_TYPES = new Set([
|
|
16
10
|
"assistant-delta",
|
|
17
11
|
"thinking-delta",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-event.js","sourceRoot":"","sources":["../../../src/app/events/app-event.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app-event.js","sourceRoot":"","sources":["../../../src/app/events/app-event.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAa,EAAa,EAAE,CAAC,KAAkB,CAAC;AAC5E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAe,CAAC;AACnE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAa,EAAa,EAAE,CAAC,KAAkB,CAAC;AAC5E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAc,EAAE,CAAC,KAAmB,CAAC;AAC/E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAe,CAAC;AACnE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAe,CAAC;AAEnE,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAU,CAAC;AA6F5C,MAAM,WAAW,GAA8B,IAAI,GAAG,CAAe;IACnE,iBAAiB;IACjB,gBAAgB;CACjB,CAAC,CAAC;AAEH,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAkB;IAClD,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import type { OutputChunkRef, ToolCallId } from "./app-event.js";
|
|
2
|
-
/**
|
|
3
|
-
* Text buffer for a single tool stream. By default it keeps **all** characters
|
|
4
|
-
* (no truncation) so Ctrl+O / click-to-open always shows the full body.
|
|
5
|
-
* Pass a finite `maxChars` only for tests or memory-sensitive adapters.
|
|
6
|
-
*/
|
|
7
2
|
export interface BoundedTextState {
|
|
8
3
|
readonly tail: string;
|
|
9
4
|
readonly totalBytes: number;
|
|
@@ -17,11 +12,11 @@ export declare class BoundedText {
|
|
|
17
12
|
private dropped;
|
|
18
13
|
/**
|
|
19
14
|
* @param maxChars Finite positive cap keeps only the last N chars.
|
|
20
|
-
*
|
|
15
|
+
* Defaults to 256 KiB; use Infinity only in explicitly controlled tests.
|
|
21
16
|
*/
|
|
22
17
|
constructor(maxChars?: number);
|
|
23
18
|
append(chunk: string): void;
|
|
24
|
-
/** Replace
|
|
19
|
+
/** Replace with an authoritative body while preserving the configured cap. */
|
|
25
20
|
replace(text: string): void;
|
|
26
21
|
get tail(): string;
|
|
27
22
|
get totalBytes(): number;
|
|
@@ -29,20 +24,14 @@ export declare class BoundedText {
|
|
|
29
24
|
get truncated(): boolean;
|
|
30
25
|
snapshot(): BoundedTextState;
|
|
31
26
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Per-tool-call output spool. Default is unbounded so the UI never loses
|
|
34
|
-
* bytes. Full artifacts are still written to disk for persistence/export.
|
|
35
|
-
*/
|
|
36
27
|
export declare class OutputSpool {
|
|
37
28
|
private readonly maxCharsPerTool;
|
|
29
|
+
private readonly maxTools;
|
|
38
30
|
private readonly byTool;
|
|
39
|
-
/**
|
|
40
|
-
constructor(maxCharsPerTool?: number);
|
|
31
|
+
/** Finite production defaults; full bodies remain available in tool artifacts. */
|
|
32
|
+
constructor(maxCharsPerTool?: number, maxTools?: number);
|
|
33
|
+
private bufferFor;
|
|
41
34
|
append(toolCallId: ToolCallId, chunk: string): OutputChunkRef;
|
|
42
|
-
/**
|
|
43
|
-
* Set the full authoritative body after a tool finishes (replaces any live
|
|
44
|
-
* stream so the pager never shows a truncated mid-run preview).
|
|
45
|
-
*/
|
|
46
35
|
replace(toolCallId: ToolCallId, text: string): OutputChunkRef;
|
|
47
36
|
tail(toolCallId: ToolCallId): string;
|
|
48
37
|
state(toolCallId: ToolCallId): BoundedTextState | undefined;
|
|
@@ -5,9 +5,9 @@ export class BoundedText {
|
|
|
5
5
|
dropped = 0;
|
|
6
6
|
/**
|
|
7
7
|
* @param maxChars Finite positive cap keeps only the last N chars.
|
|
8
|
-
*
|
|
8
|
+
* Defaults to 256 KiB; use Infinity only in explicitly controlled tests.
|
|
9
9
|
*/
|
|
10
|
-
constructor(maxChars =
|
|
10
|
+
constructor(maxChars = 256 * 1024) {
|
|
11
11
|
this.maxChars = maxChars;
|
|
12
12
|
if (!(this.maxChars > 0))
|
|
13
13
|
throw new RangeError("maxChars must be positive");
|
|
@@ -25,11 +25,12 @@ export class BoundedText {
|
|
|
25
25
|
this.dropped += Buffer.byteLength(combined.slice(0, overflow), "utf8");
|
|
26
26
|
this.tailBuf = combined.slice(overflow);
|
|
27
27
|
}
|
|
28
|
-
/** Replace
|
|
28
|
+
/** Replace with an authoritative body while preserving the configured cap. */
|
|
29
29
|
replace(text) {
|
|
30
|
-
this.tailBuf =
|
|
31
|
-
this.total =
|
|
30
|
+
this.tailBuf = "";
|
|
31
|
+
this.total = 0;
|
|
32
32
|
this.dropped = 0;
|
|
33
|
+
this.append(text);
|
|
33
34
|
}
|
|
34
35
|
get tail() {
|
|
35
36
|
return this.tailBuf;
|
|
@@ -52,23 +53,33 @@ export class BoundedText {
|
|
|
52
53
|
};
|
|
53
54
|
}
|
|
54
55
|
}
|
|
55
|
-
/**
|
|
56
|
-
* Per-tool-call output spool. Default is unbounded so the UI never loses
|
|
57
|
-
* bytes. Full artifacts are still written to disk for persistence/export.
|
|
58
|
-
*/
|
|
59
56
|
export class OutputSpool {
|
|
60
57
|
maxCharsPerTool;
|
|
58
|
+
maxTools;
|
|
61
59
|
byTool = new Map();
|
|
62
|
-
/**
|
|
63
|
-
constructor(maxCharsPerTool =
|
|
60
|
+
/** Finite production defaults; full bodies remain available in tool artifacts. */
|
|
61
|
+
constructor(maxCharsPerTool = 256 * 1024, maxTools = 128) {
|
|
64
62
|
this.maxCharsPerTool = maxCharsPerTool;
|
|
63
|
+
this.maxTools = maxTools;
|
|
64
|
+
if (!Number.isInteger(maxTools) || maxTools <= 0)
|
|
65
|
+
throw new RangeError("maxTools must be positive");
|
|
65
66
|
}
|
|
66
|
-
|
|
67
|
+
bufferFor(toolCallId) {
|
|
67
68
|
let buffer = this.byTool.get(toolCallId);
|
|
68
|
-
if (
|
|
69
|
-
buffer
|
|
70
|
-
|
|
69
|
+
if (buffer)
|
|
70
|
+
return buffer;
|
|
71
|
+
while (this.byTool.size >= this.maxTools) {
|
|
72
|
+
const oldest = this.byTool.keys().next().value;
|
|
73
|
+
if (oldest === undefined)
|
|
74
|
+
break;
|
|
75
|
+
this.byTool.delete(oldest);
|
|
71
76
|
}
|
|
77
|
+
buffer = new BoundedText(this.maxCharsPerTool);
|
|
78
|
+
this.byTool.set(toolCallId, buffer);
|
|
79
|
+
return buffer;
|
|
80
|
+
}
|
|
81
|
+
append(toolCallId, chunk) {
|
|
82
|
+
const buffer = this.bufferFor(toolCallId);
|
|
72
83
|
buffer.append(chunk);
|
|
73
84
|
return {
|
|
74
85
|
toolCallId,
|
|
@@ -76,16 +87,8 @@ export class OutputSpool {
|
|
|
76
87
|
totalBytes: buffer.totalBytes,
|
|
77
88
|
};
|
|
78
89
|
}
|
|
79
|
-
/**
|
|
80
|
-
* Set the full authoritative body after a tool finishes (replaces any live
|
|
81
|
-
* stream so the pager never shows a truncated mid-run preview).
|
|
82
|
-
*/
|
|
83
90
|
replace(toolCallId, text) {
|
|
84
|
-
|
|
85
|
-
if (!buffer) {
|
|
86
|
-
buffer = new BoundedText(this.maxCharsPerTool);
|
|
87
|
-
this.byTool.set(toolCallId, buffer);
|
|
88
|
-
}
|
|
91
|
+
const buffer = this.bufferFor(toolCallId);
|
|
89
92
|
buffer.replace(text);
|
|
90
93
|
return {
|
|
91
94
|
toolCallId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-buffer.js","sourceRoot":"","sources":["../../../src/app/events/event-buffer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event-buffer.js","sourceRoot":"","sources":["../../../src/app/events/event-buffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,12 @@ export interface Clock {
|
|
|
4
4
|
now(): number;
|
|
5
5
|
}
|
|
6
6
|
export declare const systemClock: Clock;
|
|
7
|
-
/**
|
|
8
|
-
* Mints envelope ids and domain ids that lack a natural stable id (assistant
|
|
9
|
-
* messages, thinking blocks). Tool-call ids come from the agent and are reused
|
|
10
|
-
* verbatim. Injectable so tests can assert deterministic replay output.
|
|
11
|
-
*/
|
|
12
7
|
export interface IdFactory {
|
|
13
8
|
event(): string;
|
|
14
9
|
message(): MessageId;
|
|
15
10
|
}
|
|
16
11
|
export declare function createCountingIdFactory(prefix?: string): IdFactory;
|
|
17
12
|
export declare function createRandomIdFactory(): IdFactory;
|
|
18
|
-
/**
|
|
19
|
-
* Assigns a monotonic, gap-free `sequence` per session and wraps a typed
|
|
20
|
-
* payload in the `AppEvent` envelope. One sequencer instance owns one session.
|
|
21
|
-
*/
|
|
22
13
|
export declare class EventSequencer {
|
|
23
14
|
readonly ids: IdFactory;
|
|
24
15
|
private readonly clock;
|
|
@@ -15,10 +15,6 @@ export function createRandomIdFactory() {
|
|
|
15
15
|
message: () => asMessageId(randomUUID()),
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Assigns a monotonic, gap-free `sequence` per session and wraps a typed
|
|
20
|
-
* payload in the `AppEvent` envelope. One sequencer instance owns one session.
|
|
21
|
-
*/
|
|
22
18
|
export class EventSequencer {
|
|
23
19
|
ids;
|
|
24
20
|
clock;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequencer.js","sourceRoot":"","sources":["../../../src/app/events/sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,WAAW,GAOZ,MAAM,gBAAgB,CAAC;AAOxB,MAAM,CAAC,MAAM,WAAW,GAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sequencer.js","sourceRoot":"","sources":["../../../src/app/events/sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,WAAW,GAOZ,MAAM,gBAAgB,CAAC;AAOxB,MAAM,CAAC,MAAM,WAAW,GAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;AAQ5D,MAAM,UAAU,uBAAuB,CAAC,MAAM,GAAG,EAAE;IACjD,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,OAAO;QACL,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACtD,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;KACzC,CAAC;AACJ,CAAC;AAGD,MAAM,OAAO,cAAc;IAMd;IACQ;IANX,GAAG,GAAG,CAAC,CAAC;IACR,SAAS,CAAY;IAE7B,YACE,SAAoB,EACX,MAAiB,qBAAqB,EAAE,EAChC,QAAe,WAAW;QADlC,QAAG,GAAH,GAAG,CAAqC;QAChC,UAAK,GAAL,KAAK,CAAqB;QAE3C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,uEAAuE;IACvE,MAAM,CAAC,SAAoB;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CACH,IAAO,EACP,OAA4B,EAC5B,MAA2B;QAE3B,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACd,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;YACpB,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE,IAAI,CAAC,GAAG;YAClB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;YAC3B,IAAI;YACJ,OAAO;SACR,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC;QAChE,OAAO,KAAyC,CAAC;IACnD,CAAC;CACF"}
|
|
@@ -1,13 +1,22 @@
|
|
|
1
|
-
import type { ChatImage, ChatMessage, ProviderId } from "../../types.js";
|
|
1
|
+
import type { ChatImage, ChatMessage, Mode, ProviderId } from "../../types.js";
|
|
2
|
+
import type { Attachment } from "../../ui/mentions.js";
|
|
2
3
|
import type { AgentEvent } from "../../agent/events.js";
|
|
3
4
|
import type { SessionPolicy } from "../../agent/session-policy.js";
|
|
4
5
|
import type { ConfirmationPort } from "./confirm-port.js";
|
|
5
6
|
import type { SecretPort } from "./secret-port.js";
|
|
7
|
+
import type { TurnOutcome } from "../../agent/turn-outcome.js";
|
|
6
8
|
export interface RunTurnRequest {
|
|
7
9
|
readonly prompt: string;
|
|
10
|
+
/**
|
|
11
|
+
* Text for the transcript YOU bubble. `null` hides the bubble (system
|
|
12
|
+
* implement/revision directives). Omit to show `prompt` as usual.
|
|
13
|
+
*/
|
|
14
|
+
readonly displayPrompt?: string | null | undefined;
|
|
15
|
+
readonly mode: Mode;
|
|
8
16
|
readonly provider?: ProviderId | undefined;
|
|
9
17
|
readonly model?: string | undefined;
|
|
10
18
|
readonly history?: readonly ChatMessage[] | undefined;
|
|
19
|
+
readonly attachments?: readonly Attachment[] | undefined;
|
|
11
20
|
readonly images?: readonly ChatImage[] | undefined;
|
|
12
21
|
readonly autoConfirm?: boolean | undefined;
|
|
13
22
|
readonly maxSteps?: number | undefined;
|
|
@@ -22,8 +31,9 @@ export interface RunTurnHandlers {
|
|
|
22
31
|
}
|
|
23
32
|
/**
|
|
24
33
|
* The one agent implementation, consumed through structured events (CORE-001).
|
|
25
|
-
* `runTurn` resolves with the
|
|
34
|
+
* `runTurn` resolves with the authoritative structured outcome; rendering is a
|
|
35
|
+
* frontend concern and events flow through `onEvent`.
|
|
26
36
|
*/
|
|
27
37
|
export interface AgentPort {
|
|
28
|
-
runTurn(request: RunTurnRequest, handlers: RunTurnHandlers): Promise<
|
|
38
|
+
runTurn(request: RunTurnRequest, handlers: RunTurnHandlers): Promise<TurnOutcome>;
|
|
29
39
|
}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Clipboard access (SEL-006). Copy requires user-visible selected text; the
|
|
3
|
-
* real OSC 52 / native-clipboard adapter lands with the renderer in Phase 6.
|
|
4
|
-
* The app-layer default is in-memory so nothing writes terminal bytes here.
|
|
5
|
-
*/
|
|
6
1
|
export interface ClipboardPort {
|
|
7
2
|
writeText(text: string): Promise<void>;
|
|
8
3
|
readText?(): Promise<string | undefined>;
|
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import type { ToolCall } from "../../types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Typed async confirmation surface (CORE-002). The UI implements this; the
|
|
4
|
-
* agent never reads the terminal directly. Structurally identical to the
|
|
5
|
-
* legacy `ConfirmPort` in src/agent, so a v2 implementation is accepted by
|
|
6
|
-
* `runAgentLoop` without adaptation. Optional methods let minimal ports omit
|
|
7
|
-
* flows they never trigger.
|
|
8
|
-
*/
|
|
9
2
|
export interface ConfirmationPort {
|
|
10
3
|
confirmTool(call: ToolCall): Promise<boolean>;
|
|
11
4
|
confirmPentest(): Promise<boolean>;
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import type { BackgroundJob } from "../../tools/jobs.js";
|
|
2
2
|
import type { ToolResult } from "../../types.js";
|
|
3
3
|
export type { BackgroundJob };
|
|
4
|
-
/**
|
|
5
|
-
* Background job control (CORE-004, F-004). Jobs survive UI rerenders because
|
|
6
|
-
* they live in the core job manager; the UI only observes and commands them.
|
|
7
|
-
*/
|
|
8
4
|
export interface JobsPort {
|
|
9
5
|
list(): ToolResult;
|
|
10
6
|
running(): BackgroundJob[];
|
|
7
|
+
recent?(limit?: number): BackgroundJob[];
|
|
11
8
|
get(id: string): BackgroundJob | undefined;
|
|
12
9
|
tail(id: string, bytes?: number): Promise<ToolResult>;
|
|
13
|
-
stop(id: string): ToolResult
|
|
10
|
+
stop(id: string): Promise<ToolResult>;
|
|
14
11
|
start(command: string, options?: {
|
|
15
12
|
cwd?: string | undefined;
|
|
16
13
|
name?: string | undefined;
|
|
@@ -9,10 +9,6 @@ export interface SaveSessionOptions {
|
|
|
9
9
|
/** Classic-shaped visual transcript for full /history restore. */
|
|
10
10
|
readonly transcript?: readonly TranscriptItem[] | undefined;
|
|
11
11
|
}
|
|
12
|
-
/**
|
|
13
|
-
* Session/plan persistence (CORE-005, F-008). Kept narrow so controllers depend
|
|
14
|
-
* on behavior, not on the SQLite/JSONL storage details in src/store.
|
|
15
|
-
*/
|
|
16
12
|
export interface PersistencePort {
|
|
17
13
|
saveSession(messages: readonly ChatMessage[], options?: SaveSessionOptions): Promise<void>;
|
|
18
14
|
loadPlan(sessionId: string): Promise<SessionPlan | undefined>;
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Masked secret entry (CORE-002, INPUT-009). Secret values are typed
|
|
3
|
-
* separately from generic event payloads and never enter the transcript, logs,
|
|
4
|
-
* history, or clipboard without explicit user action.
|
|
5
|
-
*/
|
|
6
1
|
export interface SecretRequest {
|
|
7
2
|
readonly title: string;
|
|
8
3
|
readonly prompt: string;
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
export type ColorMode = "truecolor" | "256" | "16" | "none";
|
|
2
|
-
/**
|
|
3
|
-
* Terminal capability report (COMPAT-001, A11Y-001). Action defaults are
|
|
4
|
-
* semantic, not byte-sequence promises: `canDistinguishShiftEnter` tells the
|
|
5
|
-
* action layer whether Shift+Enter is a usable newline binding or whether the
|
|
6
|
-
* advertised Alt/Option+Enter fallback must be shown instead.
|
|
7
|
-
*/
|
|
8
2
|
export interface TerminalCapabilities {
|
|
9
3
|
readonly columns: number;
|
|
10
4
|
readonly rows: number;
|
|
@@ -3,10 +3,6 @@ export interface UpdateStatus {
|
|
|
3
3
|
readonly latestVersion?: string | undefined;
|
|
4
4
|
readonly updateAvailable: boolean;
|
|
5
5
|
}
|
|
6
|
-
/**
|
|
7
|
-
* Update check (F-012 adjacent, `/update`). Kept as a port so the check runs
|
|
8
|
-
* without corrupting TUI output and can be faked in tests.
|
|
9
|
-
*/
|
|
10
6
|
export interface UpdatesPort {
|
|
11
7
|
check(): Promise<UpdateStatus>;
|
|
12
8
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Mode, ProviderId, ChatImage } from "../types.js";
|
|
2
|
+
import { type Attachment } from "../ui/mentions.js";
|
|
3
|
+
export interface ResolvedTurnInput {
|
|
4
|
+
readonly prompt: string;
|
|
5
|
+
readonly mode: Mode;
|
|
6
|
+
readonly provider: ProviderId;
|
|
7
|
+
readonly model: string;
|
|
8
|
+
readonly attachments: readonly Attachment[];
|
|
9
|
+
readonly images: readonly ChatImage[];
|
|
10
|
+
readonly capability: {
|
|
11
|
+
readonly vision: boolean;
|
|
12
|
+
readonly source: "provider" | "user" | "fallback-table";
|
|
13
|
+
};
|
|
14
|
+
readonly fallbackReason?: string | undefined;
|
|
15
|
+
}
|
|
16
|
+
/** Shared frontend-neutral attachment and same-provider vision resolution. */
|
|
17
|
+
export declare function resolveTurnInput(input: {
|
|
18
|
+
prompt: string;
|
|
19
|
+
mode: Mode;
|
|
20
|
+
provider: ProviderId;
|
|
21
|
+
model: string;
|
|
22
|
+
baseDir?: string | undefined;
|
|
23
|
+
}): ResolvedTurnInput;
|
|
24
|
+
/** Vision-first OCR policy shared by frontends. */
|
|
25
|
+
export declare function shouldRunImageOcr(input: {
|
|
26
|
+
hasImage: boolean;
|
|
27
|
+
visionCapable: boolean;
|
|
28
|
+
prompt: string;
|
|
29
|
+
}): boolean;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { modelSupportsVision, preferredVisionModel, visionCapabilitySource, } from "../llm/capabilities.js";
|
|
2
|
+
import { safeCwd } from "../os/cwd.js";
|
|
3
|
+
import { expandMentions, loadImageAttachments } from "../ui/mentions.js";
|
|
4
|
+
/** Shared frontend-neutral attachment and same-provider vision resolution. */
|
|
5
|
+
export function resolveTurnInput(input) {
|
|
6
|
+
const baseDir = input.baseDir ?? safeCwd();
|
|
7
|
+
let model = input.model;
|
|
8
|
+
let vision = modelSupportsVision(input.provider, model);
|
|
9
|
+
let expansion = expandMentions(input.prompt, baseDir, vision);
|
|
10
|
+
const hasImage = expansion.attachments.some((attachment) => attachment.kind === "image");
|
|
11
|
+
let fallbackReason;
|
|
12
|
+
if (hasImage && !vision) {
|
|
13
|
+
const fallback = preferredVisionModel(input.provider, model);
|
|
14
|
+
if (fallback) {
|
|
15
|
+
model = fallback;
|
|
16
|
+
vision = true;
|
|
17
|
+
fallbackReason =
|
|
18
|
+
`Selected same-provider vision model ${fallback} because the request contains an image ` +
|
|
19
|
+
`(capability source: ${visionCapabilitySource(input.provider, fallback)}).`;
|
|
20
|
+
expansion = expandMentions(input.prompt, baseDir, true);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
const images = vision ? loadImageAttachments(input.prompt, baseDir) : [];
|
|
24
|
+
const prompt = expansion.contextBlock
|
|
25
|
+
? `${expansion.text}\n\n${expansion.contextBlock}`
|
|
26
|
+
: expansion.text;
|
|
27
|
+
return {
|
|
28
|
+
prompt,
|
|
29
|
+
mode: input.mode,
|
|
30
|
+
provider: input.provider,
|
|
31
|
+
model,
|
|
32
|
+
attachments: expansion.attachments,
|
|
33
|
+
images,
|
|
34
|
+
capability: {
|
|
35
|
+
vision,
|
|
36
|
+
source: visionCapabilitySource(input.provider, model),
|
|
37
|
+
},
|
|
38
|
+
fallbackReason,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/** Vision-first OCR policy shared by frontends. */
|
|
42
|
+
export function shouldRunImageOcr(input) {
|
|
43
|
+
if (!input.hasImage || input.visionCapable)
|
|
44
|
+
return false;
|
|
45
|
+
return /\b(?:ocr|extract|transcribe|read)\b[\s\S]{0,30}\btext\b|\btext\b[\s\S]{0,30}\b(?:image|screenshot)\b/i.test(input.prompt);
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=service.js.map
|