@alpsckr/unitycli 0.4.4 → 0.5.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/contracts/command-contract.json +591 -591
- package/contracts/package-files.json +367 -367
- package/contracts/stable-session/direct-call-semantics.json +3 -3
- package/contracts/stable-session/request-digest-v1-golden.json +2 -2
- package/contracts/tool-completion-contract.json +322 -322
- package/dist/bridge/domains/animation.js +37 -37
- package/dist/bridge/domains/animation.js.map +1 -1
- package/dist/bridge/domains/asset.js +15 -16
- package/dist/bridge/domains/asset.js.map +1 -1
- package/dist/bridge/domains/build.js +13 -13
- package/dist/bridge/domains/build.js.map +1 -1
- package/dist/bridge/domains/camera.js +7 -7
- package/dist/bridge/domains/camera.js.map +1 -1
- package/dist/bridge/domains/catalog-editor.d.ts +2 -0
- package/dist/bridge/domains/{project-tool.js → catalog-editor.js} +10 -10
- package/dist/bridge/domains/catalog-editor.js.map +1 -0
- package/dist/bridge/domains/catalog-player.d.ts +2 -0
- package/dist/bridge/domains/{runtime-tool.js → catalog-player.js} +9 -9
- package/dist/bridge/domains/catalog-player.js.map +1 -0
- package/dist/bridge/domains/code.js +1 -1
- package/dist/bridge/domains/code.js.map +1 -1
- package/dist/bridge/domains/console.js +2 -2
- package/dist/bridge/domains/console.js.map +1 -1
- package/dist/bridge/domains/doctor.js +3 -3
- package/dist/bridge/domains/doctor.js.map +1 -1
- package/dist/bridge/domains/editor.js +14 -14
- package/dist/bridge/domains/editor.js.map +1 -1
- package/dist/bridge/domains/game-object.js +16 -16
- package/dist/bridge/domains/game-object.js.map +1 -1
- package/dist/bridge/domains/lighting.d.ts +2 -0
- package/dist/bridge/domains/lighting.js +127 -0
- package/dist/bridge/domains/lighting.js.map +1 -0
- package/dist/bridge/domains/material.js +5 -5
- package/dist/bridge/domains/material.js.map +1 -1
- package/dist/bridge/domains/navmesh.js +3 -3
- package/dist/bridge/domains/navmesh.js.map +1 -1
- package/dist/bridge/domains/occlusion.js +1 -9
- package/dist/bridge/domains/occlusion.js.map +1 -1
- package/dist/bridge/domains/physics.js +14 -14
- package/dist/bridge/domains/physics.js.map +1 -1
- package/dist/bridge/domains/prefab.js +12 -12
- package/dist/bridge/domains/prefab.js.map +1 -1
- package/dist/bridge/domains/profiler.js +25 -25
- package/dist/bridge/domains/profiler.js.map +1 -1
- package/dist/bridge/domains/rendering.d.ts +2 -0
- package/dist/bridge/domains/rendering.js +71 -0
- package/dist/bridge/domains/rendering.js.map +1 -0
- package/dist/bridge/domains/runtime-reflection.d.ts +2 -0
- package/dist/bridge/domains/{reflection.js → runtime-reflection.js} +7 -7
- package/dist/bridge/domains/runtime-reflection.js.map +1 -0
- package/dist/bridge/domains/scene.js +15 -15
- package/dist/bridge/domains/scene.js.map +1 -1
- package/dist/bridge/domains/screenshot.js +6 -6
- package/dist/bridge/domains/screenshot.js.map +1 -1
- package/dist/bridge/domains/scriptable-object.js +4 -4
- package/dist/bridge/domains/scriptable-object.js.map +1 -1
- package/dist/bridge/domains/serialized-object.d.ts +2 -0
- package/dist/bridge/domains/{object.js → serialized-object.js} +6 -6
- package/dist/bridge/domains/serialized-object.js.map +1 -0
- package/dist/bridge/domains/shader.js +7 -7
- package/dist/bridge/domains/shader.js.map +1 -1
- package/dist/bridge/domains/texture.js +7 -7
- package/dist/bridge/domains/texture.js.map +1 -1
- package/dist/bridge/domains/timeline.js +4 -4
- package/dist/bridge/domains/timeline.js.map +1 -1
- package/dist/bridge/domains/ui.js +18 -18
- package/dist/bridge/domains/ui.js.map +1 -1
- package/dist/bridge/domains/volume.d.ts +2 -0
- package/dist/bridge/domains/volume.js +26 -0
- package/dist/bridge/domains/volume.js.map +1 -0
- package/dist/bridge/index.js +3 -3
- package/dist/bridge/index.js.map +1 -1
- package/dist/bridge/registry.js +15 -13
- package/dist/bridge/registry.js.map +1 -1
- package/dist/bridge/session-supervisor.js +27 -9
- package/dist/bridge/session-supervisor.js.map +1 -1
- package/dist/bridge/start-diagnostics.d.ts +19 -0
- package/dist/bridge/start-diagnostics.js +96 -0
- package/dist/bridge/start-diagnostics.js.map +1 -0
- package/dist/bridge/types.d.ts +1 -1
- package/dist/catalog-protocol.js +3 -3
- package/dist/catalog-protocol.js.map +1 -1
- package/dist/cli-commands/package.js +10 -2
- package/dist/cli-commands/package.js.map +1 -1
- package/dist/doctor.js +23 -1
- package/dist/doctor.js.map +1 -1
- package/dist/extensions/.generated-bridge-domains/cinemachine.js +14 -14
- package/dist/extensions/.generated-bridge-domains/cinemachine.js.map +1 -1
- package/dist/extensions/.generated-bridge-domains/hdrp.js +7 -7
- package/dist/extensions/.generated-bridge-domains/hdrp.js.map +1 -1
- package/dist/extensions/.generated-bridge-domains/probuilder.d.ts +3 -3
- package/dist/extensions/.generated-bridge-domains/probuilder.js +40 -40
- package/dist/extensions/.generated-bridge-domains/probuilder.js.map +1 -1
- package/dist/extensions/.generated-bridge-domains/urp.js +12 -12
- package/dist/extensions/.generated-bridge-domains/urp.js.map +1 -1
- package/dist/extensions/.generated-bridge-domains/vfx.js +27 -27
- package/dist/extensions/.generated-bridge-domains/vfx.js.map +1 -1
- package/dist/extensions/installer.d.ts +35 -0
- package/dist/extensions/installer.js +123 -0
- package/dist/extensions/installer.js.map +1 -1
- package/dist/instances.d.ts +6 -0
- package/dist/instances.js +13 -0
- package/dist/instances.js.map +1 -1
- package/dist/package-manager.js +1 -1
- package/dist/project-tool-discovery.d.ts +1 -1
- package/dist/project-tool-discovery.js +5 -5
- package/dist/project-tool-discovery.js.map +1 -1
- package/dist/runtime-code.js +2 -2
- package/dist/runtime-code.js.map +1 -1
- package/dist/services/reflect-service.d.ts +3 -3
- package/dist/services/reflect-service.js +5 -5
- package/dist/services/reflect-service.js.map +1 -1
- package/dist/tools/.generated-completion-registry.js +689 -689
- package/dist/tools/.generated-completion-registry.js.map +1 -1
- package/dist/tools/.generated-registry.d.ts +12 -12
- package/dist/tools/.generated-registry.js +12 -12
- package/dist/tools/.generated-registry.js.map +1 -1
- package/dist/tools/.generated-schemas.js +13 -13
- package/dist/tools/.generated-schemas.js.map +1 -1
- package/dist/tools/catalog.d.ts +1 -1
- package/dist/tools/catalog.js +1 -1
- package/dist/tools/code/{exec.d.ts → execute.d.ts} +1 -1
- package/dist/tools/code/{exec.js → execute.js} +5 -5
- package/dist/tools/code/execute.js.map +1 -0
- package/dist/tools/dispatcher.js +12 -8
- package/dist/tools/dispatcher.js.map +1 -1
- package/dist/tools/editor/compile.d.ts +3 -2
- package/dist/tools/editor/compile.js +23 -13
- package/dist/tools/editor/compile.js.map +1 -1
- package/dist/tools/editor/play-mode-status.js +2 -2
- package/dist/tools/editor/play-mode-status.js.map +1 -1
- package/dist/tools/editor/refresh.js +2 -2
- package/dist/tools/editor/refresh.js.map +1 -1
- package/dist/tools/metadata/derived.d.ts +0 -7
- package/dist/tools/metadata/derived.js +7 -16
- package/dist/tools/metadata/derived.js.map +1 -1
- package/dist/tools/metadata/index.d.ts +1 -1
- package/dist/tools/metadata/index.js +1 -1
- package/dist/tools/metadata/index.js.map +1 -1
- package/dist/tools/metadata/status.js +1 -1
- package/dist/tools/metadata/status.js.map +1 -1
- package/dist/tools/{runtime → player-runtime}/console.js +4 -4
- package/dist/tools/player-runtime/console.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/input/key.js +4 -4
- package/dist/tools/player-runtime/input/key.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/input/pointer.js +4 -4
- package/dist/tools/player-runtime/input/pointer.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/log.js +5 -5
- package/dist/tools/player-runtime/log.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/state.js +4 -4
- package/dist/tools/player-runtime/state.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/target-framerate/set.js +4 -4
- package/dist/tools/player-runtime/target-framerate/set.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/time-scale/set.js +4 -4
- package/dist/tools/player-runtime/time-scale/set.js.map +1 -0
- package/dist/tools/{runtime → player-runtime}/ui/capture-element.js +4 -4
- package/dist/tools/player-runtime/ui/capture-element.js.map +1 -0
- package/dist/tools/tools/group-summaries.js +17 -14
- package/dist/tools/tools/group-summaries.js.map +1 -1
- package/dist/tools/{reflect/member.js → type-inspection/get-member.js} +6 -6
- package/dist/tools/type-inspection/get-member.js.map +1 -0
- package/dist/tools/{reflect/type.js → type-inspection/get-type.js} +6 -6
- package/dist/tools/type-inspection/get-type.js.map +1 -0
- package/dist/tools/{reflect → type-inspection}/search.js +5 -5
- package/dist/tools/type-inspection/search.js.map +1 -0
- package/docs/README.md +1 -2
- package/docs/architecture.md +1 -1
- package/docs/availability-differences.md +2 -2
- package/docs/development.md +1 -1
- package/docs/error-codes.md +5 -5
- package/docs/extensions.md +2 -2
- package/docs/risk-and-side-effects.md +12 -12
- package/docs/safety-boundaries.md +7 -7
- package/docs/tool-discovery.md +1 -1
- package/docs/tool-execution.md +16 -16
- package/extensions/cinemachine/bridge/domains/cinemachine.ts +14 -14
- package/extensions/hdrp/bridge/domains/hdrp.ts +7 -7
- package/extensions/hdrp/unitypkg/Editor/Hdrp/HdrpToolSupport.cs +2 -2
- package/extensions/probuilder/bridge/domains/probuilder.ts +40 -40
- package/extensions/probuilder/unitypkg/Editor/ProBuilder/ProBuilderErrors.cs +1 -1
- package/extensions/urp/bridge/domains/urp.ts +12 -12
- package/extensions/urp/unitypkg/Editor/Urp/UrpToolSupport.cs +2 -2
- package/extensions/vfx-graph/bridge/domains/vfx.ts +27 -27
- package/package.json +1 -1
- package/skills/unitycli/SKILL.md +1 -1
- package/skills/unitycli/manifest.json +1 -1
- package/skills/unitycli/references/operation-protocol.md +1 -1
- package/unitypkg/Editor/Bridge/BridgeHttpServer.cs +2 -2
- package/unitypkg/Editor/Commands/ProjectToolCommands.cs +7 -7
- package/unitypkg/Editor/Commands/RuntimeToolCommands.cs +6 -6
- package/unitypkg/Editor/Generated/UnityCliToolCompletionRegistry.g.cs +147 -147
- package/unitypkg/Editor/Infrastructure/CodeExecSupport.cs +4 -4
- package/unitypkg/Editor/Infrastructure/UnityCliAdmission.cs +17 -17
- package/unitypkg/Editor/Infrastructure/UnityCliCompileCoordinator.cs +61 -54
- package/unitypkg/Editor/Infrastructure/UnityCliJson.cs +0 -18
- package/unitypkg/Editor/Infrastructure/UnityCliLiveRefreshCoordinator.cs +26 -21
- package/unitypkg/Editor/Infrastructure/UnityCliObjectPatch.cs +1 -1
- package/unitypkg/Editor/Infrastructure/UnityCliObjectRef.cs +5 -5
- package/unitypkg/Editor/Infrastructure/UnityCliOperationCoordinator.cs +32 -32
- package/unitypkg/Editor/Infrastructure/UnityCliReflection.cs +12 -12
- package/unitypkg/Editor/Infrastructure/UnityCliRuntimeExecutor.cs +1 -1
- package/unitypkg/Editor/ProjectTools/ProjectToolRegistry.cs +5 -5
- package/unitypkg/Editor/Tools/{animation → animation-clip}/AnimationToolSupport.cs +3 -3
- package/unitypkg/Editor/Tools/{animation/clip → animation-clip}/create.cs +4 -4
- package/unitypkg/Editor/Tools/{animation/clip.cs → animation-clip/read.cs} +3 -3
- package/unitypkg/Editor/Tools/{animation/clip/modify.cs → animation-clip/update.cs} +5 -5
- package/unitypkg/Editor/Tools/{animation/animator → animator}/crossfade.cs +1 -1
- package/unitypkg/Editor/Tools/{animation/animator → animator}/get-info.cs +1 -1
- package/unitypkg/Editor/Tools/{animation/animator → animator}/get-parameter.cs +1 -1
- package/unitypkg/Editor/Tools/{animation/state.cs → animator/get-state.cs} +3 -3
- package/unitypkg/Editor/Tools/{animation → animator}/play.cs +5 -5
- package/unitypkg/Editor/Tools/{animation/animator → animator}/set-enabled.cs +1 -1
- package/unitypkg/Editor/Tools/{animation/animator → animator}/set-parameter.cs +1 -1
- package/unitypkg/Editor/Tools/{animation/animator → animator}/set-speed.cs +1 -1
- package/unitypkg/Editor/Tools/{animation → animator}/stop.cs +4 -4
- package/unitypkg/Editor/Tools/{controller → animator-controller}/add-blend-tree-child.cs +10 -10
- package/unitypkg/Editor/Tools/{controller → animator-controller}/add-layer.cs +6 -6
- package/unitypkg/Editor/Tools/{controller → animator-controller}/add-parameter.cs +6 -6
- package/unitypkg/Editor/Tools/{controller → animator-controller}/add-state.cs +7 -7
- package/unitypkg/Editor/Tools/{controller → animator-controller}/add-transition.cs +9 -9
- package/unitypkg/Editor/Tools/{controller → animator-controller}/assign.cs +6 -6
- package/unitypkg/Editor/Tools/{controller → animator-controller}/create-blend-tree-1d.cs +7 -7
- package/unitypkg/Editor/Tools/{controller → animator-controller}/create-blend-tree-2d.cs +7 -7
- package/unitypkg/Editor/Tools/{controller → animator-controller}/create.cs +4 -4
- package/unitypkg/Editor/Tools/{controller → animator-controller}/get-info.cs +4 -4
- package/unitypkg/Editor/Tools/{controller → animator-controller}/remove-layer.cs +8 -8
- package/unitypkg/Editor/Tools/{controller → animator-controller}/set-layer-weight.cs +6 -6
- package/unitypkg/Editor/Tools/asset/preview.cs +1 -1
- package/unitypkg/Editor/Tools/asset/{modify.cs → write-text.cs} +6 -6
- package/unitypkg/Editor/Tools/component/get.cs +1 -1
- package/unitypkg/Editor/Tools/component/list-types.cs +2 -2
- package/unitypkg/Editor/Tools/component/modify.cs +1 -1
- package/unitypkg/Editor/Tools/component/set.cs +1 -1
- package/unitypkg/Editor/Tools/console/{get.cs → read.cs} +3 -3
- package/unitypkg/Editor/Tools/editor/{play.cs → play-mode/start.cs} +5 -5
- package/unitypkg/Editor/Tools/editor/{stop.cs → play-mode/stop.cs} +5 -5
- package/unitypkg/Editor/Tools/editor/search.cs +1 -1
- package/unitypkg/Editor/Tools/{go → game-object}/GameObjectToolSupport.cs +5 -22
- package/unitypkg/Editor/Tools/{go → game-object}/create.cs +11 -11
- package/unitypkg/Editor/Tools/{go → game-object}/delete.cs +7 -7
- package/unitypkg/Editor/Tools/{go → game-object}/duplicate.cs +6 -6
- package/unitypkg/Editor/Tools/{go → game-object}/find.cs +5 -5
- package/unitypkg/Editor/Tools/{go → game-object}/look-at.cs +8 -8
- package/unitypkg/Editor/Tools/{go → game-object}/modify.cs +9 -9
- package/unitypkg/Editor/Tools/{go → game-object}/move-relative.cs +7 -7
- package/unitypkg/Editor/Tools/{scene/move-object.cs → game-object/move-to-scene.cs} +7 -7
- package/unitypkg/Editor/Tools/{go → game-object}/set-parent.cs +9 -9
- package/unitypkg/Editor/Tools/{graphics/bake-cancel.cs → lighting/bake/cancel.cs} +4 -4
- package/unitypkg/Editor/Tools/{graphics/bake-clear.cs → lighting/bake/clear.cs} +4 -4
- package/unitypkg/Editor/Tools/{graphics/bake-reflection-probe.cs → lighting/bake/reflection-probe.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics/bake-settings.cs → lighting/bake/settings.cs} +12 -12
- package/unitypkg/Editor/Tools/{graphics/bake-start.cs → lighting/bake/start.cs} +5 -5
- package/unitypkg/Editor/Tools/{graphics/bake-status.cs → lighting/bake/status.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics → lighting}/light-probe-group.cs +7 -7
- package/unitypkg/Editor/Tools/{graphics → lighting}/reflection-probe.cs +12 -12
- package/unitypkg/Editor/Tools/{graphics/skybox-get.cs → lighting/skybox/get.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics/skybox-set-ambient.cs → lighting/skybox/set-ambient.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics/skybox-set-fog.cs → lighting/skybox/set-fog.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics/skybox-set-material.cs → lighting/skybox/set-material.cs} +5 -5
- package/unitypkg/Editor/Tools/{graphics/skybox-set-properties.cs → lighting/skybox/set-properties.cs} +5 -5
- package/unitypkg/Editor/Tools/{graphics/skybox-set-reflection.cs → lighting/skybox/set-reflection.cs} +3 -3
- package/unitypkg/Editor/Tools/{graphics/skybox-set-sun.cs → lighting/skybox/set-sun.cs} +5 -5
- package/unitypkg/Editor/Tools/{project → project-settings}/ProjectSettingsToolSupport.cs +5 -5
- package/unitypkg/Editor/Tools/{project → project-settings}/audio-settings/set.cs +3 -3
- package/unitypkg/Editor/Tools/{project → project-settings}/audio-settings.cs +4 -4
- package/unitypkg/Editor/Tools/{project → project-settings}/info.cs +4 -4
- package/unitypkg/Editor/Tools/{project → project-settings}/input-settings/set.cs +3 -3
- package/unitypkg/Editor/Tools/{project → project-settings}/input-settings.cs +4 -4
- package/unitypkg/Editor/Tools/project-settings/layer/add.cs +3 -0
- package/unitypkg/Editor/Tools/project-settings/layer/remove.cs +3 -0
- package/unitypkg/Editor/Tools/{project → project-settings}/layers.cs +4 -4
- package/unitypkg/Editor/Tools/{project → project-settings}/player-settings/set.cs +4 -4
- package/unitypkg/Editor/Tools/{project → project-settings}/player-settings.cs +4 -4
- package/unitypkg/Editor/Tools/project-settings/tag/add.cs +3 -0
- package/unitypkg/Editor/Tools/project-settings/tag/remove.cs +3 -0
- package/unitypkg/Editor/Tools/{project → project-settings}/tags.cs +4 -4
- package/unitypkg/Editor/Tools/{project → project-settings}/time-settings/set.cs +3 -3
- package/unitypkg/Editor/Tools/{project → project-settings}/time-settings.cs +4 -4
- package/unitypkg/Editor/Tools/{graphics → rendering}/GraphicsToolSupport.cs +3 -3
- package/unitypkg/Editor/Tools/rendering/pipeline/info.cs +19 -0
- package/unitypkg/Editor/Tools/{graphics/pipeline-settings.cs → rendering/pipeline/settings.cs} +4 -4
- package/unitypkg/Editor/Tools/{graphics → rendering}/quality.cs +17 -17
- package/unitypkg/Editor/Tools/{graphics → rendering}/scene-debug.cs +4 -4
- package/unitypkg/Editor/Tools/rendering/stats.cs +17 -0
- package/unitypkg/Editor/Tools/{reflection → runtime-reflection}/method/find.cs +5 -5
- package/unitypkg/Editor/Tools/{reflection/method/call.cs → runtime-reflection/method/invoke.cs} +7 -7
- package/unitypkg/Editor/Tools/{reflection → runtime-reflection}/type/schema.cs +5 -5
- package/unitypkg/Editor/Tools/scene/gameobject-support.cs +1 -1
- package/unitypkg/Editor/Tools/scene/gameobject.cs +1 -1
- package/unitypkg/Editor/Tools/scene/hierarchy.cs +1 -1
- package/unitypkg/Editor/Tools/{camera/screenshot.cs → screenshot/from-camera.cs} +4 -4
- package/unitypkg/Editor/Tools/{object/modify.cs → serialized-object/patch.cs} +8 -8
- package/unitypkg/Editor/Tools/{object/get-data.cs → serialized-object/read.cs} +4 -4
- package/unitypkg/Editor/Tools/{graphics/volume.cs → volume/list.cs} +3 -3
- package/unitypkg/Editor/UnityCliBridge.cs +3 -22
- package/unitypkg/Runtime/Infrastructure/UnityCliRuntimeBridge.cs +15 -15
- package/unitypkg/Runtime/Infrastructure/UnityCliRuntimeRegistry.cs +1 -1
- package/unitypkg/Runtime/Tools/UnityCliRuntimeTools.cs +22 -22
- package/unitypkg/Shared/UnityCliBridgeQueuePolicy.cs +1 -1
- package/unitypkg/Tests/Editor/UnityCliAdmissionCoordinatorIntegrationTests.cs +7 -7
- package/unitypkg/Tests/Editor/UnityCliBridgeAdmissionIntegrationTests.cs +6 -6
- package/unitypkg/Tests/Editor/UnityCliBridgeQueuePolicyTests.cs +3 -3
- package/unitypkg/Tests/Editor/UnityCliContinuationIntegrationTests.cs +1 -1
- package/unitypkg/Tests/Editor/UnityCliRequestBudgetTests.cs +4 -4
- package/unitypkg/Tests/Editor/UnityCliRuntimeBridgeIntegrationTests.cs +15 -15
- package/unitypkg/Tests/Runtime/UnityCliRuntimeCatalogValidationTests.cs +5 -5
- package/unitypkg/package.json +1 -1
- package/dist/bridge/domains/graphics.d.ts +0 -2
- package/dist/bridge/domains/graphics.js +0 -170
- package/dist/bridge/domains/graphics.js.map +0 -1
- package/dist/bridge/domains/object.d.ts +0 -2
- package/dist/bridge/domains/object.js.map +0 -1
- package/dist/bridge/domains/package.d.ts +0 -2
- package/dist/bridge/domains/package.js +0 -2
- package/dist/bridge/domains/package.js.map +0 -1
- package/dist/bridge/domains/project-tool.d.ts +0 -2
- package/dist/bridge/domains/project-tool.js.map +0 -1
- package/dist/bridge/domains/reflection.d.ts +0 -2
- package/dist/bridge/domains/reflection.js.map +0 -1
- package/dist/bridge/domains/runtime-tool.d.ts +0 -2
- package/dist/bridge/domains/runtime-tool.js.map +0 -1
- package/dist/tools/code/exec.js.map +0 -1
- package/dist/tools/reflect/member.js.map +0 -1
- package/dist/tools/reflect/search.js.map +0 -1
- package/dist/tools/reflect/type.js.map +0 -1
- package/dist/tools/runtime/console.js.map +0 -1
- package/dist/tools/runtime/input/key.js.map +0 -1
- package/dist/tools/runtime/input/pointer.js.map +0 -1
- package/dist/tools/runtime/log.js.map +0 -1
- package/dist/tools/runtime/state.js.map +0 -1
- package/dist/tools/runtime/target-framerate/set.js.map +0 -1
- package/dist/tools/runtime/time-scale/set.js.map +0 -1
- package/dist/tools/runtime/ui/capture-element.js.map +0 -1
- package/unitypkg/Editor/Tools/graphics/pipeline-info.cs +0 -19
- package/unitypkg/Editor/Tools/graphics/stats.cs +0 -17
- package/unitypkg/Editor/Tools/project/layer/add.cs +0 -3
- package/unitypkg/Editor/Tools/project/layer/remove.cs +0 -3
- package/unitypkg/Editor/Tools/project/tag/add.cs +0 -3
- package/unitypkg/Editor/Tools/project/tag/remove.cs +0 -3
- /package/dist/tools/{runtime → player-runtime}/console.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/input/key.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/input/pointer.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/log.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/state.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/target-framerate/set.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/time-scale/set.d.ts +0 -0
- /package/dist/tools/{runtime → player-runtime}/ui/capture-element.d.ts +0 -0
- /package/dist/tools/{reflect/member.d.ts → type-inspection/get-member.d.ts} +0 -0
- /package/dist/tools/{reflect/type.d.ts → type-inspection/get-type.d.ts} +0 -0
- /package/dist/tools/{reflect → type-inspection}/search.d.ts +0 -0
- /package/unitypkg/Editor/Tools/{animation → animator}/AnimatorRuntimeToolSupport.cs +0 -0
- /package/unitypkg/Editor/Tools/{project → project-settings}/ProjectSettingsReader.cs +0 -0
- /package/unitypkg/Editor/Tools/{project → project-settings}/ProjectTagLayerToolSupport.cs +0 -0
- /package/unitypkg/Editor/Tools/{object → serialized-object}/ObjectToolSupport.cs +0 -0
|
@@ -64,14 +64,14 @@ namespace UnityCli
|
|
|
64
64
|
if (input == null) throw Error("E_SCHEMA_INVALID", "Runtime Tool input must be an object.");
|
|
65
65
|
switch (name)
|
|
66
66
|
{
|
|
67
|
-
case "runtime.state": return RuntimeState(input);
|
|
68
|
-
case "runtime.console": return RuntimeConsole(input);
|
|
69
|
-
case "runtime.log": return RuntimeLog(input, dryRun);
|
|
70
|
-
case "runtime.target-framerate.set": return SetTargetFramerate(input, dryRun);
|
|
71
|
-
case "runtime.time-scale.set": return SetTimeScale(input, dryRun);
|
|
72
|
-
case "runtime.input.key": return SimulateKey(input, dryRun);
|
|
73
|
-
case "runtime.input.pointer": return SimulatePointer(input, dryRun);
|
|
74
|
-
case "runtime.ui.capture-element": return CaptureElement(input, dryRun);
|
|
67
|
+
case "player-runtime.state": return RuntimeState(input);
|
|
68
|
+
case "player-runtime.console": return RuntimeConsole(input);
|
|
69
|
+
case "player-runtime.log": return RuntimeLog(input, dryRun);
|
|
70
|
+
case "player-runtime.target-framerate.set": return SetTargetFramerate(input, dryRun);
|
|
71
|
+
case "player-runtime.time-scale.set": return SetTimeScale(input, dryRun);
|
|
72
|
+
case "player-runtime.input.key": return SimulateKey(input, dryRun);
|
|
73
|
+
case "player-runtime.input.pointer": return SimulatePointer(input, dryRun);
|
|
74
|
+
case "player-runtime.ui.capture-element": return CaptureElement(input, dryRun);
|
|
75
75
|
default: throw Error("E_TOOL_NOT_FOUND", "Runtime Tool is not approved: " + name + ".");
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -108,8 +108,8 @@ namespace UnityCli
|
|
|
108
108
|
var limit = (int)OptionalInteger(input, "limit", 50L);
|
|
109
109
|
var level = OptionalString(input, "level", "log");
|
|
110
110
|
var includeStackTrace = OptionalBool(input, "includeStackTrace", false);
|
|
111
|
-
if (since < -1L) throw Error("E_SCHEMA_INVALID", "runtime.console since must be -1 or a non-negative cursor.");
|
|
112
|
-
if (limit < 1 || limit > MaxConsoleLimit) throw Error("E_SCHEMA_INVALID", "runtime.console limit must be between 1 and 200.");
|
|
111
|
+
if (since < -1L) throw Error("E_SCHEMA_INVALID", "player-runtime.console since must be -1 or a non-negative cursor.");
|
|
112
|
+
if (limit < 1 || limit > MaxConsoleLimit) throw Error("E_SCHEMA_INVALID", "player-runtime.console limit must be between 1 and 200.");
|
|
113
113
|
var minimum = Severity(level);
|
|
114
114
|
List<RuntimeLogEntry> selected;
|
|
115
115
|
long cursor;
|
|
@@ -133,9 +133,9 @@ namespace UnityCli
|
|
|
133
133
|
{
|
|
134
134
|
RequireOnly(input, "message", "level");
|
|
135
135
|
var message = RequiredString(input, "message", MaxMessageLength);
|
|
136
|
-
if (string.IsNullOrWhiteSpace(message)) throw Error("E_SCHEMA_INVALID", "runtime.log message must not be empty.");
|
|
136
|
+
if (string.IsNullOrWhiteSpace(message)) throw Error("E_SCHEMA_INVALID", "player-runtime.log message must not be empty.");
|
|
137
137
|
var level = OptionalString(input, "level", "info");
|
|
138
|
-
if (level != "info" && level != "warning" && level != "error") throw Error("E_SCHEMA_INVALID", "runtime.log level must be info, warning, or error.");
|
|
138
|
+
if (level != "info" && level != "warning" && level != "error") throw Error("E_SCHEMA_INVALID", "player-runtime.log level must be info, warning, or error.");
|
|
139
139
|
long? sequence = null;
|
|
140
140
|
if (!dryRun)
|
|
141
141
|
{
|
|
@@ -159,7 +159,7 @@ namespace UnityCli
|
|
|
159
159
|
{
|
|
160
160
|
RequireOnly(input, "frameRate");
|
|
161
161
|
var target = RequiredInteger(input, "frameRate");
|
|
162
|
-
if (target < -1L || target > 1000L) throw Error("E_SCHEMA_INVALID", "runtime.target-framerate.set frameRate must be between -1 and 1000.");
|
|
162
|
+
if (target < -1L || target > 1000L) throw Error("E_SCHEMA_INVALID", "player-runtime.target-framerate.set frameRate must be between -1 and 1000.");
|
|
163
163
|
var before = Application.targetFrameRate;
|
|
164
164
|
if (!dryRun && before != (int)target) Application.targetFrameRate = (int)target;
|
|
165
165
|
var after = Application.targetFrameRate;
|
|
@@ -177,7 +177,7 @@ namespace UnityCli
|
|
|
177
177
|
{
|
|
178
178
|
RequireOnly(input, "scale");
|
|
179
179
|
var target = RequiredFiniteNumber(input, "scale");
|
|
180
|
-
if (target < 0d || target > 1000d) throw Error("E_SCHEMA_INVALID", "runtime.time-scale.set scale must be between 0 and 1000.");
|
|
180
|
+
if (target < 0d || target > 1000d) throw Error("E_SCHEMA_INVALID", "player-runtime.time-scale.set scale must be between 0 and 1000.");
|
|
181
181
|
var expected = (float)target;
|
|
182
182
|
var before = Time.timeScale;
|
|
183
183
|
if (!dryRun && before != expected) Time.timeScale = expected;
|
|
@@ -197,7 +197,7 @@ namespace UnityCli
|
|
|
197
197
|
RequireOnly(input, "key", "event");
|
|
198
198
|
var key = RequiredString(input, "key", 128);
|
|
199
199
|
var eventName = OptionalString(input, "event", "press");
|
|
200
|
-
if (eventName != "down" && eventName != "up" && eventName != "press") throw Error("E_SCHEMA_INVALID", "runtime.input.key event must be down, up, or press.");
|
|
200
|
+
if (eventName != "down" && eventName != "up" && eventName != "press") throw Error("E_SCHEMA_INVALID", "player-runtime.input.key event must be down, up, or press.");
|
|
201
201
|
var facade = InputSystemFacade.Create();
|
|
202
202
|
var control = facade.ResolveKey(key);
|
|
203
203
|
var canonicalKey = facade.CanonicalKey(control);
|
|
@@ -234,11 +234,11 @@ namespace UnityCli
|
|
|
234
234
|
RequireOnly(input, "x", "y", "event", "button");
|
|
235
235
|
var x = RequiredFiniteNumber(input, "x");
|
|
236
236
|
var y = RequiredFiniteNumber(input, "y");
|
|
237
|
-
if (x < 0d || y < 0d || x >= Screen.width || y >= Screen.height) throw Error("E_SCHEMA_INVALID", "runtime.input.pointer coordinates must be inside the current Player screen.");
|
|
237
|
+
if (x < 0d || y < 0d || x >= Screen.width || y >= Screen.height) throw Error("E_SCHEMA_INVALID", "player-runtime.input.pointer coordinates must be inside the current Player screen.");
|
|
238
238
|
var eventName = OptionalString(input, "event", "click");
|
|
239
239
|
var button = OptionalString(input, "button", "left");
|
|
240
|
-
if (eventName != "move" && eventName != "down" && eventName != "up" && eventName != "click") throw Error("E_SCHEMA_INVALID", "runtime.input.pointer event must be move, down, up, or click.");
|
|
241
|
-
if (button != "left" && button != "right" && button != "middle") throw Error("E_SCHEMA_INVALID", "runtime.input.pointer button must be left, right, or middle.");
|
|
240
|
+
if (eventName != "move" && eventName != "down" && eventName != "up" && eventName != "click") throw Error("E_SCHEMA_INVALID", "player-runtime.input.pointer event must be move, down, up, or click.");
|
|
241
|
+
if (button != "left" && button != "right" && button != "middle") throw Error("E_SCHEMA_INVALID", "player-runtime.input.pointer button must be left, right, or middle.");
|
|
242
242
|
var facade = InputSystemFacade.Create();
|
|
243
243
|
var pointer = facade.ResolvePointer(button);
|
|
244
244
|
// pointer与keyboard共享相同的native-event flush边界,避免读到将被同次Update覆盖的前态。
|
|
@@ -280,10 +280,10 @@ namespace UnityCli
|
|
|
280
280
|
{
|
|
281
281
|
RequireOnly(input, "selector", "panel");
|
|
282
282
|
var selector = RequiredString(input, "selector", 256);
|
|
283
|
-
if (string.IsNullOrWhiteSpace(selector)) throw Error("E_SCHEMA_INVALID", "runtime.ui.capture-element selector must not be empty.");
|
|
283
|
+
if (string.IsNullOrWhiteSpace(selector)) throw Error("E_SCHEMA_INVALID", "player-runtime.ui.capture-element selector must not be empty.");
|
|
284
284
|
var panelName = OptionalString(input, "panel", string.Empty);
|
|
285
285
|
#if !UNITY_6000_7_OR_NEWER
|
|
286
|
-
throw Error("E_RUNTIME_ELEMENT_CAPTURE_UNAVAILABLE", "runtime.ui.capture-element requires Unity 6000.7 or newer.");
|
|
286
|
+
throw Error("E_RUNTIME_ELEMENT_CAPTURE_UNAVAILABLE", "player-runtime.ui.capture-element requires Unity 6000.7 or newer.");
|
|
287
287
|
#else
|
|
288
288
|
var panel = ResolvePanel(panelName);
|
|
289
289
|
var element = ResolveElement(panel.Root, selector);
|
|
@@ -424,7 +424,7 @@ namespace UnityCli
|
|
|
424
424
|
if (level == "log") return 0;
|
|
425
425
|
if (level == "warning") return 1;
|
|
426
426
|
if (level == "error") return 2;
|
|
427
|
-
throw Error("E_SCHEMA_INVALID", "runtime.console level must be log, warning, or error.");
|
|
427
|
+
throw Error("E_SCHEMA_INVALID", "player-runtime.console level must be log, warning, or error.");
|
|
428
428
|
}
|
|
429
429
|
|
|
430
430
|
private static void RequireOnly(Dictionary<string, object> input, params string[] names)
|
|
@@ -575,7 +575,7 @@ namespace UnityCli
|
|
|
575
575
|
try { key = Enum.Parse(keyType, requested, true); }
|
|
576
576
|
catch { throw Error("E_SCHEMA_INVALID", "Unknown Input System key: " + requested + "."); }
|
|
577
577
|
var canonical = Enum.GetName(keyType, key);
|
|
578
|
-
if (string.IsNullOrEmpty(canonical) || canonical == "None") throw Error("E_SCHEMA_INVALID", "runtime.input.key requires a concrete Input System key.");
|
|
578
|
+
if (string.IsNullOrEmpty(canonical) || canonical == "None") throw Error("E_SCHEMA_INVALID", "player-runtime.input.key requires a concrete Input System key.");
|
|
579
579
|
var indexer = keyboard.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance).FirstOrDefault(property => property.Name == "Item" && property.GetIndexParameters().Length == 1 && property.GetIndexParameters()[0].ParameterType == keyType);
|
|
580
580
|
var control = indexer == null ? null : indexer.GetValue(keyboard, new[] { key });
|
|
581
581
|
if (control == null) throw Error("E_RUNTIME_INPUT_DEVICE_UNAVAILABLE", "The current keyboard does not expose the requested key control.");
|
|
@@ -45,7 +45,7 @@ namespace UnityCli.Tests
|
|
|
45
45
|
Assert.That(acquired, Is.True);
|
|
46
46
|
queueState.SaveOperation("direct-mutation", new Dictionary<string, object>
|
|
47
47
|
{
|
|
48
|
-
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play" },
|
|
48
|
+
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play-mode.start" },
|
|
49
49
|
{ "editorSessionId", UnityCliBridge.EditorSessionId() }, { "phase", "effect_started" }
|
|
50
50
|
});
|
|
51
51
|
stateHookClearDirectRootOnce();
|
|
@@ -83,7 +83,7 @@ namespace UnityCli.Tests
|
|
|
83
83
|
Consume(pool, requestId, digest, TestDeadline());
|
|
84
84
|
queueState.SaveOperation("direct-mutation", new Dictionary<string, object>
|
|
85
85
|
{
|
|
86
|
-
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play" },
|
|
86
|
+
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play-mode.start" },
|
|
87
87
|
{ "editorSessionId", UnityCliBridge.EditorSessionId() }, { "phase", "accepted_before_effect" }
|
|
88
88
|
});
|
|
89
89
|
|
|
@@ -169,8 +169,8 @@ namespace UnityCli.Tests
|
|
|
169
169
|
pool.Reset();
|
|
170
170
|
}
|
|
171
171
|
|
|
172
|
-
[TestCase("editor.play", false, true)]
|
|
173
|
-
[TestCase("editor.stop", true, false)]
|
|
172
|
+
[TestCase("editor.play-mode.start", false, true)]
|
|
173
|
+
[TestCase("editor.play-mode.stop", true, false)]
|
|
174
174
|
public void ReloadedPlayModeRootFreezesTypedSuccessAfterStableTargetIsObserved(string toolName, bool before, bool targetPlaying)
|
|
175
175
|
{
|
|
176
176
|
var requestId = Unique("playmode-success");
|
|
@@ -203,7 +203,7 @@ namespace UnityCli.Tests
|
|
|
203
203
|
var digest = UnityCliRequestDigest.Compute(Encoding.UTF8.GetBytes(requestId), InstanceId);
|
|
204
204
|
var pool = CreatePool("playmode-changing-session");
|
|
205
205
|
Consume(pool, requestId, digest, TestDeadline());
|
|
206
|
-
queueState.SaveOperation("direct-mutation", PlayModeRoot(requestId, digest, "editor.play", false, DateTimeOffset.UtcNow.AddMinutes(1)));
|
|
206
|
+
queueState.SaveOperation("direct-mutation", PlayModeRoot(requestId, digest, "editor.play-mode.start", false, DateTimeOffset.UtcNow.AddMinutes(1)));
|
|
207
207
|
Assert.That(queueState.TryAcquireLease(requestId, digest, out var acquired), Is.True);
|
|
208
208
|
Assert.That(acquired, Is.True);
|
|
209
209
|
|
|
@@ -229,7 +229,7 @@ namespace UnityCli.Tests
|
|
|
229
229
|
var pool = CreatePool("playmode-deadline-session");
|
|
230
230
|
Consume(pool, requestId, digest, TestDeadline());
|
|
231
231
|
var deadline = DateTimeOffset.UtcNow.AddSeconds(-1);
|
|
232
|
-
queueState.SaveOperation("direct-mutation", PlayModeRoot(requestId, digest, "editor.play", false, deadline));
|
|
232
|
+
queueState.SaveOperation("direct-mutation", PlayModeRoot(requestId, digest, "editor.play-mode.start", false, deadline));
|
|
233
233
|
Assert.That(queueState.TryAcquireLease(requestId, digest, out var acquired), Is.True);
|
|
234
234
|
Assert.That(acquired, Is.True);
|
|
235
235
|
|
|
@@ -1298,7 +1298,7 @@ namespace UnityCli.Tests
|
|
|
1298
1298
|
{
|
|
1299
1299
|
return new Dictionary<string, object>
|
|
1300
1300
|
{
|
|
1301
|
-
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play" },
|
|
1301
|
+
{ "requestId", requestId }, { "requestDigest", digest }, { "toolName", "editor.play-mode.start" },
|
|
1302
1302
|
{ "editorSessionId", UnityCliBridge.EditorSessionId() }, { "phase", phase }
|
|
1303
1303
|
};
|
|
1304
1304
|
}
|
|
@@ -830,7 +830,7 @@ namespace UnityCli.Tests
|
|
|
830
830
|
else staleItem = EnqueueBypass(stale, out created);
|
|
831
831
|
Assert.That(created, Is.True);
|
|
832
832
|
var ordinary = Request("ordinary-after-stale-" + command.Replace('.', '-'));
|
|
833
|
-
ordinary.Command = "
|
|
833
|
+
ordinary.Command = "catalog.editor.list";
|
|
834
834
|
EnqueueBypass(ordinary, out created);
|
|
835
835
|
Assert.That(created, Is.True);
|
|
836
836
|
|
|
@@ -911,7 +911,7 @@ namespace UnityCli.Tests
|
|
|
911
911
|
for (var index = 0; index < UnityCliBridgeQueuePolicy.MaxFifoNodesExaminedPerTick + 1; index++)
|
|
912
912
|
{
|
|
913
913
|
var request = Request("actual-queue-scan-" + index.ToString());
|
|
914
|
-
request.Command = "
|
|
914
|
+
request.Command = "catalog.editor.list";
|
|
915
915
|
var raw = RequestBytes(request);
|
|
916
916
|
var item = new UnityCliBridge.BridgeWorkItem(state, request, raw,
|
|
917
917
|
UnityCliRequestDigest.Compute(raw, request.InstanceId), state.ListenerId, state.ListenerGeneration,
|
|
@@ -937,7 +937,7 @@ namespace UnityCli.Tests
|
|
|
937
937
|
[Test]
|
|
938
938
|
public void SafeStatusBeyondBlockedPrefixStartsWithinBoundAndIndexSurvivesAttachAndClose()
|
|
939
939
|
{
|
|
940
|
-
PublishQueueItem("blocked-mutation", "
|
|
940
|
+
PublishQueueItem("blocked-mutation", "catalog.editor.run", UnityCliBridgeQueuePolicy.WorkClass.Mutation);
|
|
941
941
|
for (var index = 0; index < 127; index++)
|
|
942
942
|
PublishQueueItem("pending-control-" + index.ToString(), "internal.navmesh.bake.cancel", UnityCliBridgeQueuePolicy.WorkClass.Control);
|
|
943
943
|
var safeRequest = Request("safe-status-129");
|
|
@@ -1061,8 +1061,8 @@ namespace UnityCli.Tests
|
|
|
1061
1061
|
var requests = new[]
|
|
1062
1062
|
{
|
|
1063
1063
|
ProjectToolRequest("worker-rigidbody", "physics.rigidbody", new Dictionary<string, object> { { "target", "MissingTarget" } }),
|
|
1064
|
-
ProjectToolRequest("worker-reflection", "
|
|
1065
|
-
ProjectToolRequest("worker-light-probes", "
|
|
1064
|
+
ProjectToolRequest("worker-reflection", "lighting.reflection-probe", new Dictionary<string, object> { { "target", "MissingTarget" }, { "create", true } }),
|
|
1065
|
+
ProjectToolRequest("worker-light-probes", "lighting.light-probe-group", new Dictionary<string, object> { { "target", "MissingTarget" }, { "create", true } }),
|
|
1066
1066
|
ProjectToolRequest("worker-scene-read", "scene.active", new Dictionary<string, object>())
|
|
1067
1067
|
};
|
|
1068
1068
|
|
|
@@ -1187,7 +1187,7 @@ namespace UnityCli.Tests
|
|
|
1187
1187
|
private static BridgeRequest ProjectToolRequest(string requestId, string toolName, Dictionary<string, object> input)
|
|
1188
1188
|
{
|
|
1189
1189
|
var request = Request(requestId);
|
|
1190
|
-
request.Command = "
|
|
1190
|
+
request.Command = "catalog.editor.run";
|
|
1191
1191
|
request.Input = new Dictionary<string, object> { { "name", toolName }, { "input", input } };
|
|
1192
1192
|
return request;
|
|
1193
1193
|
}
|
|
@@ -234,7 +234,7 @@ namespace UnityCli.Tests
|
|
|
234
234
|
"internal.editor.compile.Status",
|
|
235
235
|
"internal.editor.state.snapshot.extra",
|
|
236
236
|
"internal.unknown.status",
|
|
237
|
-
"
|
|
237
|
+
"catalog.editor.run",
|
|
238
238
|
"profiler.status",
|
|
239
239
|
"extension.status"
|
|
240
240
|
};
|
|
@@ -258,7 +258,7 @@ namespace UnityCli.Tests
|
|
|
258
258
|
Assert.That(UnityCliBridgeQueuePolicy.IsOrdinaryReadInternalCommand("internal.navmesh.bake.snapshot"), Is.True);
|
|
259
259
|
Assert.That(UnityCliBridgeQueuePolicy.IsOrdinaryReadInternalCommand("internal.occlusion.bake.snapshot"), Is.True);
|
|
260
260
|
Assert.That(UnityCliBridgeQueuePolicy.IsOrdinaryReadInternalCommand("internal.navmesh.bake.plan"), Is.False);
|
|
261
|
-
Assert.That(UnityCliBridgeQueuePolicy.Classify("
|
|
261
|
+
Assert.That(UnityCliBridgeQueuePolicy.Classify("catalog.editor.run", UnityCliBridgeQueuePolicy.WorkClass.Mutation),
|
|
262
262
|
Is.EqualTo(UnityCliBridgeQueuePolicy.WorkClass.Mutation));
|
|
263
263
|
Assert.Throws<ArgumentException>(() => UnityCliBridgeQueuePolicy.Classify(SafeStatusCommand, UnityCliBridgeQueuePolicy.WorkClass.Mutation));
|
|
264
264
|
}
|
|
@@ -349,7 +349,7 @@ namespace UnityCli.Tests
|
|
|
349
349
|
{
|
|
350
350
|
if (workClass == UnityCliBridgeQueuePolicy.WorkClass.SafeStatus)
|
|
351
351
|
throw new ArgumentException("Tests must create SafeStatus through its exact command.", "workClass");
|
|
352
|
-
return new UnityCliBridgeQueuePolicy.QueueNode(id, "
|
|
352
|
+
return new UnityCliBridgeQueuePolicy.QueueNode(id, "catalog.editor.run", workClass);
|
|
353
353
|
}
|
|
354
354
|
|
|
355
355
|
private static UnityCliBridgeQueuePolicy.QueueNode Safe(string id)
|
|
@@ -182,7 +182,7 @@ namespace UnityCli.Tests
|
|
|
182
182
|
}, Context("issue-042-prefab-deleted-first")).GetAwaiter().GetResult();
|
|
183
183
|
string position;
|
|
184
184
|
Assert.That(UnityCliContinuationToken.TryParse(
|
|
185
|
-
fresh.PageInfo.NextCursor, "
|
|
185
|
+
fresh.PageInfo.NextCursor, "game-object.find", fresh.PageInfo.Generation, out position), Is.True);
|
|
186
186
|
var separator = position.IndexOf(':');
|
|
187
187
|
int instanceId;
|
|
188
188
|
Assert.That(separator, Is.GreaterThan(0));
|
|
@@ -147,11 +147,11 @@ namespace UnityCli.Tests
|
|
|
147
147
|
[Test]
|
|
148
148
|
public void ContinuationBindsScopeGenerationAndRawPosition()
|
|
149
149
|
{
|
|
150
|
-
var token = UnityCliContinuationToken.Create("console.
|
|
150
|
+
var token = UnityCliContinuationToken.Create("console.read", "generation-a", "99999:99000:sentinel");
|
|
151
151
|
string position;
|
|
152
|
-
Assert.That(UnityCliContinuationToken.TryParse(token, "console.
|
|
152
|
+
Assert.That(UnityCliContinuationToken.TryParse(token, "console.read", "generation-a", out position), Is.True);
|
|
153
153
|
Assert.That(position, Is.EqualTo("99999:99000:sentinel"));
|
|
154
|
-
Assert.That(UnityCliContinuationToken.TryParse(token, "console.
|
|
154
|
+
Assert.That(UnityCliContinuationToken.TryParse(token, "console.read", "generation-b", out position), Is.False);
|
|
155
155
|
Assert.That(UnityCliContinuationToken.TryParse(token, "scene.hierarchy", "generation-a", out position), Is.False);
|
|
156
156
|
}
|
|
157
157
|
|
|
@@ -178,7 +178,7 @@ namespace UnityCli.Tests
|
|
|
178
178
|
Assert.That(page.Truncated, Is.True);
|
|
179
179
|
Assert.That(page.NextCursor, Is.Not.Null.And.Not.Empty);
|
|
180
180
|
string position;
|
|
181
|
-
Assert.That(UnityCliContinuationToken.TryParse(page.NextCursor, "reflection.method.find", page.Generation, out position), Is.True);
|
|
181
|
+
Assert.That(UnityCliContinuationToken.TryParse(page.NextCursor, "runtime-reflection.method.find", page.Generation, out position), Is.True);
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
[Test]
|
|
@@ -152,7 +152,7 @@ namespace UnityCli.Tests
|
|
|
152
152
|
public void RecoveryBlockedAuthorizationRevokesItsExactUnconsumedGrant()
|
|
153
153
|
{
|
|
154
154
|
var requestId = "runtime-blocked-authorization";
|
|
155
|
-
var request = Request(requestId, "
|
|
155
|
+
var request = Request(requestId, "catalog.player.run");
|
|
156
156
|
var digest = Digest('2');
|
|
157
157
|
var deadline = Deadline();
|
|
158
158
|
var admission = Admission(requestId, digest, deadline);
|
|
@@ -171,13 +171,13 @@ namespace UnityCli.Tests
|
|
|
171
171
|
var first = PublishBypass("runtime-first");
|
|
172
172
|
Assert.That(first.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Published));
|
|
173
173
|
|
|
174
|
-
var unauthorizedRequest = Request("runtime-unauthorized", "
|
|
174
|
+
var unauthorizedRequest = Request("runtime-unauthorized", "catalog.player.run");
|
|
175
175
|
var unauthorized = bridge.PublishRuntimeRequest(unauthorizedRequest, Deadline(), Digest('b'), new UnityCliRuntimeBridge.RuntimeAdmissionInput());
|
|
176
176
|
Assert.That(unauthorized.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Rejected));
|
|
177
177
|
Assert.That(unauthorized.Error, Does.Contain("E_ADMISSION_REQUIRED"));
|
|
178
178
|
Assert.That(PublishBypass("runtime-first").Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Existing));
|
|
179
179
|
|
|
180
|
-
var faultRequest = Request("runtime-publication-fault", "
|
|
180
|
+
var faultRequest = Request("runtime-publication-fault", "catalog.player.run");
|
|
181
181
|
var faultDigest = Digest('c');
|
|
182
182
|
var faultAdmission = Admission(faultRequest["requestId"] as string, faultDigest, Deadline());
|
|
183
183
|
bridge.ExpectRuntimeBoundaryForTests("before-runtime-publish", () => { throw new InvalidOperationException("injected publication fault"); });
|
|
@@ -187,7 +187,7 @@ namespace UnityCli.Tests
|
|
|
187
187
|
|
|
188
188
|
for (var index = 1; index < 128; index++)
|
|
189
189
|
Assert.That(PublishBypass("runtime-capacity-" + index).Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Published));
|
|
190
|
-
var fullRequest = Request("runtime-capacity-rejected", "
|
|
190
|
+
var fullRequest = Request("runtime-capacity-rejected", "catalog.player.run");
|
|
191
191
|
var fullDigest = Digest('d');
|
|
192
192
|
var full = bridge.PublishRuntimeRequest(fullRequest, Deadline(), fullDigest, Admission("runtime-capacity-rejected", fullDigest, Deadline()));
|
|
193
193
|
Assert.That(full.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.QueueFull));
|
|
@@ -199,7 +199,7 @@ namespace UnityCli.Tests
|
|
|
199
199
|
public void CompensationFaultRetainsExactOwnerUntilBoundedOnlineRecovery()
|
|
200
200
|
{
|
|
201
201
|
var requestId = "runtime-compensation-fault";
|
|
202
|
-
var request = Request(requestId, "
|
|
202
|
+
var request = Request(requestId, "catalog.player.run");
|
|
203
203
|
var digest = Digest('7');
|
|
204
204
|
var deadline = Deadline();
|
|
205
205
|
var admission = Admission(requestId, digest, deadline);
|
|
@@ -255,7 +255,7 @@ namespace UnityCli.Tests
|
|
|
255
255
|
var requestId = "runtime-expired-replay";
|
|
256
256
|
var digest = DigestFor(requestId);
|
|
257
257
|
var originalDeadline = utcNowMs + 500L;
|
|
258
|
-
var originalRequest = Request(requestId, "
|
|
258
|
+
var originalRequest = Request(requestId, "catalog.player.list", originalDeadline);
|
|
259
259
|
var seeded = bridge.PublishRuntimeRequest(originalRequest, originalDeadline, digest, new UnityCliRuntimeBridge.RuntimeAdmissionInput());
|
|
260
260
|
Assert.That(seeded.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Published));
|
|
261
261
|
var terminalWork = TakeNext();
|
|
@@ -275,7 +275,7 @@ namespace UnityCli.Tests
|
|
|
275
275
|
Assert.That(mismatchTask.Result.Error, Does.Contain("E_REQUEST_REPLAY_MISMATCH"));
|
|
276
276
|
|
|
277
277
|
var expired = utcNowMs - 1L;
|
|
278
|
-
var miss = bridge.PublishRuntimeRequest(Request("runtime-expired-miss", "
|
|
278
|
+
var miss = bridge.PublishRuntimeRequest(Request("runtime-expired-miss", "catalog.player.list", expired), expired, DigestFor("runtime-expired-miss"), new UnityCliRuntimeBridge.RuntimeAdmissionInput());
|
|
279
279
|
Assert.That(miss.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Rejected));
|
|
280
280
|
Assert.That(miss.Error, Does.Contain("E_SCHEMA_INVALID"));
|
|
281
281
|
Assert.That(bridge.PublishRuntimeRequest(originalRequest, originalDeadline, digest, new UnityCliRuntimeBridge.RuntimeAdmissionInput()).Outcome,
|
|
@@ -286,7 +286,7 @@ namespace UnityCli.Tests
|
|
|
286
286
|
public void RunningRequestDeadlineReturnsTimeoutWithoutWaitingForTerminalOwner()
|
|
287
287
|
{
|
|
288
288
|
var deadline = utcNowMs + 10L;
|
|
289
|
-
var request = Request("runtime-running-deadline", "
|
|
289
|
+
var request = Request("runtime-running-deadline", "catalog.player.run", deadline);
|
|
290
290
|
var digest = Digest('9');
|
|
291
291
|
var publication = bridge.PublishRuntimeRequest(request, deadline, digest, Admission("runtime-running-deadline", digest, deadline));
|
|
292
292
|
Assert.That(publication.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Published));
|
|
@@ -310,7 +310,7 @@ namespace UnityCli.Tests
|
|
|
310
310
|
public void BlockedCompletionRetainsTerminalAndExactDuplicateUntilOwnerIsDefinitelyAbsent()
|
|
311
311
|
{
|
|
312
312
|
var requestId = "runtime-blocked-completion";
|
|
313
|
-
var request = Request(requestId, "
|
|
313
|
+
var request = Request(requestId, "catalog.player.run");
|
|
314
314
|
var digest = Digest('8');
|
|
315
315
|
var deadline = Deadline();
|
|
316
316
|
var publication = bridge.PublishRuntimeRequest(request, deadline, digest, Admission(requestId, digest, deadline));
|
|
@@ -336,7 +336,7 @@ namespace UnityCli.Tests
|
|
|
336
336
|
public void RecoveryBlockedFrozenTerminalSettlesDuringShutdownWithoutAPump()
|
|
337
337
|
{
|
|
338
338
|
var requestId = "runtime-blocked-frozen-shutdown";
|
|
339
|
-
var request = Request(requestId, "
|
|
339
|
+
var request = Request(requestId, "catalog.player.run");
|
|
340
340
|
var digest = Digest('3');
|
|
341
341
|
var deadline = Deadline();
|
|
342
342
|
var publication = bridge.PublishRuntimeRequest(request, deadline, digest, Admission(requestId, digest, deadline));
|
|
@@ -357,7 +357,7 @@ namespace UnityCli.Tests
|
|
|
357
357
|
public void ShutdownFinalizesQueuedAdmissionOwnerBeforeAnyDequeueEffectOwnership()
|
|
358
358
|
{
|
|
359
359
|
var requestId = "runtime-queued-shutdown";
|
|
360
|
-
var request = Request(requestId, "
|
|
360
|
+
var request = Request(requestId, "catalog.player.run");
|
|
361
361
|
var digest = Digest('6');
|
|
362
362
|
var deadline = Deadline();
|
|
363
363
|
var publication = bridge.PublishRuntimeRequest(request, deadline, digest, Admission(requestId, digest, deadline));
|
|
@@ -378,13 +378,13 @@ namespace UnityCli.Tests
|
|
|
378
378
|
[Test]
|
|
379
379
|
public void RecoveryBlockedShutdownSettlesQueuedAndRunningAgainstCapturedPoolExactlyOnce()
|
|
380
380
|
{
|
|
381
|
-
var runningRequest = Request("runtime-running-shutdown", "
|
|
381
|
+
var runningRequest = Request("runtime-running-shutdown", "catalog.player.run");
|
|
382
382
|
var runningDigest = Digest('e');
|
|
383
383
|
var runningPublication = bridge.PublishRuntimeRequest(runningRequest, Deadline(), runningDigest,
|
|
384
384
|
Admission("runtime-running-shutdown", runningDigest, Deadline()));
|
|
385
385
|
Assert.That(runningPublication.Outcome, Is.EqualTo(UnityCliRuntimeBridge.RuntimePublicationOutcome.Published));
|
|
386
386
|
var running = TakeNext();
|
|
387
|
-
var queuedRequest = Request("runtime-blocked-queued-shutdown", "
|
|
387
|
+
var queuedRequest = Request("runtime-blocked-queued-shutdown", "catalog.player.run");
|
|
388
388
|
var queuedDigest = Digest('5');
|
|
389
389
|
var queuedPublication = bridge.PublishRuntimeRequest(queuedRequest, Deadline(), queuedDigest,
|
|
390
390
|
Admission("runtime-blocked-queued-shutdown", queuedDigest, Deadline()));
|
|
@@ -411,7 +411,7 @@ namespace UnityCli.Tests
|
|
|
411
411
|
public void SettlementBackoffUsesMonotonicClockAcrossUtcJumps()
|
|
412
412
|
{
|
|
413
413
|
var requestId = "runtime-monotonic-settlement";
|
|
414
|
-
var request = Request(requestId, "
|
|
414
|
+
var request = Request(requestId, "catalog.player.run");
|
|
415
415
|
var digest = Digest('4');
|
|
416
416
|
var deadline = Deadline();
|
|
417
417
|
var publication = bridge.PublishRuntimeRequest(request, deadline, digest, Admission(requestId, digest, deadline));
|
|
@@ -438,7 +438,7 @@ namespace UnityCli.Tests
|
|
|
438
438
|
|
|
439
439
|
private UnityCliRuntimeBridge.RuntimePublicationResult PublishBypass(string requestId)
|
|
440
440
|
{
|
|
441
|
-
return bridge.PublishRuntimeRequest(Request(requestId, "
|
|
441
|
+
return bridge.PublishRuntimeRequest(Request(requestId, "catalog.player.list"), Deadline(), DigestFor(requestId), new UnityCliRuntimeBridge.RuntimeAdmissionInput());
|
|
442
442
|
}
|
|
443
443
|
|
|
444
444
|
private UnityCliRuntimeBridge.RuntimeAdmissionInput Admission(string requestId, string digest, long deadline)
|
|
@@ -12,16 +12,16 @@ namespace UnityCli.Tests
|
|
|
12
12
|
{
|
|
13
13
|
var bridge = Type.GetType("UnityCli.UnityCliRuntimeBridge, UnityCli.Runtime", true);
|
|
14
14
|
var validate = bridge.GetMethod("ValidateRuntimeCatalogInput", BindingFlags.NonPublic | BindingFlags.Static);
|
|
15
|
-
var exact = new Dictionary<string, object> { { "name", "runtime.state" } };
|
|
16
|
-
Assert.That(() => validate.Invoke(null, new object[] { "
|
|
15
|
+
var exact = new Dictionary<string, object> { { "name", "player-runtime.state" } };
|
|
16
|
+
Assert.That(() => validate.Invoke(null, new object[] { "catalog.player.describe", exact }), Throws.Nothing);
|
|
17
17
|
|
|
18
18
|
var fallback = new Dictionary<string, object>
|
|
19
19
|
{
|
|
20
|
-
{ "name", "runtime.state" },
|
|
21
|
-
{ "fallbackName", "
|
|
20
|
+
{ "name", "player-runtime.state" },
|
|
21
|
+
{ "fallbackName", "UnityPipeline_player-runtime.state" }
|
|
22
22
|
};
|
|
23
23
|
var exception = Assert.Throws<TargetInvocationException>(() =>
|
|
24
|
-
validate.Invoke(null, new object[] { "
|
|
24
|
+
validate.Invoke(null, new object[] { "catalog.player.describe", fallback }));
|
|
25
25
|
Assert.That(exception.InnerException, Is.TypeOf<FormatException>());
|
|
26
26
|
Assert.That(exception.InnerException.Message, Does.Contain("unknown field"));
|
|
27
27
|
}
|
package/unitypkg/package.json
CHANGED