Skip to content

Conversation

@marcusquinn
Copy link
Owner

@marcusquinn marcusquinn commented Feb 9, 2026

Summary

  • Add configurable multi-provider fallback chains that activate on API errors, timeouts, and rate limits (t132.4)
  • Support per-agent YAML frontmatter overrides and global JSON config defaults
  • Integrate gateway providers (OpenRouter, Cloudflare AI Gateway) for provider-level fallback routing

New Files

  • fallback-chain-helper.sh: Chain resolution, trigger detection, provider cooldown, gateway probes
  • fallback-chain-config.json.txt: Global config template with per-tier chains and trigger settings
  • fallback-chains.md: Documentation with architecture diagram and integration guide

Modified Files

  • supervisor-helper.sh: resolve_model() now tries fallback chain first
  • model-availability-helper.sh: resolve_tier() falls through to chain; new resolve-chain command
  • models/opus.md, models/sonnet.md: Added fallback-chain frontmatter examples
  • models/README.md: Documented fallback chain feature

Quality

  • ShellCheck: zero violations
  • Bash syntax: verified
  • JSON config: validated

Closes t132.4

…ateway providers (t132.4)

Configurable multi-provider fallback chains that activate on API errors,
timeouts, and rate limits. Supports per-agent YAML frontmatter overrides,
global JSON config defaults, and gateway providers (OpenRouter, Cloudflare
AI Gateway) for provider-level fallback routing.

New files:
- fallback-chain-helper.sh: Chain resolution, trigger detection, cooldown mgmt
- fallback-chain-config.json.txt: Global config template with per-tier chains
- fallback-chains.md: Documentation with architecture and integration guide

Integration:
- supervisor resolve_model() now tries fallback chain first (chose chain-first
  over availability-first -- matches existing patterns where chain provides
  richer resolution including gateway providers)
- model-availability-helper.sh resolve_tier() falls through to chain when
  primary/fallback both fail; new resolve-chain command for direct chain access
- Model tier files (opus.md, sonnet.md) gain fallback-chain: frontmatter
@gemini-code-assist
Copy link

Warning

Gemini encountered an error creating the summary. You can try again by commenting /gemini summary.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 9, 2026

Warning

Rate limit exceeded

@marcusquinn has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 9 minutes and 8 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/t132.4

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

2 similar comments
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 9, 2026

Warning

Rate limit exceeded

@marcusquinn has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 9 minutes and 8 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/t132.4

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 9, 2026

Warning

Rate limit exceeded

@marcusquinn has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 9 minutes and 8 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/t132.4

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@marcusquinn marcusquinn merged commit 7e4673e into main Feb 9, 2026
5 checks passed
alex-solovyev added a commit that referenced this pull request Feb 9, 2026
All 8 subtasks of t132 (Cross-Provider Model Routing) are now complete:
- t132.1: Model-specific subagents (PR #758)
- t132.2: Provider/model registry (PR #761)
- t132.3: Model availability checker (PR #770)
- t132.4: Fallback chain config (PR #781)
- t132.5: Supervisor model resolution (PR #787)
- t132.6: Quality gate with escalation (PR #788)
- t132.7: Multi-provider runner/cron support (PR #789)
- t132.8: Cross-model review workflow (PR #791)

Also fixed stale git conflict markers in TODO.md.
@marcusquinn marcusquinn deleted the feature/t132.4 branch February 9, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant