@chainingintention/pi-web-cn 1.202610.0 → 1.202610.2
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 +60 -106
- package/dist/.plugins-ready +1 -0
- package/dist/cli.js +161 -45
- package/dist/cli.js.map +1 -1
- package/dist/client/assets/index-CFhaGb5m.js +4357 -0
- package/dist/client/assets/vendor-editor-core-YWog6mAR.js +10 -0
- package/dist/client/assets/vendor-editor-languages-DOCw3vc9.js +28 -0
- package/dist/client/index.html +5 -5
- package/dist/config.js +30 -6
- package/dist/config.js.map +1 -1
- package/dist/docker/piWebDockerCommandPlan.js +13 -4
- package/dist/docker/piWebDockerCommandPlan.js.map +1 -1
- package/dist/nativeServices/installedServiceDefinitions.js +23 -10
- package/dist/nativeServices/installedServiceDefinitions.js.map +1 -1
- package/dist/nativeServices/serviceAction.js +78 -20
- package/dist/nativeServices/serviceAction.js.map +1 -1
- package/dist/nativeServices/serviceDoctor.js +339 -67
- package/dist/nativeServices/serviceDoctor.js.map +1 -1
- package/dist/nativeServices/servicePlan.js +2 -2
- package/dist/nativeServices/servicePlan.js.map +1 -1
- package/dist/pi-packages/captains-log/README.md +11 -0
- package/dist/pi-packages/captains-log/dist/browser/channelProtocol.js +29 -0
- package/dist/pi-packages/captains-log/dist/browser/index.js +146 -0
- package/dist/pi-packages/captains-log/dist/browser/markdown.js +67 -0
- package/dist/pi-packages/captains-log/dist/browser/panel.js +151 -0
- package/dist/pi-packages/captains-log/dist/browser/protocol.js +26 -0
- package/dist/pi-packages/captains-log/dist/companion.js +126 -0
- package/dist/pi-packages/captains-log/dist/roundtrip.js +62 -0
- package/dist/pi-packages/captains-log/dist/server.js +210 -0
- package/dist/pi-packages/captains-log/dist/store.js +75 -0
- package/dist/pi-packages/captains-log/docs/usage.md +29 -0
- package/dist/pi-packages/captains-log/package.json +35 -0
- package/dist/pi-packages/captains-log/tsconfig.json +21 -0
- package/dist/pi-packages/captains-log/vite.config.mjs +28 -0
- package/dist/pi-packages/relays/pi-web-plugin.js +9 -9
- package/dist/pi-packages/relays/prompts/relay.md +1 -1
- package/dist/pi-packages/relays/relaysPanelElement.js +8 -8
- package/dist/pi-packages/relays/skills/relay-runner/SKILL.md +21 -13
- package/dist/pi-web-plugins/files/browser/assets/files-icon-DZObYhxb.svg +3 -0
- package/dist/pi-web-plugins/files/browser/pi-web-plugin.js +456 -0
- package/dist/pi-web-plugins/files/package.json +15 -0
- package/dist/pi-web-plugins/git/browser/git-panel.js +55 -32
- package/dist/pi-web-plugins/git/browser/pi-web-plugin.js +2 -2
- package/dist/pi-web-plugins/git/git-backend.js +19 -26
- package/dist/pi-web-plugins/git/gitStatusCache.js +48 -0
- package/dist/pi-web-plugins/git/package.json +1 -0
- package/dist/pi-web-plugins/git/server-plugin.js +11 -10
- package/dist/pi-web-plugins/info/infoInternals.js +4 -1
- package/dist/pi-web-plugins/info/package.json +1 -1
- package/dist/pi-web-plugins/info/pi-web-plugin.js +8 -8
- package/dist/pi-web-plugins/mermaid/browser/mermaid-engine.js +3590 -0
- package/dist/pi-web-plugins/mermaid/browser/pi-web-plugin.js +6 -0
- package/dist/pi-web-plugins/mermaid/package.json +13 -0
- package/dist/pi-web-plugins/terminal/browser/pi-web-plugin.js +210 -0
- package/dist/pi-web-plugins/terminal/package.json +16 -0
- package/dist/pi-web-plugins/terminal/server-plugin.js +365 -0
- package/dist/pi-web-plugins/terminal/terminalService.js +435 -0
- package/dist/pi-web-plugins/updates/package.json +1 -1
- package/dist/pi-web-plugins/updates/pi-web-plugin.js +69 -68
- package/dist/pi-web-plugins/workspace-tasks/package.json +1 -1
- package/dist/pi-web-plugins/workspace-tasks/pi-web-plugin.js +3 -3
- package/dist/piWebVersionReport.js +47 -24
- package/dist/piWebVersionReport.js.map +1 -1
- package/dist/plugin-api.d.ts +260 -25
- package/dist/plugin-api.js +1 -0
- package/dist/pluginRecoveryCli.js +3 -2
- package/dist/pluginRecoveryCli.js.map +1 -1
- package/dist/server/activity/workspaceActivityService.js +5 -5
- package/dist/server/activity/workspaceActivityService.js.map +1 -1
- package/dist/server/app.js +71 -44
- package/dist/server/app.js.map +1 -1
- package/dist/server/audit/managementAuditStore.js +1 -1
- package/dist/server/browserMessageProjection.js +0 -2
- package/dist/server/browserMessageProjection.js.map +1 -1
- package/dist/server/configRoutes.js +1 -2
- package/dist/server/configRoutes.js.map +1 -1
- package/dist/server/knownPiPackages.js +12 -0
- package/dist/server/knownPiPackages.js.map +1 -0
- package/dist/server/machines/machineClient.js +2 -2
- package/dist/server/machines/machineClient.js.map +1 -1
- package/dist/server/machines/machinePluginProxyRoutes.js +120 -21
- package/dist/server/machines/machinePluginProxyRoutes.js.map +1 -1
- package/dist/server/machines/machineProxyRoutes.js +80 -22
- package/dist/server/machines/machineProxyRoutes.js.map +1 -1
- package/dist/server/machines/machineService.js +22 -0
- package/dist/server/machines/machineService.js.map +1 -1
- package/dist/server/managementEmbed.js +2 -2
- package/dist/server/managementEmbed.js.map +1 -1
- package/dist/server/managementPrivileges.js +7 -1
- package/dist/server/managementPrivileges.js.map +1 -1
- package/dist/server/managementTerminalProxyRoutes.js +124 -0
- package/dist/server/managementTerminalProxyRoutes.js.map +1 -0
- package/dist/server/normalAuth.js +5 -1
- package/dist/server/normalAuth.js.map +1 -1
- package/dist/server/notices/serverNoticeStore.js +50 -6
- package/dist/server/notices/serverNoticeStore.js.map +1 -1
- package/dist/server/piPackageService.js +5 -5
- package/dist/server/piPackageService.js.map +1 -1
- package/dist/server/piWebPluginCatalog.js +211 -34
- package/dist/server/piWebPluginCatalog.js.map +1 -1
- package/dist/server/piWebPluginLifecycle.js +29 -3
- package/dist/server/piWebPluginLifecycle.js.map +1 -1
- package/dist/server/piWebPluginService.js +176 -291
- package/dist/server/piWebPluginService.js.map +1 -1
- package/dist/server/piWebStatus.js +45 -55
- package/dist/server/piWebStatus.js.map +1 -1
- package/dist/server/pluginCallbackDrain.js +35 -0
- package/dist/server/pluginCallbackDrain.js.map +1 -0
- package/dist/server/plugins/pluginBackendChannelProxyAdmission.js +84 -0
- package/dist/server/plugins/pluginBackendChannelProxyAdmission.js.map +1 -0
- package/dist/server/plugins/pluginBackendChannelProxyCoordinator.js +234 -0
- package/dist/server/plugins/pluginBackendChannelProxyCoordinator.js.map +1 -0
- package/dist/server/plugins/pluginBackendChannelProxyRoutes.js +63 -0
- package/dist/server/plugins/pluginBackendChannelProxyRoutes.js.map +1 -0
- package/dist/server/plugins/pluginBackendProxyRoutes.js +7 -4
- package/dist/server/plugins/pluginBackendProxyRoutes.js.map +1 -1
- package/dist/server/plugins/pluginBackendRegistry.js +773 -0
- package/dist/server/plugins/pluginBackendRegistry.js.map +1 -0
- package/dist/server/plugins/serverPluginPiSessionEventsCapability.js +34 -0
- package/dist/server/plugins/serverPluginPiSessionEventsCapability.js.map +1 -0
- package/dist/server/plugins/serverPluginPiSessionsCapability.js +185 -0
- package/dist/server/plugins/serverPluginPiSessionsCapability.js.map +1 -0
- package/dist/server/plugins/serverPluginRuntime.js +1049 -107
- package/dist/server/plugins/serverPluginRuntime.js.map +1 -1
- package/dist/server/plugins/serverPluginWorkspacesCapability.js +114 -0
- package/dist/server/plugins/serverPluginWorkspacesCapability.js.map +1 -0
- package/dist/server/projectTrustRoutes.js +86 -0
- package/dist/server/projectTrustRoutes.js.map +1 -0
- package/dist/server/projects/projectLifecycleService.js +84 -0
- package/dist/server/projects/projectLifecycleService.js.map +1 -0
- package/dist/server/projects/projectService.js +2 -0
- package/dist/server/projects/projectService.js.map +1 -1
- package/dist/server/realtime/sessionEventHub.js +35 -41
- package/dist/server/realtime/sessionEventHub.js.map +1 -1
- package/dist/server/sessiond/agentHttpDispatcher.js +108 -0
- package/dist/server/sessiond/agentHttpDispatcher.js.map +1 -0
- package/dist/server/sessiond/pluginBackendChannelRoutes.js +397 -0
- package/dist/server/sessiond/pluginBackendChannelRoutes.js.map +1 -0
- package/dist/server/sessiond/pluginBackendRoutes.js +19 -9
- package/dist/server/sessiond/pluginBackendRoutes.js.map +1 -1
- package/dist/server/sessiond/projectMutationRoutes.js +38 -0
- package/dist/server/sessiond/projectMutationRoutes.js.map +1 -0
- package/dist/server/sessiond/sessionDaemonShutdown.js +36 -0
- package/dist/server/sessiond/sessionDaemonShutdown.js.map +1 -0
- package/dist/server/sessiond/sessionDaemonStartup.js +30 -4
- package/dist/server/sessiond/sessionDaemonStartup.js.map +1 -1
- package/dist/server/sessiond/sessionProxyRoutes.js +47 -15
- package/dist/server/sessiond/sessionProxyRoutes.js.map +1 -1
- package/dist/server/sessiond/sessionServiceDependencies.js +4 -0
- package/dist/server/sessiond/sessionServiceDependencies.js.map +1 -1
- package/dist/server/sessiond/sessiondStateOwnership.js +174 -39
- package/dist/server/sessiond/sessiondStateOwnership.js.map +1 -1
- package/dist/server/sessiond/workspaceRemovalRoutes.js +1 -1
- package/dist/server/sessiond/workspaceRemovalRoutes.js.map +1 -1
- package/dist/server/sessiond.js +226 -56
- package/dist/server/sessiond.js.map +1 -1
- package/dist/server/sessions/askUserTool.js +0 -3
- package/dist/server/sessions/askUserTool.js.map +1 -1
- package/dist/server/sessions/attachmentService.js +0 -1
- package/dist/server/sessions/attachmentService.js.map +1 -1
- package/dist/server/sessions/authService.js +8 -1
- package/dist/server/sessions/authService.js.map +1 -1
- package/dist/server/sessions/builtinCommands.js +2 -2
- package/dist/server/sessions/builtinCommands.js.map +1 -1
- package/dist/server/sessions/clientSessionPreview.js +14 -0
- package/dist/server/sessions/clientSessionPreview.js.map +1 -0
- package/dist/server/sessions/dockerEnvironmentFacts.js +82 -9
- package/dist/server/sessions/dockerEnvironmentFacts.js.map +1 -1
- package/dist/server/sessions/managementAgentTools.js +11 -6
- package/dist/server/sessions/managementAgentTools.js.map +1 -1
- package/dist/server/sessions/managementPermissionSystem.js +16 -4
- package/dist/server/sessions/managementPermissionSystem.js.map +1 -1
- package/dist/server/sessions/messagePaging.js +2 -2
- package/dist/server/sessions/messagePaging.js.map +1 -1
- package/dist/server/sessions/modelCatalogRefresher.js +4 -3
- package/dist/server/sessions/modelCatalogRefresher.js.map +1 -1
- package/dist/server/sessions/oauthLoginFlowService.js +2 -5
- package/dist/server/sessions/oauthLoginFlowService.js.map +1 -1
- package/dist/server/sessions/pendingAskStore.js +0 -3
- package/dist/server/sessions/pendingAskStore.js.map +1 -1
- package/dist/server/sessions/piSessionEventConnections.js +65 -0
- package/dist/server/sessions/piSessionEventConnections.js.map +1 -0
- package/dist/server/sessions/piSessionManagerGateway.js +56 -3
- package/dist/server/sessions/piSessionManagerGateway.js.map +1 -1
- package/dist/server/sessions/piSessionService.js +785 -450
- package/dist/server/sessions/piSessionService.js.map +1 -1
- package/dist/server/sessions/projectAuthService.js +29 -2
- package/dist/server/sessions/projectAuthService.js.map +1 -1
- package/dist/server/sessions/projectSettingsScope.js +12 -4
- package/dist/server/sessions/projectSettingsScope.js.map +1 -1
- package/dist/server/sessions/projectTrust.js +119 -0
- package/dist/server/sessions/projectTrust.js.map +1 -0
- package/dist/server/sessions/sessionActivityMarker.js +105 -0
- package/dist/server/sessions/sessionActivityMarker.js.map +1 -0
- package/dist/server/sessions/sessionArchiveMapping.js +2 -8
- package/dist/server/sessions/sessionArchiveMapping.js.map +1 -1
- package/dist/server/sessions/sessionCommandService.js +12 -10
- package/dist/server/sessions/sessionCommandService.js.map +1 -1
- package/dist/server/sessions/sessionEnvironmentFacts.js +5 -4
- package/dist/server/sessions/sessionEnvironmentFacts.js.map +1 -1
- package/dist/server/sessions/sessionModelScope.js +42 -5
- package/dist/server/sessions/sessionModelScope.js.map +1 -1
- package/dist/server/sessions/sessionNameGenerator.js +6 -6
- package/dist/server/sessions/sessionNameGenerator.js.map +1 -1
- package/dist/server/sessions/sessionRoutes.js +63 -15
- package/dist/server/sessions/sessionRoutes.js.map +1 -1
- package/dist/server/sessions/sessionTreeProjection.js +29 -29
- package/dist/server/sessions/sessionTreeProjection.js.map +1 -1
- package/dist/server/sessions/sessionUiEvents.js +6 -7
- package/dist/server/sessions/sessionUiEvents.js.map +1 -1
- package/dist/server/sessions/sessionUnreadStore.js +26 -1
- package/dist/server/sessions/sessionUnreadStore.js.map +1 -1
- package/dist/server/sessions/spawnSessionTool.js +3 -3
- package/dist/server/sessions/spawnSessionTool.js.map +1 -1
- package/dist/server/sessions/spawnSubsessionTool.js +5 -5
- package/dist/server/sessions/spawnSubsessionTool.js.map +1 -1
- package/dist/server/sessions/spawnTargetResolver.js +1 -1
- package/dist/server/sessions/transcriptMessages.js +54 -0
- package/dist/server/sessions/transcriptMessages.js.map +1 -0
- package/dist/server/status/machineStatusService.js +3 -1
- package/dist/server/status/machineStatusService.js.map +1 -1
- package/dist/server/terminals/{terminalService.js → managementCommandRunService.js} +79 -107
- package/dist/server/terminals/managementCommandRunService.js.map +1 -0
- package/dist/server/terminals/managementTerminalRoutes.js +91 -0
- package/dist/server/terminals/managementTerminalRoutes.js.map +1 -0
- package/dist/server/terminals/requiredTerminalService.js +103 -0
- package/dist/server/terminals/requiredTerminalService.js.map +1 -0
- package/dist/server/webSocketBridge.js +339 -0
- package/dist/server/webSocketBridge.js.map +1 -1
- package/dist/server/workbench/gatewayIntegration.js +4 -1
- package/dist/server/workbench/gatewayIntegration.js.map +1 -1
- package/dist/server/workspaceExplorerRoutes.js +13 -12
- package/dist/server/workspaceExplorerRoutes.js.map +1 -1
- package/dist/server/workspaces/fileContentService.js +9 -7
- package/dist/server/workspaces/fileContentService.js.map +1 -1
- package/dist/server/workspaces/fileOperationService.js +4 -3
- package/dist/server/workspaces/fileOperationService.js.map +1 -1
- package/dist/server/workspaces/projectWorkspaceCwds.js +0 -5
- package/dist/server/workspaces/projectWorkspaceCwds.js.map +1 -1
- package/dist/server/workspaces/sessionDaemonWorkspaceCatalog.js +36 -12
- package/dist/server/workspaces/sessionDaemonWorkspaceCatalog.js.map +1 -1
- package/dist/server/workspaces/workspaceCatalog.js +6 -4
- package/dist/server/workspaces/workspaceCatalog.js.map +1 -1
- package/dist/server/workspaces/workspaceDeletionRoutes.js +5 -57
- package/dist/server/workspaces/workspaceDeletionRoutes.js.map +1 -1
- package/dist/server/workspaces/workspaceProviderRegistry.js +75 -24
- package/dist/server/workspaces/workspaceProviderRegistry.js.map +1 -1
- package/dist/server/workspaces/workspaceRemovalService.js +25 -3
- package/dist/server/workspaces/workspaceRemovalService.js.map +1 -1
- package/dist/server-plugin-api.d.ts +274 -44
- package/dist/server-plugin-api.js +319 -2
- package/dist/server-plugin-api.js.map +1 -1
- package/dist/serverPluginRecovery.js +4 -0
- package/dist/serverPluginRecovery.js.map +1 -1
- package/dist/sessiond/activeAgentProfile.js +27 -2
- package/dist/sessiond/activeAgentProfile.js.map +1 -1
- package/dist/sessiond/config.js +4 -3
- package/dist/sessiond/config.js.map +1 -1
- package/dist/sessiond/sessionDaemonClient.js +29 -8
- package/dist/sessiond/sessionDaemonClient.js.map +1 -1
- package/dist/shared/activeAgentProfile.js +2 -34
- package/dist/shared/activeAgentProfile.js.map +1 -1
- package/dist/shared/activity.js +0 -3
- package/dist/shared/activity.js.map +1 -1
- package/dist/shared/apiTypes.js +7 -2
- package/dist/shared/apiTypes.js.map +1 -1
- package/dist/shared/capabilities.js +5 -0
- package/dist/shared/capabilities.js.map +1 -1
- package/dist/shared/federatedRoutes.js +49 -9
- package/dist/shared/federatedRoutes.js.map +1 -1
- package/dist/shared/machinePluginIds.js +30 -7
- package/dist/shared/machinePluginIds.js.map +1 -1
- package/dist/shared/machineStatus.js +35 -1
- package/dist/shared/machineStatus.js.map +1 -1
- package/dist/shared/piWebStatusParsing.js +29 -0
- package/dist/shared/piWebStatusParsing.js.map +1 -1
- package/dist/shared/pluginApiTypes.d.ts +24 -9
- package/dist/shared/pluginApiTypes.js +2 -0
- package/dist/shared/pluginApiTypes.js.map +1 -0
- package/dist/shared/pluginBackendProtocol.js +163 -2
- package/dist/shared/pluginBackendProtocol.js.map +1 -1
- package/dist/shared/pluginIds.js +10 -1
- package/dist/shared/pluginIds.js.map +1 -1
- package/dist/shared/requiredTerminalPlugin.js +6 -0
- package/dist/shared/requiredTerminalPlugin.js.map +1 -0
- package/dist/shared/serverNoticeContract.js +88 -0
- package/dist/shared/serverNoticeContract.js.map +1 -0
- package/dist/shared/sessionDefaults.js +41 -0
- package/dist/shared/sessionDefaults.js.map +1 -0
- package/dist/shared/workspaceFiles.js.map +1 -1
- package/docs/config.md +270 -323
- package/docs/plugins.md +171 -956
- package/examples/session-bridge-plugin/README.md +20 -0
- package/examples/session-bridge-plugin/docs/usage.md +54 -0
- package/examples/session-bridge-plugin/package.json +26 -0
- package/examples/session-bridge-plugin/src/browser/index.ts +87 -0
- package/examples/session-bridge-plugin/src/browser/protocol.ts +24 -0
- package/examples/session-bridge-plugin/src/companion.ts +65 -0
- package/examples/session-bridge-plugin/src/reviewRun.ts +39 -0
- package/examples/session-bridge-plugin/src/server.ts +85 -0
- package/examples/session-bridge-plugin/src/store.ts +80 -0
- package/examples/session-bridge-plugin/tsconfig.json +21 -0
- package/examples/workspace-provider-plugin/README.md +39 -0
- package/examples/workspace-provider-plugin/package.json +25 -0
- package/examples/workspace-provider-plugin/src/browser/index.ts +69 -0
- package/examples/workspace-provider-plugin/src/server.ts +68 -0
- package/examples/workspace-provider-plugin/tsconfig.json +21 -0
- package/package.json +22 -13
- package/skills/README.md +27 -2
- package/skills/relay-runner/SKILL.md +21 -13
- package/dist/client/assets/CodeViewer-CZHnKRwQ.js +0 -4
- package/dist/client/assets/TerminalPanel-B_EaRPHY.js +0 -187
- package/dist/client/assets/index-Bv1v-Jz7.js +0 -4717
- package/dist/client/assets/vendor-editor-core-vUi74DnD.js +0 -12
- package/dist/client/assets/vendor-editor-languages-DoaXUodB.js +0 -46
- package/dist/client/assets/vendor-editor-legacy-CYBnW6ZU.js +0 -1
- package/dist/client/assets/vendor-terminal-BrP-ENHg.css +0 -1
- package/dist/client/assets/vendor-terminal-D8k4UKM2.js +0 -35
- package/dist/server/git/gitService.js +0 -316
- package/dist/server/git/gitService.js.map +0 -1
- package/dist/server/gitRoutes.js +0 -23
- package/dist/server/gitRoutes.js.map +0 -1
- package/dist/server/terminalProxyRoutes.js +0 -181
- package/dist/server/terminalProxyRoutes.js.map +0 -1
- package/dist/server/terminals/terminalRoutes.js +0 -164
- package/dist/server/terminals/terminalRoutes.js.map +0 -1
- package/dist/server/terminals/terminalService.js.map +0 -1
- package/dist/server/terminals/terminalSize.js +0 -17
- package/dist/server/terminals/terminalSize.js.map +0 -1
- package/dist/server/workspaces/gitWorktreeDiscovery.js +0 -43
- package/dist/server/workspaces/gitWorktreeDiscovery.js.map +0 -1
- package/dist/server/workspaces/workspaceService.js +0 -52
- package/dist/server/workspaces/workspaceService.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const ACTIVE_AGENT_PROFILE_SCHEMA_VERSION =
|
|
1
|
+
export const ACTIVE_AGENT_PROFILE_SCHEMA_VERSION = 2;
|
|
2
2
|
export function isPiCompanionCommand(command) {
|
|
3
3
|
const name = command.split(/[\\/]/u).at(-1)?.toLowerCase() ?? command.toLowerCase();
|
|
4
4
|
return name.replace(/(?:\.[cm]?js|\.exe|\.cmd)$/iu, "") === "pi";
|
|
@@ -8,51 +8,22 @@ export function usesPiCodingAgentStateCompatibility(command) {
|
|
|
8
8
|
}
|
|
9
9
|
const ACTIVE_AGENT_PROFILE_FIELDS = new Set([
|
|
10
10
|
"schemaVersion",
|
|
11
|
-
"revision",
|
|
12
|
-
"command",
|
|
13
11
|
"dir",
|
|
14
|
-
"sessionDirEnvKeys",
|
|
15
12
|
]);
|
|
16
|
-
const SHA256_REVISION_PATTERN = /^sha256:[0-9a-f]{64}$/u;
|
|
17
|
-
const SAFE_BARE_AGENT_COMMAND_PATTERN = /^[A-Za-z0-9_][A-Za-z0-9._+-]*$/u;
|
|
18
|
-
const ACTIVE_SESSION_DIR_ENV_KEYS = new Set(["PI_WEB_AGENT_SESSION_DIR", "PI_CODING_AGENT_SESSION_DIR"]);
|
|
19
13
|
export function parseActiveAgentProfileDescriptor(value) {
|
|
20
14
|
if (!isRecord(value) || Object.keys(value).some((key) => !ACTIVE_AGENT_PROFILE_FIELDS.has(key)))
|
|
21
15
|
return undefined;
|
|
22
16
|
const schemaVersion = value["schemaVersion"];
|
|
23
|
-
const revision = value["revision"];
|
|
24
|
-
const command = value["command"];
|
|
25
17
|
const dir = value["dir"];
|
|
26
|
-
const sessionDirEnvKeys = value["sessionDirEnvKeys"];
|
|
27
18
|
if (schemaVersion !== ACTIVE_AGENT_PROFILE_SCHEMA_VERSION)
|
|
28
19
|
return undefined;
|
|
29
|
-
if (typeof revision !== "string" || !SHA256_REVISION_PATTERN.test(revision))
|
|
30
|
-
return undefined;
|
|
31
|
-
if (typeof command !== "string" || !isPortableAgentCommand(command))
|
|
32
|
-
return undefined;
|
|
33
20
|
if (typeof dir !== "string" || !isPortableAbsolutePath(dir))
|
|
34
21
|
return undefined;
|
|
35
|
-
if (!isNonEmptyStringArray(sessionDirEnvKeys))
|
|
36
|
-
return undefined;
|
|
37
|
-
if (new Set(sessionDirEnvKeys).size !== sessionDirEnvKeys.length)
|
|
38
|
-
return undefined;
|
|
39
|
-
if (sessionDirEnvKeys[0] !== "PI_WEB_AGENT_SESSION_DIR" || sessionDirEnvKeys.some((key) => !ACTIVE_SESSION_DIR_ENV_KEYS.has(key)))
|
|
40
|
-
return undefined;
|
|
41
22
|
return Object.freeze({
|
|
42
|
-
schemaVersion,
|
|
43
|
-
revision,
|
|
44
|
-
command,
|
|
23
|
+
schemaVersion: ACTIVE_AGENT_PROFILE_SCHEMA_VERSION,
|
|
45
24
|
dir,
|
|
46
|
-
sessionDirEnvKeys: Object.freeze([...sessionDirEnvKeys]),
|
|
47
25
|
});
|
|
48
26
|
}
|
|
49
|
-
function isPortableAgentCommand(value) {
|
|
50
|
-
if (value !== value.trim() || /[\s;&|`$<>]/u.test(value))
|
|
51
|
-
return false;
|
|
52
|
-
if (isPortableAbsolutePath(value))
|
|
53
|
-
return !value.endsWith("/") && !value.endsWith("\\");
|
|
54
|
-
return SAFE_BARE_AGENT_COMMAND_PATTERN.test(value);
|
|
55
|
-
}
|
|
56
27
|
function isPortableAbsolutePath(value) {
|
|
57
28
|
if (value === "" || value !== value.trim() || hasControlCharacter(value))
|
|
58
29
|
return false;
|
|
@@ -67,9 +38,6 @@ function hasControlCharacter(value) {
|
|
|
67
38
|
}
|
|
68
39
|
return false;
|
|
69
40
|
}
|
|
70
|
-
function isNonEmptyStringArray(value) {
|
|
71
|
-
return Array.isArray(value) && value.every((entry) => typeof entry === "string" && entry !== "");
|
|
72
|
-
}
|
|
73
41
|
function isRecord(value) {
|
|
74
42
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
75
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activeAgentProfile.js","sourceRoot":"","sources":["../../src/shared/activeAgentProfile.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAU,CAAC;AAE9D,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IACpF,OAAO,IAAI,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,OAAe;IACjE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC;IAC1C,eAAe;IACf,
|
|
1
|
+
{"version":3,"file":"activeAgentProfile.js","sourceRoot":"","sources":["../../src/shared/activeAgentProfile.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAU,CAAC;AAE9D,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IACpF,OAAO,IAAI,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,OAAe;IACjE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC;IAC1C,eAAe;IACf,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,UAAU,iCAAiC,CAAC,KAAc;IAC9D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAElH,MAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,aAAa,KAAK,mCAAmC;QAAE,OAAO,SAAS,CAAC;IAC5E,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAE9E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,mCAAmC;QAClD,GAAG;KACJ,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,IAAI,mBAAmB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvF,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,EAAE,IAAI,IAAI,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
package/dist/shared/activity.js
CHANGED
|
@@ -13,7 +13,4 @@ export function isSessionActive(status, activity) {
|
|
|
13
13
|
|| status?.isCompacting === true
|
|
14
14
|
|| (status?.pendingMessageCount ?? 0) > 0;
|
|
15
15
|
}
|
|
16
|
-
export function isWorkspaceActivityActive(activity) {
|
|
17
|
-
return activity !== undefined && (activity.hasSessionActivity || activity.hasTerminalActivity);
|
|
18
|
-
}
|
|
19
16
|
//# sourceMappingURL=activity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../../src/shared/activity.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,MAAsB,EAAE,QAA0B;IAChF,OAAO,CAAC,QAAQ,EAAE,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;WAC7D,MAAM,EAAE,WAAW,KAAK,IAAI;WAC5B,MAAM,EAAE,aAAa,KAAK,IAAI;WAC9B,MAAM,EAAE,YAAY,KAAK,IAAI;WAC7B,CAAC,MAAM,EAAE,mBAAmB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC9C,CAAC
|
|
1
|
+
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../../src/shared/activity.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,MAAsB,EAAE,QAA0B;IAChF,OAAO,CAAC,QAAQ,EAAE,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;WAC7D,MAAM,EAAE,WAAW,KAAK,IAAI;WAC5B,MAAM,EAAE,aAAa,KAAK,IAAI;WAC9B,MAAM,EAAE,YAAY,KAAK,IAAI;WAC7B,CAAC,MAAM,EAAE,mBAAmB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC9C,CAAC"}
|
package/dist/shared/apiTypes.js
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registry of feature-gating capabilities. Add an entry here (plus the
|
|
3
|
+
* runtime/requirements entries in `capabilities.ts`) when a feature needs
|
|
4
|
+
* rolling-version gating.
|
|
5
|
+
*/
|
|
1
6
|
export const PI_WEB_CAPABILITIES = {
|
|
2
7
|
sessionsDeleteArchived: "sessions.deleteArchived",
|
|
3
8
|
sessionsBulkMutations: "sessions.bulkMutations",
|
|
@@ -15,7 +20,7 @@ export const PI_WEB_CAPABILITIES = {
|
|
|
15
20
|
agentProfileConfig: "settings.agentProfile",
|
|
16
21
|
pluginLifecycle: "plugins.lifecycle",
|
|
17
22
|
};
|
|
18
|
-
export const PI_WEB_PLUGIN_LIFECYCLE_VERSION =
|
|
23
|
+
export const PI_WEB_PLUGIN_LIFECYCLE_VERSION = 2;
|
|
19
24
|
export const SESSION_UNREAD_LIMIT = 1_000;
|
|
20
25
|
export const SESSION_UNREAD_SESSION_ID_MAX_LENGTH = 512;
|
|
21
26
|
export const SESSION_UNREAD_CWD_MAX_LENGTH = 32 * 1024;
|
|
@@ -46,6 +51,6 @@ export const EXTENSION_DIALOG_TEXT_MAX_LENGTH = 1_000;
|
|
|
46
51
|
export const EXTENSION_DIALOG_OPTION_LIMIT = 24;
|
|
47
52
|
/** Length bound for the text a user types into an `input` dialog. */
|
|
48
53
|
export const EXTENSION_DIALOG_INPUT_MAX_LENGTH = 4_000;
|
|
49
|
-
export const FILE_TREE_BATCH_MAX_PATHS = 128;
|
|
50
54
|
export const SESSION_TREE_CUSTOM_INSTRUCTIONS_MAX_LENGTH = 10_000;
|
|
55
|
+
export const FILE_TREE_BATCH_MAX_PATHS = 128;
|
|
51
56
|
//# sourceMappingURL=apiTypes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiTypes.js","sourceRoot":"","sources":["../../src/shared/apiTypes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apiTypes.js","sourceRoot":"","sources":["../../src/shared/apiTypes.ts"],"names":[],"mappings":"AAoEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,sBAAsB,EAAE,yBAAyB;IACjD,qBAAqB,EAAE,wBAAwB;IAC/C,eAAe,EAAE,kBAAkB;IACnC,cAAc,EAAE,iBAAiB;IACjC,kBAAkB,EAAE,qBAAqB;IACzC,sBAAsB,EAAE,yBAAyB;IACjD,qBAAqB,EAAE,wBAAwB;IAC/C,cAAc,EAAE,iBAAiB;IACjC,eAAe,EAAE,kBAAkB;IACnC,iBAAiB,EAAE,oBAAoB;IACvC,wBAAwB,EAAE,2BAA2B;IACrD,gBAAgB,EAAE,mBAAmB;IACrC,uBAAuB,EAAE,0BAA0B;IACnD,kBAAkB,EAAE,uBAAuB;IAC3C,eAAe,EAAE,mBAAmB;CAC5B,CAAC;AAsIX,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AA4RjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAC1C,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AACxD,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,GAAG,IAAI,CAAC;AACvD,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AACxD,MAAM,CAAC,MAAM,sCAAsC,GAAG,EAAE,CAAC;AAqCzD,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAC9C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,GAAG,IAAI,CAAC;AAsM3D;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAEjE,yDAAyD;AACzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,kDAAkD;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,oFAAoF;AACpF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,sEAAsE;AACtE,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,CAAC;AA8GpD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAClD,iGAAiG;AACjG,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,CAAC;AACtD,yDAAyD;AACzD,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAChD,qEAAqE;AACrE,MAAM,CAAC,MAAM,iCAAiC,GAAG,KAAK,CAAC;AAoavD,MAAM,CAAC,MAAM,2CAA2C,GAAG,MAAM,CAAC;AA0TlE,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { PI_WEB_CAPABILITIES } from "./apiTypes.js";
|
|
2
2
|
export { PI_WEB_CAPABILITIES };
|
|
3
|
+
// Annotated (not inferred) so the empty and populated registry shapes are
|
|
4
|
+
// identical for consumers: `Object.values` on the empty registry alone would
|
|
5
|
+
// not infer `PiWebCapability[]`.
|
|
3
6
|
export const KNOWN_PI_WEB_CAPABILITIES = Object.values(PI_WEB_CAPABILITIES);
|
|
4
7
|
const knownPiWebCapabilities = new Set(KNOWN_PI_WEB_CAPABILITIES);
|
|
5
8
|
export const WEB_RUNTIME_CAPABILITIES = [
|
|
@@ -31,6 +34,8 @@ export const SESSIOND_RUNTIME_CAPABILITIES = [
|
|
|
31
34
|
PI_WEB_CAPABILITIES.sessionsAskUser,
|
|
32
35
|
PI_WEB_CAPABILITIES.promptAttachments,
|
|
33
36
|
];
|
|
37
|
+
// Populated entries map each capability to the components that must both
|
|
38
|
+
// advertise it.
|
|
34
39
|
const EFFECTIVE_CAPABILITY_REQUIREMENTS = {
|
|
35
40
|
[PI_WEB_CAPABILITIES.sessionsDeleteArchived]: ["web", "sessiond"],
|
|
36
41
|
[PI_WEB_CAPABILITIES.sessionsBulkMutations]: ["web", "sessiond"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/shared/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgF,MAAM,eAAe,CAAC;AAElI,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAG/B,MAAM,CAAC,MAAM,yBAAyB,
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/shared/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PLUGIN_BACKEND_FEDERATION_TIMEOUT_MS, PLUGIN_BACKEND_REQUEST_BODY_MAX_BYTES, PLUGIN_BACKEND_RESPONSE_BODY_MAX_BYTES, } from "./pluginBackendProtocol.js";
|
|
1
|
+
import { PAIRED_PLUGIN_BACKEND_CHANNEL_ROUTE_PATH, PAIRED_PLUGIN_BACKEND_REQUEST_ROUTE_PATH, PLUGIN_BACKEND_FEDERATION_TIMEOUT_MS, PLUGIN_BACKEND_REQUEST_BODY_MAX_BYTES, PLUGIN_BACKEND_RESPONSE_BODY_MAX_BYTES, } from "./pluginBackendProtocol.js";
|
|
2
2
|
import { WORKSPACE_REMOVAL_FEDERATION_TIMEOUT_MS } from "./workspaceRemovalProtocol.js";
|
|
3
3
|
import { MAX_INLINE_PREVIEW_BYTES } from "./workspaceFiles.js";
|
|
4
4
|
export { PLUGIN_BACKEND_FEDERATION_TIMEOUT_MS } from "./pluginBackendProtocol.js";
|
|
@@ -6,6 +6,10 @@ export { WORKSPACE_REMOVAL_FEDERATION_TIMEOUT_MS } from "./workspaceRemovalProto
|
|
|
6
6
|
export const PI_PACKAGE_MUTATION_PROXY_TIMEOUT_MS = 5 * 60_000;
|
|
7
7
|
export const SESSION_TREE_NAVIGATION_PROXY_TIMEOUT_MS = 5 * 60_000;
|
|
8
8
|
export const SESSION_TREE_FORK_PROXY_TIMEOUT_MS = 5 * 60_000;
|
|
9
|
+
export const WORKSPACE_FILE_FEDERATION_TIMEOUT_MS = 30_000;
|
|
10
|
+
// Accommodates the bounded 1,000-entry tree and escaped paths/content while
|
|
11
|
+
// keeping every workspace-file JSON hop finite after response headers.
|
|
12
|
+
export const WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES = 32 * 1024 * 1024;
|
|
9
13
|
export const WORKSPACE_FILE_PREVIEW_ROUTE_PATH = "/projects/:projectId/workspaces/:workspaceId/file/preview";
|
|
10
14
|
export const FEDERATED_HTTP_ROUTES = [
|
|
11
15
|
{ method: "GET", path: "/pi-web/status" },
|
|
@@ -17,16 +21,21 @@ export const FEDERATED_HTTP_ROUTES = [
|
|
|
17
21
|
{ method: "POST", path: "/pi-packages/remove", timeoutMs: PI_PACKAGE_MUTATION_PROXY_TIMEOUT_MS },
|
|
18
22
|
{ method: "POST", path: "/pi-packages/update", timeoutMs: PI_PACKAGE_MUTATION_PROXY_TIMEOUT_MS },
|
|
19
23
|
{ method: "GET", path: "/projects" },
|
|
24
|
+
// The server resolves the path before looking up existing project trust.
|
|
25
|
+
{ method: "GET", path: "/projects/trust" },
|
|
26
|
+
{ method: "GET", path: "/projects/:projectId/workspaces/:workspaceId/trust" },
|
|
27
|
+
{ method: "PUT", path: "/projects/:projectId/workspaces/:workspaceId/trust" },
|
|
20
28
|
{ method: "POST", path: "/projects" },
|
|
21
29
|
{ method: "DELETE", path: "/projects/:projectId" },
|
|
22
30
|
{ method: "GET", path: "/project-directories" },
|
|
23
31
|
{ method: "GET", path: "/projects/:projectId/workspaces" },
|
|
24
32
|
{
|
|
25
33
|
method: "POST",
|
|
26
|
-
path:
|
|
34
|
+
path: PAIRED_PLUGIN_BACKEND_REQUEST_ROUTE_PATH,
|
|
27
35
|
timeoutMs: PLUGIN_BACKEND_FEDERATION_TIMEOUT_MS,
|
|
28
36
|
bodyLimit: PLUGIN_BACKEND_REQUEST_BODY_MAX_BYTES,
|
|
29
37
|
responseBodyLimit: PLUGIN_BACKEND_RESPONSE_BODY_MAX_BYTES,
|
|
38
|
+
propagateCancellation: true,
|
|
30
39
|
},
|
|
31
40
|
{
|
|
32
41
|
method: "DELETE",
|
|
@@ -35,11 +44,41 @@ export const FEDERATED_HTTP_ROUTES = [
|
|
|
35
44
|
propagateCancellation: true,
|
|
36
45
|
},
|
|
37
46
|
{ method: "POST", path: "/projects/:projectId/workspaces/:workspaceId/tree/batch" },
|
|
38
|
-
{
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
47
|
+
{
|
|
48
|
+
method: "GET",
|
|
49
|
+
path: "/projects/:projectId/workspaces/:workspaceId/tree",
|
|
50
|
+
timeoutMs: WORKSPACE_FILE_FEDERATION_TIMEOUT_MS,
|
|
51
|
+
responseBodyLimit: WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES,
|
|
52
|
+
propagateCancellation: true,
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
method: "GET",
|
|
56
|
+
path: "/projects/:projectId/workspaces/:workspaceId/file",
|
|
57
|
+
timeoutMs: WORKSPACE_FILE_FEDERATION_TIMEOUT_MS,
|
|
58
|
+
responseBodyLimit: WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES,
|
|
59
|
+
propagateCancellation: true,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
method: "PUT",
|
|
63
|
+
path: "/projects/:projectId/workspaces/:workspaceId/file",
|
|
64
|
+
timeoutMs: WORKSPACE_FILE_FEDERATION_TIMEOUT_MS,
|
|
65
|
+
responseBodyLimit: WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES,
|
|
66
|
+
propagateCancellation: true,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
method: "DELETE",
|
|
70
|
+
path: "/projects/:projectId/workspaces/:workspaceId/file",
|
|
71
|
+
timeoutMs: WORKSPACE_FILE_FEDERATION_TIMEOUT_MS,
|
|
72
|
+
responseBodyLimit: WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES,
|
|
73
|
+
propagateCancellation: true,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
method: "POST",
|
|
77
|
+
path: "/projects/:projectId/workspaces/:workspaceId/file/move",
|
|
78
|
+
timeoutMs: WORKSPACE_FILE_FEDERATION_TIMEOUT_MS,
|
|
79
|
+
responseBodyLimit: WORKSPACE_FILE_JSON_RESPONSE_BODY_MAX_BYTES,
|
|
80
|
+
propagateCancellation: true,
|
|
81
|
+
},
|
|
43
82
|
{ method: "GET", path: "/projects/:projectId/workspaces/:workspaceId/file/download" },
|
|
44
83
|
{
|
|
45
84
|
method: "GET",
|
|
@@ -51,8 +90,6 @@ export const FEDERATED_HTTP_ROUTES = [
|
|
|
51
90
|
{ method: "POST", path: "/projects/:projectId/workspaces/:workspaceId/directory" },
|
|
52
91
|
{ method: "PATCH", path: "/projects/:projectId/workspaces/:workspaceId/directory" },
|
|
53
92
|
{ method: "DELETE", path: "/projects/:projectId/workspaces/:workspaceId/directory" },
|
|
54
|
-
{ method: "GET", path: "/projects/:projectId/workspaces/:workspaceId/git/status" },
|
|
55
|
-
{ method: "GET", path: "/projects/:projectId/workspaces/:workspaceId/git/diff" },
|
|
56
93
|
{ method: "GET", path: "/projects/:projectId/workspaces/:workspaceId/terminals" },
|
|
57
94
|
{ method: "POST", path: "/projects/:projectId/workspaces/:workspaceId/terminals" },
|
|
58
95
|
{ method: "DELETE", path: "/projects/:projectId/workspaces/:workspaceId/terminals" },
|
|
@@ -93,6 +130,8 @@ export const FEDERATED_HTTP_ROUTES = [
|
|
|
93
130
|
{ method: "POST", path: "/sessions/:sessionId/models/scope" },
|
|
94
131
|
{ method: "POST", path: "/sessions/:sessionId/model" },
|
|
95
132
|
{ method: "POST", path: "/sessions/:sessionId/model/cycle" },
|
|
133
|
+
{ method: "GET", path: "/sessions/:sessionId/defaults" },
|
|
134
|
+
{ method: "POST", path: "/sessions/:sessionId/defaults" },
|
|
96
135
|
{ method: "GET", path: "/sessions/:sessionId/thinking-levels" },
|
|
97
136
|
{ method: "POST", path: "/sessions/:sessionId/thinking-level" },
|
|
98
137
|
{ method: "POST", path: "/sessions/:sessionId/thinking-level/cycle" },
|
|
@@ -128,6 +167,7 @@ export const FEDERATED_HTTP_ROUTES = [
|
|
|
128
167
|
{ method: "POST", path: "/auth/oauth/:flowId/cancel" },
|
|
129
168
|
];
|
|
130
169
|
export const FEDERATED_WEBSOCKET_ROUTES = [
|
|
170
|
+
PAIRED_PLUGIN_BACKEND_CHANNEL_ROUTE_PATH,
|
|
131
171
|
"/events",
|
|
132
172
|
"/sessions/events",
|
|
133
173
|
"/sessions/:sessionId/events",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"federatedRoutes.js","sourceRoot":"","sources":["../../src/shared/federatedRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oCAAoC,EACpC,qCAAqC,EACrC,sCAAsC,GACvC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uCAAuC,EAAE,MAAM,+BAA+B,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,oCAAoC,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,uCAAuC,EAAE,MAAM,+BAA+B,CAAC;AAIxF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,GAAG,MAAM,CAAC;AAC/D,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,GAAG,MAAM,CAAC;AACnE,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,GAAG,MAAM,CAAC;AAC7D,MAAM,CAAC,MAAM,iCAAiC,GAAG,2DAA2D,CAAC;AAa7G,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE;IACzC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE;IAClC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE;IAClC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;IACnC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE;IACvC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,oCAAoC,EAAE;IACjG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,oCAAoC,EAAE;IAChG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,oCAAoC,EAAE;IAChG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE;IACpC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE;IACrC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAClD,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAC/C,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,iCAAiC,EAAE;IAC1D;QACE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"federatedRoutes.js","sourceRoot":"","sources":["../../src/shared/federatedRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,23 @@
|
|
|
1
|
-
import { isPiWebPluginId } from "./pluginIds.js";
|
|
1
|
+
import { isPiWebBundledPluginId, isPiWebPluginId, isReservedPiWebPluginId } from "./pluginIds.js";
|
|
2
2
|
const MACHINE_PLUGIN_ID_PREFIX = "machine.";
|
|
3
3
|
export function machineScopedPluginId(machineId, pluginId) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
requireMachinePluginId(machineId, pluginId);
|
|
5
|
+
if (isReservedPiWebPluginId(pluginId))
|
|
6
|
+
throw new Error(`Reserved PI WEB plugin id: ${pluginId}`);
|
|
7
|
+
return scopedPluginId(machineId, pluginId);
|
|
8
|
+
}
|
|
9
|
+
/** Machine-scope a host-validated plugin from PI WEB's bundled-only namespace. */
|
|
10
|
+
export function machineScopedBundledPluginId(machineId, pluginId) {
|
|
11
|
+
requireMachinePluginId(machineId, pluginId);
|
|
12
|
+
if (!isPiWebBundledPluginId(pluginId))
|
|
13
|
+
throw new Error(`PI WEB bundled plugin id is required: ${pluginId}`);
|
|
14
|
+
return scopedPluginId(machineId, pluginId);
|
|
15
|
+
}
|
|
16
|
+
/** Machine-scope an id only after its host-authored manifest has been validated. */
|
|
17
|
+
export function machineScopedManifestPluginId(machineId, pluginId) {
|
|
18
|
+
return isPiWebBundledPluginId(pluginId)
|
|
19
|
+
? machineScopedBundledPluginId(machineId, pluginId)
|
|
20
|
+
: machineScopedPluginId(machineId, pluginId);
|
|
9
21
|
}
|
|
10
22
|
export function parseMachineScopedPluginId(pluginId) {
|
|
11
23
|
if (!pluginId.startsWith(MACHINE_PLUGIN_ID_PREFIX))
|
|
@@ -16,13 +28,24 @@ export function parseMachineScopedPluginId(pluginId) {
|
|
|
16
28
|
return undefined;
|
|
17
29
|
const encodedMachineId = rest.slice(0, separator);
|
|
18
30
|
const sourcePluginId = rest.slice(separator + 1);
|
|
19
|
-
if (!isHexString(encodedMachineId)
|
|
31
|
+
if (!isHexString(encodedMachineId)
|
|
32
|
+
|| !isPiWebPluginId(sourcePluginId)
|
|
33
|
+
|| (isReservedPiWebPluginId(sourcePluginId) && !isPiWebBundledPluginId(sourcePluginId)))
|
|
20
34
|
return undefined;
|
|
21
35
|
const machineId = hexToString(encodedMachineId);
|
|
22
36
|
if (machineId === "")
|
|
23
37
|
return undefined;
|
|
24
38
|
return { machineId, pluginId: sourcePluginId };
|
|
25
39
|
}
|
|
40
|
+
function requireMachinePluginId(machineId, pluginId) {
|
|
41
|
+
if (machineId === "")
|
|
42
|
+
throw new Error("Machine id is required");
|
|
43
|
+
if (!isPiWebPluginId(pluginId))
|
|
44
|
+
throw new Error(`Invalid PI WEB plugin id: ${pluginId}`);
|
|
45
|
+
}
|
|
46
|
+
function scopedPluginId(machineId, pluginId) {
|
|
47
|
+
return `${MACHINE_PLUGIN_ID_PREFIX}${stringToHex(machineId)}.${pluginId}`;
|
|
48
|
+
}
|
|
26
49
|
function stringToHex(value) {
|
|
27
50
|
return [...new TextEncoder().encode(value)]
|
|
28
51
|
.map((byte) => byte.toString(16).padStart(2, "0"))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machinePluginIds.js","sourceRoot":"","sources":["../../src/shared/machinePluginIds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"machinePluginIds.js","sourceRoot":"","sources":["../../src/shared/machinePluginIds.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal per-machine status contract shared by sessiond, the web tier, and
|
|
3
|
+
* the browser.
|
|
4
|
+
*
|
|
5
|
+
* sessiond resolves `cwd → workspace → project` and rolls status up, so the
|
|
6
|
+
* browser never attributes anything itself: it renders whatever node flags the
|
|
7
|
+
* snapshot carries. The types are deliberately internal — nothing here is
|
|
8
|
+
* exported from the plugin API.
|
|
9
|
+
*/
|
|
10
|
+
/** The complete set of flags PI WEB itself publishes today. */
|
|
1
11
|
export const CORE_STATUS_FLAGS = {
|
|
12
|
+
/** A session in the subtree has work in progress (`isSessionActive`). */
|
|
2
13
|
working: "core:working",
|
|
14
|
+
/** A live terminal in the subtree. */
|
|
3
15
|
terminal: "core:terminal",
|
|
16
|
+
/** An unread session completion in the subtree. */
|
|
4
17
|
unread: "core:unread",
|
|
5
18
|
};
|
|
19
|
+
/**
|
|
20
|
+
* Combine child flags into a parent node. A flag is set on the parent when it
|
|
21
|
+
* is set on any child, and unset flags are omitted so that two trees carrying
|
|
22
|
+
* the same status compare equal by structure.
|
|
23
|
+
*/
|
|
6
24
|
export function rollUpStatusFlags(sources) {
|
|
7
25
|
const rolled = new Map();
|
|
8
26
|
for (const source of sources) {
|
|
@@ -13,6 +31,15 @@ export function rollUpStatusFlags(sources) {
|
|
|
13
31
|
}
|
|
14
32
|
return Object.fromEntries(rolled);
|
|
15
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Parse a snapshot received over HTTP or the realtime socket.
|
|
36
|
+
*
|
|
37
|
+
* Structural fields are required, because a snapshot missing them cannot be
|
|
38
|
+
* ordered or rendered. Flag content is tolerated instead: an unrecognised flag
|
|
39
|
+
* id is kept as-is so it still contributes an indicator, and an entry whose
|
|
40
|
+
* value is not a boolean is dropped rather than failing the whole payload,
|
|
41
|
+
* since a newer daemon adding flags must never blank a machine's status.
|
|
42
|
+
*/
|
|
16
43
|
export function parseMachineStatusSnapshot(value) {
|
|
17
44
|
if (!isRecord(value))
|
|
18
45
|
return undefined;
|
|
@@ -29,10 +56,17 @@ export function parseMachineStatusSnapshot(value) {
|
|
|
29
56
|
return undefined;
|
|
30
57
|
if (typeof generatedAt !== "string" || generatedAt === "")
|
|
31
58
|
return undefined;
|
|
32
|
-
if (machine === undefined || unattributed === undefined
|
|
59
|
+
if (machine === undefined || unattributed === undefined)
|
|
60
|
+
return undefined;
|
|
61
|
+
if (projects === undefined || workspaces === undefined)
|
|
33
62
|
return undefined;
|
|
34
63
|
return { epochId, revision, machine, projects, workspaces, unattributed, generatedAt };
|
|
35
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Flag ids arrive from another machine, so entries are collected through a map
|
|
67
|
+
* and `Object.fromEntries`: a key such as `__proto__` then becomes an ordinary
|
|
68
|
+
* own property instead of reassigning the result's prototype.
|
|
69
|
+
*/
|
|
36
70
|
function parseStatusFlags(value) {
|
|
37
71
|
if (!isRecord(value))
|
|
38
72
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machineStatus.js","sourceRoot":"","sources":["../../src/shared/machineStatus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"machineStatus.js","sourceRoot":"","sources":["../../src/shared/machineStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ export function parsePiWebRuntimeComponent(value) {
|
|
|
40
40
|
const capabilities = parseKnownPiWebCapabilities(value["capabilities"]);
|
|
41
41
|
const activeAgentProfileValue = value["activeAgentProfile"];
|
|
42
42
|
const activeAgentProfile = activeAgentProfileValue === undefined ? undefined : parseActiveAgentProfileDescriptor(activeAgentProfileValue);
|
|
43
|
+
const deprecatedAgentInputs = parseDeprecatedAgentInputs(value["deprecatedAgentInputs"]);
|
|
43
44
|
const error = value["error"];
|
|
44
45
|
if (component !== "web" && component !== "sessiond")
|
|
45
46
|
return undefined;
|
|
@@ -55,9 +56,37 @@ export function parsePiWebRuntimeComponent(value) {
|
|
|
55
56
|
available,
|
|
56
57
|
capabilities,
|
|
57
58
|
...(activeAgentProfile === undefined ? {} : { activeAgentProfile }),
|
|
59
|
+
...(deprecatedAgentInputs === undefined ? {} : { deprecatedAgentInputs }),
|
|
58
60
|
...(typeof error === "string" ? { error } : {}),
|
|
59
61
|
};
|
|
60
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Parse deprecated agent-configuration inputs reported by another component or
|
|
65
|
+
* machine. The payload only feeds an advisory warning banner, so malformed
|
|
66
|
+
* entries are dropped rather than failing the whole runtime snapshot: a
|
|
67
|
+
* cross-version peer must never blank a machine's runtime over a warning.
|
|
68
|
+
* Returns undefined when the field itself is absent or not an array.
|
|
69
|
+
*/
|
|
70
|
+
export function parseDeprecatedAgentInputs(value) {
|
|
71
|
+
if (!Array.isArray(value))
|
|
72
|
+
return undefined;
|
|
73
|
+
const inputs = [];
|
|
74
|
+
for (const entry of value) {
|
|
75
|
+
if (!isRecord(entry))
|
|
76
|
+
continue;
|
|
77
|
+
const source = entry["source"];
|
|
78
|
+
const name = entry["name"];
|
|
79
|
+
const replacement = entry["replacement"];
|
|
80
|
+
if (source !== "environment" && source !== "config")
|
|
81
|
+
continue;
|
|
82
|
+
if (typeof name !== "string" || name === "")
|
|
83
|
+
continue;
|
|
84
|
+
if (replacement !== undefined && (typeof replacement !== "string" || replacement === ""))
|
|
85
|
+
continue;
|
|
86
|
+
inputs.push({ source, name, ...(replacement === undefined ? {} : { replacement }) });
|
|
87
|
+
}
|
|
88
|
+
return inputs;
|
|
89
|
+
}
|
|
61
90
|
export function parsePiWebComponentStatus(value) {
|
|
62
91
|
if (!isRecord(value))
|
|
63
92
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"piWebStatusParsing.js","sourceRoot":"","sources":["../../src/shared/piWebStatusParsing.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAEhE,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9J,MAAM,GAAG,GAAG,yBAAyB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,IAAI,GAAG,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,2BAA2B,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IACxE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5L,MAAM,GAAG,GAAG,0BAA0B,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,0BAA0B,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACpE,IAAI,GAAG,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,2BAA2B,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IACxE,MAAM,uBAAuB,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC5D,MAAM,kBAAkB,GAAG,uBAAuB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iCAAiC,CAAC,uBAAuB,CAAC,CAAC;IAC1I,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,IAAI,OAAO,SAAS,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAChI,IAAI,uBAAuB,KAAK,SAAS,IAAI,CAAC,SAAS,KAAK,UAAU,IAAI,kBAAkB,KAAK,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9H,OAAO;QACL,SAAS;QACT,KAAK;QACL,GAAG,CAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,SAAS;QACT,YAAY;QACZ,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACnE,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,0BAA0B,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IACvE,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,IAAI,OAAO,KAAK,KAAK,SAAS,IAAI,OAAO,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAChI,OAAO;QACL,SAAS;QACT,KAAK;QACL,GAAG,CAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,KAAK;QACL,SAAS;QACT,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;QACvD,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACpI,OAAO;QACL,IAAI;QACJ,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
1
|
+
{"version":3,"file":"piWebStatusParsing.js","sourceRoot":"","sources":["../../src/shared/piWebStatusParsing.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,30 @@ export type JsonValue = JsonPrimitive | JsonObject | readonly JsonValue[];
|
|
|
4
4
|
export interface JsonObject {
|
|
5
5
|
readonly [key: string]: JsonValue;
|
|
6
6
|
}
|
|
7
|
+
/**
|
|
8
|
+
* Typed token for one exact host/plugin capability version. The provider id
|
|
9
|
+
* and package-local id together with the version form the stable capability
|
|
10
|
+
* identity; matching keys do not imply matching parsers. `parse` validates and
|
|
11
|
+
* may snapshot values at provider, declared-requirement, and resolution boundaries.
|
|
12
|
+
* Parsers must be pure (no input mutation or lifecycle side effects) and tolerate
|
|
13
|
+
* repeated calls; invocation counts and returned object identity are not guaranteed.
|
|
14
|
+
* A resolver's parser receives the provider-parsed value, not the discarded result
|
|
15
|
+
* of declared-requirement validation.
|
|
16
|
+
*/
|
|
17
|
+
export interface PluginCapability<Value = unknown, Version extends number = number> {
|
|
18
|
+
readonly pluginId: string;
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly version: Version;
|
|
21
|
+
readonly parse: (value: unknown) => Value;
|
|
22
|
+
}
|
|
23
|
+
/** One capability value declaratively published by its owning plugin. */
|
|
24
|
+
export interface PluginCapabilityProvision<Value = unknown, Version extends number = number> {
|
|
25
|
+
readonly capability: PluginCapability<Value, Version>;
|
|
26
|
+
readonly value: Value;
|
|
27
|
+
}
|
|
7
28
|
export interface WorkspaceProviderCapabilities {
|
|
8
|
-
|
|
29
|
+
/** Legacy owner request compatibility; new plugins use the revision-paired peer. */
|
|
30
|
+
readonly request?: boolean;
|
|
9
31
|
/** True only when this specific workspace advertises removal. */
|
|
10
32
|
readonly remove: boolean;
|
|
11
33
|
}
|
|
@@ -90,13 +112,6 @@ export interface TerminalCommandRunHandle {
|
|
|
90
112
|
run: TerminalCommandRun;
|
|
91
113
|
completed: Promise<TerminalCommandRun>;
|
|
92
114
|
}
|
|
93
|
-
export interface TerminalCommandRunFilter {
|
|
94
|
-
projectId?: string;
|
|
95
|
-
workspaceId?: string;
|
|
96
|
-
terminalId?: string;
|
|
97
|
-
statuses?: TerminalCommandRunStatus[];
|
|
98
|
-
metadata?: Record<string, string>;
|
|
99
|
-
}
|
|
100
115
|
export type PiWebServiceComponent = "web" | "sessiond";
|
|
101
116
|
export type PiWebStatusSeverity = "info" | "warning" | "error";
|
|
102
117
|
export type PiWebInstallationKind = "pi-package" | "npm-global" | "local" | "docker" | "unknown";
|
|
@@ -114,7 +129,7 @@ export interface PiWebComponentStatus {
|
|
|
114
129
|
label: string;
|
|
115
130
|
runtimeVersion?: string;
|
|
116
131
|
installedVersion?: string;
|
|
117
|
-
/** Version of the Pi coding agent library loaded by this component's process. */
|
|
132
|
+
/** Version of the Pi coding agent library loaded by this component's process; omitted when the component does not report it. */
|
|
118
133
|
piVersion?: string;
|
|
119
134
|
stale: boolean;
|
|
120
135
|
available: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluginApiTypes.js","sourceRoot":"","sources":["../../src/shared/pluginApiTypes.ts"],"names":[],"mappings":"AAAA,wFAAwF"}
|