test(concurrency): harden limiter accounting - #56
Conversation
|
Warning Review limit reached
Next review available in: 7 seconds Limit details: You’ve used all 10 included reviews currently available. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?Wait for the limit to reset, then comment An organization admin can change what happens after included review limits in Billing. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8851f46114
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Greptile SummaryThis PR documents concurrency-limit cancellation accounting and adds deterministic tests for saturation, cancellation ordering, repeated reuse, shared limiter state, and near-maximum capacity arithmetic.
Confidence Score: 4/5The PR appears safe to merge, with non-blocking gaps in how the new tests exercise the grant race and observe mixed queued executions. Production behavior is unchanged, but the new tests can miss cancellation during the actual semaphore handoff and can miss early or over-capacity execution by mixed queued delegates. Files Needing Attention: tests/Kevlar.Tests/ConcurrencyLimitRaceTests.cs
|
| Filename | Overview |
|---|---|
| tests/Kevlar.Tests/ConcurrencyLimitRaceTests.cs | Adds broad limiter-accounting coverage, but the grant test does not overlap cancellation with handoff and mixed queued delegates are absent from concurrency instrumentation. |
| docs/docs/strategies/concurrency-limit.md | Documents queue-place release and exactly-once accounting across cancellation and slot-grant outcomes. |
Reviews (1): Last reviewed commit: "test(concurrency): harden limiter races" | Re-trigger Greptile
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4728d426d9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 55462e8161
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 43b70e850f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
30d029d to
72a21f3
Compare
Summary
int.MaxValueCloses #23
Validation
dotnet build Kevlar.slnx -c Release --no-incrementaldotnet run --project tests/Kevlar.Tests -c Release --no-build -- --timeout 5m(379 passed; 51 consecutive runs)dotnet run --project tests/Kevlar.IntegrationTests -c Release --no-build -- --timeout 5m(16 passed)dotnet run --project tests/Kevlar.Analyzers.Tests -c Release --no-build -- --timeout 5m(19 passed)dotnet run --project tests/Kevlar.NetStandard.Tests -c Release --no-build -- --timeout 5m(1 passed)npm --prefix docs run build