fix(codex): support exec optimizer backend#1
Draft
TheGameVIX wants to merge 2 commits into
Draft
Conversation
c7a1604 to
79d6117
Compare
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.
Summary
codex_execas an optimizer backend and make--backend codexroute both optimizer and target through Codex execskillopt.model.codex_backend, including token tracking and Codex exec configcodex exec -- -) so multiline replay prompts work reliably on WindowsWhy
This is a stacked follow-up for microsoft#101. That PR adds Windows/Codex plugin support, but the normal SkillOpt train/eval path still left the optimizer on
openai_chatwhen users selected--backend codex. That meant users could still hit API-backed optimizer calls instead of Codex exec.During Windows smoke testing,
skillopt_sleep --backend codexalso exposed a Codex CLI prompt transport issue: multiline prompts passed as argv could produce bad replay responses. Passing the prompt through stdin keeps the samecodex execbackend while avoiding Windows argv parsing edge cases.Validation
python -m pytest -q(170 passed, 5 skipped)python -m mkdocs build --strictpython -c "import sys; sys.argv=['train.py','--config','configs/searchqa/default.yaml','--backend','codex']; from scripts.train import parse_args, load_config; cfg=load_config(parse_args()); print(cfg['optimizer_backend'], cfg['target_backend'])"printscodex_exec codex_execpython -m skillopt_sleep dry-run --project "D:\Documents\AI\manhwa_recap_local_ui\manhwa_recap_local_ui" --backend codex --tasks-file "<reviewed smoke tasks>" --progress --jsonexited 0 with reviewed tasks and no adopt