@playdrop/playdrop-cli 0.16.12 → 0.17.0
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/config/client-meta.json +4 -4
- package/dist/apiClient.d.ts +1 -2
- package/dist/apiClient.js +1 -16
- package/dist/appUrls.js +4 -0
- package/dist/apps/build.d.ts +12 -4
- package/dist/apps/build.js +55 -22
- package/dist/apps/index.d.ts +2 -1
- package/dist/apps/index.js +4 -1
- package/dist/apps/loadCheck.d.ts +5 -1
- package/dist/apps/loadCheck.js +52 -18
- package/dist/apps/serverBuild.d.ts +17 -0
- package/dist/apps/serverBuild.js +155 -0
- package/dist/apps/staticHtml.d.ts +1 -0
- package/dist/apps/staticHtml.js +19 -10
- package/dist/apps/upload.d.ts +12 -2
- package/dist/apps/upload.js +127 -46
- package/dist/catalogue.d.ts +23 -1
- package/dist/catalogue.js +126 -100
- package/dist/commandContext.d.ts +6 -3
- package/dist/commandContext.js +108 -18
- package/dist/commands/build.js +0 -7
- package/dist/commands/captureListing.d.ts +3 -0
- package/dist/commands/captureListing.js +48 -4
- package/dist/commands/chat.d.ts +4 -7
- package/dist/commands/chat.js +165 -77
- package/dist/commands/check.js +34 -1
- package/dist/commands/create.js +30 -263
- package/dist/commands/dev.js +37 -3
- package/dist/commands/devBrowser.js +2 -2
- package/dist/commands/devGameServer.d.ts +16 -0
- package/dist/commands/devGameServer.js +237 -0
- package/dist/commands/devRuntimeAssets.d.ts +1 -0
- package/dist/commands/devRuntimeAssets.js +2 -0
- package/dist/commands/devServer.d.ts +3 -0
- package/dist/commands/devServer.js +111 -5
- package/dist/commands/generation.d.ts +33 -4
- package/dist/commands/generation.js +304 -115
- package/dist/commands/login.js +23 -7
- package/dist/commands/review.d.ts +1 -1
- package/dist/commands/review.js +68 -95
- package/dist/commands/source.d.ts +19 -0
- package/dist/commands/source.js +142 -0
- package/dist/commands/tweaks.js +5 -11
- package/dist/commands/upload-content.d.ts +1 -1
- package/dist/commands/upload-content.js +16 -12
- package/dist/commands/upload.d.ts +17 -1
- package/dist/commands/upload.js +47 -10
- package/dist/commands/worker/archive-staging.d.ts +1 -0
- package/dist/commands/worker/archive-staging.js +13 -2
- package/dist/commands/worker/e2e-fixtures.d.ts +32 -0
- package/dist/commands/worker/e2e-fixtures.js +466 -0
- package/dist/commands/worker/game-server-infra.d.ts +80 -0
- package/dist/commands/worker/game-server-infra.js +595 -0
- package/dist/commands/worker/game-source-git.d.ts +126 -0
- package/dist/commands/worker/game-source-git.js +780 -0
- package/dist/commands/worker/generation.d.ts +94 -0
- package/dist/commands/worker/generation.js +1458 -0
- package/dist/commands/worker/provider-telemetry.js +1 -1
- package/dist/commands/worker/runtime.d.ts +8 -10
- package/dist/commands/worker/runtime.js +53 -48
- package/dist/commands/worker.d.ts +79 -19
- package/dist/commands/worker.js +1796 -419
- package/dist/config.d.ts +2 -0
- package/dist/config.js +16 -3
- package/dist/environment.d.ts +0 -1
- package/dist/environment.js +0 -8
- package/dist/index.js +92 -22
- package/dist/workerAppProject.d.ts +1 -1
- package/dist/workerAppProject.js +15 -2
- package/node_modules/@playdrop/api-client/dist/client.d.ts +143 -39
- package/node_modules/@playdrop/api-client/dist/client.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/client.js +33 -0
- package/node_modules/@playdrop/api-client/dist/core/request.d.ts +1 -0
- package/node_modules/@playdrop/api-client/dist/core/request.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/core/request.js +17 -11
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts +51 -6
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.js +338 -41
- package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts +24 -1
- package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/ai.js +20 -0
- package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts +13 -8
- package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/apps.js +158 -90
- package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts +4 -0
- package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/assets.js +27 -0
- package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts +152 -21
- package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/chat.js +477 -100
- package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts +2 -1
- package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/player-meta.js +9 -0
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts +1 -2
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.js +0 -11
- package/node_modules/@playdrop/api-client/dist/domains/social.d.ts +29 -0
- package/node_modules/@playdrop/api-client/dist/domains/social.d.ts.map +1 -0
- package/node_modules/@playdrop/api-client/dist/domains/social.js +79 -0
- package/node_modules/@playdrop/api-client/dist/index.d.ts +81 -30
- package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/index.js +217 -56
- package/node_modules/@playdrop/api-client/dist/runtime.d.ts +18 -0
- package/node_modules/@playdrop/api-client/dist/runtime.d.ts.map +1 -0
- package/node_modules/@playdrop/api-client/dist/runtime.js +54 -0
- package/node_modules/@playdrop/api-client/package.json +7 -0
- package/node_modules/@playdrop/config/client-meta.json +4 -4
- package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts +11 -0
- package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/creator-plans.js +13 -1
- package/node_modules/@playdrop/config/dist/src/deployment.d.ts +0 -1
- package/node_modules/@playdrop/config/dist/src/deployment.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/deployment.js +0 -8
- package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts +0 -1
- package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/public-deployment.js +0 -8
- package/node_modules/@playdrop/config/dist/src/runtime-service-origins.d.ts +1 -1
- package/node_modules/@playdrop/config/dist/src/runtime-service-origins.js +2 -2
- package/node_modules/@playdrop/config/dist/src/server/logging.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/server/logging.js +31 -2
- package/node_modules/@playdrop/config/dist/test/creator-plans.test.js +10 -0
- package/node_modules/@playdrop/config/dist/test/deployment.test.js +0 -4
- package/node_modules/@playdrop/config/dist/test/runtime-service-origins.test.js +2 -0
- package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@playdrop/config/package.json +6 -0
- package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts +9 -0
- package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/archive.js +107 -0
- package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts +29 -0
- package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.js +64 -0
- package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts +8 -0
- package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/export.js +25 -0
- package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts +39 -0
- package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/git.js +195 -0
- package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts +6 -0
- package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/ignore.js +51 -0
- package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts +10 -0
- package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts.map +1 -0
- package/node_modules/@playdrop/{boxel-core/dist/src/humanoid/r15 → game-source-git/dist/src}/index.js +9 -4
- package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts +17 -0
- package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/lock.js +72 -0
- package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts +10 -0
- package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/materialize.js +99 -0
- package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts +24 -0
- package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/paths.js +207 -0
- package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts +66 -0
- package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/src/repository.js +213 -0
- package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts +2 -0
- package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts.map +1 -0
- package/node_modules/@playdrop/game-source-git/dist/test/core.test.js +441 -0
- package/node_modules/@playdrop/game-source-git/dist/tsconfig.tsbuildinfo +1 -0
- package/node_modules/@playdrop/game-source-git/package.json +28 -0
- package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/agent-task-terminal.js +15 -9
- package/node_modules/@playdrop/types/dist/api.d.ts +730 -166
- package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/api.js +65 -18
- package/node_modules/@playdrop/types/dist/asset-pack.d.ts +2 -0
- package/node_modules/@playdrop/types/dist/asset-pack.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/asset.d.ts +22 -8
- package/node_modules/@playdrop/types/dist/asset.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/asset.js +26 -26
- package/node_modules/@playdrop/types/dist/chat.d.ts +273 -31
- package/node_modules/@playdrop/types/dist/chat.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/chat.js +38 -4
- package/node_modules/@playdrop/types/dist/index.d.ts +3 -0
- package/node_modules/@playdrop/types/dist/index.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/index.js +7 -1
- package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts +11 -0
- package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts.map +1 -0
- package/node_modules/@playdrop/types/dist/public-cache-tags.js +78 -0
- package/node_modules/@playdrop/types/dist/realtime.d.ts +3 -15
- package/node_modules/@playdrop/types/dist/realtime.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/social.d.ts +64 -0
- package/node_modules/@playdrop/types/dist/social.d.ts.map +1 -0
- package/node_modules/@playdrop/{boxel-three/dist/src/types.js → types/dist/social.js} +14 -2
- package/node_modules/@playdrop/types/dist/spritesheet.d.ts +51 -0
- package/node_modules/@playdrop/types/dist/spritesheet.d.ts.map +1 -0
- package/node_modules/@playdrop/types/dist/spritesheet.js +73 -0
- package/node_modules/@playdrop/types/dist/version.d.ts +86 -58
- package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/version.js +111 -0
- package/node_modules/@playdrop/types/package.json +14 -0
- package/node_modules/@playdrop/vox-three/dist/src/index.d.ts +1 -1
- package/node_modules/@playdrop/vox-three/dist/src/index.js +1 -1
- package/node_modules/@playdrop/vox-three/dist/src/index.js.map +1 -1
- package/node_modules/@playdrop/vox-three/dist/src/vox.d.ts +0 -3
- package/node_modules/@playdrop/vox-three/dist/src/vox.js +0 -110
- package/node_modules/@playdrop/vox-three/dist/src/vox.js.map +1 -1
- package/node_modules/@playdrop/vox-three/dist/test/vox.test.js +0 -18
- package/node_modules/@playdrop/vox-three/dist/test/vox.test.js.map +1 -1
- package/node_modules/@playdrop/vox-three/package.json +8 -4
- package/package.json +9 -11
- package/dist/assets/model-artifacts.d.ts +0 -8
- package/dist/assets/model-artifacts.js +0 -382
- package/dist/assets/model-worker.d.ts +0 -22
- package/dist/assets/model-worker.js +0 -123
- package/node_modules/@playdrop/ai-client/dist/index.d.ts +0 -441
- package/node_modules/@playdrop/ai-client/dist/index.d.ts.map +0 -1
- package/node_modules/@playdrop/ai-client/dist/index.js +0 -499
- package/node_modules/@playdrop/ai-client/package.json +0 -22
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.d.ts +0 -13
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js +0 -141
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.d.ts +0 -47
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js +0 -313
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/format-utils.d.ts +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js +0 -36
- package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.d.ts +0 -23
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js +0 -11
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.d.ts +0 -4
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js +0 -21
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.d.ts +0 -4
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js +0 -24
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.d.ts +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.d.ts +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js +0 -387
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.d.ts +0 -6
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.d.ts +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js +0 -373
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.d.ts +0 -12
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js +0 -215
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.d.ts +0 -4
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js +0 -18
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.d.ts +0 -42
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js +0 -145
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.d.ts +0 -26
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js +0 -65
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.d.ts +0 -33
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js +0 -175
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r15.json +0 -1517
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r6.json +0 -61
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.d.ts +0 -10
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js +0 -23
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/index.d.ts +0 -19
- package/node_modules/@playdrop/boxel-core/dist/src/index.js +0 -36
- package/node_modules/@playdrop/boxel-core/dist/src/index.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/materials.d.ts +0 -26
- package/node_modules/@playdrop/boxel-core/dist/src/materials.js +0 -184
- package/node_modules/@playdrop/boxel-core/dist/src/materials.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.d.ts +0 -68
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js +0 -488
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.d.ts +0 -4
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.js +0 -380
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/textures.d.ts +0 -29
- package/node_modules/@playdrop/boxel-core/dist/src/textures.js +0 -208
- package/node_modules/@playdrop/boxel-core/dist/src/textures.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.d.ts +0 -9
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js +0 -312
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.d.ts +0 -9
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js +0 -154
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.d.ts +0 -2
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js +0 -121
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.d.ts +0 -20
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js +0 -389
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.d.ts +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js +0 -206
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.d.ts +0 -12
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js +0 -81
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.d.ts +0 -12
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js +0 -318
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/types.d.ts +0 -168
- package/node_modules/@playdrop/boxel-core/dist/src/types.js +0 -3
- package/node_modules/@playdrop/boxel-core/dist/src/types.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/validation.d.ts +0 -24
- package/node_modules/@playdrop/boxel-core/dist/src/validation.js +0 -620
- package/node_modules/@playdrop/boxel-core/dist/src/validation.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.d.ts +0 -11
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js +0 -135
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.d.ts +0 -23
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.js +0 -52
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.js.map +0 -1
- package/node_modules/@playdrop/boxel-core/package.json +0 -19
- package/node_modules/@playdrop/boxel-three/dist/src/animations.d.ts +0 -4
- package/node_modules/@playdrop/boxel-three/dist/src/animations.js +0 -92
- package/node_modules/@playdrop/boxel-three/dist/src/builders.d.ts +0 -8
- package/node_modules/@playdrop/boxel-three/dist/src/builders.js +0 -363
- package/node_modules/@playdrop/boxel-three/dist/src/context.d.ts +0 -24
- package/node_modules/@playdrop/boxel-three/dist/src/context.js +0 -58
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.d.ts +0 -100
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.js +0 -927
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.d.ts +0 -18
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.js +0 -294
- package/node_modules/@playdrop/boxel-three/dist/src/index.d.ts +0 -17
- package/node_modules/@playdrop/boxel-three/dist/src/index.js +0 -64
- package/node_modules/@playdrop/boxel-three/dist/src/instantiate.d.ts +0 -40
- package/node_modules/@playdrop/boxel-three/dist/src/instantiate.js +0 -96
- package/node_modules/@playdrop/boxel-three/dist/src/nodes.d.ts +0 -8
- package/node_modules/@playdrop/boxel-three/dist/src/nodes.js +0 -88
- package/node_modules/@playdrop/boxel-three/dist/src/overlays.d.ts +0 -7
- package/node_modules/@playdrop/boxel-three/dist/src/overlays.js +0 -123
- package/node_modules/@playdrop/boxel-three/dist/src/primitives.d.ts +0 -4
- package/node_modules/@playdrop/boxel-three/dist/src/primitives.js +0 -48
- package/node_modules/@playdrop/boxel-three/dist/src/scene.d.ts +0 -3
- package/node_modules/@playdrop/boxel-three/dist/src/scene.js +0 -168
- package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.d.ts +0 -29
- package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.js +0 -623
- package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.d.ts +0 -13
- package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.js +0 -133
- package/node_modules/@playdrop/boxel-three/dist/src/textures.d.ts +0 -17
- package/node_modules/@playdrop/boxel-three/dist/src/textures.js +0 -216
- package/node_modules/@playdrop/boxel-three/dist/src/types.d.ts +0 -112
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.d.ts +0 -28
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.js +0 -344
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.d.ts +0 -24
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.js +0 -113
- package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.js +0 -137
- package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.d.ts +0 -20
- package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.js +0 -85
- package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.js +0 -104
- package/node_modules/@playdrop/boxel-three/dist/test/index.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/index.test.js +0 -30
- package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.js +0 -88
- package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.js +0 -42
- package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.js +0 -73
- package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.js +0 -85
- package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.js +0 -73
- package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.js +0 -136
- package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.d.ts +0 -1
- package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.js +0 -42
- package/node_modules/@playdrop/boxel-three/package.json +0 -28
|
@@ -21,7 +21,7 @@ const execFileAsync = (0, node_util_1.promisify)(node_child_process_1.execFile);
|
|
|
21
21
|
const PROVIDER_TELEMETRY_TIMEOUT_MS = 10000;
|
|
22
22
|
const WEEKLY_WINDOW_MINUTES = 7 * 24 * 60;
|
|
23
23
|
const WEEKLY_WINDOW_MS = 7 * 24 * 60 * 60 * 1000;
|
|
24
|
-
const WEEKLY_USAGE_RESERVE_PERCENT =
|
|
24
|
+
const WEEKLY_USAGE_RESERVE_PERCENT = 5;
|
|
25
25
|
function asObject(value) {
|
|
26
26
|
return typeof value === "object" && value !== null && !Array.isArray(value) ? value : null;
|
|
27
27
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare const DEFAULT_CODEX_TIMEOUT_MS: number;
|
|
2
2
|
export declare const DEFAULT_CREATOR_AGENT_TIMEOUT_MS: number;
|
|
3
3
|
export declare const DEFAULT_CREATOR_UPLOAD_RECOVERY_TIMEOUT_MS: number;
|
|
4
|
-
export declare const DEFAULT_WORKER_TOKEN_CAP = 20000000;
|
|
5
4
|
export declare const DEFAULT_CODEX_LOG_TAIL_CHARS = 12000;
|
|
6
5
|
export declare const DEFAULT_TRANSCRIPT_FLUSH_INTERVAL_MS = 10000;
|
|
7
6
|
export type LoggedProcessResult = {
|
|
@@ -48,10 +47,6 @@ export type CodexRolloutTokenUsageReadOptions = {
|
|
|
48
47
|
};
|
|
49
48
|
export declare function readCodexRolloutTokenUsageForThread(threadId: string, options?: CodexRolloutTokenUsageReadOptions): Promise<AgentTokenUsage>;
|
|
50
49
|
export declare function extractCodexTokensUsed(output: string): number | null;
|
|
51
|
-
export declare function assertWorkerTokenUsageWithinCap(input: {
|
|
52
|
-
tokensUsed: number | null;
|
|
53
|
-
tokenCap: number;
|
|
54
|
-
}): boolean;
|
|
55
50
|
export declare function runLoggedProcess(input: {
|
|
56
51
|
command: string;
|
|
57
52
|
args: string[];
|
|
@@ -71,8 +66,6 @@ export declare function buildCodexExecArgs(input: {
|
|
|
71
66
|
workspaceDir: string;
|
|
72
67
|
model: string;
|
|
73
68
|
reasoningEffort: string;
|
|
74
|
-
networkAccess: boolean;
|
|
75
|
-
sandboxMode?: CodexSandboxMode;
|
|
76
69
|
imagePaths?: string[];
|
|
77
70
|
resumeSessionId?: string | null;
|
|
78
71
|
}): string[];
|
|
@@ -84,8 +77,6 @@ export declare function buildGrokExecArgs(input: {
|
|
|
84
77
|
reasoningEffort: string;
|
|
85
78
|
resumeSessionId?: string | null;
|
|
86
79
|
}): string[];
|
|
87
|
-
export type CodexSandboxMode = "danger-full-access" | "workspace-write" | "read-only";
|
|
88
|
-
export declare function readCodexSandboxMode(env?: NodeJS.ProcessEnv): CodexSandboxMode;
|
|
89
80
|
export declare function buildClaudeExecArgs(input: {
|
|
90
81
|
model: string;
|
|
91
82
|
effort?: string | null;
|
|
@@ -96,6 +87,7 @@ export declare function buildClaudeExecArgs(input: {
|
|
|
96
87
|
denyReadRoots?: string[] | null;
|
|
97
88
|
pluginDir?: string | null;
|
|
98
89
|
playdropCliEnabled?: boolean;
|
|
90
|
+
allowGit?: boolean;
|
|
99
91
|
resumeSessionId?: string | null;
|
|
100
92
|
}): string[];
|
|
101
93
|
export declare const PLAYWRIGHT_MCP_VERSION = "0.0.78";
|
|
@@ -110,13 +102,14 @@ export declare function buildClaudePermissionSettings(input?: {
|
|
|
110
102
|
workspaceDir?: string | null;
|
|
111
103
|
denyReadRoots?: string[];
|
|
112
104
|
playdropCliEnabled?: boolean;
|
|
105
|
+
allowGit?: boolean;
|
|
113
106
|
}): {
|
|
114
107
|
permissions: {
|
|
115
108
|
allow: string[];
|
|
116
109
|
deny: string[];
|
|
117
110
|
};
|
|
118
111
|
};
|
|
119
|
-
export declare function buildClaudeDeniedPermissionRules(denyReadRoots?: string[]): string[];
|
|
112
|
+
export declare function buildClaudeDeniedPermissionRules(denyReadRoots?: string[], allowGit?: boolean): string[];
|
|
120
113
|
export declare function buildWorkerChildEnv(input: {
|
|
121
114
|
binDir: string;
|
|
122
115
|
workerHomeDir: string;
|
|
@@ -131,6 +124,11 @@ export declare function buildWorkerChildEnv(input: {
|
|
|
131
124
|
claudeConfigDir?: string;
|
|
132
125
|
playdropConfigPath?: string;
|
|
133
126
|
playwrightBrowsersPath?: string;
|
|
127
|
+
gameServerDev?: {
|
|
128
|
+
redisUrl: string;
|
|
129
|
+
mongoUrl: string;
|
|
130
|
+
redisNamespace: string;
|
|
131
|
+
};
|
|
134
132
|
baseEnv?: NodeJS.ProcessEnv;
|
|
135
133
|
}): NodeJS.ProcessEnv;
|
|
136
134
|
export declare function buildCleanRoomChildEnv(input: {
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.PLAYWRIGHT_MCP_VERSION = exports.DEFAULT_TRANSCRIPT_FLUSH_INTERVAL_MS = exports.DEFAULT_CODEX_LOG_TAIL_CHARS = exports.
|
|
6
|
+
exports.PLAYWRIGHT_MCP_VERSION = exports.DEFAULT_TRANSCRIPT_FLUSH_INTERVAL_MS = exports.DEFAULT_CODEX_LOG_TAIL_CHARS = exports.DEFAULT_CREATOR_UPLOAD_RECOVERY_TIMEOUT_MS = exports.DEFAULT_CREATOR_AGENT_TIMEOUT_MS = exports.DEFAULT_CODEX_TIMEOUT_MS = void 0;
|
|
7
7
|
exports.resolveDescendantProcessIds = resolveDescendantProcessIds;
|
|
8
8
|
exports.readPositiveEnvInt = readPositiveEnvInt;
|
|
9
9
|
exports.readEnvBoolean = readEnvBoolean;
|
|
@@ -14,11 +14,9 @@ exports.extractClaudeSessionId = extractClaudeSessionId;
|
|
|
14
14
|
exports.extractGrokRunMetadata = extractGrokRunMetadata;
|
|
15
15
|
exports.readCodexRolloutTokenUsageForThread = readCodexRolloutTokenUsageForThread;
|
|
16
16
|
exports.extractCodexTokensUsed = extractCodexTokensUsed;
|
|
17
|
-
exports.assertWorkerTokenUsageWithinCap = assertWorkerTokenUsageWithinCap;
|
|
18
17
|
exports.runLoggedProcess = runLoggedProcess;
|
|
19
18
|
exports.buildCodexExecArgs = buildCodexExecArgs;
|
|
20
19
|
exports.buildGrokExecArgs = buildGrokExecArgs;
|
|
21
|
-
exports.readCodexSandboxMode = readCodexSandboxMode;
|
|
22
20
|
exports.buildClaudeExecArgs = buildClaudeExecArgs;
|
|
23
21
|
exports.resolvePlaywrightMcpCliPath = resolvePlaywrightMcpCliPath;
|
|
24
22
|
exports.buildPlaywrightMcpCommand = buildPlaywrightMcpCommand;
|
|
@@ -35,10 +33,10 @@ const node_os_1 = __importDefault(require("node:os"));
|
|
|
35
33
|
const node_path_1 = __importDefault(require("node:path"));
|
|
36
34
|
const surfaceProfiles_1 = require("../../apps/surfaceProfiles");
|
|
37
35
|
const CHILD_KILL_GRACE_MS = 10000;
|
|
36
|
+
const PROVIDER_EXIT_PIPE_CLOSE_GRACE_MS = 1000;
|
|
38
37
|
exports.DEFAULT_CODEX_TIMEOUT_MS = 2 * 60 * 60 * 1000;
|
|
39
38
|
exports.DEFAULT_CREATOR_AGENT_TIMEOUT_MS = 60 * 60 * 1000;
|
|
40
39
|
exports.DEFAULT_CREATOR_UPLOAD_RECOVERY_TIMEOUT_MS = 30 * 60 * 1000;
|
|
41
|
-
exports.DEFAULT_WORKER_TOKEN_CAP = 20000000;
|
|
42
40
|
exports.DEFAULT_CODEX_LOG_TAIL_CHARS = 12000;
|
|
43
41
|
exports.DEFAULT_TRANSCRIPT_FLUSH_INTERVAL_MS = 10000;
|
|
44
42
|
function tailText(value, maxChars) {
|
|
@@ -412,15 +410,6 @@ async function readCodexRolloutTokenUsageForThread(threadId, options = {}) {
|
|
|
412
410
|
function extractCodexTokensUsed(output) {
|
|
413
411
|
return extractAgentTokenUsage(output).totalTokens;
|
|
414
412
|
}
|
|
415
|
-
function assertWorkerTokenUsageWithinCap(input) {
|
|
416
|
-
if (input.tokensUsed === null) {
|
|
417
|
-
return false;
|
|
418
|
-
}
|
|
419
|
-
if (input.tokensUsed > input.tokenCap) {
|
|
420
|
-
throw new Error(`token_cap_exceeded:${input.tokensUsed}:${input.tokenCap}`);
|
|
421
|
-
}
|
|
422
|
-
return true;
|
|
423
|
-
}
|
|
424
413
|
async function runLoggedProcess(input) {
|
|
425
414
|
if (!input.command.trim()) {
|
|
426
415
|
throw new Error("invalid_process_command");
|
|
@@ -443,6 +432,7 @@ async function runLoggedProcess(input) {
|
|
|
443
432
|
let closed = false;
|
|
444
433
|
let killTimer = null;
|
|
445
434
|
let terminateKillTimer = null;
|
|
435
|
+
let providerExitPipeCloseTimer = null;
|
|
446
436
|
let transcriptFlushTimer = null;
|
|
447
437
|
let transcriptFlushError = null;
|
|
448
438
|
let transcriptFlushPromise = Promise.resolve();
|
|
@@ -490,9 +480,9 @@ async function runLoggedProcess(input) {
|
|
|
490
480
|
await input.onTranscriptChunks(chunks);
|
|
491
481
|
}
|
|
492
482
|
catch (error) {
|
|
493
|
-
//
|
|
483
|
+
// Local transcript spooling is telemetry, never task-critical: requeue in order and retry with the next flush.
|
|
494
484
|
pendingTranscriptChunks.unshift(...chunks);
|
|
495
|
-
console.error(`warning: transcript
|
|
485
|
+
console.error(`warning: transcript spool write failed, will retry with next flush: ${error instanceof Error ? error.message : String(error)}`);
|
|
496
486
|
}
|
|
497
487
|
};
|
|
498
488
|
const queueTranscriptFlush = () => {
|
|
@@ -546,6 +536,20 @@ async function runLoggedProcess(input) {
|
|
|
546
536
|
child.stdout?.on("data", (chunk) => append("stdout", chunk));
|
|
547
537
|
child.stderr?.on("data", (chunk) => append("stderr", chunk));
|
|
548
538
|
child.on("error", reject);
|
|
539
|
+
child.on("exit", () => {
|
|
540
|
+
// Provider CLIs can exit while MCP servers or browsers still inherit their
|
|
541
|
+
// stdout pipes. Kill the task process group now so `close` is not held
|
|
542
|
+
// open until the task timeout or lease reaper fires.
|
|
543
|
+
if (process.platform !== "win32") {
|
|
544
|
+
terminateProcessTree("SIGKILL");
|
|
545
|
+
}
|
|
546
|
+
providerExitPipeCloseTimer = setTimeout(() => {
|
|
547
|
+
if (closed)
|
|
548
|
+
return;
|
|
549
|
+
child.stdout?.destroy();
|
|
550
|
+
child.stderr?.destroy();
|
|
551
|
+
}, PROVIDER_EXIT_PIPE_CLOSE_GRACE_MS);
|
|
552
|
+
});
|
|
549
553
|
child.on("close", (code, signal) => {
|
|
550
554
|
closed = true;
|
|
551
555
|
// The provider process may leave MCP servers, browsers, dev servers, or recorders behind.
|
|
@@ -558,17 +562,20 @@ async function runLoggedProcess(input) {
|
|
|
558
562
|
if (terminateKillTimer) {
|
|
559
563
|
clearTimeout(terminateKillTimer);
|
|
560
564
|
}
|
|
565
|
+
if (providerExitPipeCloseTimer) {
|
|
566
|
+
clearTimeout(providerExitPipeCloseTimer);
|
|
567
|
+
}
|
|
561
568
|
if (transcriptFlushTimer) {
|
|
562
569
|
clearInterval(transcriptFlushTimer);
|
|
563
570
|
}
|
|
564
571
|
void (async () => {
|
|
565
572
|
await queueTranscriptFlush();
|
|
566
573
|
if (pendingTranscriptChunks.length > 0) {
|
|
567
|
-
// Last
|
|
574
|
+
// Last spool write failed: retry once, then warn. Transcript telemetry never fails the task.
|
|
568
575
|
await flushTranscriptChunks();
|
|
569
576
|
}
|
|
570
577
|
if (pendingTranscriptChunks.length > 0) {
|
|
571
|
-
console.error(`warning:
|
|
578
|
+
console.error(`warning: could not spool ${pendingTranscriptChunks.length} transcript segment(s) after final retry; transcript is telemetry, continuing`);
|
|
572
579
|
}
|
|
573
580
|
if (transcriptFlushError) {
|
|
574
581
|
throwLoggedProcessError(transcriptFlushError);
|
|
@@ -590,13 +597,14 @@ async function runLoggedProcess(input) {
|
|
|
590
597
|
});
|
|
591
598
|
}
|
|
592
599
|
function buildCodexExecArgs(input) {
|
|
593
|
-
const sandboxMode = input.sandboxMode ?? "danger-full-access";
|
|
594
600
|
const resumeSessionId = input.resumeSessionId?.trim() ?? "";
|
|
595
601
|
if (resumeSessionId) {
|
|
596
602
|
return [
|
|
597
603
|
"exec",
|
|
598
604
|
"resume",
|
|
599
605
|
"--json",
|
|
606
|
+
"--dangerously-bypass-approvals-and-sandbox",
|
|
607
|
+
"--ignore-rules",
|
|
600
608
|
"--skip-git-repo-check",
|
|
601
609
|
"--model",
|
|
602
610
|
input.model,
|
|
@@ -609,8 +617,8 @@ function buildCodexExecArgs(input) {
|
|
|
609
617
|
const args = [
|
|
610
618
|
"exec",
|
|
611
619
|
"--json",
|
|
612
|
-
"--sandbox",
|
|
613
|
-
|
|
620
|
+
"--dangerously-bypass-approvals-and-sandbox",
|
|
621
|
+
"--ignore-rules",
|
|
614
622
|
"--cd",
|
|
615
623
|
input.workspaceDir,
|
|
616
624
|
"--skip-git-repo-check",
|
|
@@ -619,9 +627,6 @@ function buildCodexExecArgs(input) {
|
|
|
619
627
|
"-c",
|
|
620
628
|
`model_reasoning_effort="${input.reasoningEffort}"`,
|
|
621
629
|
];
|
|
622
|
-
if (sandboxMode === "workspace-write") {
|
|
623
|
-
args.push("-c", `sandbox_workspace_write.network_access=${input.networkAccess ? "true" : "false"}`);
|
|
624
|
-
}
|
|
625
630
|
for (const imagePath of input.imagePaths ?? []) {
|
|
626
631
|
args.push("--image", imagePath);
|
|
627
632
|
}
|
|
@@ -653,10 +658,8 @@ function buildGrokExecArgs(input) {
|
|
|
653
658
|
reasoningEffort,
|
|
654
659
|
"--output-format",
|
|
655
660
|
"streaming-messages-json",
|
|
656
|
-
"--
|
|
657
|
-
"
|
|
658
|
-
"devbox",
|
|
659
|
-
"--no-subagents",
|
|
661
|
+
"--permission-mode",
|
|
662
|
+
"bypassPermissions",
|
|
660
663
|
"--no-memory",
|
|
661
664
|
"--no-auto-update",
|
|
662
665
|
"--verbatim",
|
|
@@ -667,16 +670,6 @@ function buildGrokExecArgs(input) {
|
|
|
667
670
|
}
|
|
668
671
|
return args;
|
|
669
672
|
}
|
|
670
|
-
function readCodexSandboxMode(env = process.env) {
|
|
671
|
-
const raw = env.PLAYDROP_WORKER_CODEX_SANDBOX?.trim();
|
|
672
|
-
if (!raw) {
|
|
673
|
-
return "danger-full-access";
|
|
674
|
-
}
|
|
675
|
-
if (raw === "danger-full-access" || raw === "workspace-write" || raw === "read-only") {
|
|
676
|
-
return raw;
|
|
677
|
-
}
|
|
678
|
-
throw new Error(`invalid_playdrop_worker_codex_sandbox:${raw}`);
|
|
679
|
-
}
|
|
680
673
|
function buildClaudeExecArgs(input) {
|
|
681
674
|
const model = input.model.trim();
|
|
682
675
|
if (!model) {
|
|
@@ -693,8 +686,8 @@ function buildClaudeExecArgs(input) {
|
|
|
693
686
|
workspaceDir: input.workspaceDir,
|
|
694
687
|
denyReadRoots: input.denyReadRoots ?? [],
|
|
695
688
|
playdropCliEnabled: input.playdropCliEnabled,
|
|
689
|
+
allowGit: input.allowGit,
|
|
696
690
|
});
|
|
697
|
-
const permissionMode = input.chrome || input.playwrightMcp ? "bypassPermissions" : "acceptEdits";
|
|
698
691
|
// MCP tools are deferred behind ToolSearch in the Claude CLI; without it in the toolset a
|
|
699
692
|
// session cannot reach any MCP server's tools no matter what --mcp-config provides.
|
|
700
693
|
const tools = input.chrome
|
|
@@ -702,7 +695,7 @@ function buildClaudeExecArgs(input) {
|
|
|
702
695
|
: input.playwrightMcp
|
|
703
696
|
? [...CLAUDE_BASE_TOOL_NAMES, "ToolSearch"].join(",")
|
|
704
697
|
: CLAUDE_BASE_TOOL_NAMES.join(",");
|
|
705
|
-
const allowedPermissionRules = buildClaudeAllowedPermissionRules(input.workspaceDir, input.playdropCliEnabled);
|
|
698
|
+
const allowedPermissionRules = buildClaudeAllowedPermissionRules(input.workspaceDir, input.playdropCliEnabled, input.allowGit === true);
|
|
706
699
|
const allowedTools = input.chrome
|
|
707
700
|
? [...allowedPermissionRules, ...CLAUDE_CHROME_TOOL_NAMES]
|
|
708
701
|
: input.playwrightMcp
|
|
@@ -722,13 +715,13 @@ function buildClaudeExecArgs(input) {
|
|
|
722
715
|
"--verbose",
|
|
723
716
|
"--include-partial-messages",
|
|
724
717
|
"--permission-mode",
|
|
725
|
-
|
|
718
|
+
"bypassPermissions",
|
|
726
719
|
"--tools",
|
|
727
720
|
tools,
|
|
728
721
|
"--allowedTools",
|
|
729
722
|
...allowedTools,
|
|
730
723
|
"--disallowedTools",
|
|
731
|
-
...buildClaudeDeniedPermissionRules(input.denyReadRoots ?? []),
|
|
724
|
+
...buildClaudeDeniedPermissionRules(input.denyReadRoots ?? [], input.allowGit === true),
|
|
732
725
|
"--settings",
|
|
733
726
|
JSON.stringify(permissionSettings),
|
|
734
727
|
];
|
|
@@ -855,7 +848,7 @@ function normalizeClaudePermissionPath(value) {
|
|
|
855
848
|
}
|
|
856
849
|
return node_path_1.default.resolve(trimmed).replace(/\\/g, "/").replace(/\/+$/, "");
|
|
857
850
|
}
|
|
858
|
-
function buildClaudeAllowedPermissionRules(workspaceDir, playdropCliEnabled = true) {
|
|
851
|
+
function buildClaudeAllowedPermissionRules(workspaceDir, playdropCliEnabled = true, allowGit = false) {
|
|
859
852
|
const workspaceRoot = typeof workspaceDir === "string" && workspaceDir.trim() ? normalizeClaudePermissionPath(workspaceDir) : null;
|
|
860
853
|
if (!workspaceRoot) {
|
|
861
854
|
throw new Error("worker_claude_workspace_missing");
|
|
@@ -867,6 +860,7 @@ function buildClaudeAllowedPermissionRules(workspaceDir, playdropCliEnabled = tr
|
|
|
867
860
|
`Edit(${absoluteWorkspacePattern})`,
|
|
868
861
|
`Write(${absoluteWorkspacePattern})`,
|
|
869
862
|
`Bash(${managedImagePython} *)`,
|
|
863
|
+
...(allowGit ? ["Bash(git *)"] : []),
|
|
870
864
|
...(playdropCliEnabled ? [`Bash(${workspaceRoot}/bin/playdrop *)`] : []),
|
|
871
865
|
...CLAUDE_BUILD_PERMISSION_RULES.filter((rule) => playdropCliEnabled || !rule.toLowerCase().includes("playdrop")),
|
|
872
866
|
];
|
|
@@ -874,13 +868,13 @@ function buildClaudeAllowedPermissionRules(workspaceDir, playdropCliEnabled = tr
|
|
|
874
868
|
function buildClaudePermissionSettings(input = {}) {
|
|
875
869
|
return {
|
|
876
870
|
permissions: {
|
|
877
|
-
allow: buildClaudeAllowedPermissionRules(input.workspaceDir, input.playdropCliEnabled),
|
|
878
|
-
deny: buildClaudeDeniedPermissionRules(input.denyReadRoots ?? []),
|
|
871
|
+
allow: buildClaudeAllowedPermissionRules(input.workspaceDir, input.playdropCliEnabled, input.allowGit === true),
|
|
872
|
+
deny: buildClaudeDeniedPermissionRules(input.denyReadRoots ?? [], input.allowGit === true),
|
|
879
873
|
},
|
|
880
874
|
};
|
|
881
875
|
}
|
|
882
|
-
function buildClaudeDeniedPermissionRules(denyReadRoots = []) {
|
|
883
|
-
const deny = new Set(["Bash(rm *)", "Bash(git *)"]);
|
|
876
|
+
function buildClaudeDeniedPermissionRules(denyReadRoots = [], allowGit = false) {
|
|
877
|
+
const deny = new Set(["Bash(rm *)", ...(allowGit ? [] : ["Bash(git *)"])]);
|
|
884
878
|
for (const rawRoot of denyReadRoots) {
|
|
885
879
|
const root = normalizeClaudePermissionPath(rawRoot);
|
|
886
880
|
if (!root) {
|
|
@@ -954,8 +948,8 @@ function buildWorkerChildEnv(input) {
|
|
|
954
948
|
for (const key of [
|
|
955
949
|
"PLAYDROP_API_BASE",
|
|
956
950
|
`PLAYDROP_API_BASE_${input.envName.toUpperCase()}`,
|
|
957
|
-
"
|
|
958
|
-
`
|
|
951
|
+
"PLAYDROP_WEB_BASE",
|
|
952
|
+
`PLAYDROP_WEB_BASE_${input.envName.toUpperCase()}`,
|
|
959
953
|
]) {
|
|
960
954
|
const value = base[key];
|
|
961
955
|
if (typeof value === "string") {
|
|
@@ -983,6 +977,17 @@ function buildWorkerChildEnv(input) {
|
|
|
983
977
|
if (input.eventDir?.trim()) {
|
|
984
978
|
child.PLAYDROP_WORKER_EVENT_DIR = input.eventDir.trim();
|
|
985
979
|
}
|
|
980
|
+
if (input.gameServerDev) {
|
|
981
|
+
const redisUrl = input.gameServerDev.redisUrl.trim();
|
|
982
|
+
const mongoUrl = input.gameServerDev.mongoUrl.trim();
|
|
983
|
+
const redisNamespace = input.gameServerDev.redisNamespace.trim();
|
|
984
|
+
if (!redisUrl.startsWith("redis://") || !mongoUrl.startsWith("mongodb://") || !redisNamespace.endsWith(":")) {
|
|
985
|
+
throw new Error("invalid_worker_game_server_dev_lease");
|
|
986
|
+
}
|
|
987
|
+
child.PLAYDROP_DEV_REDIS_URL = redisUrl;
|
|
988
|
+
child.PLAYDROP_DEV_MONGO_URL = mongoUrl;
|
|
989
|
+
child.PLAYDROP_DEV_REDIS_NAMESPACE = redisNamespace;
|
|
990
|
+
}
|
|
986
991
|
return child;
|
|
987
992
|
}
|
|
988
993
|
function buildCleanRoomChildEnv(input) {
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { ApiClient } from "@playdrop/api-client";
|
|
2
|
-
import { RELEASE_SMOKE_FILE_NAME, type AgentAvailabilityFailureReason, type AgentExecutionTarget, type AgentRuntime, type AgentTaskKind, type AgentTaskNextStepSuggestion, type AgentTaskResponse, type
|
|
2
|
+
import { RELEASE_SMOKE_FILE_NAME, type AgentAvailabilityFailureReason, type AgentExecutionTarget, type AgentRuntime, type AgentTaskKind, type AgentTaskNextStepSuggestion, type AgentTaskResponse, type AgentTaskStatus, type AgentTaskTerminalReason, type AppSurface, type AgentWorkerCapabilities, type AgentWorkerResponse, type AgentWorkerUpdatePolicyResponse, type JsonValue, type WorkerGameTaskAssignment, type WorkerTaskPluginV2, type WorkerClaimTaskResponseV5 } from "@playdrop/types";
|
|
3
|
+
import { spawnSync } from "node:child_process";
|
|
3
4
|
import { loadConfig } from "../config";
|
|
4
5
|
import { runShell } from "../shellProbe";
|
|
5
|
-
import { type WorkerInstrumentSurface, type LoggedProcessResult
|
|
6
|
+
import { type WorkerInstrumentSurface, type LoggedProcessResult } from "./worker/runtime";
|
|
6
7
|
export { extractZipArchive } from "./worker/archive-staging";
|
|
7
|
-
export {
|
|
8
|
+
export { buildClaudeExecArgs, buildClaudePermissionSettings, buildCleanRoomChildEnv, buildCodexExecArgs, buildGrokExecArgs, buildPlaywrightMcpCommand, buildWorkerChildEnv, DEFAULT_CODEX_TIMEOUT_MS, DEFAULT_CREATOR_AGENT_TIMEOUT_MS, DEFAULT_CREATOR_UPLOAD_RECOVERY_TIMEOUT_MS, extractAgentTokenUsage, extractCodexRolloutTokenUsage, extractClaudeSessionId, extractCodexThreadId, extractGrokRunMetadata, extractCodexTokensUsed, readCodexRolloutTokenUsageForThread, readEnvBoolean, runLoggedProcess, } from "./worker/runtime";
|
|
8
9
|
export type { AgentTokenUsage, LoggedProcessResult, LoggedProcessTranscriptChunk } from "./worker/runtime";
|
|
9
10
|
export declare const WORKSPACE_ARCHIVE_DOWNLOAD_TIMEOUT_MS: number;
|
|
10
|
-
type WorkerTaskAssignment =
|
|
11
|
+
type WorkerTaskAssignment = WorkerGameTaskAssignment;
|
|
11
12
|
export declare function usesCreatorRecovery(kind: AgentTaskKind): boolean;
|
|
12
13
|
export declare function buildDeterministicReleaseSmokeArtifact(): {
|
|
13
14
|
fileName: typeof RELEASE_SMOKE_FILE_NAME;
|
|
@@ -18,6 +19,15 @@ export declare function buildCreatorRecoveryPrompt(input: {
|
|
|
18
19
|
prompt: string;
|
|
19
20
|
kind: AgentTaskKind;
|
|
20
21
|
}): string;
|
|
22
|
+
export declare function buildMissingAgentOutcomeRecoveryPrompt(kind: AgentTaskKind): string;
|
|
23
|
+
export declare function shouldRecoverMissingAgentOutcome(input: {
|
|
24
|
+
kind: AgentTaskKind;
|
|
25
|
+
taskStatus: AgentTaskStatus;
|
|
26
|
+
completionReported: boolean;
|
|
27
|
+
result: Pick<LoggedProcessResult, "exitCode" | "signal" | "timedOut">;
|
|
28
|
+
}): boolean;
|
|
29
|
+
export declare function missingAgentOutcomeTerminalReason(): AgentTaskTerminalReason;
|
|
30
|
+
export declare function creationTimeoutTerminalReason(): AgentTaskTerminalReason;
|
|
21
31
|
export declare function buildGameEvalRetryPrompt(prompt: string): string;
|
|
22
32
|
export declare const WORKER_SESSION_EXPIRED_MESSAGE = "worker session expired: run \"playdrop auth login\" and start the worker again";
|
|
23
33
|
export declare const WORKER_CONTEXT_COMMAND_NOT_ALLOWED_MESSAGE = "worker_context_command_not_allowed: inside a PlayDrop worker task only task progress, task asset-runtime, task claim-slug, task upload/done/fail, assigned app scaffolding, project build/dev/check/capture, read-only help/catalogue/documentation lookup, and PlayDrop AI generation are permitted.";
|
|
@@ -153,6 +163,7 @@ type WorkerTaskContextFile = {
|
|
|
153
163
|
taskId: number;
|
|
154
164
|
attempt: number;
|
|
155
165
|
taskToken: string;
|
|
166
|
+
taskAccessToken: string | null;
|
|
156
167
|
taskType: string;
|
|
157
168
|
metadata: Record<string, JsonValue>;
|
|
158
169
|
kind: AgentTaskKind;
|
|
@@ -169,6 +180,23 @@ type WorkerTaskContextFile = {
|
|
|
169
180
|
reviewAppVersionId?: number | null;
|
|
170
181
|
devPort: number;
|
|
171
182
|
env: string;
|
|
183
|
+
gameSourceGit: boolean;
|
|
184
|
+
};
|
|
185
|
+
type WorkerTaskUploadResultFile = {
|
|
186
|
+
taskId: number;
|
|
187
|
+
appId: number;
|
|
188
|
+
appVersionId: number;
|
|
189
|
+
appName: string;
|
|
190
|
+
version: string;
|
|
191
|
+
versionNodeId: string;
|
|
192
|
+
creatorUsername: string;
|
|
193
|
+
};
|
|
194
|
+
type WorkerTaskUploadFailureFile = {
|
|
195
|
+
schemaVersion: 2;
|
|
196
|
+
taskId: number;
|
|
197
|
+
attempt: number;
|
|
198
|
+
terminalReason: AgentTaskTerminalReason;
|
|
199
|
+
failedAt: string;
|
|
172
200
|
};
|
|
173
201
|
type WorkerQueuedEvent = {
|
|
174
202
|
kind: "progress" | "catalogue_preview";
|
|
@@ -200,9 +228,8 @@ export declare function allocateWorkerDevPort(input: {
|
|
|
200
228
|
export declare function isWorkerContextCommandAllowed(argv: string[]): boolean;
|
|
201
229
|
export declare function resolveWorkerContextCommandBlockMessage(argv: string[]): string | null;
|
|
202
230
|
export declare function resolveWorkerExecutionTargetFromRole(role: unknown): AgentExecutionTarget;
|
|
203
|
-
export declare function
|
|
204
|
-
export declare function
|
|
205
|
-
export declare function normalizeWorkerClaimResponseV3(value: unknown): WorkerClaimTaskResponseV3;
|
|
231
|
+
export declare function normalizeWorkerGameTaskAssignment(value: unknown): WorkerGameTaskAssignment;
|
|
232
|
+
export declare function normalizeWorkerClaimResponseV5(value: unknown): WorkerClaimTaskResponseV5;
|
|
206
233
|
export declare function nextClaimBackoffMs(currentMs: number): number;
|
|
207
234
|
export declare function claimBackoffDelayMs(currentMs: number, random?: () => number): number;
|
|
208
235
|
export declare function acknowledgeWorkerTaskClaim(input: {
|
|
@@ -222,6 +249,7 @@ export declare function containWorkerTaskRun(input: {
|
|
|
222
249
|
logError?: (message: string) => void;
|
|
223
250
|
}): Promise<void>;
|
|
224
251
|
export declare function resolveWorkerHomeDir(): string;
|
|
252
|
+
export declare function configureWorkerFal(): Promise<void>;
|
|
225
253
|
export declare const WORKER_TASK_WORKSPACE_RETENTION = 20;
|
|
226
254
|
export declare function pruneWorkerTaskWorkspaces(incomingWorkspaceDir: string, retention?: number): Promise<string[]>;
|
|
227
255
|
export declare function prepareClaimedTaskWorkspace(input: {
|
|
@@ -233,14 +261,19 @@ export declare function prepareClaimedTaskWorkspace(input: {
|
|
|
233
261
|
export declare function buildWorkerTaskContextV2(assignment: WorkerTaskAssignment): Omit<WorkerTaskContextFile, "env" | "devPort">;
|
|
234
262
|
export declare function resolveWorkerInstrumentSurface(taskContext: Pick<WorkerTaskContextFile, "kind" | "metadata">): WorkerInstrumentSurface | null;
|
|
235
263
|
export declare function hasAgentTaskUploadedArtifact(task: Pick<AgentTaskResponse, "appId" | "appVersionId">): boolean;
|
|
236
|
-
export declare function
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
264
|
+
export declare function buildWorkerTranscriptUploadHeaders(input: {
|
|
265
|
+
headers: Record<string, string>;
|
|
266
|
+
contentType: string;
|
|
267
|
+
md5Base64: string;
|
|
268
|
+
}): Record<string, string>;
|
|
269
|
+
export declare function describeTaskUploadFailure(error: unknown): AgentTaskTerminalReason;
|
|
270
|
+
export declare function recordTaskUploadFailure(input: {
|
|
271
|
+
workspaceDir: string;
|
|
272
|
+
taskContext: Pick<WorkerTaskContextFile, "taskId" | "attempt">;
|
|
273
|
+
error: unknown;
|
|
274
|
+
}): Promise<WorkerTaskUploadFailureFile>;
|
|
275
|
+
export declare function readTaskUploadFailureFile(startDir?: string): WorkerTaskUploadFailureFile | null;
|
|
276
|
+
export declare function readTaskUploadResultFile(startDir?: string): WorkerTaskUploadResultFile;
|
|
244
277
|
export declare function readTaskNextStepsFile(filePath: string | undefined, workspaceDir?: string): AgentTaskNextStepSuggestion[] | undefined;
|
|
245
278
|
export declare function assertTaskUploadResultMatchesContext(input: {
|
|
246
279
|
taskContext: {
|
|
@@ -256,8 +289,7 @@ export declare function assertTaskUploadResultMatchesContext(input: {
|
|
|
256
289
|
creatorUsername: string;
|
|
257
290
|
};
|
|
258
291
|
}): void;
|
|
259
|
-
export declare function
|
|
260
|
-
export declare function stageAssignmentWorkspaceV3(workspaceDir: string, workspace: WorkerTaskAssignmentV3["workspace"], options?: {
|
|
292
|
+
export declare function stageAssignmentWorkspace(workspaceDir: string, workspace: WorkerGameTaskAssignment["workspace"], options?: {
|
|
261
293
|
timeoutMs?: number;
|
|
262
294
|
}): Promise<void>;
|
|
263
295
|
export declare function assertAssignmentPluginBundleExtractionBounds(buffer: Buffer): void;
|
|
@@ -303,6 +335,11 @@ export declare function buildWorkerCapabilities(input: {
|
|
|
303
335
|
version?: string;
|
|
304
336
|
chromiumInstalled?: boolean;
|
|
305
337
|
} | null;
|
|
338
|
+
codexImageGenerationAvailable?: boolean | null;
|
|
339
|
+
falConfigured?: boolean | null;
|
|
340
|
+
falAuthenticated?: boolean | null;
|
|
341
|
+
ffmpegReady?: boolean | null;
|
|
342
|
+
requireGenerationRuntime?: boolean;
|
|
306
343
|
maxParallelTasks?: number | null;
|
|
307
344
|
runningTaskCount?: number | null;
|
|
308
345
|
}): AgentWorkerCapabilities;
|
|
@@ -311,7 +348,7 @@ export declare function buildWorkerClaimBody(input: {
|
|
|
311
348
|
capabilities: AgentWorkerCapabilities;
|
|
312
349
|
runningTaskCount?: number;
|
|
313
350
|
}): {
|
|
314
|
-
protocolVersion:
|
|
351
|
+
protocolVersion: 5;
|
|
315
352
|
workerKey: string;
|
|
316
353
|
capabilities: AgentWorkerCapabilities;
|
|
317
354
|
};
|
|
@@ -326,6 +363,7 @@ export declare function prepareCodexRunHomes(input: {
|
|
|
326
363
|
envName: string;
|
|
327
364
|
sourceCodexHome?: string;
|
|
328
365
|
playdropConfig?: ReturnType<typeof loadConfig>;
|
|
366
|
+
playdropAccessToken?: string | null;
|
|
329
367
|
stagePlaydropSession?: boolean;
|
|
330
368
|
preserveExisting?: boolean;
|
|
331
369
|
}): Promise<{
|
|
@@ -337,6 +375,7 @@ export declare function prepareClaudeRunConfig(input: {
|
|
|
337
375
|
workerUsername: string;
|
|
338
376
|
envName: string;
|
|
339
377
|
playdropConfig?: ReturnType<typeof loadConfig>;
|
|
378
|
+
playdropAccessToken?: string | null;
|
|
340
379
|
}): Promise<{
|
|
341
380
|
playdropConfigPath: string;
|
|
342
381
|
}>;
|
|
@@ -345,6 +384,7 @@ export declare function prepareGrokRunConfig(input: {
|
|
|
345
384
|
workerUsername: string;
|
|
346
385
|
envName: string;
|
|
347
386
|
playdropConfig?: ReturnType<typeof loadConfig>;
|
|
387
|
+
playdropAccessToken?: string | null;
|
|
348
388
|
preserveExisting?: boolean;
|
|
349
389
|
stagePlaydropSession?: boolean;
|
|
350
390
|
}): Promise<{
|
|
@@ -371,24 +411,35 @@ export declare function buildGrokPromptJson(input: {
|
|
|
371
411
|
export declare function buildGrokIsolationEnv(): Record<string, string>;
|
|
372
412
|
export declare function resolveHostGrokAuthPath(homeDir?: string): string;
|
|
373
413
|
export declare function mergeCreatorRecoveryResults(runtime: AgentRuntime, initial: LoggedProcessResult, recovery: LoggedProcessResult): LoggedProcessResult;
|
|
414
|
+
export declare function mergeMissingAgentOutcomeRecoveryResults(runtime: AgentRuntime, initial: LoggedProcessResult, recovery: LoggedProcessResult): LoggedProcessResult;
|
|
374
415
|
export declare function buildAgentFailureCode(agent: AgentRuntime, result: LoggedProcessResult, request?: {
|
|
375
416
|
model: string;
|
|
376
417
|
reasoningEffort?: string | null;
|
|
377
418
|
}): string;
|
|
378
|
-
export declare function classifyAgentAvailabilityFailureReason(errorCode: string): AgentAvailabilityFailureReason | null;
|
|
419
|
+
export declare function classifyAgentAvailabilityFailureReason(errorCode: string, retryTransientProviderFailure?: boolean): AgentAvailabilityFailureReason | null;
|
|
379
420
|
export declare function describeAgentFailureForEvent(errorCode: string): string;
|
|
421
|
+
export declare function normalizeWorkerFailureErrorCode(message: string): string;
|
|
380
422
|
export declare function createLocalPlaydropShim(input: {
|
|
381
423
|
workspaceDir: string;
|
|
382
424
|
taskId: number;
|
|
383
425
|
attempt: number;
|
|
384
426
|
devPort: number;
|
|
427
|
+
gameSourceGit?: boolean;
|
|
385
428
|
}): Promise<string>;
|
|
386
429
|
export declare function parseCodexModelCatalog(output: string): string[];
|
|
430
|
+
export declare function codexFeatureEnabled(output: string, feature: string): boolean;
|
|
387
431
|
export declare function parseClaudeModelCatalog(output: string): string[];
|
|
388
432
|
export declare function claudeModelProbeReportsSelection(output: string, expectedDisplayName: string): boolean;
|
|
389
433
|
export declare function parseGrokModelCatalog(output: string): string[];
|
|
390
434
|
export declare function probeWorkerProviderIndependently<T>(probe: () => T, unavailable: T): T;
|
|
391
435
|
export declare function describeWorkerPreflightReason(reason: string): string;
|
|
436
|
+
export declare function falAuthenticationProbeExitCode(status: number): 0 | 2 | 3;
|
|
437
|
+
export declare function probeFalAuthentication(workerHomeDir?: string, deps?: {
|
|
438
|
+
spawnSync: typeof spawnSync;
|
|
439
|
+
}): {
|
|
440
|
+
authenticated: boolean;
|
|
441
|
+
error: string | null;
|
|
442
|
+
};
|
|
392
443
|
export declare function buildWorkerSetupActions(input: {
|
|
393
444
|
degradedReasons: string[];
|
|
394
445
|
playwright?: {
|
|
@@ -465,6 +516,15 @@ export declare function launchManagedWorker(label: string, plistPath: string, op
|
|
|
465
516
|
}): void;
|
|
466
517
|
export declare function showWorkerStatus(options?: WorkerStatusOptions): Promise<WorkerStatusPayload>;
|
|
467
518
|
export declare function setupWorker(options?: WorkerSetupOptions): Promise<void>;
|
|
519
|
+
export declare function completeWorkerAgentTaskWithRetry(input: {
|
|
520
|
+
client: Pick<ApiClient, "workerCompleteAgentTask">;
|
|
521
|
+
taskId: number;
|
|
522
|
+
body: Parameters<ApiClient["workerCompleteAgentTask"]>[1];
|
|
523
|
+
sleepImpl?: (ms: number) => Promise<void>;
|
|
524
|
+
maxAttempts?: number;
|
|
525
|
+
}): Promise<Awaited<ReturnType<ApiClient["workerCompleteAgentTask"]>>>;
|
|
526
|
+
type WorkerFailureStage = "setup" | "agent" | "post_agent_detail" | "game_source_reconcile" | "game_publish" | "task_complete";
|
|
527
|
+
export declare function classifyWorkerSupervisorFailure(message: string, stage?: WorkerFailureStage): AgentTaskTerminalReason;
|
|
468
528
|
export declare function assignmentRequiresRegisteredBundle(assignment: WorkerTaskAssignment): boolean;
|
|
469
529
|
export declare function startWorker(options?: WorkerStartOptions): Promise<void>;
|
|
470
530
|
export declare function reportTask(options: TaskReportOptions): Promise<void>;
|