t1165: Verify — containerized Claude Code CLI instances for multi-subscription scaling#2180
t1165: Verify — containerized Claude Code CLI instances for multi-subscription scaling#2180marcusquinn merged 1 commit intomainfrom
Conversation
… CLI) 3 tests expected claude CLI for Anthropic models, but PR #2173 removed OAuth routing — opencode is now the sole worker CLI for all models. Updated test expectations to match current behavior. 70/70 tests pass.
Summary of ChangesHello @marcusquinn, 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 focuses on verifying the progress of the t1165 initiative, which aims to implement containerized Claude Code CLI instances for multi-subscription scaling. It specifically confirms the completion and functionality of the remote dispatch infrastructure and its integration tests. Additionally, it addresses and corrects outdated test expectations in the integration suite that no longer reflected the current routing logic after a previous refactoring. Highlights
Changelog
Activity
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. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
WalkthroughTest expectations in a batch dispatch shell script were updated to reflect OAuth routing changes from PR Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🔍 Code Quality Report�[0;35m[MONITOR]�[0m Code Review Monitoring Report �[0;34m[INFO]�[0m Latest Quality Status: �[0;34m[INFO]�[0m Recent monitoring activity: 📈 Current Quality Metrics
Generated on: Sun Feb 22 23:15:31 UTC 2026 Generated by AI DevOps Framework Code Review Monitoring |
|
There was a problem hiding this comment.
Code Review
The pull request successfully updates the tests/test-multi-container-batch-dispatch.sh integration test to align with the changes introduced in PR #2173, where OAuth routing was removed and opencode became the primary worker CLI. The updates to the test expectations for Anthropic models (opus, sonnet, and haiku) are correct and consistent. The code adheres to the project's shell scripting standards, including proper use of Bash idioms and clear test reporting. No issues of medium or higher severity were identified in the provided changes.
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
tests/test-multi-container-batch-dispatch.sh (2)
431-434:⚠️ Potential issue | 🟡 MinorStale comment directly contradicts the now-updated haiku test.
Line 434 says
"anthropic/claude-haiku-3" would route to claude, but the very next test block (lines 490–491) now asserts the opposite —anthropic/claude-haiku-3→opencode. This comment was not updated alongside the assertion change and will mislead future readers.📝 Proposed fix
-# Only fully-qualified "anthropic/claude-haiku-3" would route to claude. +# Since PR `#2173`, even fully-qualified "anthropic/claude-haiku-3" routes to opencode.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@tests/test-multi-container-batch-dispatch.sh` around lines 431 - 434, Update the stale comment in the "Mixed batch — bare tier names" test so it matches the new assertion behavior: change the sentence that currently says '"anthropic/claude-haiku-3" would route to claude' to reflect that the test now expects 'anthropic/claude-haiku-3' to route to opencode; ensure the comment accurately describes how resolve_ai_cli treats bare tier names versus fully-qualified names and matches the assertion in the subsequent test block (the mixed batch test).
9-10:⚠️ Potential issue | 🟡 MinorStale file-header comment missed in this PR.
Line 10 still describes the old pre-PR-#2173 routing policy:
# 2. Correct OAuth routing (claude for Anthropic, opencode for non-Anthropic)After PR
#2173,opencodeis the sole worker CLI for all models, including Anthropic. The description should be updated so the file-level contract stays in sync with the tests below.📝 Proposed fix
-# 2. Correct OAuth routing (claude for Anthropic, opencode for non-Anthropic) +# 2. CLI routing verification (opencode is sole worker CLI post-PR `#2173`)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@tests/test-multi-container-batch-dispatch.sh` around lines 9 - 10, Update the stale header comment line that still says "Correct OAuth routing (claude for Anthropic, opencode for non-Anthropic)" to reflect the post-PR `#2173` policy that opencode is the sole worker CLI for all models (including Anthropic); locate the header comment in tests/test-multi-container-batch-dispatch.sh (the second bullet line in the file header) and replace the old routing description with a short, accurate statement such as "Correct OAuth routing (opencode is the sole worker CLI for all models)" so the file-level contract matches the tests.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Outside diff comments:
In `@tests/test-multi-container-batch-dispatch.sh`:
- Around line 431-434: Update the stale comment in the "Mixed batch — bare tier
names" test so it matches the new assertion behavior: change the sentence that
currently says '"anthropic/claude-haiku-3" would route to claude' to reflect
that the test now expects 'anthropic/claude-haiku-3' to route to opencode;
ensure the comment accurately describes how resolve_ai_cli treats bare tier
names versus fully-qualified names and matches the assertion in the subsequent
test block (the mixed batch test).
- Around line 9-10: Update the stale header comment line that still says
"Correct OAuth routing (claude for Anthropic, opencode for non-Anthropic)" to
reflect the post-PR `#2173` policy that opencode is the sole worker CLI for all
models (including Anthropic); locate the header comment in
tests/test-multi-container-batch-dispatch.sh (the second bullet line in the file
header) and replace the old routing description with a short, accurate statement
such as "Correct OAuth routing (opencode is the sole worker CLI for all models)"
so the file-level contract matches the tests.



Summary
claudeCLI but should expectopencodeafter PR fix: force opencode as sole worker CLI, remove OAuth routing to claude CLI #2173Verification Results
Subtask status:
Delivered artifacts (on main):
remote-dispatch-helper.sh— 1057-line SSH/Tailscale dispatch helper (host config, dispatch, logs, status, cleanup)remote-dispatch.md— comprehensive subagent documentationtest-multi-container-batch-dispatch.sh— 1161-line integration test (70 tests)dispatch.shandpulse.sh(dispatch_target routing)orbstack.md— OrbStack container runtime documentationTest results: 70/70 pass (ShellCheck clean, bash -n clean)
What was fixed: 3 OAuth routing tests expected
claudeCLI for Anthropic models, but PR #2173 (merged 2026-02-22) removed OAuth routing — opencode is now the sole worker CLI. Updated test expectations to match.Remaining work (t1165.1, t1165.2): Container image Dockerfile and container pool manager are not yet implemented. These are marked as open in TODO.md. The remote dispatch infrastructure (t1165.3) and integration tests (t1165.4) are complete and functional.
VERIFY_INCOMPLETE
t1165.3 and t1165.4 are complete and verified. t1165.1 (container image) and t1165.2 (pool manager) remain open. This PR fixes the stale test expectations.
Summary by CodeRabbit