@playcraft/common 0.1.52 → 0.1.53-beta
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 +1 -1
- package/dist/agent/competitor-report.d.ts +1 -1
- package/dist/agent/session-title.d.ts +1 -1
- package/dist/agent/session-title.js +1 -1
- package/dist/agent-messages/db-message-converter.d.ts +10 -0
- package/dist/agent-messages/db-message-converter.d.ts.map +1 -1
- package/dist/agent-messages/db-message-converter.js +13 -0
- package/dist/agent-messages/db-message-converter.js.map +1 -1
- package/dist/agent-tools/index.d.ts +5 -0
- package/dist/agent-tools/index.d.ts.map +1 -1
- package/dist/agent-tools/index.js +5 -0
- package/dist/agent-tools/index.js.map +1 -1
- package/dist/agent-tools/operation-protocol.d.ts +10 -0
- package/dist/agent-tools/operation-protocol.d.ts.map +1 -0
- package/dist/agent-tools/operation-protocol.js +13 -0
- package/dist/agent-tools/operation-protocol.js.map +1 -0
- package/dist/agent-tools/replica-recording.d.ts +283 -0
- package/dist/agent-tools/replica-recording.d.ts.map +1 -0
- package/dist/agent-tools/replica-recording.js +109 -0
- package/dist/agent-tools/replica-recording.js.map +1 -0
- package/dist/agent-tools/replica-validation.d.ts +972 -0
- package/dist/agent-tools/replica-validation.d.ts.map +1 -0
- package/dist/agent-tools/replica-validation.js +254 -0
- package/dist/agent-tools/replica-validation.js.map +1 -0
- package/dist/agent-tools/types.d.ts +9 -1
- package/dist/agent-tools/types.d.ts.map +1 -1
- package/dist/agent-tools/types.js.map +1 -1
- package/dist/agent-tools/video-model-proxy.d.ts +113 -0
- package/dist/agent-tools/video-model-proxy.d.ts.map +1 -0
- package/dist/agent-tools/video-model-proxy.js +49 -0
- package/dist/agent-tools/video-model-proxy.js.map +1 -0
- package/dist/agent-tools/video-replication.d.ts +421 -0
- package/dist/agent-tools/video-replication.d.ts.map +1 -0
- package/dist/agent-tools/video-replication.js +95 -0
- package/dist/agent-tools/video-replication.js.map +1 -0
- package/dist/asset-library-stream.d.ts +14 -0
- package/dist/asset-library-stream.d.ts.map +1 -0
- package/dist/asset-library-stream.js +101 -0
- package/dist/asset-library-stream.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-background-processes.d.ts +68 -0
- package/dist/cloud-workspace/runtime/agent-background-processes.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-background-processes.js +60 -0
- package/dist/cloud-workspace/runtime/agent-background-processes.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts +55 -0
- package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-chat-flush.js +51 -0
- package/dist/cloud-workspace/runtime/agent-chat-flush.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-command.d.ts +152 -0
- package/dist/cloud-workspace/runtime/agent-command.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-command.js +90 -0
- package/dist/cloud-workspace/runtime/agent-command.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts +143 -0
- package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-competitor-report.js +115 -0
- package/dist/cloud-workspace/runtime/agent-competitor-report.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-connection.d.ts +76 -0
- package/dist/cloud-workspace/runtime/agent-connection.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-connection.js +59 -0
- package/dist/cloud-workspace/runtime/agent-connection.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts +90 -0
- package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-issue-artifacts.js +60 -0
- package/dist/cloud-workspace/runtime/agent-issue-artifacts.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts +87 -0
- package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-lifecycle.js +75 -0
- package/dist/cloud-workspace/runtime/agent-lifecycle.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-mutation.d.ts +197 -0
- package/dist/cloud-workspace/runtime/agent-mutation.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-mutation.js +114 -0
- package/dist/cloud-workspace/runtime/agent-mutation.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts +230 -0
- package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-opencode-gateway.js +185 -0
- package/dist/cloud-workspace/runtime/agent-opencode-gateway.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-opencode.d.ts +406 -0
- package/dist/cloud-workspace/runtime/agent-opencode.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-opencode.js +237 -0
- package/dist/cloud-workspace/runtime/agent-opencode.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-promotion.d.ts +21 -0
- package/dist/cloud-workspace/runtime/agent-promotion.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-promotion.js +23 -0
- package/dist/cloud-workspace/runtime/agent-promotion.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-read.d.ts +343 -0
- package/dist/cloud-workspace/runtime/agent-read.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-read.js +159 -0
- package/dist/cloud-workspace/runtime/agent-read.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-source-project.d.ts +126 -0
- package/dist/cloud-workspace/runtime/agent-source-project.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-source-project.js +95 -0
- package/dist/cloud-workspace/runtime/agent-source-project.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts +18 -0
- package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-tool-claim.js +16 -0
- package/dist/cloud-workspace/runtime/agent-tool-claim.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts +9 -0
- package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-variant-chat.js +23 -0
- package/dist/cloud-workspace/runtime/agent-variant-chat.js.map +1 -0
- package/dist/cloud-workspace/runtime/agent-variant-git.d.ts +75 -0
- package/dist/cloud-workspace/runtime/agent-variant-git.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/agent-variant-git.js +62 -0
- package/dist/cloud-workspace/runtime/agent-variant-git.js.map +1 -0
- package/dist/cloud-workspace/runtime/animation-editor.d.ts +766 -0
- package/dist/cloud-workspace/runtime/animation-editor.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/animation-editor.js +84 -0
- package/dist/cloud-workspace/runtime/animation-editor.js.map +1 -0
- package/dist/cloud-workspace/runtime/animation-quality.d.ts +33 -0
- package/dist/cloud-workspace/runtime/animation-quality.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/animation-quality.js +14 -0
- package/dist/cloud-workspace/runtime/animation-quality.js.map +1 -0
- package/dist/cloud-workspace/runtime/artifacts.d.ts +239 -0
- package/dist/cloud-workspace/runtime/artifacts.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/artifacts.js +105 -0
- package/dist/cloud-workspace/runtime/artifacts.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-bundle.d.ts +61 -0
- package/dist/cloud-workspace/runtime/asset-generation-bundle.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-bundle.js +59 -0
- package/dist/cloud-workspace/runtime/asset-generation-bundle.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-video-validator.d.ts +15 -0
- package/dist/cloud-workspace/runtime/asset-generation-video-validator.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-video-validator.js +63 -0
- package/dist/cloud-workspace/runtime/asset-generation-video-validator.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-video.d.ts +92 -0
- package/dist/cloud-workspace/runtime/asset-generation-video.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation-video.js +63 -0
- package/dist/cloud-workspace/runtime/asset-generation-video.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation.d.ts +913 -0
- package/dist/cloud-workspace/runtime/asset-generation.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-generation.js +177 -0
- package/dist/cloud-workspace/runtime/asset-generation.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-library-import.d.ts +73 -0
- package/dist/cloud-workspace/runtime/asset-library-import.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-library-import.js +37 -0
- package/dist/cloud-workspace/runtime/asset-library-import.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-library-save.d.ts +296 -0
- package/dist/cloud-workspace/runtime/asset-library-save.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-library-save.js +114 -0
- package/dist/cloud-workspace/runtime/asset-library-save.js.map +1 -0
- package/dist/cloud-workspace/runtime/asset-transfers.d.ts +92 -0
- package/dist/cloud-workspace/runtime/asset-transfers.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/asset-transfers.js +119 -0
- package/dist/cloud-workspace/runtime/asset-transfers.js.map +1 -0
- package/dist/cloud-workspace/runtime/attachment-base64.d.ts +3 -0
- package/dist/cloud-workspace/runtime/attachment-base64.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/attachment-base64.js +8 -0
- package/dist/cloud-workspace/runtime/attachment-base64.js.map +1 -0
- package/dist/cloud-workspace/runtime/attachments.d.ts +33 -0
- package/dist/cloud-workspace/runtime/attachments.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/attachments.js +35 -0
- package/dist/cloud-workspace/runtime/attachments.js.map +1 -0
- package/dist/cloud-workspace/runtime/batch-generation.d.ts +96 -0
- package/dist/cloud-workspace/runtime/batch-generation.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/batch-generation.js +77 -0
- package/dist/cloud-workspace/runtime/batch-generation.js.map +1 -0
- package/dist/cloud-workspace/runtime/batch-production.d.ts +66 -0
- package/dist/cloud-workspace/runtime/batch-production.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/batch-production.js +35 -0
- package/dist/cloud-workspace/runtime/batch-production.js.map +1 -0
- package/dist/cloud-workspace/runtime/batch-runs.d.ts +713 -0
- package/dist/cloud-workspace/runtime/batch-runs.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/batch-runs.js +227 -0
- package/dist/cloud-workspace/runtime/batch-runs.js.map +1 -0
- package/dist/cloud-workspace/runtime/batch-source.d.ts +20 -0
- package/dist/cloud-workspace/runtime/batch-source.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/batch-source.js +28 -0
- package/dist/cloud-workspace/runtime/batch-source.js.map +1 -0
- package/dist/cloud-workspace/runtime/capabilities.d.ts +40 -0
- package/dist/cloud-workspace/runtime/capabilities.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/capabilities.js +53 -0
- package/dist/cloud-workspace/runtime/capabilities.js.map +1 -0
- package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts +53 -0
- package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/chat-realtime-admission.js +95 -0
- package/dist/cloud-workspace/runtime/chat-realtime-admission.js.map +1 -0
- package/dist/cloud-workspace/runtime/chat-realtime.d.ts +197 -0
- package/dist/cloud-workspace/runtime/chat-realtime.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/chat-realtime.js +300 -0
- package/dist/cloud-workspace/runtime/chat-realtime.js.map +1 -0
- package/dist/cloud-workspace/runtime/checkpoints.d.ts +35 -0
- package/dist/cloud-workspace/runtime/checkpoints.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/checkpoints.js +35 -0
- package/dist/cloud-workspace/runtime/checkpoints.js.map +1 -0
- package/dist/cloud-workspace/runtime/cloud-assets.d.ts +119 -0
- package/dist/cloud-workspace/runtime/cloud-assets.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/cloud-assets.js +51 -0
- package/dist/cloud-workspace/runtime/cloud-assets.js.map +1 -0
- package/dist/cloud-workspace/runtime/composer-context.d.ts +82 -0
- package/dist/cloud-workspace/runtime/composer-context.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/composer-context.js +51 -0
- package/dist/cloud-workspace/runtime/composer-context.js.map +1 -0
- package/dist/cloud-workspace/runtime/config.d.ts +48 -0
- package/dist/cloud-workspace/runtime/config.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/config.js +126 -0
- package/dist/cloud-workspace/runtime/config.js.map +1 -0
- package/dist/cloud-workspace/runtime/connectivity.d.ts +211 -0
- package/dist/cloud-workspace/runtime/connectivity.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/connectivity.js +46 -0
- package/dist/cloud-workspace/runtime/connectivity.js.map +1 -0
- package/dist/cloud-workspace/runtime/delivery.d.ts +1042 -0
- package/dist/cloud-workspace/runtime/delivery.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/delivery.js +208 -0
- package/dist/cloud-workspace/runtime/delivery.js.map +1 -0
- package/dist/cloud-workspace/runtime/directories.d.ts +32 -0
- package/dist/cloud-workspace/runtime/directories.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/directories.js +44 -0
- package/dist/cloud-workspace/runtime/directories.js.map +1 -0
- package/dist/cloud-workspace/runtime/directory-attachments.d.ts +28 -0
- package/dist/cloud-workspace/runtime/directory-attachments.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/directory-attachments.js +30 -0
- package/dist/cloud-workspace/runtime/directory-attachments.js.map +1 -0
- package/dist/cloud-workspace/runtime/errors.d.ts +26 -0
- package/dist/cloud-workspace/runtime/errors.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/errors.js +40 -0
- package/dist/cloud-workspace/runtime/errors.js.map +1 -0
- package/dist/cloud-workspace/runtime/events.d.ts +107 -0
- package/dist/cloud-workspace/runtime/events.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/events.js +70 -0
- package/dist/cloud-workspace/runtime/events.js.map +1 -0
- package/dist/cloud-workspace/runtime/execution-admission.d.ts +201 -0
- package/dist/cloud-workspace/runtime/execution-admission.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/execution-admission.js +127 -0
- package/dist/cloud-workspace/runtime/execution-admission.js.map +1 -0
- package/dist/cloud-workspace/runtime/execution-grant.d.ts +36 -0
- package/dist/cloud-workspace/runtime/execution-grant.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/execution-grant.js +102 -0
- package/dist/cloud-workspace/runtime/execution-grant.js.map +1 -0
- package/dist/cloud-workspace/runtime/files-search.d.ts +17 -0
- package/dist/cloud-workspace/runtime/files-search.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/files-search.js +14 -0
- package/dist/cloud-workspace/runtime/files-search.js.map +1 -0
- package/dist/cloud-workspace/runtime/files.d.ts +132 -0
- package/dist/cloud-workspace/runtime/files.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/files.js +129 -0
- package/dist/cloud-workspace/runtime/files.js.map +1 -0
- package/dist/cloud-workspace/runtime/generations.d.ts +18 -0
- package/dist/cloud-workspace/runtime/generations.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/generations.js +39 -0
- package/dist/cloud-workspace/runtime/generations.js.map +1 -0
- package/dist/cloud-workspace/runtime/git-auth-mode.d.ts +35 -0
- package/dist/cloud-workspace/runtime/git-auth-mode.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/git-auth-mode.js +73 -0
- package/dist/cloud-workspace/runtime/git-auth-mode.js.map +1 -0
- package/dist/cloud-workspace/runtime/git.d.ts +147 -0
- package/dist/cloud-workspace/runtime/git.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/git.js +128 -0
- package/dist/cloud-workspace/runtime/git.js.map +1 -0
- package/dist/cloud-workspace/runtime/handshake.d.ts +47 -0
- package/dist/cloud-workspace/runtime/handshake.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/handshake.js +31 -0
- package/dist/cloud-workspace/runtime/handshake.js.map +1 -0
- package/dist/cloud-workspace/runtime/index.d.ts +80 -0
- package/dist/cloud-workspace/runtime/index.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/index.js +80 -0
- package/dist/cloud-workspace/runtime/index.js.map +1 -0
- package/dist/cloud-workspace/runtime/library-attachments.d.ts +120 -0
- package/dist/cloud-workspace/runtime/library-attachments.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/library-attachments.js +75 -0
- package/dist/cloud-workspace/runtime/library-attachments.js.map +1 -0
- package/dist/cloud-workspace/runtime/mcp.d.ts +82 -0
- package/dist/cloud-workspace/runtime/mcp.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/mcp.js +48 -0
- package/dist/cloud-workspace/runtime/mcp.js.map +1 -0
- package/dist/cloud-workspace/runtime/native-history.d.ts +66 -0
- package/dist/cloud-workspace/runtime/native-history.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/native-history.js +132 -0
- package/dist/cloud-workspace/runtime/native-history.js.map +1 -0
- package/dist/cloud-workspace/runtime/operations.d.ts +667 -0
- package/dist/cloud-workspace/runtime/operations.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/operations.js +299 -0
- package/dist/cloud-workspace/runtime/operations.js.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-agent.d.ts +255 -0
- package/dist/cloud-workspace/runtime/parameter-agent.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-agent.js +82 -0
- package/dist/cloud-workspace/runtime/parameter-agent.js.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-assets.d.ts +14 -0
- package/dist/cloud-workspace/runtime/parameter-assets.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-assets.js +55 -0
- package/dist/cloud-workspace/runtime/parameter-assets.js.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-catalog.d.ts +30 -0
- package/dist/cloud-workspace/runtime/parameter-catalog.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/parameter-catalog.js +292 -0
- package/dist/cloud-workspace/runtime/parameter-catalog.js.map +1 -0
- package/dist/cloud-workspace/runtime/parameters.d.ts +66 -0
- package/dist/cloud-workspace/runtime/parameters.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/parameters.js +118 -0
- package/dist/cloud-workspace/runtime/parameters.js.map +1 -0
- package/dist/cloud-workspace/runtime/permissions.d.ts +24 -0
- package/dist/cloud-workspace/runtime/permissions.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/permissions.js +19 -0
- package/dist/cloud-workspace/runtime/permissions.js.map +1 -0
- package/dist/cloud-workspace/runtime/platform-endpoints.d.ts +25 -0
- package/dist/cloud-workspace/runtime/platform-endpoints.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/platform-endpoints.js +37 -0
- package/dist/cloud-workspace/runtime/platform-endpoints.js.map +1 -0
- package/dist/cloud-workspace/runtime/preview-runtime.d.ts +33 -0
- package/dist/cloud-workspace/runtime/preview-runtime.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/preview-runtime.js +51 -0
- package/dist/cloud-workspace/runtime/preview-runtime.js.map +1 -0
- package/dist/cloud-workspace/runtime/previews.d.ts +109 -0
- package/dist/cloud-workspace/runtime/previews.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/previews.js +66 -0
- package/dist/cloud-workspace/runtime/previews.js.map +1 -0
- package/dist/cloud-workspace/runtime/project-native-skills.d.ts +40 -0
- package/dist/cloud-workspace/runtime/project-native-skills.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/project-native-skills.js +45 -0
- package/dist/cloud-workspace/runtime/project-native-skills.js.map +1 -0
- package/dist/cloud-workspace/runtime/protocol.d.ts +23 -0
- package/dist/cloud-workspace/runtime/protocol.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/protocol.js +30 -0
- package/dist/cloud-workspace/runtime/protocol.js.map +1 -0
- package/dist/cloud-workspace/runtime/remix-references.d.ts +197 -0
- package/dist/cloud-workspace/runtime/remix-references.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/remix-references.js +73 -0
- package/dist/cloud-workspace/runtime/remix-references.js.map +1 -0
- package/dist/cloud-workspace/runtime/resource-grant.d.ts +62 -0
- package/dist/cloud-workspace/runtime/resource-grant.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/resource-grant.js +87 -0
- package/dist/cloud-workspace/runtime/resource-grant.js.map +1 -0
- package/dist/cloud-workspace/runtime/self-contained-glb.d.ts +3 -0
- package/dist/cloud-workspace/runtime/self-contained-glb.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/self-contained-glb.js +67 -0
- package/dist/cloud-workspace/runtime/self-contained-glb.js.map +1 -0
- package/dist/cloud-workspace/runtime/session-restore.d.ts +31 -0
- package/dist/cloud-workspace/runtime/session-restore.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/session-restore.js +24 -0
- package/dist/cloud-workspace/runtime/session-restore.js.map +1 -0
- package/dist/cloud-workspace/runtime/skills.d.ts +39 -0
- package/dist/cloud-workspace/runtime/skills.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/skills.js +33 -0
- package/dist/cloud-workspace/runtime/skills.js.map +1 -0
- package/dist/cloud-workspace/runtime/terminal-session.d.ts +78 -0
- package/dist/cloud-workspace/runtime/terminal-session.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/terminal-session.js +178 -0
- package/dist/cloud-workspace/runtime/terminal-session.js.map +1 -0
- package/dist/cloud-workspace/runtime/terminals.d.ts +90 -0
- package/dist/cloud-workspace/runtime/terminals.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/terminals.js +111 -0
- package/dist/cloud-workspace/runtime/terminals.js.map +1 -0
- package/dist/cloud-workspace/runtime/turn-control.d.ts +27 -0
- package/dist/cloud-workspace/runtime/turn-control.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/turn-control.js +18 -0
- package/dist/cloud-workspace/runtime/turn-control.js.map +1 -0
- package/dist/cloud-workspace/runtime/variant-workspace.d.ts +221 -0
- package/dist/cloud-workspace/runtime/variant-workspace.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/variant-workspace.js +75 -0
- package/dist/cloud-workspace/runtime/variant-workspace.js.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-binding.d.ts +219 -0
- package/dist/cloud-workspace/runtime/workspace-binding.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-binding.js +178 -0
- package/dist/cloud-workspace/runtime/workspace-binding.js.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-directories.d.ts +44 -0
- package/dist/cloud-workspace/runtime/workspace-directories.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-directories.js +34 -0
- package/dist/cloud-workspace/runtime/workspace-directories.js.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-models.d.ts +31 -0
- package/dist/cloud-workspace/runtime/workspace-models.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-models.js +63 -0
- package/dist/cloud-workspace/runtime/workspace-models.js.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-notifications.d.ts +37 -0
- package/dist/cloud-workspace/runtime/workspace-notifications.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-notifications.js +90 -0
- package/dist/cloud-workspace/runtime/workspace-notifications.js.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-ui.d.ts +252 -0
- package/dist/cloud-workspace/runtime/workspace-ui.d.ts.map +1 -0
- package/dist/cloud-workspace/runtime/workspace-ui.js +94 -0
- package/dist/cloud-workspace/runtime/workspace-ui.js.map +1 -0
- package/dist/database/operators.d.ts +2 -0
- package/dist/database/operators.d.ts.map +1 -0
- package/dist/database/operators.js +2 -0
- package/dist/database/operators.js.map +1 -0
- package/dist/database/postgres-adapter.js +1 -1
- package/dist/database/postgres-adapter.js.map +1 -1
- package/dist/database/schema.d.ts +1 -1
- package/dist/database/schema.js +1 -1
- package/dist/model-proxy/index.d.ts +29 -0
- package/dist/model-proxy/index.d.ts.map +1 -0
- package/dist/model-proxy/index.js +81 -0
- package/dist/model-proxy/index.js.map +1 -0
- package/dist/project-skills/bundle-archive.d.ts +21 -0
- package/dist/project-skills/bundle-archive.d.ts.map +1 -0
- package/dist/project-skills/bundle-archive.js +165 -0
- package/dist/project-skills/bundle-archive.js.map +1 -0
- package/dist/project-skills/bundle-path.d.ts +3 -0
- package/dist/project-skills/bundle-path.d.ts.map +1 -0
- package/dist/project-skills/bundle-path.js +17 -0
- package/dist/project-skills/bundle-path.js.map +1 -0
- package/dist/project-skills/evidence.d.ts +15 -0
- package/dist/project-skills/evidence.d.ts.map +1 -0
- package/dist/project-skills/evidence.js +33 -0
- package/dist/project-skills/evidence.js.map +1 -0
- package/dist/project-skills/index.d.ts +7 -0
- package/dist/project-skills/index.d.ts.map +1 -0
- package/dist/project-skills/index.js +7 -0
- package/dist/project-skills/index.js.map +1 -0
- package/dist/project-skills/inventory.d.ts +23 -0
- package/dist/project-skills/inventory.d.ts.map +1 -0
- package/dist/project-skills/inventory.js +150 -0
- package/dist/project-skills/inventory.js.map +1 -0
- package/dist/project-skills/local-snapshot.d.ts +12 -0
- package/dist/project-skills/local-snapshot.d.ts.map +1 -0
- package/dist/project-skills/local-snapshot.js +66 -0
- package/dist/project-skills/local-snapshot.js.map +1 -0
- package/dist/project-skills/protocol.d.ts +31 -0
- package/dist/project-skills/protocol.d.ts.map +1 -0
- package/dist/project-skills/protocol.js +197 -0
- package/dist/project-skills/protocol.js.map +1 -0
- package/dist/project-skills/runtime-plugin.d.ts +66 -0
- package/dist/project-skills/runtime-plugin.d.ts.map +1 -0
- package/dist/project-skills/runtime-plugin.js +102 -0
- package/dist/project-skills/runtime-plugin.js.map +1 -0
- package/dist/project-skills/types.d.ts +63 -0
- package/dist/project-skills/types.d.ts.map +1 -0
- package/dist/project-skills/types.js +13 -0
- package/dist/project-skills/types.js.map +1 -0
- package/dist/public-network-address.d.ts +3 -0
- package/dist/public-network-address.d.ts.map +1 -0
- package/dist/public-network-address.js +20 -0
- package/dist/public-network-address.js.map +1 -0
- package/dist/recommend/types.d.ts +1 -1
- package/dist/recommend/types.js +1 -1
- package/dist/remix/auto-name.d.ts +24 -0
- package/dist/remix/auto-name.d.ts.map +1 -0
- package/dist/remix/auto-name.js +40 -0
- package/dist/remix/auto-name.js.map +1 -0
- package/dist/remix/index.d.ts +2 -0
- package/dist/remix/index.d.ts.map +1 -0
- package/dist/remix/index.js +2 -0
- package/dist/remix/index.js.map +1 -0
- package/dist/skill-evaluation.d.ts +152 -0
- package/dist/skill-evaluation.d.ts.map +1 -0
- package/dist/skill-evaluation.js +14 -0
- package/dist/skill-evaluation.js.map +1 -0
- package/dist/storage/cos.d.ts +11 -0
- package/dist/storage/cos.d.ts.map +1 -1
- package/dist/storage/cos.js +29 -0
- package/dist/storage/cos.js.map +1 -1
- package/package.json +41 -1
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const WORKSPACE_RELATIVE_PATH_MAX = 512;
|
|
3
|
+
export declare const WORKSPACE_FILE_CONTENT_MAX: number;
|
|
4
|
+
export declare const BINARY_WORKSPACE_FILE_MAX_BYTES: number;
|
|
5
|
+
export declare const BINARY_WORKSPACE_FILE_BODY_MAX_BYTES: number;
|
|
6
|
+
export declare const workspaceRelativePathSchema: z.ZodString;
|
|
7
|
+
export type WorkspaceRelativePath = z.infer<typeof workspaceRelativePathSchema>;
|
|
8
|
+
export declare const MANAGED_WRITE_SOURCES: readonly ["manual", "agent", "background"];
|
|
9
|
+
export type ManagedWriteSource = (typeof MANAGED_WRITE_SOURCES)[number];
|
|
10
|
+
export declare const managedWriteSourceSchema: z.ZodEnum<{
|
|
11
|
+
manual: "manual";
|
|
12
|
+
agent: "agent";
|
|
13
|
+
background: "background";
|
|
14
|
+
}>;
|
|
15
|
+
export declare const fileWritePayloadSchema: z.ZodObject<{
|
|
16
|
+
path: z.ZodString;
|
|
17
|
+
content: z.ZodString;
|
|
18
|
+
expectedRevision: z.ZodOptional<z.ZodNumber>;
|
|
19
|
+
writer: z.ZodOptional<z.ZodEnum<{
|
|
20
|
+
manual: "manual";
|
|
21
|
+
agent: "agent";
|
|
22
|
+
background: "background";
|
|
23
|
+
}>>;
|
|
24
|
+
writeId: z.ZodOptional<z.ZodString>;
|
|
25
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
26
|
+
release: z.ZodOptional<z.ZodBoolean>;
|
|
27
|
+
}, z.core.$strict>;
|
|
28
|
+
export type FileWritePayload = z.infer<typeof fileWritePayloadSchema>;
|
|
29
|
+
export declare const directoryCreatePayloadSchema: z.ZodObject<{
|
|
30
|
+
path: z.ZodString;
|
|
31
|
+
}, z.core.$strict>;
|
|
32
|
+
export type DirectoryCreatePayload = z.infer<typeof directoryCreatePayloadSchema>;
|
|
33
|
+
export declare const WORKSPACE_ASSET_PROCESSING_TOOLS: readonly ["image.compress", "image.crop", "image.layers", "audio.edit", "model.pack", "model.screenshot", "texture.export", "batch.image", "batch.audio"];
|
|
34
|
+
export type WorkspaceAssetProcessingTool = (typeof WORKSPACE_ASSET_PROCESSING_TOOLS)[number];
|
|
35
|
+
export declare const workspaceAssetProcessingSchema: z.ZodObject<{
|
|
36
|
+
tool: z.ZodEnum<{
|
|
37
|
+
"image.compress": "image.compress";
|
|
38
|
+
"image.crop": "image.crop";
|
|
39
|
+
"image.layers": "image.layers";
|
|
40
|
+
"audio.edit": "audio.edit";
|
|
41
|
+
"model.pack": "model.pack";
|
|
42
|
+
"model.screenshot": "model.screenshot";
|
|
43
|
+
"texture.export": "texture.export";
|
|
44
|
+
"batch.image": "batch.image";
|
|
45
|
+
"batch.audio": "batch.audio";
|
|
46
|
+
}>;
|
|
47
|
+
sourcePath: z.ZodString;
|
|
48
|
+
sourceHash: z.ZodOptional<z.ZodString>;
|
|
49
|
+
batchId: z.ZodOptional<z.ZodString>;
|
|
50
|
+
}, z.core.$strict>;
|
|
51
|
+
export type WorkspaceAssetProcessing = z.infer<typeof workspaceAssetProcessingSchema>;
|
|
52
|
+
/** Explicit create/replace preconditions; the payload always describes raw file bytes. */
|
|
53
|
+
export declare const fileBinaryWritePayloadSchema: z.ZodObject<{
|
|
54
|
+
path: z.ZodString;
|
|
55
|
+
contentBase64: z.ZodString;
|
|
56
|
+
expectedContentHash: z.ZodNullable<z.ZodString>;
|
|
57
|
+
expectedRevision: z.ZodOptional<z.ZodNumber>;
|
|
58
|
+
source: z.ZodOptional<z.ZodObject<{
|
|
59
|
+
path: z.ZodString;
|
|
60
|
+
contentHash: z.ZodString;
|
|
61
|
+
}, z.core.$strict>>;
|
|
62
|
+
processing: z.ZodOptional<z.ZodObject<{
|
|
63
|
+
tool: z.ZodEnum<{
|
|
64
|
+
"image.compress": "image.compress";
|
|
65
|
+
"image.crop": "image.crop";
|
|
66
|
+
"image.layers": "image.layers";
|
|
67
|
+
"audio.edit": "audio.edit";
|
|
68
|
+
"model.pack": "model.pack";
|
|
69
|
+
"model.screenshot": "model.screenshot";
|
|
70
|
+
"texture.export": "texture.export";
|
|
71
|
+
"batch.image": "batch.image";
|
|
72
|
+
"batch.audio": "batch.audio";
|
|
73
|
+
}>;
|
|
74
|
+
sourcePath: z.ZodString;
|
|
75
|
+
sourceHash: z.ZodOptional<z.ZodString>;
|
|
76
|
+
batchId: z.ZodOptional<z.ZodString>;
|
|
77
|
+
}, z.core.$strict>>;
|
|
78
|
+
}, z.core.$strict>;
|
|
79
|
+
export type FileBinaryWritePayload = z.infer<typeof fileBinaryWritePayloadSchema>;
|
|
80
|
+
export declare const workspaceFileRecordSchema: z.ZodObject<{
|
|
81
|
+
path: z.ZodString;
|
|
82
|
+
revision: z.ZodNumber;
|
|
83
|
+
contentHash: z.ZodString;
|
|
84
|
+
size: z.ZodNumber;
|
|
85
|
+
modifiedAt: z.ZodOptional<z.ZodString>;
|
|
86
|
+
}, z.core.$strict>;
|
|
87
|
+
export type WorkspaceFileRecord = z.infer<typeof workspaceFileRecordSchema>;
|
|
88
|
+
export declare const workspaceFileListSchema: z.ZodObject<{
|
|
89
|
+
files: z.ZodArray<z.ZodObject<{
|
|
90
|
+
path: z.ZodString;
|
|
91
|
+
revision: z.ZodNumber;
|
|
92
|
+
contentHash: z.ZodString;
|
|
93
|
+
size: z.ZodNumber;
|
|
94
|
+
modifiedAt: z.ZodOptional<z.ZodString>;
|
|
95
|
+
}, z.core.$strict>>;
|
|
96
|
+
directories: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
97
|
+
directoryRevisions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
98
|
+
unreadablePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
99
|
+
}, z.core.$strict>;
|
|
100
|
+
export type WorkspaceFileList = z.infer<typeof workspaceFileListSchema>;
|
|
101
|
+
export declare const workspaceFileContentSchema: z.ZodObject<{
|
|
102
|
+
path: z.ZodString;
|
|
103
|
+
revision: z.ZodNumber;
|
|
104
|
+
contentHash: z.ZodString;
|
|
105
|
+
content: z.ZodString;
|
|
106
|
+
}, z.core.$strict>;
|
|
107
|
+
export type WorkspaceFileContent = z.infer<typeof workspaceFileContentSchema>;
|
|
108
|
+
export declare function hashWorkspaceFileContent(content: string): string;
|
|
109
|
+
export declare function isWorkspaceRelativePath(value: string): boolean;
|
|
110
|
+
/**
|
|
111
|
+
* The project's packages, installed with pnpm in the background after the checkout is registered.
|
|
112
|
+
* `pending` means the workspace has not been checked yet; `none` means it has no package.json.
|
|
113
|
+
*/
|
|
114
|
+
export declare const WORKSPACE_DEPENDENCY_STATUSES: readonly ["pending", "none", "installing", "ready", "failed"];
|
|
115
|
+
export type WorkspaceDependencyStatus = (typeof WORKSPACE_DEPENDENCY_STATUSES)[number];
|
|
116
|
+
export declare const workspaceDependenciesSchema: z.ZodObject<{
|
|
117
|
+
workspaceId: z.ZodString;
|
|
118
|
+
status: z.ZodEnum<{
|
|
119
|
+
pending: "pending";
|
|
120
|
+
ready: "ready";
|
|
121
|
+
failed: "failed";
|
|
122
|
+
none: "none";
|
|
123
|
+
installing: "installing";
|
|
124
|
+
}>;
|
|
125
|
+
lockHash: z.ZodOptional<z.ZodString>;
|
|
126
|
+
startedAt: z.ZodOptional<z.ZodString>;
|
|
127
|
+
finishedAt: z.ZodOptional<z.ZodString>;
|
|
128
|
+
error: z.ZodOptional<z.ZodString>;
|
|
129
|
+
logTail: z.ZodOptional<z.ZodString>;
|
|
130
|
+
}, z.core.$strict>;
|
|
131
|
+
export type WorkspaceDependencies = z.infer<typeof workspaceDependenciesSchema>;
|
|
132
|
+
//# sourceMappingURL=files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,0BAA0B,QAAc,CAAC;AACtD,eAAO,MAAM,+BAA+B,QAAmB,CAAC;AAChE,eAAO,MAAM,oCAAoC,QAA4D,CAAC;AAE9G,eAAO,MAAM,2BAA2B,aAcpC,CAAC;AAEL,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,qBAAqB,4CAA6C,CAAC;AAChF,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AACxE,eAAO,MAAM,wBAAwB;;;;EAAgC,CAAC;AAEtE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;kBAqB/B,CAAC;AAEL,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,4BAA4B;;kBAE9B,CAAC;AAEZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,gCAAgC,2JAGnC,CAAC;AACX,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,gCAAgC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7F,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;kBAKhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,0FAA0F;AAC1F,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;kBAcvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,yBAAyB;;;;;;kBAQ3B,CAAC;AAEZ,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,uBAAuB;;;;;;;;;;;kBAOzB,CAAC;AAEZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,0BAA0B;;;;;kBAO5B,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,+DAMhC,CAAC;AACX,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;kBAU7B,CAAC;AAEZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { isAttachmentBase64 } from './attachment-base64.js';
|
|
4
|
+
export const WORKSPACE_RELATIVE_PATH_MAX = 512;
|
|
5
|
+
export const WORKSPACE_FILE_CONTENT_MAX = 1024 * 1024;
|
|
6
|
+
export const BINARY_WORKSPACE_FILE_MAX_BYTES = 32 * 1024 * 1024;
|
|
7
|
+
export const BINARY_WORKSPACE_FILE_BODY_MAX_BYTES = 4 * Math.ceil(BINARY_WORKSPACE_FILE_MAX_BYTES / 3) + 8192;
|
|
8
|
+
export const workspaceRelativePathSchema = z
|
|
9
|
+
.string()
|
|
10
|
+
.trim()
|
|
11
|
+
.min(1)
|
|
12
|
+
.max(WORKSPACE_RELATIVE_PATH_MAX)
|
|
13
|
+
.superRefine((value, context) => {
|
|
14
|
+
if (value.includes('\0') || value.includes('\\') || value.startsWith('/') || value.includes(':')) {
|
|
15
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'invalid_workspace_path' });
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const segments = value.split('/');
|
|
19
|
+
if (segments.some((segment) => segment === '' || segment === '.' || segment === '..')) {
|
|
20
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'invalid_workspace_path' });
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
export const MANAGED_WRITE_SOURCES = ['manual', 'agent', 'background'];
|
|
24
|
+
export const managedWriteSourceSchema = z.enum(MANAGED_WRITE_SOURCES);
|
|
25
|
+
export const fileWritePayloadSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
path: workspaceRelativePathSchema,
|
|
28
|
+
content: z.string().max(WORKSPACE_FILE_CONTENT_MAX),
|
|
29
|
+
expectedRevision: z.number().int().nonnegative().optional(),
|
|
30
|
+
writer: managedWriteSourceSchema.optional(),
|
|
31
|
+
writeId: z.string().trim().min(1).max(128).optional(),
|
|
32
|
+
hold: z.boolean().optional(),
|
|
33
|
+
release: z.boolean().optional(),
|
|
34
|
+
})
|
|
35
|
+
.strict()
|
|
36
|
+
.superRefine((value, context) => {
|
|
37
|
+
if ((value.hold || value.release) && !value.writeId) {
|
|
38
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'write_id_required' });
|
|
39
|
+
}
|
|
40
|
+
if (value.hold && value.release) {
|
|
41
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'write_hold_conflict' });
|
|
42
|
+
}
|
|
43
|
+
if (value.writer === 'background' && value.hold !== true && value.release !== true) {
|
|
44
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'background_write_unmanaged' });
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
export const directoryCreatePayloadSchema = z.object({
|
|
48
|
+
path: workspaceRelativePathSchema,
|
|
49
|
+
}).strict();
|
|
50
|
+
export const WORKSPACE_ASSET_PROCESSING_TOOLS = [
|
|
51
|
+
'image.compress', 'image.crop', 'image.layers', 'audio.edit', 'model.pack',
|
|
52
|
+
'model.screenshot', 'texture.export', 'batch.image', 'batch.audio',
|
|
53
|
+
];
|
|
54
|
+
export const workspaceAssetProcessingSchema = z.object({
|
|
55
|
+
tool: z.enum(WORKSPACE_ASSET_PROCESSING_TOOLS),
|
|
56
|
+
sourcePath: workspaceRelativePathSchema,
|
|
57
|
+
sourceHash: z.string().regex(/^[a-f0-9]{64}$/).optional(),
|
|
58
|
+
batchId: z.string().regex(/^[a-zA-Z0-9_-]{1,128}$/).optional(),
|
|
59
|
+
}).strict();
|
|
60
|
+
/** Explicit create/replace preconditions; the payload always describes raw file bytes. */
|
|
61
|
+
export const fileBinaryWritePayloadSchema = z.object({
|
|
62
|
+
path: workspaceRelativePathSchema,
|
|
63
|
+
contentBase64: z.string().max(4 * Math.ceil(BINARY_WORKSPACE_FILE_MAX_BYTES / 3))
|
|
64
|
+
.refine(isAttachmentBase64, 'invalid_binary_content')
|
|
65
|
+
.refine(value => Buffer.byteLength(value, 'base64') <= BINARY_WORKSPACE_FILE_MAX_BYTES, 'binary_file_too_large'),
|
|
66
|
+
expectedContentHash: z.string().regex(/^[a-f0-9]{64}$/).nullable(),
|
|
67
|
+
expectedRevision: z.number().int().nonnegative().optional(),
|
|
68
|
+
source: z.object({ path: workspaceRelativePathSchema, contentHash: z.string().regex(/^[a-f0-9]{64}$/) }).strict().optional(),
|
|
69
|
+
processing: workspaceAssetProcessingSchema.optional(),
|
|
70
|
+
}).strict().superRefine((value, context) => {
|
|
71
|
+
if (value.processing && value.source && (value.processing.sourcePath !== value.source.path
|
|
72
|
+
|| (value.processing.sourceHash !== undefined && value.processing.sourceHash !== value.source.contentHash))) {
|
|
73
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: 'processing_source_mismatch' });
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
export const workspaceFileRecordSchema = z
|
|
77
|
+
.object({
|
|
78
|
+
path: workspaceRelativePathSchema,
|
|
79
|
+
revision: z.number().int().nonnegative(),
|
|
80
|
+
contentHash: z.string().length(64),
|
|
81
|
+
size: z.number().int().nonnegative(),
|
|
82
|
+
modifiedAt: z.string().datetime().optional(),
|
|
83
|
+
})
|
|
84
|
+
.strict();
|
|
85
|
+
export const workspaceFileListSchema = z
|
|
86
|
+
.object({
|
|
87
|
+
files: z.array(workspaceFileRecordSchema),
|
|
88
|
+
directories: z.array(workspaceRelativePathSchema).optional(),
|
|
89
|
+
directoryRevisions: z.record(workspaceRelativePathSchema, z.number().int().nonnegative()).optional(),
|
|
90
|
+
unreadablePaths: z.array(workspaceRelativePathSchema).optional(),
|
|
91
|
+
})
|
|
92
|
+
.strict();
|
|
93
|
+
export const workspaceFileContentSchema = z
|
|
94
|
+
.object({
|
|
95
|
+
path: workspaceRelativePathSchema,
|
|
96
|
+
revision: z.number().int().nonnegative(),
|
|
97
|
+
contentHash: z.string().length(64),
|
|
98
|
+
content: z.string().max(WORKSPACE_FILE_CONTENT_MAX),
|
|
99
|
+
})
|
|
100
|
+
.strict();
|
|
101
|
+
export function hashWorkspaceFileContent(content) {
|
|
102
|
+
return createHash('sha256').update(content, 'utf8').digest('hex');
|
|
103
|
+
}
|
|
104
|
+
export function isWorkspaceRelativePath(value) {
|
|
105
|
+
return workspaceRelativePathSchema.safeParse(value).success;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* The project's packages, installed with pnpm in the background after the checkout is registered.
|
|
109
|
+
* `pending` means the workspace has not been checked yet; `none` means it has no package.json.
|
|
110
|
+
*/
|
|
111
|
+
export const WORKSPACE_DEPENDENCY_STATUSES = [
|
|
112
|
+
'pending',
|
|
113
|
+
'none',
|
|
114
|
+
'installing',
|
|
115
|
+
'ready',
|
|
116
|
+
'failed',
|
|
117
|
+
];
|
|
118
|
+
export const workspaceDependenciesSchema = z
|
|
119
|
+
.object({
|
|
120
|
+
workspaceId: z.string().min(1).max(128),
|
|
121
|
+
status: z.enum(WORKSPACE_DEPENDENCY_STATUSES),
|
|
122
|
+
lockHash: z.string().length(64).optional(),
|
|
123
|
+
startedAt: z.string().optional(),
|
|
124
|
+
finishedAt: z.string().optional(),
|
|
125
|
+
error: z.string().max(128).optional(),
|
|
126
|
+
logTail: z.string().max(8_000).optional(),
|
|
127
|
+
})
|
|
128
|
+
.strict();
|
|
129
|
+
//# sourceMappingURL=files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const generationSchema: z.ZodNumber;
|
|
3
|
+
export declare const runtimeEpochSchema: z.ZodNumber;
|
|
4
|
+
export declare const leaseFenceSchema: z.ZodNumber;
|
|
5
|
+
export declare const runtimeGenerationsSchema: z.ZodObject<{
|
|
6
|
+
generation: z.ZodNumber;
|
|
7
|
+
runtimeEpoch: z.ZodNumber;
|
|
8
|
+
leaseFence: z.ZodNumber;
|
|
9
|
+
}, z.core.$strict>;
|
|
10
|
+
export type RuntimeGenerations = z.infer<typeof runtimeGenerationsSchema>;
|
|
11
|
+
/** Fields the browser client must not choose. Trusted config or server registration fills them.
|
|
12
|
+
* Sandbox control HTTP still accepts dispatcher `leaseFence` and checks it separately. */
|
|
13
|
+
export declare const UNTRUSTED_RUNTIME_FIELDS: readonly ["userId", "runtimeId", "generation", "runtimeEpoch", "leaseFence", "rootPath", "workspaceRoot"];
|
|
14
|
+
export type UntrustedRuntimeField = (typeof UNTRUSTED_RUNTIME_FIELDS)[number];
|
|
15
|
+
export declare function findUntrustedRuntimeFields(input: unknown): UntrustedRuntimeField[];
|
|
16
|
+
export declare function assertTrustedGenerations(actual: RuntimeGenerations, expected: Pick<RuntimeGenerations, 'generation' | 'runtimeEpoch'>): 'ok' | 'generation_mismatch';
|
|
17
|
+
export declare function assertLeaseFence(actual: number, acceptedFence: number): 'ok' | 'stale_lease';
|
|
18
|
+
//# sourceMappingURL=generations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generations.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/generations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,gBAAgB,aAAiC,CAAC;AAC/D,eAAO,MAAM,kBAAkB,aAAiC,CAAC;AACjE,eAAO,MAAM,gBAAgB,aAAiC,CAAC;AAE/D,eAAO,MAAM,wBAAwB;;;;kBAM1B,CAAC;AAEZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;2FAC2F;AAC3F,eAAO,MAAM,wBAAwB,2GAQ3B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAGlF;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,cAAc,CAAC,GAChE,IAAI,GAAG,qBAAqB,CAK9B;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa,CAG5F"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export const generationSchema = z.number().int().nonnegative();
|
|
3
|
+
export const runtimeEpochSchema = z.number().int().nonnegative();
|
|
4
|
+
export const leaseFenceSchema = z.number().int().nonnegative();
|
|
5
|
+
export const runtimeGenerationsSchema = z
|
|
6
|
+
.object({
|
|
7
|
+
generation: generationSchema,
|
|
8
|
+
runtimeEpoch: runtimeEpochSchema,
|
|
9
|
+
leaseFence: leaseFenceSchema,
|
|
10
|
+
})
|
|
11
|
+
.strict();
|
|
12
|
+
/** Fields the browser client must not choose. Trusted config or server registration fills them.
|
|
13
|
+
* Sandbox control HTTP still accepts dispatcher `leaseFence` and checks it separately. */
|
|
14
|
+
export const UNTRUSTED_RUNTIME_FIELDS = [
|
|
15
|
+
'userId',
|
|
16
|
+
'runtimeId',
|
|
17
|
+
'generation',
|
|
18
|
+
'runtimeEpoch',
|
|
19
|
+
'leaseFence',
|
|
20
|
+
'rootPath',
|
|
21
|
+
'workspaceRoot',
|
|
22
|
+
];
|
|
23
|
+
export function findUntrustedRuntimeFields(input) {
|
|
24
|
+
if (!input || typeof input !== 'object' || Array.isArray(input))
|
|
25
|
+
return [];
|
|
26
|
+
return UNTRUSTED_RUNTIME_FIELDS.filter((field) => field in input);
|
|
27
|
+
}
|
|
28
|
+
export function assertTrustedGenerations(actual, expected) {
|
|
29
|
+
if (actual.generation !== expected.generation || actual.runtimeEpoch !== expected.runtimeEpoch) {
|
|
30
|
+
return 'generation_mismatch';
|
|
31
|
+
}
|
|
32
|
+
return 'ok';
|
|
33
|
+
}
|
|
34
|
+
export function assertLeaseFence(actual, acceptedFence) {
|
|
35
|
+
if (actual < acceptedFence)
|
|
36
|
+
return 'stale_lease';
|
|
37
|
+
return 'ok';
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=generations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generations.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/generations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AAC/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AACjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AAE/D,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,UAAU,EAAE,gBAAgB;IAC5B,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,gBAAgB;CAC7B,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ;2FAC2F;AAC3F,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,cAAc;IACd,YAAY;IACZ,UAAU;IACV,eAAe;CACP,CAAC;AAIX,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3E,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,MAA0B,EAC1B,QAAiE;IAEjE,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC/F,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,aAAqB;IACpE,IAAI,MAAM,GAAG,aAAa;QAAE,OAAO,aAAa,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** Authentication mode names mirror the external configuration/protocol values defined here. */
|
|
3
|
+
export declare const WORKSPACE_GIT_AUTH_MODE: {
|
|
4
|
+
readonly LOCAL: "local";
|
|
5
|
+
readonly GATEWAY: "gateway";
|
|
6
|
+
};
|
|
7
|
+
export declare const workspaceGitAuthModeSchema: z.ZodEnum<{
|
|
8
|
+
readonly LOCAL: "local";
|
|
9
|
+
readonly GATEWAY: "gateway";
|
|
10
|
+
}>;
|
|
11
|
+
export type WorkspaceGitAuthMode = z.infer<typeof workspaceGitAuthModeSchema>;
|
|
12
|
+
export declare const DEFAULT_WORKSPACE_GIT_AUTH_MODE: "gateway";
|
|
13
|
+
export type WorkspaceGitAuthConfig = {
|
|
14
|
+
mode: WorkspaceGitAuthMode;
|
|
15
|
+
origin?: string;
|
|
16
|
+
token?: string;
|
|
17
|
+
};
|
|
18
|
+
/** Classify an explicit mode; missing values do not imply a mode or grant authorization. */
|
|
19
|
+
export declare function isLocalWorkspaceGitAuthMode(mode: WorkspaceGitAuthMode | undefined): mode is typeof WORKSPACE_GIT_AUTH_MODE.LOCAL;
|
|
20
|
+
export declare function isGatewayWorkspaceGitAuthMode(mode: WorkspaceGitAuthMode | undefined): mode is typeof WORKSPACE_GIT_AUTH_MODE.GATEWAY;
|
|
21
|
+
/** Logical ownership is separate from authentication mode. Matches local and local-<hostname> owners. */
|
|
22
|
+
export declare function isLocalWorkspaceGitEnvironment(environment: string | undefined): boolean;
|
|
23
|
+
export declare function assertGitCredentialControlUrl(value: string): void;
|
|
24
|
+
/** Backend startup guard. Logical environment and deployment runtime must both be local. */
|
|
25
|
+
export declare function readWorkspaceGitAuthConfig(env: Record<string, string | undefined>, requireToken?: boolean): WorkspaceGitAuthConfig;
|
|
26
|
+
/** Exact trusted origin and canonical repository path; loopback exists solely for isolated tests. */
|
|
27
|
+
export declare function assertDirectGitRepository(repositoryUrl: string, origin: string): void;
|
|
28
|
+
export declare const workspaceGitDirectAccessSchema: z.ZodObject<{
|
|
29
|
+
repositoryUrl: z.ZodString;
|
|
30
|
+
origin: z.ZodString;
|
|
31
|
+
username: z.ZodString;
|
|
32
|
+
password: z.ZodString;
|
|
33
|
+
}, z.core.$strict>;
|
|
34
|
+
export type WorkspaceGitDirectAccess = z.infer<typeof workspaceGitDirectAccessSchema>;
|
|
35
|
+
//# sourceMappingURL=git-auth-mode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-auth-mode.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/git-auth-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gGAAgG;AAChG,eAAO,MAAM,uBAAuB;;;CAG1B,CAAC;AACX,eAAO,MAAM,0BAA0B;;;EAAkC,CAAC;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,eAAO,MAAM,+BAA+B,WAAkC,CAAC;AAC/E,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErG,4FAA4F;AAC5F,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,IAAI,OAAO,uBAAuB,CAAC,KAAK,CAEhI;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,IAAI,OAAO,uBAAuB,CAAC,OAAO,CAEpI;AAED,yGAAyG;AACzG,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEvF;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAMjE;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,YAAY,UAAQ,GAAG,sBAAsB,CAkBhI;AAED,qGAAqG;AACrG,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQrF;AAED,eAAO,MAAM,8BAA8B;;;;;kBAOzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** Authentication mode names mirror the external configuration/protocol values defined here. */
|
|
3
|
+
export const WORKSPACE_GIT_AUTH_MODE = {
|
|
4
|
+
LOCAL: 'local',
|
|
5
|
+
GATEWAY: 'gateway',
|
|
6
|
+
};
|
|
7
|
+
export const workspaceGitAuthModeSchema = z.enum(WORKSPACE_GIT_AUTH_MODE);
|
|
8
|
+
export const DEFAULT_WORKSPACE_GIT_AUTH_MODE = WORKSPACE_GIT_AUTH_MODE.GATEWAY;
|
|
9
|
+
/** Classify an explicit mode; missing values do not imply a mode or grant authorization. */
|
|
10
|
+
export function isLocalWorkspaceGitAuthMode(mode) {
|
|
11
|
+
return mode === WORKSPACE_GIT_AUTH_MODE.LOCAL;
|
|
12
|
+
}
|
|
13
|
+
export function isGatewayWorkspaceGitAuthMode(mode) {
|
|
14
|
+
return mode === WORKSPACE_GIT_AUTH_MODE.GATEWAY;
|
|
15
|
+
}
|
|
16
|
+
/** Logical ownership is separate from authentication mode. Matches local and local-<hostname> owners. */
|
|
17
|
+
export function isLocalWorkspaceGitEnvironment(environment) {
|
|
18
|
+
return environment !== undefined && /^local(?:-[a-zA-Z0-9][a-zA-Z0-9_-]*)?$/.test(environment);
|
|
19
|
+
}
|
|
20
|
+
export function assertGitCredentialControlUrl(value) {
|
|
21
|
+
const url = new URL(value);
|
|
22
|
+
if (url.username || url.password || url.search || url.hash
|
|
23
|
+
|| !(url.protocol === 'https:' || (url.protocol === 'http:' && ['127.0.0.1', 'localhost', '[::1]'].includes(url.hostname)))) {
|
|
24
|
+
throw new Error('workspace_git_control_transport_rejected');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/** Backend startup guard. Logical environment and deployment runtime must both be local. */
|
|
28
|
+
export function readWorkspaceGitAuthConfig(env, requireToken = false) {
|
|
29
|
+
const parsed = workspaceGitAuthModeSchema.safeParse(env.WORKSPACE_GIT_AUTH_MODE ?? DEFAULT_WORKSPACE_GIT_AUTH_MODE);
|
|
30
|
+
if (!parsed.success)
|
|
31
|
+
throw new Error('Invalid WORKSPACE_GIT_AUTH_MODE');
|
|
32
|
+
const mode = parsed.data;
|
|
33
|
+
if (isGatewayWorkspaceGitAuthMode(mode))
|
|
34
|
+
return { mode };
|
|
35
|
+
if (env.NODE_ENV !== 'development'
|
|
36
|
+
|| !isLocalWorkspaceGitEnvironment(env.AGENT_OWNER_ENV || env.PLAYCRAFT_ENV)
|
|
37
|
+
|| [env.AGENT_OWNER_ENV, env.PLAYCRAFT_ENV].some(value => value && !isLocalWorkspaceGitEnvironment(value))
|
|
38
|
+
|| env.KUBERNETES_SERVICE_HOST || env.KUBERNETES_SERVICE_PORT) {
|
|
39
|
+
throw new Error('Direct workspace Git authentication requires local development outside Kubernetes');
|
|
40
|
+
}
|
|
41
|
+
const origin = env.WORKSPACE_GIT_GONGFENG_ORIGIN || 'https://git.tencent.com';
|
|
42
|
+
assertDirectGitRepository(`${origin}/validation/repository.git`, origin);
|
|
43
|
+
const token = requireToken ? env.GIT_TENCENT_PRIVATE_TOKEN : undefined;
|
|
44
|
+
if (requireToken && (!token || token.length > 8192 || /[\r\n\0:]/.test(token))) {
|
|
45
|
+
throw new Error('Invalid GIT_TENCENT_PRIVATE_TOKEN');
|
|
46
|
+
}
|
|
47
|
+
return { mode, origin, ...(token ? { token } : {}) };
|
|
48
|
+
}
|
|
49
|
+
/** Exact trusted origin and canonical repository path; loopback exists solely for isolated tests. */
|
|
50
|
+
export function assertDirectGitRepository(repositoryUrl, origin) {
|
|
51
|
+
const url = new URL(repositoryUrl);
|
|
52
|
+
if (url.origin !== origin || url.href !== repositoryUrl || url.username || url.password || url.search || url.hash
|
|
53
|
+
|| !/^\/[a-zA-Z0-9_-]+(?:\/[a-zA-Z0-9_.-]+)+\.git$/.test(url.pathname)
|
|
54
|
+
|| url.pathname.split('/').some(part => part === '..' || part === '.')
|
|
55
|
+
|| !(url.protocol === 'https:' || (url.protocol === 'http:' && ['127.0.0.1', 'localhost', '[::1]'].includes(url.hostname)))) {
|
|
56
|
+
throw new Error('workspace_git_direct_repository_rejected');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
export const workspaceGitDirectAccessSchema = z.object({
|
|
60
|
+
repositoryUrl: z.string().min(1).max(2048),
|
|
61
|
+
origin: z.string().min(1).max(256),
|
|
62
|
+
username: z.string().min(1).max(256).regex(/^[^:\r\n\0]+$/),
|
|
63
|
+
password: z.string().min(1).max(8192).regex(/^[^\r\n\0]+$/),
|
|
64
|
+
}).strict().refine(value => {
|
|
65
|
+
try {
|
|
66
|
+
assertDirectGitRepository(value.repositoryUrl, value.origin);
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=git-auth-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-auth-mode.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/git-auth-mode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** One request names at most this many paths, for commits and index changes alike. */
|
|
3
|
+
export declare const GIT_PATHS_MAX = 256;
|
|
4
|
+
export declare const gitCommitPayloadSchema: z.ZodObject<{
|
|
5
|
+
message: z.ZodString;
|
|
6
|
+
paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
7
|
+
stagedOnly: z.ZodOptional<z.ZodLiteral<true>>;
|
|
8
|
+
}, z.core.$strict>;
|
|
9
|
+
export type GitCommitPayload = z.infer<typeof gitCommitPayloadSchema>;
|
|
10
|
+
/**
|
|
11
|
+
* Paths for `git.stage`, `git.unstage` and `git.discard`. Discard only touches the work tree:
|
|
12
|
+
* tracked files return to their staged content and untracked files are deleted.
|
|
13
|
+
*/
|
|
14
|
+
export declare const gitPathsPayloadSchema: z.ZodObject<{
|
|
15
|
+
paths: z.ZodArray<z.ZodString>;
|
|
16
|
+
}, z.core.$strict>;
|
|
17
|
+
export type GitPathsPayload = z.infer<typeof gitPathsPayloadSchema>;
|
|
18
|
+
export declare const gitPushPayloadSchema: z.ZodObject<{}, z.core.$strict>;
|
|
19
|
+
export type GitPushPayload = z.infer<typeof gitPushPayloadSchema>;
|
|
20
|
+
/** `git.pull`: fetch the bound branch from origin and merge it, as `git pull` does by default. */
|
|
21
|
+
export declare const gitPullPayloadSchema: z.ZodObject<{}, z.core.$strict>;
|
|
22
|
+
export type GitPullPayload = z.infer<typeof gitPullPayloadSchema>;
|
|
23
|
+
/** `git.merge.abort`: return to the state before the merge that is in progress. */
|
|
24
|
+
export declare const gitMergeAbortPayloadSchema: z.ZodObject<{}, z.core.$strict>;
|
|
25
|
+
export type GitMergeAbortPayload = z.infer<typeof gitMergeAbortPayloadSchema>;
|
|
26
|
+
/**
|
|
27
|
+
* `workspace.save`: commit everything that changed and push it. `trigger` only picks the commit
|
|
28
|
+
* message; a save started by the page's timer or after a change is `auto`.
|
|
29
|
+
*/
|
|
30
|
+
export declare const workspaceSavePayloadSchema: z.ZodObject<{
|
|
31
|
+
trigger: z.ZodOptional<z.ZodEnum<{
|
|
32
|
+
auto: "auto";
|
|
33
|
+
manual: "manual";
|
|
34
|
+
}>>;
|
|
35
|
+
}, z.core.$strict>;
|
|
36
|
+
export type WorkspaceSavePayload = z.infer<typeof workspaceSavePayloadSchema>;
|
|
37
|
+
export declare const gitStatusEntrySchema: z.ZodObject<{
|
|
38
|
+
path: z.ZodString;
|
|
39
|
+
indexStatus: z.ZodString;
|
|
40
|
+
worktreeStatus: z.ZodString;
|
|
41
|
+
staged: z.ZodOptional<z.ZodObject<{
|
|
42
|
+
added: z.ZodNumber;
|
|
43
|
+
removed: z.ZodNumber;
|
|
44
|
+
}, z.core.$strict>>;
|
|
45
|
+
unstaged: z.ZodOptional<z.ZodObject<{
|
|
46
|
+
added: z.ZodNumber;
|
|
47
|
+
removed: z.ZodNumber;
|
|
48
|
+
}, z.core.$strict>>;
|
|
49
|
+
}, z.core.$strict>;
|
|
50
|
+
export type GitStatusEntry = z.infer<typeof gitStatusEntrySchema>;
|
|
51
|
+
export declare const gitStatusSchema: z.ZodObject<{
|
|
52
|
+
initialized: z.ZodBoolean;
|
|
53
|
+
branch: z.ZodString;
|
|
54
|
+
ahead: z.ZodNumber;
|
|
55
|
+
behind: z.ZodNumber;
|
|
56
|
+
hasUpstream: z.ZodBoolean;
|
|
57
|
+
files: z.ZodArray<z.ZodObject<{
|
|
58
|
+
path: z.ZodString;
|
|
59
|
+
indexStatus: z.ZodString;
|
|
60
|
+
worktreeStatus: z.ZodString;
|
|
61
|
+
staged: z.ZodOptional<z.ZodObject<{
|
|
62
|
+
added: z.ZodNumber;
|
|
63
|
+
removed: z.ZodNumber;
|
|
64
|
+
}, z.core.$strict>>;
|
|
65
|
+
unstaged: z.ZodOptional<z.ZodObject<{
|
|
66
|
+
added: z.ZodNumber;
|
|
67
|
+
removed: z.ZodNumber;
|
|
68
|
+
}, z.core.$strict>>;
|
|
69
|
+
}, z.core.$strict>>;
|
|
70
|
+
merging: z.ZodOptional<z.ZodBoolean>;
|
|
71
|
+
mergeMessage: z.ZodOptional<z.ZodString>;
|
|
72
|
+
}, z.core.$strict>;
|
|
73
|
+
export type GitStatus = z.infer<typeof gitStatusSchema>;
|
|
74
|
+
export declare const gitDiffSchema: z.ZodObject<{
|
|
75
|
+
patch: z.ZodString;
|
|
76
|
+
}, z.core.$strict>;
|
|
77
|
+
export type GitDiff = z.infer<typeof gitDiffSchema>;
|
|
78
|
+
export declare const gitCommitSummarySchema: z.ZodObject<{
|
|
79
|
+
sha: z.ZodString;
|
|
80
|
+
subject: z.ZodString;
|
|
81
|
+
committedAt: z.ZodString;
|
|
82
|
+
}, z.core.$strict>;
|
|
83
|
+
export type GitCommitSummary = z.infer<typeof gitCommitSummarySchema>;
|
|
84
|
+
export declare const gitGraphSchema: z.ZodObject<{
|
|
85
|
+
commits: z.ZodArray<z.ZodObject<{
|
|
86
|
+
sha: z.ZodString;
|
|
87
|
+
subject: z.ZodString;
|
|
88
|
+
committedAt: z.ZodString;
|
|
89
|
+
}, z.core.$strict>>;
|
|
90
|
+
}, z.core.$strict>;
|
|
91
|
+
export type GitGraph = z.infer<typeof gitGraphSchema>;
|
|
92
|
+
/** A Git object id, SHA-1 or SHA-256. */
|
|
93
|
+
export declare const gitObjectIdSchema: z.ZodString;
|
|
94
|
+
/**
|
|
95
|
+
* `HEAD` is the last commit; `INDEX` is the staged content; during a merge conflict `MERGE_BASE`,
|
|
96
|
+
* `MERGE_OURS` and `MERGE_THEIRS` are the common ancestor, the current branch and the incoming
|
|
97
|
+
* side; an object id is a turn's snapshot tree.
|
|
98
|
+
*/
|
|
99
|
+
export declare const GIT_FILE_REFS: readonly ["HEAD", "INDEX", "MERGE_BASE", "MERGE_OURS", "MERGE_THEIRS"];
|
|
100
|
+
export type GitFileRef = (typeof GIT_FILE_REFS)[number] | (string & {});
|
|
101
|
+
export declare const gitFileRefSchema: z.ZodType<GitFileRef>;
|
|
102
|
+
/** Published when an agent turn ends and its working directory differs from when it began. */
|
|
103
|
+
export declare const TURN_FILES_CHANGED_EVENT = "turn.files.changed";
|
|
104
|
+
/** A turn listing more files than this reports the first ones and marks itself truncated. */
|
|
105
|
+
export declare const TURN_CHANGED_FILES_MAX = 500;
|
|
106
|
+
export declare const turnFileChangeSchema: z.ZodObject<{
|
|
107
|
+
path: z.ZodString;
|
|
108
|
+
status: z.ZodEnum<{
|
|
109
|
+
added: "added";
|
|
110
|
+
modified: "modified";
|
|
111
|
+
deleted: "deleted";
|
|
112
|
+
}>;
|
|
113
|
+
added: z.ZodNumber;
|
|
114
|
+
removed: z.ZodNumber;
|
|
115
|
+
binary: z.ZodBoolean;
|
|
116
|
+
}, z.core.$strict>;
|
|
117
|
+
export type TurnFileChange = z.infer<typeof turnFileChangeSchema>;
|
|
118
|
+
/** Snapshot trees taken just before a turn started and after it ended, with the files between them. */
|
|
119
|
+
export declare const turnFilesChangedSchema: z.ZodObject<{
|
|
120
|
+
threadId: z.ZodString;
|
|
121
|
+
turnId: z.ZodString;
|
|
122
|
+
before: z.ZodString;
|
|
123
|
+
after: z.ZodString;
|
|
124
|
+
files: z.ZodArray<z.ZodObject<{
|
|
125
|
+
path: z.ZodString;
|
|
126
|
+
status: z.ZodEnum<{
|
|
127
|
+
added: "added";
|
|
128
|
+
modified: "modified";
|
|
129
|
+
deleted: "deleted";
|
|
130
|
+
}>;
|
|
131
|
+
added: z.ZodNumber;
|
|
132
|
+
removed: z.ZodNumber;
|
|
133
|
+
binary: z.ZodBoolean;
|
|
134
|
+
}, z.core.$strict>>;
|
|
135
|
+
truncated: z.ZodBoolean;
|
|
136
|
+
}, z.core.$strip>;
|
|
137
|
+
export type TurnFilesChanged = z.infer<typeof turnFilesChangedSchema>;
|
|
138
|
+
/** One file as stored at a ref. A file absent there, or binary, carries no content. */
|
|
139
|
+
export declare const gitFileContentSchema: z.ZodObject<{
|
|
140
|
+
path: z.ZodString;
|
|
141
|
+
ref: z.ZodType<GitFileRef, unknown, z.core.$ZodTypeInternals<GitFileRef, unknown>>;
|
|
142
|
+
exists: z.ZodBoolean;
|
|
143
|
+
binary: z.ZodBoolean;
|
|
144
|
+
content: z.ZodString;
|
|
145
|
+
}, z.core.$strict>;
|
|
146
|
+
export type GitFileContent = z.infer<typeof gitFileContentSchema>;
|
|
147
|
+
//# sourceMappingURL=git.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/git.ts"],"names":[],"mappings":"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"}
|