@timurproko/a1 0.1.8-dev.3b54f21 → 0.1.8-dev.407
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/README.md +159 -65
- package/bin/cli.js +28 -10
- package/bin/guardian.js +12 -6
- package/bin/module-identity.js +69 -35
- package/bin/pi-tui.d.ts +6 -0
- package/bin/pi-tui.js +28 -0
- package/bin/release-cleanup.js +8 -0
- package/bin/supervisor.js +2 -2
- package/bin/sync-pi-tui-proxy.js +97 -0
- package/bin/ui.js +62 -21
- package/bin/update-recovery.js +274 -0
- package/bin/warmup.js +27 -0
- package/dist/cli/capabilities.d.ts +6 -0
- package/dist/{src/cli → cli}/capabilities.js +1 -1
- package/dist/{src/cli → cli}/dispatch.d.ts +15 -1
- package/dist/cli/dispatch.js +261 -0
- package/dist/cli/package-messages.d.ts +26 -0
- package/dist/cli/package-messages.js +71 -0
- package/dist/{src/cli → cli}/packages.d.ts +11 -2
- package/dist/{src/cli → cli}/packages.js +24 -27
- package/dist/{src/cli → cli}/version-stats.d.ts +6 -0
- package/dist/cli/version-stats.js +112 -0
- package/dist/composition/agent-engine-bridge.d.ts +3 -0
- package/dist/composition/agent-engine-bridge.js +108 -0
- package/dist/composition/index.d.ts +3 -0
- package/dist/composition/index.js +3 -0
- package/dist/composition/owned-ui.d.ts +35 -0
- package/dist/composition/owned-ui.js +118 -0
- package/dist/composition/process.d.ts +16 -0
- package/dist/composition/process.js +45 -0
- package/dist/composition/settings-route-host.d.ts +8 -0
- package/dist/composition/settings-route-host.js +75 -0
- package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/capability-ports.d.ts +2 -2
- package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain-validation.js +22 -4
- package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain.d.ts +17 -0
- package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/package-ports.d.ts +6 -0
- package/dist/contracts/owned-ui/image-attachments.d.ts +36 -0
- package/dist/contracts/owned-ui/image-attachments.js +67 -0
- package/dist/contracts/owned-ui/index.d.ts +8 -0
- package/dist/contracts/owned-ui/index.js +8 -0
- package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/model.d.ts +123 -0
- package/dist/contracts/owned-ui/prompt-history.d.ts +55 -0
- package/dist/contracts/owned-ui/prompt-history.js +23 -0
- package/dist/contracts/owned-ui/prompt-suggestions.d.ts +3 -0
- package/dist/contracts/owned-ui/prompt-suggestions.js +44 -0
- package/dist/contracts/owned-ui/suggestion-diagnostics.d.ts +22 -0
- package/dist/contracts/owned-ui/suggestion-diagnostics.js +9 -0
- package/dist/contracts/owned-ui/transcript-lifecycle.d.ts +5 -0
- package/dist/contracts/owned-ui/transcript-lifecycle.js +33 -0
- package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/validation.d.ts +5 -1
- package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/validation.js +129 -4
- package/dist/{src/foundation/presentation-contracts → contracts/presentation}/index.d.ts +8 -0
- package/dist/{src/features → features}/launch/development-launch.js +11 -3
- package/dist/{src/features → features}/launch/index.d.ts +0 -1
- package/dist/{src/features → features}/launch/index.js +0 -1
- package/dist/features/launch/intent.d.ts +10 -0
- package/dist/features/launch/intent.js +8 -0
- package/dist/{src/features → features}/launch/prepare-launch.d.ts +0 -2
- package/dist/{src/features → features}/launch/prepare-launch.js +2 -9
- package/dist/{src/features → features}/launch/profile-paths.d.ts +3 -2
- package/dist/{src/features → features}/launch/profile-paths.js +13 -8
- package/dist/{src/features → features}/launch/runtime-selection.d.ts +2 -5
- package/dist/{src/features → features}/owned-ui/customization.d.ts +3 -1
- package/dist/{src/features → features}/owned-ui/customization.js +3 -1
- package/dist/{src/features → features}/owned-ui/diagnostics.d.ts +2 -1
- package/dist/{src/features → features}/owned-ui/diagnostics.js +1 -0
- package/dist/{src/features → features}/owned-ui/index.d.ts +2 -0
- package/dist/{src/features → features}/owned-ui/index.js +2 -0
- package/dist/features/owned-ui/project-trust-prompt.d.ts +25 -0
- package/dist/features/owned-ui/project-trust-prompt.js +149 -0
- package/dist/{src/features → features}/owned-ui/run.d.ts +2 -2
- package/dist/features/owned-ui/run.js +32 -0
- package/dist/features/owned-ui/session-fork-prompt.d.ts +8 -0
- package/dist/features/owned-ui/session-fork-prompt.js +34 -0
- package/dist/{src/features → features}/owned-ui/settings-app.d.ts +3 -3
- package/dist/{src/features → features}/owned-ui/settings-app.js +105 -56
- package/dist/features/prompt-history/image-sidecar.d.ts +32 -0
- package/dist/features/prompt-history/image-sidecar.js +130 -0
- package/dist/features/prompt-history/index.d.ts +4 -0
- package/dist/features/prompt-history/index.js +3 -0
- package/dist/features/prompt-history/paths.d.ts +5 -0
- package/dist/features/prompt-history/paths.js +17 -0
- package/dist/features/prompt-history/service.d.ts +54 -0
- package/dist/features/prompt-history/service.js +425 -0
- package/dist/features/prompt-history/store.d.ts +16 -0
- package/dist/features/prompt-history/store.js +223 -0
- package/dist/features/prompt-history/worker.d.ts +9 -0
- package/dist/features/prompt-history/worker.js +45 -0
- package/dist/features/prompt-suggestions/diagnostics.d.ts +18 -0
- package/dist/features/prompt-suggestions/diagnostics.js +82 -0
- package/dist/features/prompt-suggestions/index.d.ts +1 -0
- package/dist/features/prompt-suggestions/index.js +1 -0
- package/dist/{src/features → features}/workspace/capabilities.d.ts +1 -1
- package/dist/{src/features → features}/workspace/reducer.d.ts +2 -1
- package/dist/{src/features → features}/workspace/reducer.js +2 -1
- package/dist/{src/features → features}/workspace/router.d.ts +2 -1
- package/dist/{src/features → features}/workspace/router.js +1 -0
- package/dist/{src/features → features}/workspace/store.d.ts +2 -1
- package/dist/{src/features → features}/workspace/store.js +1 -0
- package/dist/foundation/launch-context/index.d.ts +59 -0
- package/dist/foundation/launch-context/index.js +136 -0
- package/dist/{src/foundation → foundation}/launch-guardian/main.d.ts +2 -0
- package/dist/{src/foundation → foundation}/launch-guardian/main.js +23 -8
- package/dist/{src/foundation → foundation}/lifecycle/index.d.ts +2 -0
- package/dist/{src/foundation → foundation}/lifecycle/index.js +2 -0
- package/dist/{src/foundation → foundation}/lifecycle/model.d.ts +1 -1
- package/dist/{src/foundation → foundation}/lifecycle/model.js +1 -1
- package/dist/foundation/lifecycle/paths.d.ts +30 -0
- package/dist/{src/foundation → foundation}/lifecycle/paths.js +29 -1
- package/dist/foundation/lifecycle/session-selection.d.ts +9 -0
- package/dist/foundation/lifecycle/session-selection.js +39 -0
- package/dist/foundation/lifecycle/supervisor-startup.d.ts +30 -0
- package/dist/foundation/lifecycle/supervisor-startup.js +106 -0
- package/dist/{src/foundation → foundation}/native-host-protocol/codec.d.ts +2 -0
- package/dist/{src/foundation → foundation}/native-host-protocol/codec.js +2 -0
- package/dist/{src/foundation → foundation}/native-host-protocol/messages.d.ts +1 -1
- package/dist/{src/foundation → foundation}/native-host-protocol/messages.js +1 -1
- package/dist/foundation/process-containment/darwin-process-inspector.d.ts +5 -0
- package/dist/foundation/process-containment/darwin-process-inspector.js +7 -0
- package/dist/{src/foundation → foundation}/process-containment/index.d.ts +1 -0
- package/dist/{src/foundation → foundation}/process-containment/index.js +1 -0
- package/dist/{src/foundation → foundation}/process-containment/linux-process-inspector.d.ts +1 -0
- package/dist/{src/foundation → foundation}/process-containment/linux-process-inspector.js +1 -0
- package/dist/{src/foundation → foundation}/process-containment/native-guardian-containment.d.ts +1 -0
- package/dist/{src/foundation → foundation}/process-containment/native-guardian-containment.js +1 -0
- package/dist/{src/foundation → foundation}/process-containment/windows-process-inspector.d.ts +3 -1
- package/dist/{src/foundation → foundation}/process-containment/windows-process-inspector.js +5 -2
- package/dist/{src/foundation → foundation}/protocol/client.d.ts +1 -0
- package/dist/{src/foundation → foundation}/protocol/client.js +1 -0
- package/dist/{src/foundation → foundation}/protocol/messages.d.ts +1 -0
- package/dist/{src/foundation → foundation}/protocol/messages.js +1 -0
- package/dist/foundation/release/bootstrap.d.ts +55 -0
- package/dist/{src/foundation → foundation}/release/bootstrap.js +219 -46
- package/dist/foundation/release/cohort-state.d.ts +157 -0
- package/dist/foundation/release/cohort-state.js +472 -0
- package/dist/foundation/release/dependency-certification-retention.d.ts +7 -0
- package/dist/foundation/release/dependency-certification-retention.js +88 -0
- package/dist/foundation/release/dependency-certification.d.ts +24 -0
- package/dist/foundation/release/dependency-certification.js +266 -0
- package/dist/foundation/release/dependency-layer.d.ts +81 -0
- package/dist/foundation/release/dependency-layer.js +466 -0
- package/dist/foundation/release/endpoints.d.ts +20 -0
- package/dist/foundation/release/endpoints.js +50 -0
- package/dist/foundation/release/immutable-platform.d.ts +6 -0
- package/dist/foundation/release/immutable-platform.js +13 -0
- package/dist/{src/foundation → foundation}/release/index.d.ts +6 -0
- package/dist/{src/foundation → foundation}/release/index.js +6 -0
- package/dist/foundation/release/release-gc.d.ts +71 -0
- package/dist/foundation/release/release-gc.js +764 -0
- package/dist/{src/foundation → foundation}/release/release-store.d.ts +9 -3
- package/dist/{src/foundation → foundation}/release/release-store.js +74 -14
- package/dist/{src/foundation → foundation}/release/release.d.ts +6 -1
- package/dist/{src/foundation → foundation}/release/release.js +15 -4
- package/dist/foundation/release/restart-certification.d.ts +68 -0
- package/dist/foundation/release/restart-certification.js +227 -0
- package/dist/foundation/release/update-launch.d.ts +6 -0
- package/dist/foundation/release/update-launch.js +17 -0
- package/dist/foundation/release/update-recovery.d.ts +76 -0
- package/dist/foundation/release/update-recovery.js +356 -0
- package/dist/{src/foundation → foundation}/release/update-transaction.d.ts +11 -0
- package/dist/{src/foundation → foundation}/release/update-transaction.js +13 -1
- package/dist/{src/foundation → foundation}/release/update.d.ts +40 -4
- package/dist/{src/foundation → foundation}/release/update.js +196 -78
- package/dist/foundation/release/warmup.d.ts +3 -0
- package/dist/foundation/release/warmup.js +47 -0
- package/dist/foundation/startup/index.d.ts +1 -0
- package/dist/foundation/startup/index.js +1 -0
- package/dist/foundation/startup/startup-runtime.d.ts +36 -0
- package/dist/foundation/startup/startup-runtime.js +142 -0
- package/dist/{src/foundation → foundation}/storage/control-store.d.ts +2 -1
- package/dist/{src/foundation → foundation}/storage/control-store.js +39 -4
- package/dist/{src/foundation → foundation}/structured-agent-runtime/backpressure.d.ts +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/backpressure.js +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/commands.d.ts +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/commands.js +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/handshake.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/handshake.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/reconnection.d.ts +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/reconnection.js +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/state.d.ts +2 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/state.js +2 -1
- package/dist/foundation/supervision/index.d.ts +3 -0
- package/dist/foundation/supervision/index.js +3 -0
- package/dist/foundation/supervision/main.d.ts +1 -0
- package/dist/foundation/supervision/main.js +84 -0
- package/dist/foundation/supervision/paths.d.ts +1 -0
- package/dist/foundation/supervision/paths.js +1 -0
- package/dist/foundation/supervision/server.d.ts +51 -0
- package/dist/{src/foundation → foundation}/supervision/server.js +142 -20
- package/dist/foundation/terminal-cleanup/fatal-exit.d.ts +12 -0
- package/dist/foundation/terminal-cleanup/fatal-exit.js +85 -0
- package/dist/foundation/terminal-cleanup/index.d.ts +2 -0
- package/dist/foundation/terminal-cleanup/index.js +2 -0
- package/dist/foundation/terminal-cleanup/terminal-reset.d.ts +4 -0
- package/dist/foundation/terminal-cleanup/terminal-reset.js +40 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/components.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/conformance.d.ts +1 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/conformance.js +3 -2
- package/dist/integrations/pi/components/editor-interaction.d.ts +38 -0
- package/dist/integrations/pi/components/history-editor-loader.d.ts +5 -0
- package/dist/integrations/pi/components/history-editor-loader.js +5 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/index.d.ts +2 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/index.js +2 -1
- package/dist/integrations/pi/components/owned-editor-ux.d.ts +74 -0
- package/dist/integrations/pi/components/owned-editor-ux.js +1093 -0
- package/dist/integrations/pi/components/path-word-ranges.d.ts +2 -0
- package/dist/integrations/pi/components/path-word-ranges.js +37 -0
- package/dist/integrations/pi/components/prompt-input-port.d.ts +18 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-components.d.ts +1 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-components.js +1 -0
- package/dist/integrations/pi/components/shell-editor-autocomplete.js +297 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-extension-ui.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-footer-status.d.ts +4 -4
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-footer-status.js +58 -23
- package/dist/integrations/pi/components/shell-presenters-info.d.ts +43 -0
- package/dist/integrations/pi/components/shell-presenters-info.js +114 -0
- package/dist/integrations/pi/components/shell-presenters-transcript.d.ts +29 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-presenters-transcript.js +174 -170
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-selectors-dialogs.d.ts +8 -4
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-selectors-dialogs.js +10 -6
- package/dist/integrations/pi/components/shell-shared-facade.d.ts +213 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-shared-facade.js +5 -2
- package/dist/integrations/pi/components/submitted-prompt-adapter.d.ts +15 -0
- package/dist/integrations/pi/components/submitted-prompt-adapter.js +43 -0
- package/dist/integrations/pi/components/tool-image-presentation.d.ts +21 -0
- package/dist/integrations/pi/components/tool-image-presentation.js +86 -0
- package/dist/integrations/pi/components/tool-result-adapter.d.ts +6 -0
- package/dist/integrations/pi/components/tool-result-adapter.js +27 -0
- package/dist/integrations/pi/components/transcript-image-resolver.d.ts +7 -0
- package/dist/integrations/pi/components/transcript-image-resolver.js +19 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/adjacent/core/keybindings.d.ts +11 -2
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/adjacent/core/keybindings.js +41 -3
- package/dist/integrations/pi/components/upstream/assets/earendil-image.json +12 -0
- package/dist/integrations/pi/components/upstream/components/earendil-announcement.js +42 -0
- package/dist/integrations/pi/components/upstream/components/owned-editor.d.ts +40 -0
- package/dist/integrations/pi/components/upstream/components/owned-editor.js +166 -0
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/scoped-models-selector.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/scoped-models-selector.js +3 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-footer.d.ts +3 -2
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-footer.js +12 -7
- package/dist/integrations/pi/components/upstream/components/tool-execution.d.ts +61 -0
- package/dist/integrations/pi/components/upstream/components/tool-execution.js +344 -0
- package/dist/integrations/pi/components/upstream/history/editor-core.d.ts +280 -0
- package/dist/integrations/pi/components/upstream/history/editor-core.js +2062 -0
- package/dist/integrations/pi/components/upstream/history/kill-ring.d.ts +32 -0
- package/dist/integrations/pi/components/upstream/history/kill-ring.js +48 -0
- package/dist/integrations/pi/components/upstream/history/printable-key.d.ts +1 -0
- package/dist/integrations/pi/components/upstream/history/printable-key.js +40 -0
- package/dist/integrations/pi/components/upstream/history/text-helpers.d.ts +14 -0
- package/dist/integrations/pi/components/upstream/history/text-helpers.js +28 -0
- package/dist/integrations/pi/components/upstream/history/undo-stack.d.ts +22 -0
- package/dist/integrations/pi/components/upstream/history/undo-stack.js +36 -0
- package/dist/integrations/pi/components/upstream/history/word-navigation.d.ts +24 -0
- package/dist/integrations/pi/components/upstream/history/word-navigation.js +100 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/adapter.d.ts +74 -6
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/adapter.js +1340 -228
- package/dist/integrations/pi/engine/changelog.d.ts +2 -0
- package/dist/integrations/pi/engine/changelog.js +63 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/conformance.d.ts +4 -2
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/conformance.js +15 -5
- package/dist/integrations/pi/engine/http-dispatcher.d.ts +4 -0
- package/dist/integrations/pi/engine/http-dispatcher.js +25 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/index.d.ts +4 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/index.js +4 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/model-auth-integration.d.ts +2 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/model-auth-integration.js +1 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.js +32 -26
- package/dist/integrations/pi/engine/pending-delivery.d.ts +30 -0
- package/dist/integrations/pi/engine/pending-delivery.js +158 -0
- package/dist/integrations/pi/engine/project-trust-preflight.d.ts +22 -0
- package/dist/integrations/pi/engine/project-trust-preflight.js +50 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/resource-extension-integration.d.ts +2 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/resource-extension-integration.js +1 -0
- package/dist/integrations/pi/engine/resources/changelog.json +12 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/runtime-integration.d.ts +19 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/runtime-integration.js +56 -5
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/session-integration.d.ts +4 -2
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/session-integration.js +19 -4
- package/dist/integrations/pi/engine/session-selection.d.ts +28 -0
- package/dist/integrations/pi/engine/session-selection.js +90 -0
- package/dist/integrations/pi/engine/settings-effects.d.ts +66 -0
- package/dist/integrations/pi/engine/settings-effects.js +249 -0
- package/dist/integrations/pi/engine/settings-integration.d.ts +43 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/settings-integration.js +102 -108
- package/dist/integrations/pi/engine/tool-rendering.d.ts +13 -0
- package/dist/integrations/pi/engine/tool-rendering.js +145 -0
- package/dist/integrations/pi/engine/transcript-image-assets.d.ts +11 -0
- package/dist/integrations/pi/engine/transcript-image-assets.js +86 -0
- package/dist/integrations/pi/engine/windows-filesystem-hygiene.d.ts +21 -0
- package/dist/integrations/pi/engine/windows-filesystem-hygiene.js +55 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflow-controllers.d.ts +3 -2
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflow-controllers.js +1 -0
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflows.d.ts +19 -2
- package/dist/integrations/pi/session-ui/clipboard-diagnostics.d.ts +16 -0
- package/dist/integrations/pi/session-ui/clipboard-diagnostics.js +65 -0
- package/dist/integrations/pi/session-ui/clipboard-image.d.ts +11 -0
- package/dist/integrations/pi/session-ui/clipboard-image.js +38 -0
- package/dist/integrations/pi/session-ui/editor-hyperlink-budget.d.ts +9 -0
- package/dist/integrations/pi/session-ui/editor-hyperlink-budget.js +23 -0
- package/dist/integrations/pi/session-ui/image-preparation-client.d.ts +20 -0
- package/dist/integrations/pi/session-ui/image-preparation-client.js +145 -0
- package/dist/integrations/pi/session-ui/image-preparation.d.ts +18 -0
- package/dist/integrations/pi/session-ui/image-preparation.js +126 -0
- package/dist/integrations/pi/session-ui/image-source.d.ts +13 -0
- package/dist/integrations/pi/session-ui/image-source.js +171 -0
- package/dist/integrations/pi/session-ui/image-worker.d.ts +17 -0
- package/dist/integrations/pi/session-ui/image-worker.js +23 -0
- package/dist/integrations/pi/session-ui/index.d.ts +5 -0
- package/dist/integrations/pi/session-ui/index.js +5 -0
- package/dist/integrations/pi/session-ui/paste-executor.d.ts +10 -0
- package/dist/integrations/pi/session-ui/paste-executor.js +232 -0
- package/dist/integrations/pi/session-ui/paste-helper.d.ts +1 -0
- package/dist/integrations/pi/session-ui/paste-helper.js +173 -0
- package/dist/integrations/pi/session-ui/paste-preparation-client.d.ts +16 -0
- package/dist/integrations/pi/session-ui/paste-preparation-client.js +159 -0
- package/dist/integrations/pi/session-ui/paste-protocol.d.ts +78 -0
- package/dist/integrations/pi/session-ui/paste-protocol.js +18 -0
- package/dist/integrations/pi/session-ui/paste-text-preparation.d.ts +20 -0
- package/dist/integrations/pi/session-ui/paste-text-preparation.js +134 -0
- package/dist/integrations/pi/session-ui/paste-text-worker.d.ts +1 -0
- package/dist/integrations/pi/session-ui/paste-text-worker.js +12 -0
- package/dist/integrations/pi/session-ui/path-chip-presentation.d.ts +7 -0
- package/dist/integrations/pi/session-ui/path-chip-presentation.js +24 -0
- package/dist/integrations/pi/session-ui/prompt-chips.d.ts +72 -0
- package/dist/integrations/pi/session-ui/prompt-chips.js +503 -0
- package/dist/integrations/pi/session-ui/prompt-history-controller.d.ts +36 -0
- package/dist/integrations/pi/session-ui/prompt-history-controller.js +170 -0
- package/dist/integrations/pi/session-ui/prompt-suggestion-controller.d.ts +35 -0
- package/dist/integrations/pi/session-ui/prompt-suggestion-controller.js +207 -0
- package/dist/integrations/pi/session-ui/response-copy-coordinator.d.ts +27 -0
- package/dist/integrations/pi/session-ui/response-copy-coordinator.js +189 -0
- package/dist/integrations/pi/session-ui/response-copy-helper.d.ts +1 -0
- package/dist/integrations/pi/session-ui/response-copy-helper.js +122 -0
- package/dist/integrations/pi/session-ui/response-copy-protocol.d.ts +56 -0
- package/dist/integrations/pi/session-ui/response-copy-protocol.js +5 -0
- package/dist/integrations/pi/session-ui/response-copy-transport.d.ts +31 -0
- package/dist/integrations/pi/session-ui/response-copy-transport.js +187 -0
- package/dist/integrations/pi/session-ui/route-host.d.ts +5 -0
- package/dist/integrations/pi/session-ui/route-host.js +1 -0
- package/dist/integrations/pi/session-ui/session-shell-root.d.ts +221 -0
- package/dist/integrations/pi/session-ui/session-shell-root.js +1305 -0
- package/dist/integrations/pi/session-ui/session-shell.d.ts +55 -0
- package/dist/integrations/pi/session-ui/session-shell.js +1792 -0
- package/dist/integrations/pi/session-ui/session-viewport-controller.d.ts +56 -0
- package/dist/integrations/pi/session-ui/session-viewport-controller.js +569 -0
- package/dist/integrations/pi/session-ui/stream-presentation-coalescer.d.ts +29 -0
- package/dist/integrations/pi/session-ui/stream-presentation-coalescer.js +79 -0
- package/dist/integrations/pi/session-ui/system-clipboard.d.ts +20 -0
- package/dist/integrations/pi/session-ui/system-clipboard.js +156 -0
- package/dist/integrations/pi/session-ui/text-paste.d.ts +5 -0
- package/dist/integrations/pi/session-ui/text-paste.js +16 -0
- package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/adapter.d.ts +10 -1
- package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/adapter.js +255 -11
- package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/contracts.d.ts +32 -6
- package/dist/integrations/pi/tui-runtime/contracts.js +1 -0
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.d.ts +81 -0
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.js +424 -0
- package/dist/integrations/pi/tui-runtime/index.d.ts +7 -0
- package/dist/integrations/pi/tui-runtime/index.js +7 -0
- package/dist/integrations/pi/tui-runtime/input-presentation-coordinator.d.ts +39 -0
- package/dist/integrations/pi/tui-runtime/input-presentation-coordinator.js +139 -0
- package/dist/integrations/pi/tui-runtime/mouse-report-input.d.ts +13 -0
- package/dist/integrations/pi/tui-runtime/mouse-report-input.js +59 -0
- package/dist/integrations/pi/tui-runtime/overlay-geometry.d.ts +32 -0
- package/dist/integrations/pi/tui-runtime/overlay-geometry.js +159 -0
- package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/presentation-adapter.d.ts +1 -1
- package/dist/native/darwin-arm64/manifest.json +4 -4
- package/dist/native/darwin-arm64/process-guardian +0 -0
- package/dist/native/linux-x64/manifest.json +3 -3
- package/dist/native/linux-x64/process-guardian +0 -0
- package/dist/native/win32-x64/manifest.json +3 -3
- package/dist/native/win32-x64/process-guardian.exe +0 -0
- package/dist/{src/product-identity.d.ts → product-identity.d.ts} +4 -4
- package/dist/{src/product-identity.js → product-identity.js} +7 -38
- package/dist/{src/product-identity.json → product-identity.json} +13 -27
- package/dist/runtime-payload-inventory.json +122333 -0
- package/dist/{src/foundation/ui-apps → ui/apps}/contracts.d.ts +23 -1
- package/dist/{src/foundation/ui-apps → ui/apps}/host.d.ts +1 -1
- package/dist/{src/foundation/ui-apps → ui/apps}/host.js +14 -10
- package/dist/{src/foundation/ui-apps → ui/apps}/registry.d.ts +1 -0
- package/dist/{src/foundation/ui-apps → ui/apps}/registry.js +1 -0
- package/dist/{src/foundation/ui-components → ui/components}/dialog-panel.js +5 -3
- package/dist/{src/foundation/ui-components → ui/components}/frame.d.ts +1 -0
- package/dist/{src/foundation/ui-components → ui/components}/frame.js +1 -0
- package/dist/{src/foundation/ui-components → ui/components}/index.d.ts +7 -0
- package/dist/{src/foundation/ui-components → ui/components}/index.js +7 -0
- package/dist/{src/foundation/ui-components → ui/components}/line-input.d.ts +2 -8
- package/dist/{src/foundation/ui-components → ui/components}/line-input.js +7 -28
- package/dist/{src/foundation/ui-components → ui/components}/list-view.d.ts +0 -6
- package/dist/{src/foundation/ui-components → ui/components}/list-view.js +14 -7
- package/dist/{src/foundation/ui-components → ui/components}/mouse.d.ts +10 -0
- package/dist/{src/foundation/ui-components → ui/components}/mouse.js +24 -0
- package/dist/ui/components/progress-status.d.ts +2 -0
- package/dist/ui/components/progress-status.js +4 -0
- package/dist/ui/components/prompt-input.d.ts +32 -0
- package/dist/ui/components/prompt-input.js +54 -0
- package/dist/ui/components/prompt-row.d.ts +14 -0
- package/dist/ui/components/prompt-row.js +20 -0
- package/dist/{src/foundation/ui-components → ui/components}/scrollbar.d.ts +26 -0
- package/dist/{src/foundation/ui-components → ui/components}/scrollbar.js +35 -0
- package/dist/ui/components/selection-copy.d.ts +24 -0
- package/dist/ui/components/selection-copy.js +39 -0
- package/dist/{src/foundation/ui-components → ui/components}/shortcuts.d.ts +1 -0
- package/dist/{src/foundation/ui-components → ui/components}/shortcuts.js +1 -0
- package/dist/ui/components/spans.d.ts +28 -0
- package/dist/ui/components/spans.js +266 -0
- package/dist/ui/components/submitted-prompt.d.ts +23 -0
- package/dist/ui/components/submitted-prompt.js +50 -0
- package/dist/{src/foundation/ui-components → ui/components}/surface.d.ts +0 -5
- package/dist/{src/foundation/ui-components → ui/components}/surface.js +1 -5
- package/dist/ui/components/text-selection.d.ts +62 -0
- package/dist/ui/components/text-selection.js +210 -0
- package/dist/{src/foundation/ui-components → ui/components}/text.d.ts +14 -0
- package/dist/{src/foundation/ui-components → ui/components}/text.js +67 -5
- package/dist/ui/components/transcript-viewport.d.ts +173 -0
- package/dist/ui/components/transcript-viewport.js +753 -0
- package/dist/ui/components/visible-hyperlinks.d.ts +26 -0
- package/dist/ui/components/visible-hyperlinks.js +97 -0
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/declarations.d.ts +8 -1
- package/dist/ui/settings/declarations.js +94 -0
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/migrations.d.ts +1 -1
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/migrations.js +28 -2
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/sections.d.ts +6 -19
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/sections.js +41 -22
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/session.d.ts +9 -17
- package/dist/ui/settings/session.js +164 -0
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/store.d.ts +1 -0
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/store.js +2 -1
- package/docs/architecture/boundaries.md +14 -10
- package/docs/architecture/code-documentation.md +77 -0
- package/docs/architecture/history-editor-provenance.md +100 -0
- package/docs/architecture/internal-naming.md +91 -0
- package/docs/architecture/process-guardian-provenance.md +3 -1
- package/docs/architecture/project-structure.md +69 -30
- package/docs/architecture/prompt-suggestions.md +68 -0
- package/docs/architecture/resource-and-data-policy.md +28 -2
- package/docs/architecture/response-copy-delivery.md +83 -0
- package/docs/architecture/tool-image-presentation.md +62 -0
- package/docs/architecture/toolchain.md +24 -10
- package/docs/architecture/ui-reference-provenance.md +59 -5
- package/docs/ci-release-runbook.md +236 -79
- package/docs/features/launch-profiles.md +24 -17
- package/docs/features/modal-content-interaction.md +37 -0
- package/docs/features/prompt-history.md +149 -0
- package/docs/local-worktree-cleanup.md +128 -0
- package/docs/manual-code-streaming-cleanup.md +88 -0
- package/docs/manual-ghost-link-baseline.md +89 -0
- package/docs/manual-launch-instance-acceptance.md +12 -35
- package/docs/manual-owned-ui-checkpoint.md +78 -0
- package/docs/manual-pi-boundary-candidate.md +4 -5
- package/docs/manual-terminal-colour-check.md +4 -3
- package/docs/openspec-archive-automation.md +128 -0
- package/docs/repository-governance-live-acceptance.md +77 -0
- package/package.json +45 -28
- package/dist/src/cli/capabilities.d.ts +0 -15
- package/dist/src/cli/dispatch.js +0 -142
- package/dist/src/cli/version-stats.js +0 -72
- package/dist/src/composition/index.d.ts +0 -48
- package/dist/src/composition/index.js +0 -258
- package/dist/src/features/launch/intent.d.ts +0 -7
- package/dist/src/features/launch/intent.js +0 -4
- package/dist/src/features/launch/profiles.d.ts +0 -12
- package/dist/src/features/launch/profiles.js +0 -26
- package/dist/src/features/owned-ui/run.js +0 -15
- package/dist/src/foundation/lifecycle/paths.d.ts +0 -10
- package/dist/src/foundation/owned-ui-contracts/index.d.ts +0 -3
- package/dist/src/foundation/owned-ui-contracts/index.js +0 -3
- package/dist/src/foundation/owned-ui-settings/declarations.js +0 -39
- package/dist/src/foundation/owned-ui-settings/session.js +0 -145
- package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.js +0 -162
- package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.d.ts +0 -57
- package/dist/src/foundation/pi-component-adapter/shell-shared-facade.d.ts +0 -116
- package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.js +0 -19
- package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.d.ts +0 -18
- package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.js +0 -55
- package/dist/src/foundation/pi-engine-adapter/settings-integration.d.ts +0 -55
- package/dist/src/foundation/pi-owned-ui-integration/index.d.ts +0 -2
- package/dist/src/foundation/pi-owned-ui-integration/index.js +0 -2
- package/dist/src/foundation/pi-owned-ui-integration/route-host.d.ts +0 -29
- package/dist/src/foundation/pi-owned-ui-integration/session-shell.d.ts +0 -106
- package/dist/src/foundation/pi-owned-ui-integration/session-shell.js +0 -1518
- package/dist/src/foundation/pi-tui-runtime-adapter/index.d.ts +0 -4
- package/dist/src/foundation/pi-tui-runtime-adapter/index.js +0 -4
- package/dist/src/foundation/release/bootstrap.d.ts +0 -29
- package/dist/src/foundation/release/cohort-state.d.ts +0 -70
- package/dist/src/foundation/release/cohort-state.js +0 -202
- package/dist/src/foundation/release/release-gc.d.ts +0 -5
- package/dist/src/foundation/release/release-gc.js +0 -16
- package/dist/src/foundation/supervision/index.d.ts +0 -3
- package/dist/src/foundation/supervision/index.js +0 -3
- package/dist/src/foundation/supervision/main.d.ts +0 -1
- package/dist/src/foundation/supervision/main.js +0 -41
- package/dist/src/foundation/supervision/paths.d.ts +0 -1
- package/dist/src/foundation/supervision/paths.js +0 -1
- package/dist/src/foundation/supervision/server.d.ts +0 -22
- package/dist/src/foundation/ui-components/spans.d.ts +0 -7
- package/dist/src/foundation/ui-components/spans.js +0 -59
- package/docs/manual-transparent-checkpoint.md +0 -53
- /package/dist/{src/cli → cli}/index.d.ts +0 -0
- /package/dist/{src/cli → cli}/index.js +0 -0
- /package/dist/{src/cli → cli}/version.d.ts +0 -0
- /package/dist/{src/cli → cli}/version.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/capability-ports.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain-validation.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/index.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/index.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/model.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/model.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/package-ports.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/ports.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/ports.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/serialization.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/serialization.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/validation.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/validation.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/extension-ui.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/extension-ui.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/model.js +0 -0
- /package/dist/{src/foundation/presentation-contracts → contracts/presentation}/index.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/index.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/index.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/model.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/model.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/validation.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/validation.js +0 -0
- /package/dist/{src/features → features}/launch/development-launch.d.ts +0 -0
- /package/dist/{src/features → features}/launch/initialize-profile.d.ts +0 -0
- /package/dist/{src/features → features}/launch/initialize-profile.js +0 -0
- /package/dist/{src/features → features}/launch/runtime-selection.js +0 -0
- /package/dist/{src/features → features}/workspace/capabilities.js +0 -0
- /package/dist/{src/features → features}/workspace/index.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/index.js +0 -0
- /package/dist/{src/features → features}/workspace/presentation.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/presentation.js +0 -0
- /package/dist/{src/features → features}/workspace/reconciliation.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/reconciliation.js +0 -0
- /package/dist/{src/foundation → foundation}/launch-guardian/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/launch-guardian/index.js +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/commands.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/commands.js +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/launch-instance.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/launch-instance.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/evidence.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/evidence.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/index.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/proof-gate.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/proof-gate.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/artifact.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/artifact.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/contracts.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/contracts.js +0 -0
- /package/dist/{src/foundation → foundation}/protocol/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/protocol/index.js +0 -0
- /package/dist/{src/foundation → foundation}/release/cohort-selection.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/cohort-selection.js +0 -0
- /package/dist/{src/foundation → foundation}/release/concurrency.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/concurrency.js +0 -0
- /package/dist/{src/foundation → foundation}/release/process-cleanup.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/process-cleanup.js +0 -0
- /package/dist/{src/foundation → foundation}/release/stable-release.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/stable-release.js +0 -0
- /package/dist/{src/foundation → foundation}/storage/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/storage/index.js +0 -0
- /package/dist/{src/foundation → foundation}/structured-agent-runtime/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/structured-agent-runtime/index.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/components.js +0 -0
- /package/dist/{src/foundation/pi-owned-ui-integration/route-host.js → integrations/pi/components/editor-interaction.js} +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter/contracts.js → integrations/pi/components/prompt-input-port.js} +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/resources/builtin-themes.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/resources/builtin-themes.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-editor-autocomplete.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-extension-ui.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/theme.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/theme.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/countdown-timer.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/countdown-timer.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/custom-entry.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/custom-entry.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/daxnuts.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/daxnuts.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/earendil-announcement.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/extension-editor.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/extension-editor.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/first-time-setup.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/first-time-setup.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/markdown-transform.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/markdown-transform.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/mermaid.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/mermaid.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector-search.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector-search.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/skill-invocation-message.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/skill-invocation-message.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/status-indicator.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/status-indicator.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/tree-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/tree-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/trust-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/trust-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/external-editor.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/external-editor.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/model-search.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/model-search.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme-controller.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme-controller.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/pi-settings-metadata.json +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/public-main-entry.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/public-main-entry.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflows.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/conformance.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/conformance.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/presentation-adapter.js +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/contracts.js +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/index.d.ts +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/index.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/dialog-panel.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/label.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/label.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/list-block.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/list-block.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/pane.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/pane.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/revision.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/revision.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/status-line.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/status-line.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/stepper.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/stepper.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/theme.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/theme.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/value-menu.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/value-menu.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/index.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/index.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/resolution.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/resolution.js +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/kill-ring.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Ring buffer for Emacs-style kill/yank operations.
|
|
8
|
+
*
|
|
9
|
+
* Tracks killed (deleted) text entries. Consecutive kills can accumulate
|
|
10
|
+
* into a single entry. Supports yank (paste most recent) and yank-pop
|
|
11
|
+
* (cycle through older entries).
|
|
12
|
+
*/
|
|
13
|
+
export declare class KillRing {
|
|
14
|
+
private ring;
|
|
15
|
+
/**
|
|
16
|
+
* Add text to the kill ring.
|
|
17
|
+
*
|
|
18
|
+
* @param text - The killed text to add
|
|
19
|
+
* @param opts - Push options
|
|
20
|
+
* @param opts.prepend - If accumulating, prepend (backward deletion) or append (forward deletion)
|
|
21
|
+
* @param opts.accumulate - Merge with the most recent entry instead of creating a new one
|
|
22
|
+
*/
|
|
23
|
+
push(text: string, opts: {
|
|
24
|
+
prepend: boolean;
|
|
25
|
+
accumulate?: boolean;
|
|
26
|
+
}): void;
|
|
27
|
+
/** Get most recent entry without modifying the ring. */
|
|
28
|
+
peek(): string | undefined;
|
|
29
|
+
/** Move last entry to front (for yank-pop cycling). */
|
|
30
|
+
rotate(): void;
|
|
31
|
+
get length(): number;
|
|
32
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/kill-ring.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Ring buffer for Emacs-style kill/yank operations.
|
|
8
|
+
*
|
|
9
|
+
* Tracks killed (deleted) text entries. Consecutive kills can accumulate
|
|
10
|
+
* into a single entry. Supports yank (paste most recent) and yank-pop
|
|
11
|
+
* (cycle through older entries).
|
|
12
|
+
*/
|
|
13
|
+
export class KillRing {
|
|
14
|
+
ring = [];
|
|
15
|
+
/**
|
|
16
|
+
* Add text to the kill ring.
|
|
17
|
+
*
|
|
18
|
+
* @param text - The killed text to add
|
|
19
|
+
* @param opts - Push options
|
|
20
|
+
* @param opts.prepend - If accumulating, prepend (backward deletion) or append (forward deletion)
|
|
21
|
+
* @param opts.accumulate - Merge with the most recent entry instead of creating a new one
|
|
22
|
+
*/
|
|
23
|
+
push(text, opts) {
|
|
24
|
+
if (!text)
|
|
25
|
+
return;
|
|
26
|
+
if (opts.accumulate && this.ring.length > 0) {
|
|
27
|
+
const last = this.ring.pop();
|
|
28
|
+
this.ring.push(opts.prepend ? text + last : last + text);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.ring.push(text);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/** Get most recent entry without modifying the ring. */
|
|
35
|
+
peek() {
|
|
36
|
+
return this.ring.length > 0 ? this.ring[this.ring.length - 1] : undefined;
|
|
37
|
+
}
|
|
38
|
+
/** Move last entry to front (for yank-pop cycling). */
|
|
39
|
+
rotate() {
|
|
40
|
+
if (this.ring.length > 1) {
|
|
41
|
+
const last = this.ring.pop();
|
|
42
|
+
this.ring.unshift(last);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
get length() {
|
|
46
|
+
return this.ring.length;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function decodePrintableKey(data: string): string | undefined;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/keys.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
import { decodeKittyPrintable } from "#pi-tui";
|
|
7
|
+
const MODIFIERS = {
|
|
8
|
+
shift: 1,
|
|
9
|
+
alt: 2,
|
|
10
|
+
ctrl: 4,
|
|
11
|
+
super: 8,
|
|
12
|
+
};
|
|
13
|
+
const LOCK_MASK = 64 + 128;
|
|
14
|
+
function parseModifyOtherKeysSequence(data) {
|
|
15
|
+
const match = data.match(/^\x1b\[27;(\d+);(\d+)~$/);
|
|
16
|
+
if (!match)
|
|
17
|
+
return null;
|
|
18
|
+
const modValue = parseInt(match[1], 10);
|
|
19
|
+
const codepoint = parseInt(match[2], 10);
|
|
20
|
+
return { codepoint, modifier: modValue - 1 };
|
|
21
|
+
}
|
|
22
|
+
function decodeModifyOtherKeysPrintable(data) {
|
|
23
|
+
const parsed = parseModifyOtherKeysSequence(data);
|
|
24
|
+
if (!parsed)
|
|
25
|
+
return undefined;
|
|
26
|
+
const modifier = parsed.modifier & ~LOCK_MASK;
|
|
27
|
+
if ((modifier & ~MODIFIERS.shift) !== 0)
|
|
28
|
+
return undefined;
|
|
29
|
+
if (!Number.isFinite(parsed.codepoint) || parsed.codepoint < 32)
|
|
30
|
+
return undefined;
|
|
31
|
+
try {
|
|
32
|
+
return String.fromCodePoint(parsed.codepoint);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function decodePrintableKey(data) {
|
|
39
|
+
return decodeKittyPrintable(data) ?? decodeModifyOtherKeysPrintable(data);
|
|
40
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the shared grapheme segmenter instance.
|
|
3
|
+
*/
|
|
4
|
+
export declare function getGraphemeSegmenter(): Intl.Segmenter;
|
|
5
|
+
/**
|
|
6
|
+
* Get the shared word segmenter instance.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getWordSegmenter(): Intl.Segmenter;
|
|
9
|
+
export declare const cjkBreakRegex: RegExp;
|
|
10
|
+
export declare const PUNCTUATION_REGEX: RegExp;
|
|
11
|
+
/**
|
|
12
|
+
* Check if a character is whitespace.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isWhitespaceChar(char: string): boolean;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/utils.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
// segmenters (shared instance)
|
|
7
|
+
const graphemeSegmenter = new Intl.Segmenter(undefined, { granularity: "grapheme" });
|
|
8
|
+
const wordSegmenter = new Intl.Segmenter(undefined, { granularity: "word" });
|
|
9
|
+
/**
|
|
10
|
+
* Get the shared grapheme segmenter instance.
|
|
11
|
+
*/
|
|
12
|
+
export function getGraphemeSegmenter() {
|
|
13
|
+
return graphemeSegmenter;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Get the shared word segmenter instance.
|
|
17
|
+
*/
|
|
18
|
+
export function getWordSegmenter() {
|
|
19
|
+
return wordSegmenter;
|
|
20
|
+
}
|
|
21
|
+
export const cjkBreakRegex = /[\p{Script_Extensions=Han}\p{Script_Extensions=Hiragana}\p{Script_Extensions=Katakana}\p{Script_Extensions=Hangul}\p{Script_Extensions=Bopomofo}]/u;
|
|
22
|
+
export const PUNCTUATION_REGEX = /[(){}[\]<>.,;:'"!?+\-=*/\\|&%^$#@~`]/;
|
|
23
|
+
/**
|
|
24
|
+
* Check if a character is whitespace.
|
|
25
|
+
*/
|
|
26
|
+
export function isWhitespaceChar(char) {
|
|
27
|
+
return /\s/.test(char);
|
|
28
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/undo-stack.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Generic undo stack with clone-on-push semantics.
|
|
8
|
+
*
|
|
9
|
+
* Stores deep clones of state snapshots. Popped snapshots are returned
|
|
10
|
+
* directly (no re-cloning) since they are already detached.
|
|
11
|
+
*/
|
|
12
|
+
export declare class UndoStack<S> {
|
|
13
|
+
private stack;
|
|
14
|
+
/** Push a deep clone of the given state onto the stack. */
|
|
15
|
+
push(state: S): void;
|
|
16
|
+
/** Pop and return the most recent snapshot, or undefined if empty. */
|
|
17
|
+
pop(): S | undefined;
|
|
18
|
+
/** Remove all snapshots. */
|
|
19
|
+
clear(): void;
|
|
20
|
+
updateSnapshots(update: (snapshot: S) => void): void;
|
|
21
|
+
get length(): number;
|
|
22
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/undo-stack.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Generic undo stack with clone-on-push semantics.
|
|
8
|
+
*
|
|
9
|
+
* Stores deep clones of state snapshots. Popped snapshots are returned
|
|
10
|
+
* directly (no re-cloning) since they are already detached.
|
|
11
|
+
*/
|
|
12
|
+
export class UndoStack {
|
|
13
|
+
stack = [];
|
|
14
|
+
/** Push a deep clone of the given state onto the stack. */
|
|
15
|
+
push(state) {
|
|
16
|
+
this.stack.push(structuredClone(state));
|
|
17
|
+
}
|
|
18
|
+
/** Pop and return the most recent snapshot, or undefined if empty. */
|
|
19
|
+
pop() {
|
|
20
|
+
return this.stack.pop();
|
|
21
|
+
}
|
|
22
|
+
/** Remove all snapshots. */
|
|
23
|
+
clear() {
|
|
24
|
+
this.stack.length = 0;
|
|
25
|
+
}
|
|
26
|
+
updateSnapshots(update) {
|
|
27
|
+
this.stack = this.stack.map(snapshot => {
|
|
28
|
+
const copy = structuredClone(snapshot);
|
|
29
|
+
update(copy);
|
|
30
|
+
return copy;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
get length() {
|
|
34
|
+
return this.stack.length;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Options for word navigation functions.
|
|
3
|
+
* When omitted, uses the default Intl.Segmenter word segmentation.
|
|
4
|
+
*/
|
|
5
|
+
export interface WordNavigationOptions {
|
|
6
|
+
/** Custom segmenter returning word segments for the given text. */
|
|
7
|
+
segment?: (text: string) => Iterable<Intl.SegmentData>;
|
|
8
|
+
/** Predicate identifying atomic segments that should be treated as single units (e.g. paste markers). */
|
|
9
|
+
isAtomicSegment?: (segment: string) => boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Find the cursor position after moving one word backward from `cursor` in `text`.
|
|
13
|
+
* Skips trailing whitespace, then stops at the next word/punctuation boundary.
|
|
14
|
+
*
|
|
15
|
+
* Pure function - does not mutate any state.
|
|
16
|
+
*/
|
|
17
|
+
export declare function findWordBackward(text: string, cursor: number, options?: WordNavigationOptions): number;
|
|
18
|
+
/**
|
|
19
|
+
* Find the cursor position after moving one word forward from `cursor` in `text`.
|
|
20
|
+
* Skips leading whitespace, then stops at the next word/punctuation boundary.
|
|
21
|
+
*
|
|
22
|
+
* Pure function - does not mutate any state.
|
|
23
|
+
*/
|
|
24
|
+
export declare function findWordForward(text: string, cursor: number, options?: WordNavigationOptions): number;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapted from @earendil-works/pi-tui 0.84.2, packages/tui/src/word-navigation.ts (MIT).
|
|
3
|
+
* Source commit: 914cf1472e715297caa30db4b9535d534a9eb718.
|
|
4
|
+
* Modifications: public imports and owned editor-local typed seams; see docs/architecture/history-editor-provenance.md.
|
|
5
|
+
*/
|
|
6
|
+
import { getWordSegmenter, isWhitespaceChar, PUNCTUATION_REGEX } from "./text-helpers.js";
|
|
7
|
+
const wordSegmenter = getWordSegmenter();
|
|
8
|
+
/**
|
|
9
|
+
* Find the cursor position after moving one word backward from `cursor` in `text`.
|
|
10
|
+
* Skips trailing whitespace, then stops at the next word/punctuation boundary.
|
|
11
|
+
*
|
|
12
|
+
* Pure function - does not mutate any state.
|
|
13
|
+
*/
|
|
14
|
+
export function findWordBackward(text, cursor, options) {
|
|
15
|
+
if (cursor <= 0)
|
|
16
|
+
return 0;
|
|
17
|
+
const textBeforeCursor = text.slice(0, cursor);
|
|
18
|
+
const segmentFn = options?.segment;
|
|
19
|
+
const isAtomic = options?.isAtomicSegment;
|
|
20
|
+
const segments = segmentFn ? [...segmentFn(textBeforeCursor)] : [...wordSegmenter.segment(textBeforeCursor)];
|
|
21
|
+
let newCursor = cursor;
|
|
22
|
+
// Skip trailing whitespace
|
|
23
|
+
while (segments.length > 0 &&
|
|
24
|
+
!isAtomic?.(segments[segments.length - 1]?.segment || "") &&
|
|
25
|
+
isWhitespaceChar(segments[segments.length - 1]?.segment || "")) {
|
|
26
|
+
newCursor -= segments.pop()?.segment.length || 0;
|
|
27
|
+
}
|
|
28
|
+
if (segments.length === 0)
|
|
29
|
+
return newCursor;
|
|
30
|
+
const last = segments[segments.length - 1];
|
|
31
|
+
if (isAtomic?.(last.segment)) {
|
|
32
|
+
// Skip one atomic segment.
|
|
33
|
+
newCursor -= last.segment.length;
|
|
34
|
+
}
|
|
35
|
+
else if (last.isWordLike) {
|
|
36
|
+
// Skip inside one word-like segment, preserving ASCII punctuation boundaries.
|
|
37
|
+
const segment = last.segment;
|
|
38
|
+
const matches = [...segment.matchAll(new RegExp(PUNCTUATION_REGEX, "g"))];
|
|
39
|
+
if (matches.length <= 0) {
|
|
40
|
+
newCursor -= segment.length;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const lastMatch = matches[matches.length - 1];
|
|
44
|
+
newCursor -= segment.length - (lastMatch.index + lastMatch[0].length);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
// Skip non-word non-whitespace run (punctuation)
|
|
49
|
+
while (segments.length > 0 &&
|
|
50
|
+
!isAtomic?.(segments[segments.length - 1]?.segment || "") &&
|
|
51
|
+
!segments[segments.length - 1]?.isWordLike &&
|
|
52
|
+
!isWhitespaceChar(segments[segments.length - 1]?.segment || "")) {
|
|
53
|
+
newCursor -= segments.pop()?.segment.length || 0;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return newCursor;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Find the cursor position after moving one word forward from `cursor` in `text`.
|
|
60
|
+
* Skips leading whitespace, then stops at the next word/punctuation boundary.
|
|
61
|
+
*
|
|
62
|
+
* Pure function - does not mutate any state.
|
|
63
|
+
*/
|
|
64
|
+
export function findWordForward(text, cursor, options) {
|
|
65
|
+
if (cursor >= text.length)
|
|
66
|
+
return text.length;
|
|
67
|
+
const textAfterCursor = text.slice(cursor);
|
|
68
|
+
const segmentFn = options?.segment;
|
|
69
|
+
const isAtomic = options?.isAtomicSegment;
|
|
70
|
+
const segments = segmentFn ? segmentFn(textAfterCursor) : wordSegmenter.segment(textAfterCursor);
|
|
71
|
+
const iterator = segments[Symbol.iterator]();
|
|
72
|
+
let next = iterator.next();
|
|
73
|
+
let newCursor = cursor;
|
|
74
|
+
// Skip leading whitespace
|
|
75
|
+
while (!next.done && !isAtomic?.(next.value.segment) && isWhitespaceChar(next.value.segment)) {
|
|
76
|
+
newCursor += next.value.segment.length;
|
|
77
|
+
next = iterator.next();
|
|
78
|
+
}
|
|
79
|
+
if (next.done)
|
|
80
|
+
return newCursor;
|
|
81
|
+
if (isAtomic?.(next.value.segment)) {
|
|
82
|
+
// Skip one atomic segment.
|
|
83
|
+
newCursor += next.value.segment.length;
|
|
84
|
+
}
|
|
85
|
+
else if (next.value.isWordLike) {
|
|
86
|
+
// Skip inside one word-like segment, preserving ASCII punctuation boundaries.
|
|
87
|
+
newCursor += PUNCTUATION_REGEX.exec(next.value.segment)?.index ?? next.value.segment.length;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
// Skip non-word non-whitespace run (punctuation)
|
|
91
|
+
while (!next.done &&
|
|
92
|
+
!isAtomic?.(next.value.segment) &&
|
|
93
|
+
!next.value.isWordLike &&
|
|
94
|
+
!isWhitespaceChar(next.value.segment)) {
|
|
95
|
+
newCursor += next.value.segment.length;
|
|
96
|
+
next = iterator.next();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return newCursor;
|
|
100
|
+
}
|
|
@@ -1,11 +1,23 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import type { PiSessionForkPrompt, PiSessionSelection } from "./session-selection.js";
|
|
2
|
+
import { type AgentSession, type AgentSessionRuntime, type AgentSessionServices, type SessionInfo } from "@earendil-works/pi-coding-agent";
|
|
3
|
+
import { OWNED_UI_EXTENSION_CONTRACT_VERSION, OWNED_UI_EXTENSION_RENDER_CALLBACKS, OWNED_UI_EXTENSION_UI_CALLBACKS, OWNED_UI_EXTENSION_UI_PROPERTIES, type OwnedUiCommand, type OwnedUiCommandOutcome, type OwnedUiImageAttachment, type OwnedUiPromptSuggestionGeneratorPort, type OwnedUiPromptSuggestionReasoning, type OwnedUiPromptSuggestionRequest, type OwnedUiPromptSuggestionResult, type OwnedUiEvent, type OwnedUiSessionViewModel, type OwnedUiSnapshot } from "../../../contracts/owned-ui/index.js";
|
|
3
4
|
import { type PiAuthenticationProviderOption, type PiBashWorkflowResult, type PiPinnedSettingsCallback, type PiPinnedSettingsSnapshot, type PiWorkflowAutocompleteCommand, type PiWorkflowHost, type PiWorkflowInteractionHost, type PiWorkflowOption, type PiWorkflowRequest, type PiWorkflowResult } from "./workflows.js";
|
|
4
|
-
import
|
|
5
|
+
import { PiSettingsIntegration } from "./settings-integration.js";
|
|
6
|
+
import type { PiSettingOwnerHandlers } from "./settings-effects.js";
|
|
7
|
+
import type { PiProjectTrustPreflightPrompt } from "./project-trust-preflight.js";
|
|
8
|
+
import type { AgentSettingOwner } from "../../../contracts/agent-engine/index.js";
|
|
9
|
+
/** Explicit flush failure when required delivery was interrupted rather than completed. */
|
|
10
|
+
export declare class EngineDeliveryError extends Error {
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
5
13
|
export interface PiEngineRuntimeFactoryInput {
|
|
6
14
|
readonly cwd: string;
|
|
7
15
|
readonly agentDir: string;
|
|
8
16
|
readonly sessionId: string;
|
|
17
|
+
readonly sessionPath?: string;
|
|
18
|
+
readonly sessionSelection?: PiSessionSelection;
|
|
19
|
+
readonly sessionForkPrompt?: PiSessionForkPrompt;
|
|
20
|
+
readonly projectTrustPrompt?: PiProjectTrustPreflightPrompt;
|
|
9
21
|
}
|
|
10
22
|
export interface PiScopedModelDescriptor {
|
|
11
23
|
readonly provider: string;
|
|
@@ -41,6 +53,11 @@ export interface PiTreeSelectorContext {
|
|
|
41
53
|
readonly skipSummaryPrompt: boolean;
|
|
42
54
|
readonly appendLabelChange: (entryId: string, label: string | undefined) => void;
|
|
43
55
|
}
|
|
56
|
+
export interface PiSessionResumeMetadata {
|
|
57
|
+
readonly sessionId: string;
|
|
58
|
+
readonly sessionDir: string;
|
|
59
|
+
readonly usesDefaultSessionDir: boolean;
|
|
60
|
+
}
|
|
44
61
|
export interface PiSessionSelectorContext {
|
|
45
62
|
readonly currentSessionFilePath: string | undefined;
|
|
46
63
|
readonly loadCurrentSessions: (onProgress?: (loaded: number, total: number) => void) => Promise<SessionInfo[]>;
|
|
@@ -60,11 +77,18 @@ export interface OwnedPiResourceSummary {
|
|
|
60
77
|
readonly sourcePath: string | null;
|
|
61
78
|
readonly diagnostic: string | null;
|
|
62
79
|
}
|
|
80
|
+
export interface OwnedPiExtensionSourceSummary {
|
|
81
|
+
readonly source: string;
|
|
82
|
+
readonly scope: "user" | "project" | "temporary";
|
|
83
|
+
readonly origin: "package" | "top-level";
|
|
84
|
+
readonly baseDir: string | null;
|
|
85
|
+
}
|
|
63
86
|
export interface OwnedPiExtensionResourceSummary {
|
|
64
87
|
readonly kind: "extension";
|
|
65
88
|
readonly id: string;
|
|
66
89
|
readonly sourcePath: string | null;
|
|
67
90
|
readonly resolvedPath: string | null;
|
|
91
|
+
readonly sourceInfo: OwnedPiExtensionSourceSummary | null;
|
|
68
92
|
readonly loaded: boolean;
|
|
69
93
|
readonly hidden: boolean;
|
|
70
94
|
readonly diagnostic: string | null;
|
|
@@ -83,6 +107,9 @@ export interface PiEngineAdapterOptions {
|
|
|
83
107
|
readonly cwd?: string;
|
|
84
108
|
readonly agentDir?: string;
|
|
85
109
|
readonly sessionId?: string;
|
|
110
|
+
readonly sessionPath?: string;
|
|
111
|
+
readonly sessionSelection?: PiSessionSelection;
|
|
112
|
+
readonly sessionForkPrompt?: PiSessionForkPrompt;
|
|
86
113
|
readonly createRuntime?: PiEngineRuntimeFactory;
|
|
87
114
|
readonly workflowHost?: PiWorkflowHost;
|
|
88
115
|
/**
|
|
@@ -91,6 +118,8 @@ export interface PiEngineAdapterOptions {
|
|
|
91
118
|
* offering stay here.
|
|
92
119
|
*/
|
|
93
120
|
readonly availableThemes?: () => readonly string[];
|
|
121
|
+
readonly settingsProductMode?: "bare" | "comparison";
|
|
122
|
+
readonly projectTrustPrompt?: PiProjectTrustPreflightPrompt;
|
|
94
123
|
/**
|
|
95
124
|
* Startup extension-package update probe, mirroring pinned Pi's interactive
|
|
96
125
|
* mode. Returns display names of packages with updates available.
|
|
@@ -101,16 +130,39 @@ export interface AdapterCommandResult {
|
|
|
101
130
|
readonly outcome: OwnedUiCommandOutcome;
|
|
102
131
|
readonly diagnostic: string | null;
|
|
103
132
|
}
|
|
104
|
-
|
|
133
|
+
/** Owns the pinned Pi session lifecycle and translates its events into the neutral agent-engine contract. */
|
|
134
|
+
export declare class PiEngineAdapter implements OwnedUiPromptSuggestionGeneratorPort {
|
|
105
135
|
#private;
|
|
106
136
|
constructor(options?: PiEngineAdapterOptions);
|
|
107
137
|
setWorkflowInteractionHost(interaction: PiWorkflowInteractionHost): void;
|
|
108
138
|
get sessionId(): string;
|
|
109
139
|
get sessionGeneration(): number;
|
|
140
|
+
/** Actual session replacements, excluding delivery-only invalidation of callbacks. */
|
|
141
|
+
get sessionBindingGeneration(): number;
|
|
142
|
+
get cwd(): string;
|
|
110
143
|
get agentDir(): string;
|
|
144
|
+
resolveTranscriptImage(assetId: string): OwnedUiImageAttachment | null;
|
|
145
|
+
currentSessionFile(): string | null;
|
|
146
|
+
currentSessionResumeMetadata(): PiSessionResumeMetadata | null;
|
|
111
147
|
get disposed(): boolean;
|
|
148
|
+
suggestionReasoningPolicy(): OwnedUiPromptSuggestionReasoning;
|
|
149
|
+
generate(request: OwnedUiPromptSuggestionRequest): Promise<OwnedUiPromptSuggestionResult>;
|
|
112
150
|
start(): Promise<OwnedUiSessionViewModel>;
|
|
113
151
|
onEvent(listener: (event: OwnedUiEvent) => void): () => void;
|
|
152
|
+
/** Developer-only pressure evidence; never mirrored into visible diagnostic/status arrays. */
|
|
153
|
+
deliveryDiagnostics(): {
|
|
154
|
+
overloads: number;
|
|
155
|
+
recovering: boolean;
|
|
156
|
+
pendingCommands: number;
|
|
157
|
+
reservedOutcomes: number;
|
|
158
|
+
invalidatedEvents: number;
|
|
159
|
+
pending: number;
|
|
160
|
+
bytes: number;
|
|
161
|
+
protected: number;
|
|
162
|
+
superseded: number;
|
|
163
|
+
peakNodes: number;
|
|
164
|
+
peakBytes: number;
|
|
165
|
+
};
|
|
114
166
|
flushEvents(): Promise<void>;
|
|
115
167
|
nonVisualResources(): readonly OwnedPiResourceSummary[];
|
|
116
168
|
extensionResources(): readonly OwnedPiExtensionResourceSummary[];
|
|
@@ -125,7 +177,8 @@ export declare class PiEngineAdapter {
|
|
|
125
177
|
*/
|
|
126
178
|
configuredTheme(): string | undefined;
|
|
127
179
|
/** Settings port for the live runtime, or null before the runtime is available. */
|
|
128
|
-
settingsPort():
|
|
180
|
+
settingsPort(): PiSettingsIntegration | null;
|
|
181
|
+
bindSettingsOwner(owner: AgentSettingOwner, handlers: PiSettingOwnerHandlers): () => void;
|
|
129
182
|
pinnedModelSelectorContext(): {
|
|
130
183
|
readonly currentModel: unknown;
|
|
131
184
|
readonly settingsManager: unknown;
|
|
@@ -144,16 +197,31 @@ export declare class PiEngineAdapter {
|
|
|
144
197
|
readonly title: string;
|
|
145
198
|
readonly options: readonly PiWorkflowOption[];
|
|
146
199
|
};
|
|
200
|
+
pinnedAmbientAuthentication(selection: string): {
|
|
201
|
+
readonly providerId: string;
|
|
202
|
+
readonly providerName: string;
|
|
203
|
+
readonly title: string;
|
|
204
|
+
readonly message: string;
|
|
205
|
+
} | null;
|
|
147
206
|
pinnedLogoutOptions(): Promise<readonly PiAuthenticationProviderOption[]>;
|
|
148
207
|
pinnedForkOptions(): readonly PiWorkflowOption[];
|
|
149
208
|
pinnedTreeSelectorContext(): PiTreeSelectorContext;
|
|
150
209
|
pinnedSettingsSnapshot(): PiPinnedSettingsSnapshot;
|
|
151
210
|
pinnedMessageRenderer(customType: string): unknown;
|
|
211
|
+
pinnedShortcutDescriptions(bindings: Parameters<AgentSession["extensionRunner"]["getShortcuts"]>[0]): readonly {
|
|
212
|
+
readonly key: string;
|
|
213
|
+
readonly description: string;
|
|
214
|
+
}[];
|
|
152
215
|
pinnedToolDefinition(toolName: string): unknown;
|
|
216
|
+
/** Bind the owned UI's clipboard lifecycle without changing the comparison host. True means acknowledged delivery. */
|
|
217
|
+
bindClipboardWriter(writer: (text: string) => Promise<boolean>): () => void;
|
|
218
|
+
/** Workflow and tree copying share the active owner's write fence and delivery acknowledgment. */
|
|
219
|
+
copyWorkflowText(text: string): Promise<boolean>;
|
|
153
220
|
clearQueuedWorkflows(): readonly string[];
|
|
154
221
|
abortBashWorkflow(): void;
|
|
155
222
|
executeBashWorkflow(command: string, excludeFromContext: boolean): Promise<PiBashWorkflowResult>;
|
|
156
|
-
applyPinnedSettingValue(callback: PiPinnedSettingsCallback, value: unknown): PiWorkflowResult
|
|
223
|
+
applyPinnedSettingValue(callback: PiPinnedSettingsCallback, value: unknown): Promise<PiWorkflowResult>;
|
|
224
|
+
reloadBlockedResult(): PiWorkflowResult | null;
|
|
157
225
|
executeWorkflow(request: PiWorkflowRequest): Promise<PiWorkflowResult>;
|
|
158
226
|
view(): OwnedUiSessionViewModel;
|
|
159
227
|
snapshot(): OwnedUiSnapshot;
|