fix(coding-agent): bootstrap IPython kernel venv with the Windows interpreter path - #695
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 93eb5a2b7f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
|
||
| ## [Unreleased] | ||
|
|
||
| ### Fixed |
There was a problem hiding this comment.
Keep the Unreleased section as a flat bullet list
Remove the new ### Fixed heading so this entry sits directly beneath ## [Unreleased]; repository changelogs explicitly prohibit Added/Changed/Fixed/Removed subsections in the unreleased section.
AGENTS.md reference: AGENTS.md:L109-L111
Useful? React with 👍 / 👎.
…-ai#695) New tool for asking users one or more questions with a tab-based interface. Features: - Single question: simple options list (similar to question tool) - Multiple questions: tab bar navigation between questions - Progress indicators: ■/□ checkboxes show answered state - Submit tab: review all answers before submitting - 'Type something' option: free-text input with options visible - Full keyboard navigation: Tab/←→ between questions, ↑↓ for options Use cases: - Clarifying requirements with multiple aspects - Getting user preferences across categories - Multi-step confirmation dialogs Example: ```typescript { questions: [{ id: "db", label: "Database", prompt: "Which database?", options: [ { value: "pg", label: "PostgreSQL", description: "Relational" }, { value: "mongo", label: "MongoDB", description: "Document store" } ] }, { id: "auth", label: "Auth", prompt: "Authentication method?", options: [ { value: "jwt", label: "JWT" }, { value: "session", label: "Sessions" } ] }] } ```
- summarize.ts (PrimeIntellect-ai#684 by @scutifer) - question.ts enhanced (PrimeIntellect-ai#693 by @ferologics) - plan-mode/ enhanced (PrimeIntellect-ai#694 by @ferologics) - questionnaire.ts (PrimeIntellect-ai#695 by @ferologics)
|
Thank you for the report and proposed work. This root cause is now covered by maintainer-owned stacked PR #1163, authored independently from We did not inspect or reuse this PR's diff, branch, commits, implementation code, or tests; its public description/comments were used only as a bug report. To keep one review surface, this PR is superseded by #1163 and is being closed. The complete review stack is #1158–#1165. It is being left unmerged for human review after CI and review-bot findings are cleared. |
Summary
Fixes IPython kernel bootstrap on Windows. The kernel bootstrapper hardcoded the POSIX venv interpreter path (
venv/bin/python) in bothbootstrapVenvand the resolution path inensureKernelPythonUncached. On Windows a uv-created venv places the interpreter atvenv/Scripts/python.exe, souv pip install --python <venv>/bin/python ...failed with exit code 2 and the IPython tool could never start.Change
kernelVenvPython(venv)helper that selectsScripts\python.exeonwin32andbin\pythonelsewhere (mirroring the existingprocess.platform === "win32"pattern already used in this file).kernel-bootstrap.test.ts(the fake uv now supports a Windows-style venv shape).docs/rlm-runtime.mdand a changelog entry.The POSIX path is unchanged, so existing Linux/CI behavior is preserved (the helper returns
bin/pythonwhenprocess.platformis notwin32; existing tests assert that path and stay green).Testing
npm run checkpre-commit hook: biome +tsgo --noEmitpass.Scripts\python.exelayout, installedipykernel+prime-agent-runtime+ default packages, and a launched IPython kernel executedprint(6*7)correctly.Note
Fix IPython kernel venv bootstrap to use
Scripts/python.exeon WindowsThe venv interpreter path was hardcoded to the POSIX
bin/pythonlayout, causing bootstrap failures on Windows. A newkernelVenvPythonhelper inbootstrap.tsresolves tovenv/Scripts/python.exeonwin32andvenv/bin/pythonotherwise. This path is now used consistently across pip installs, skill sync, and theensureKernelPythonreadiness check.Macroscope summarized 93eb5a2.
Note
Low Risk
Scoped to kernel venv path resolution on Windows; POSIX paths are unchanged and covered by existing tests plus a new win32-layout test.
Overview
Fixes IPython kernel bootstrap on Windows by resolving the managed venv interpreter through a new
kernelVenvPython()helper instead of hardcoding POSIXbin/python.Previously,
bootstrapVenvandensureKernelPythonalways pointeduv pip install --pythonatvenv/bin/python, which does not exist on Windows (Scripts\python.exe). Bootstrap could fail before the kernel could start.The helper picks
Scripts\python.exewhenprocess.platform === "win32"andbin/pythonotherwise; POSIX behavior is unchanged. Docs and changelog note the dual layout; tests cover the Windows path via a fakeuvthat creates aScriptsvenv.Reviewed by Cursor Bugbot for commit 93eb5a2. Bugbot is set up for automated code reviews on this repo. Configure here.