Skip to content

Keep Unity bridge checks in Python - #302

Merged
Eli Pinkerton (wallstop) merged 2 commits into
refactor/python-bridge-entrypointfrom
refactor/python-bridge-contracts
Oct 19, 2026
Merged

Eli Pinkerton (wallstop) merged 2 commits into
refactor/python-bridge-entrypointfrom
refactor/python-bridge-contracts

Conversation

@wallstop

@wallstop Eli Pinkerton (wallstop) commented Oct 18, 2026 •

Copy link
Copy Markdown
Collaborator

DISCLOSURE: LLM-GENERATED TEXT

Why: Retired Node hooks still duplicate the Python bridge contracts.

What:

  • Replace the remaining JavaScript publication fixture with Python.
  • Remove retired hooks while preserving protocol and startup coverage.
  • Require positive interpreter checks in compatibility launchers.
  • Map Python subjects to their relevant contract suites.

Refs #171.

Type of Change

  • Refactor (code change that neither fixes a bug nor adds a feature)

Checklist

  • I have added tests that prove my fix is effective or my feature works
  • I have updated the documentation accordingly
  • My changes do not introduce breaking changes, or breaking changes are documented

Note

Low Risk
Changes are limited to devcontainer/MCP tooling, docs, and test harness mappings; launcher probing only affects how npm scripts pick uv/Python on the host PATH.

Overview
This PR finishes the Node → Python handoff for MCP config sync and the Unity MCP HTTP bridge: docs now point at scripts/mcp_configure.py and scripts/unity_mcp_host.py, while the .mjs entry points stay as thin launchers only.

The launchers probe interpreters for real output (uv version string, Python prints dataviz-python) so a PATH placeholder that exits 0 is no longer mistaken for a usable runtime. Integration tests drop the retired Node bridge paths and Node publication fixtures; host contracts run against unity_mcp_host.py directly, with startup/route/self-check behavior covered by the existing Python unit suite (test_unity_mcp_host_python.py). harness_scope.py maps the Python subjects to the right contract tests, and test_mcp_catalog.py adds coverage that legacy launchers skip fake python3 shims.

Reviewed by Cursor Bugbot for commit 14e6ea9. Bugbot is set up for automated code reviews on this repo. Configure here.

Retired Node hooks duplicate the Python bridge contracts. Replace the remaining JavaScript publication fixture with Python, remove the retired hooks, and map the new Python subjects to their contract suites.

A zero-exit placeholder interpreter reproduced silent success without configuration. Both compatibility launchers now require a positive interpreter marker; uv must report its version. The placeholder regression fails before repair and passes after. Existing script names remain compatible.

Strict pyright, Python 3.9 bridge contracts, the final fast check, and all 17 full gate steps pass. Native Windows validation covered the bridge and startup review repairs. The Python bridge also passed 395 EditMode and 15 PlayMode tests on the live Unity 6000.5.2f1 host; all eleven pre-existing asset GUIDs remain. Temporary validation processes and workspaces were removed.

Refs #171. Inline release-workflow orchestration remains for the next bounded migration layer.
@wallstop
Eli Pinkerton (wallstop) added this pull request to stack #297 October 18, 2026 21:36

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit ee418c7. Configure here.

Comment thread scripts/tests/test_mcp_catalog.py
Launcher-only changes must run the positive interpreter probes as well as the shared HTTP and Python startup contracts. The original selection omitted the catalog suite that owns the new data-driven launcher regression.

Verified the launcher probe selection before and after the repair; catalog and scope suites pass, as does the changed-file fast check. Refs #171; addresses PR #302 review.
@wallstop
Eli Pinkerton (wallstop) merged commit 98b50a4 into main Oct 19, 2026
3 checks passed
@wallstop
Eli Pinkerton (wallstop) deleted the refactor/python-bridge-contracts branch October 19, 2026 02:16
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