feat: remove EffortMax, add OptionSessionName and OptionRemoteControl#47
feat: remove EffortMax, add OptionSessionName and OptionRemoteControl#47
Conversation
…#46) Remove EffortMax globally (no longer supported in Claude CLI). Add root OptionSessionName mapped to --name (Claude) and --title (OpenCode) with precedence over backend-specific options. Add Claude-specific OptionRemoteControl for --remote-control flag with strict validation. Add session_name to MCP allowlist. Keep rate_limit_event unparsed (accessible via msg.Raw) per shared-vocabulary design rule. Fixes dmora/dors-orchestrator#46 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request refines the agent session configuration by deprecating an unsupported effort level and introducing new options for session management. It streamlines the Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request removes the EffortMax option, which is no longer supported, and introduces two new options: OptionSessionName for cross-backend session naming and claude.OptionRemoteControl for Claude-specific remote control. The changes are well-implemented across the codebase, including updates to backends, tests, and documentation. My review found one potential security issue in the opencode backend where session titles starting with a dash are not validated, which could lead to command-line argument injection. A suggestion to fix this has been provided.
Addresses review feedback from gemini-code-assist on PR #47: resolveTitle() was missing !strings.HasPrefix(v, "-") checks on both OptionSessionName and OptionTitle, allowing potential CLI argument injection. The Claude backend already had this guard for --name. Adds two tests: leading-dash SessionName (falls through to OptionTitle) and leading-dash OptionTitle (skipped entirely). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Thanks @gemini-code-assist! You're right — the Claude backend already guards Fixed in 46f2a38: added |
|
Thanks for the update, @dmora! I've reviewed the changes in |
Summary
EffortMaxglobally — no longer supported in Claude CLI. Updated CLI/ACP engines to reject it, removed mappings from Claude/Codex/OpenCode backends, updatedEffort.Valid().OptionSessionName— cross-cutting session naming mapped to--name(Claude) and--title(OpenCode, with precedence overopencode.OptionTitle). Added to MCP security allowlist.claude.OptionRemoteControl— maps to--remote-controlflag, withParseBoolOptionvalidation on resume. Claude-specific per shared-vocabulary rule.rate_limit_eventunparsed — accessible viamsg.Raw, adhering to the design rule that backend-specific event types don't get root vocabulary entries until 2+ backends need them.Fixes dmora/dors-orchestrator#46
Test plan
TestStart_EffortMaxRejected(CLI engine) — verifiesEffortMaxis rejected atStart()TestEngine_Start_EffortMaxRejected(ACP engine) — same validation for ACP pathTestSpawnArgs_SessionName/TestResumeArgs_SessionName(Claude) —--nameflag emittedTestSpawnArgs_RemoteControl/TestResumeArgs_RemoteControl_Rejected(Claude) —--remote-controlflag and resume validationTestSpawnArgs_SessionName_*(OpenCode) — precedence overOptionTitle, fallback, null-byte rejectionEffortMaxmapping removed, existing effort tests still passsession_namekey accepted)make qapasses🤖 Generated with Claude Code