Skip to content

add durable Unity test run state machine - #8

Draft
niqibiao wants to merge 2 commits into
codex/console-getfrom
codex/test-run-state
Draft

add durable Unity test run state machine#8
niqibiao wants to merge 2 commits into
codex/console-getfrom
codex/test-run-state

Conversation

@niqibiao

@niqibiao niqibiao commented Jul 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • add Editor-only tests/run and tests/status commands for bounded asynchronous Edit Mode and Play Mode test runs
  • require tests/run to use a protected direct invocation and reject it before dispatch when placed in /batch
  • derive the public runId from the protected invocation UUID, keep the Test Framework GUID private, and persist current plus 16 historical terminal states
  • survive Unity domain reloads with fail-closed ownership checks, bounded state/response sizes, dirty-scene preflight, compact counts, and bounded failure evidence
  • advertise test_runs_v1 from the Editor health response and document protected command extension policies for the unity-cli-plugin team and package extenders
  • keep public compatibility wording at Unity 2022

Why

Complex agent workflows need to start a Unity Test run once, tolerate Play Mode or assembly reloads, and keep polling the same durable identity without either repeating TestRunnerApi.Execute() or returning a later run's result.

Validation

  • Unity 2022 live validation: Edit Mode pass/fail/skip, fixture setup failure, no-match, Play Mode reload completion, 10-second long poll, concurrent-run rejection, historical lookup, dirty-scene preflight, and uppercase historical runId
  • exact same protected invocation replay returned replayed=true with the same runId; only one 15.05-second Play Mode run was recorded
  • package core Python suite: 35/35
  • REPL Python suite: 208/208
  • public Markdown wording audit: Unity 2022 only
  • Unity refresh/compile completed successfully
  • git diff --check

Stack

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant