feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection - #569
Conversation
… 4.8) in dev-lead + pr-review engines with capability-aware selection
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
Warning Review limit reached
More reviews will be available in 58 minutes and 12 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more credits in the billing tab to continue. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. 📝 WalkthroughWalkthroughThis PR enables Fable 5 and Opus 4.8 models in the Claude engine by updating tier-specific default model assignments and fallback chain sequencing, then validates the configuration with updated and new test suites covering defaults, chains, intent routing, and fallback behavior. ChangesClaude model tier defaults and fallback chains
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 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 |
There was a problem hiding this comment.
Code Review
This pull request updates the Claude model tier assignments and fallback chains in scripts/engine.sh to use the new claude-opus-4-8 and claude-fable-5 models, adds pricing details for claude-fable-5 in model-pricing.tsv, and updates existing tests while introducing a new test suite (test_engine_new_models.bats) to verify these changes. The review feedback suggests optimizing the new test suite by replacing external process calls (printf, cut, tr) with pure Bash parameter expansion when parsing model chains to improve execution speed.
Dev-Lead — review-changes (applied)Changes committed and pushed. |
There was a problem hiding this comment.
Pull request overview
Updates the Claude engine configuration to introduce the new Anthropic model IDs (claude-fable-5, claude-opus-4-8) and extends unit tests/pricing data so dev-lead + pr-review can reference these models in tier selection and cost reporting.
Changes:
- Updates
scripts/engine.shClaude tier defaults/labels and in-Claude fallback chains to use Fable 5 (audit/single) and Opus 4.8 (deep/action fallbacks). - Adds Fable 5 pricing to
scripts/lib/model-pricing.tsvfor cost/ET calculations. - Adds/updates Bats unit tests asserting new tier assignments and chain fallback behavior.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
scripts/engine.sh |
Updates Claude tier defaults/labels and fallback chains to include Fable 5 + Opus 4.8. |
scripts/lib/model-pricing.tsv |
Adds a priced entry for claude-fable-5* effective 2026-06-11. |
tests/dev-lead/unit/test_engine_chain.bats |
Updates existing chain tests to expect Opus 4.8 in relevant Claude fallback paths. |
tests/dev-lead/unit/test_engine_new_models.bats |
Adds a new test suite asserting new Claude tier defaults and chain composition. |
Dev-Lead — waiting on PR blockers (intent: review-changes)PR: #569 |
|
Note @don-petry I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically. |
Dev-Lead — review-changes (applied)Changes committed and pushed. |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@scripts/engine.sh`:
- Around line 68-71: Update scripts/engine.sh to stop relying on the claude CLI
to auto-handle model-specific params and explicitly omit unsupported fields per
model: detect when model name contains "fable-5" and remove/skip sending
thinking, budget_tokens, temperature, top_p, and top_k; for "opus-4-8" ensure
min cacheable prefix handling and allow the removed params if supported, and for
other models fall back to current behavior. Modify the request-building logic
(where payload is assembled / send_request or similar in scripts/engine.sh) to
branch on the model string and filter out incompatible keys before calling the
CLI/API, and update the comment block to reflect the new explicit handling.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 287a15a3-b163-46df-8d69-bb28c8287bb3
⛔ Files ignored due to path filters (1)
scripts/lib/model-pricing.tsvis excluded by!**/*.tsv
📒 Files selected for processing (4)
.gitleaks.tomlscripts/engine.shtests/dev-lead/unit/test_engine_chain.batstests/dev-lead/unit/test_engine_new_models.bats
|
@coderabbitai resolve |
|
Note @don-petry I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically. |
✅ Action performedComments resolved and changes approved. |
Dev-Lead — waiting on PR blockers (intent: review-changes)PR: #569 |
Dev-Lead — waiting on PR blockers (intent: fix-reviews)PR: #569 |
|
Dev-Lead — review-changes (no-changes)No changes were needed for this PR. |
donpetry-bot
left a comment
There was a problem hiding this comment.
Automated review — APPROVED ✓
Risk: LOW
Reviewed commit: 524d63fdccdf23e2ef957f339f9faaf7b19fa4d0
Review mode: triage-approved (single reviewer)
Summary
Implements #553 by wiring claude-fable-5 / claude-opus-4-8 into the audit, single-reviewer, and deep tiers of the Claude engine, with opus-4-7 retained as terminal fallback in the audit/single chains. Adds fable-5 pricing and 22 new bats tests covering tier defaults, chain composition, intent dispatch, and fallback behavior. Gitleaks change is scoped to a single historical commit SHA. Triage assessment confirmed: low-risk config + test PR by repo owner, all CI green, all review threads resolved.
Linked issue analysis
Closes #553. The issue asks for Fable 5 / Opus 4.8 wired into dev-lead + pr-review engines with capability-aware selection and per-tier fallback. The PR delivers: per-tier defaults updated (audit/single → fable-5, deep → opus-4-8, action/triage unchanged), chains updated (CLAUDE_AUDIT/SINGLE_MODEL_CHAIN start with fable-5 then opus-4-8 then opus-4-7), pricing row added, comments document the fable-5 API surface constraints (adaptive thinking only, omit thinking param, cache prefix sizes), and tests assert non-claude engines are untouched.
Findings
- engine.sh tier swaps look correct and symmetric with the test assertions; opus-4-7 remains in CLAUDE_AUDIT_MODEL_CHAIN and CLAUDE_SINGLE_MODEL_CHAIN as a stable terminal fallback so the chain still has a safe path if newer model IDs are unavailable on a runner.
- New test file unsets pre-existing CLAUDE_*_MODEL_CHAIN env vars in setup (and the same hardening was added to test_engine_chain.bats setup), so the defaults from set_engine_config are exercised cleanly without env contamination from the runner.
- Gitleaks allowlist is correctly scoped to a single historical commit SHA (bda766b — verified as the legitimate BMAD v6.8.0 framework install commit with tutorial-content API key patterns); it does not suppress future findings.
- Copilot raised a concern about non-rate-limit failures terminating the chain if fable-5 is unavailable. Author response is reasonable: the chain semantics are intentional to avoid masking config errors, and env-override (CLAUDE_*_MODEL_CHAIN) is the documented opt-out for runners without access. Not a blocker.
- Gemini's nit on subshell perf in tests was implemented (pure Bash parameter expansion).
- No HIGH-risk surfaces touched: no auth/secrets/crypto, no migrations, no GH Actions security smells, no CODEOWNERS/AGENTS.md violations.
CI status
All 30+ checks SUCCESS or SKIPPED (CodeQL actions/python, ShellCheck, Lint, bats, gh-aw-compile, validate-agent-profiles, Agent Security Scan, Secret scan/gitleaks, SonarCloud quality gate passed with 0 new issues, dev-lead dispatch, AgentShield, etc.). mergeStateStatus is BLOCKED only due to the open REVIEW_REQUIRED from the org-leads team request, not a check failure.
Reviewed automatically by the PR-review agent (single-reviewer mode: opus 4.7). Reply if you need a human review.
… 4.8) in dev-lead + pr-review engines with capability-aware selection (#569) * feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection * chore: apply manual instructions [skip ci-relay] * chore: apply manual instructions [skip ci-relay] --------- Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com> Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com>
… 4.8) in dev-lead + pr-review engines with capability-aware selection (#569) * feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection * chore: apply manual instructions [skip ci-relay] * chore: apply manual instructions [skip ci-relay] --------- Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com> Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com>
… 4.8) in dev-lead + pr-review engines with capability-aware selection (#569) * feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection * chore: apply manual instructions [skip ci-relay] * chore: apply manual instructions [skip ci-relay] --------- Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com> Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com>
… 4.8) in dev-lead + pr-review engines with capability-aware selection (#569) * feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection * chore: apply manual instructions [skip ci-relay] * chore: apply manual instructions [skip ci-relay] --------- Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com> Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com>
… 4.8) in dev-lead + pr-review engines with capability-aware selection (#569) * feat: implement issue #553 — Enable new Claude models (Fable 5 / Opus 4.8) in dev-lead + pr-review engines with capability-aware selection * chore: apply manual instructions [skip ci-relay] * chore: apply manual instructions [skip ci-relay] --------- Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com> Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com>



Closes #553
Implemented by dev-lead agent. Please review.
Summary by CodeRabbit