Skip to content

feat: cap reviewer concurrency at 2 uniformly across providers - #5

Merged
S1933 merged 1 commit into
mainfrom
feat/uniform-max-concurrency-2
Jun 14, 2026
Merged

S1933 merged 1 commit into
mainfrom
feat/uniform-max-concurrency-2

Conversation

@S1933

@S1933 S1933 commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Reviews ran effectively sequentially: opencode declared maxConcurrentReviews: 1 and appears in nearly every pipeline, so effectiveConcurrencyLimit (which takes the global min) pinned the whole pipeline to 1 concurrent reviewer.

  • Raise opencode/opencode-go maxConcurrentReviews 1 -> 2
  • Add maxConcurrency to defaults schema and propagate it to pipelines that don't set their own (pipeline-level value still wins)

Net effect: every pipeline runs at most 2 reviewers simultaneously, uniform across all providers.

Summary by CodeRabbit

  • New Features

    • Added support for configuring default concurrency limits in application settings.
    • Increased OpenCode provider concurrent reviews capacity to 2 (previously 1).
    • Runtime now respects and applies configured default concurrency settings to pipelines.
  • Tests

    • Added test coverage for default concurrency configuration and pipeline override behavior.

Reviews ran effectively sequentially: opencode declared
maxConcurrentReviews: 1 and appears in nearly every pipeline, so
effectiveConcurrencyLimit (which takes the global min) pinned the whole
pipeline to 1 concurrent reviewer.

- Raise opencode/opencode-go maxConcurrentReviews 1 -> 2
- Add maxConcurrency to defaults schema and propagate it to pipelines
  that don't set their own (pipeline-level value still wins)

Net effect: every pipeline runs at most 2 reviewers simultaneously,
uniform across all providers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 14, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2d28e3a5-0de8-4b69-8762-beabaf81cc29

📥 Commits

Reviewing files that changed from the base of the PR and between 48342c8 and c79088c.

📒 Files selected for processing (5)
  • src/config/schema.ts
  • src/providers/opencode/index.ts
  • src/runtime/runtime.ts
  • tests/config.test.ts
  • tests/opencode.test.ts

📝 Walkthrough

Walkthrough

Adds an optional defaults.maxConcurrency positive integer field to DefaultsSchema. The toPipeline runtime helper is updated to accept this as a fallback when a pipeline has no explicit maxConcurrency. Separately, both opencode provider factories raise maxConcurrentReviews from 1 to 2.

Changes

Concurrency configuration changes

Layer / File(s) Summary
defaults.maxConcurrency schema, runtime propagation, and tests
src/config/schema.ts, src/runtime/runtime.ts, tests/config.test.ts
DefaultsSchema gains maxConcurrency (optional positive integer). toPipeline accepts a new optional defaultMaxConcurrency parameter and resolves pipeline concurrency as cfg.maxConcurrency ?? defaultMaxConcurrency, setting it only when truthy. resolvePipeline forwards opts.config.defaults?.maxConcurrency to toPipeline. Two new tests cover the fallback propagation case and the per-pipeline override case.
OpenCode provider cap bump
src/providers/opencode/index.ts, tests/opencode.test.ts
openCodeFactory and openCodeGoAliasFactory both set maxConcurrentReviews to 2. The capability test expectation is updated to match.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐇 Hippity-hop, two reviews at once!
No longer must opencode play the dunce.
A global default now trickles on down,
Each pipeline may wear its own concurrency crown.
The schema grows one small optional field —
Such bountiful concurrency yields! 🌿

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/uniform-max-concurrency-2

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.

@github-actions

Copy link
Copy Markdown

🧭 Quorum Review

⚠️ SKIPPED — no OpenRouter API key available

Quorum requires an OPENROUTER_API_KEY to run reviews in CI. This usually means:

  • The PR is from a fork (GitHub does not pass secrets to fork PRs)
  • The OPENROUTER_API_KEY secret has not been configured

Add OPENROUTER_API_KEY to your repository secrets and re-run.


Quorum

@S1933
S1933 merged commit acdbda0 into main Jun 14, 2026
2 of 3 checks passed
@S1933
S1933 deleted the feat/uniform-max-concurrency-2 branch June 14, 2026 13:54
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