Repository navigation
Agent: bring over the CPython worker runtime from #897 - #1409
Draft
AnthonyRonning wants to merge 2 commits into
Draft
AnthonyRonning wants to merge 2 commits into
AnthonyRonning wants to merge 2 commits into
Conversation
Bring over the GPUI-free `maple-code-mode` crate, its Python worker, the runtime preparation and test scripts, and the pinned upstream license notices from the draft CodeMode PR (#897, 4f8603d) unchanged. The crate never depended on Goose; only workspace membership is new, and the preparation test moves next to master's other script tests. The pinned runtime and fixture wiring follow in the next commit, so this commit skips the hook whose tests need the prepared interpreter. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Move the code-mode runtime from Python Build Standalone 20260901 (CPython 3.13.15) to 20260929 (CPython 3.14.7), the release whose 3.14 matches the pinned nixpkgs' python314, so one exact version still holds across both distributions. Pin the targets Maple ships or develops on: macOS arm64, Linux x86_64 and arm64, Windows x64 and arm64. Intel macOS left the build matrix since #897. The upstream notice texts are unchanged at that release; only their provenance moves. `just ci-test` and `just test` now prepare the pinned runtime and run the worker's Python protocol suite before the Rust tests that use it. The full macOS and Windows lanes prepare it before `cargo test`, and the prepare script's own tests join `packaging-test`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
AnthonyRonning
force-pushed
the
agent/python-runtime
branch
from
November 2, 2026 01:20
ba8920f to
69a6a0f
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
First layer of the CodeMode catch-up stack: the Python worker runtime from PR #897 (the Goose-era draft), copied onto current
masterand pinned to CPython 3.14.7. Nothing uses it yet; thepythontool comes in the next layer.What comes over from #897, unchanged
Commit
Copy the CPython worker runtime from #897is a verbatim copy of #897's head4f8603d8, so it can be diffed against that PR:crates/maple-code-mode: the GPUI-free runtime crate. It owns task-lived CPython processes: framing over private descriptors, bounded output, process supervision (process groups on Unix, a Job on Windows), four worker slots, reset and retire. It never depended on Goose, accounts or permissions.python/worker.pyand its protocol suite,scripts/prepare-python.py(hash-pinned Python Build Standalone download and safe extraction),scripts/test-python-worker.py,scripts/check-python-dependencies.py, and the pinned upstream license notices.scripts/test_prepare_python.py).What changed on top
python3143.14.7. A later nixpkgs bump can move both to a newer 3.14.PROVENANCE.jsonmoves.just ci-testandjust testprepare the runtime, then run the prepare script's tests and the worker's Python protocol suite before the Rust tests that need it.agent-full-macosandagent-full-windowsprepare it beforecargo test.Validation (macOS arm64, pinned Nix shell)
just python-test: 25 tests, 1 Windows-only skip.cargo test -p maple-code-mode: 22 unit, 12 native-worker and 2 process-tree tests pass against the real 3.14.7 interpreter.just code-mode-smoke: "CPython 3.14.7 (pbs-20260929-aarch64-apple-darwin) … native worker smoke passed".python3 scripts/test_prepare_python.py: 6 tests.scripts/ci/test_plan.py,test_contracts.py,test_workflow_policy.py,test_change_detection.pypass.just ci-lintandjust ci-test) passed.Not yet exercised here: native Windows and Linux runs of the worker suite, which the full lanes cover; the PR can take
ci:full.🤖 Generated with Claude Code