Skip to content

test(identity): wire coverlet.collector for .NET coverage - #1329

Closed
SharedQA wants to merge 2 commits into
constructorfabric:mainfrom
SharedQA:claude/dotnet-coverage
Closed

test(identity): wire coverlet.collector for .NET coverage#1329
SharedQA wants to merge 2 commits into
constructorfabric:mainfrom
SharedQA:claude/dotnet-coverage

Conversation

@SharedQA

Copy link
Copy Markdown
Contributor

Draft. Makes the .NET identity layer measurable — it was uninstrumented (no coverlet → --collect produced nothing).

  • Adds coverlet.collector to Insight.Identity.Tests.Unit and .Integration.
  • Measured locally (SDK 9.0, 116 unit tests): unit line coverage 24.3% — Domain 61.8%, Infrastructure 24.8%, Api 8.2%. The Api/Infra surface is covered mainly by the 145 Testcontainers integration tests, so the combined number is materially higher.

Follow-up (not in this PR): a merged unit+integration coverage report via reportgenerator to produce one combined % + a CI ratchet (mirrors the Rust coverage.yml).

@coderabbitai

coderabbitai Bot commented Jun 13, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@SharedQA, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 57 minutes and 30 seconds. Learn how PR review limits work.

To continue reviewing without waiting, enable usage-based billing in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ef238b33-eb5e-4ed6-9c7f-36bab751c285

📥 Commits

Reviewing files that changed from the base of the PR and between c32821d and bb309d8.

📒 Files selected for processing (2)
  • src/backend/services/identity/tests/Insight.Identity.Tests.Integration/Insight.Identity.Tests.Integration.csproj
  • src/backend/services/identity/tests/Insight.Identity.Tests.Unit/Insight.Identity.Tests.Unit.csproj
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

Adds coverlet.collector to both identity test projects so
'dotnet test --collect:"XPlat Code Coverage"' emits cobertura — the .NET
equivalent of the Rust llvm-cov / dbt gates. Identity was uninstrumented.

Measured (SDK 9.0): UNIT line coverage 24.3% (Domain 61.8%, Infrastructure
24.8%, Api 8.2%); the Api/Infrastructure surface is exercised mainly by the 145
Testcontainers integration tests, so the combined unit+integration figure is
materially higher. A merged unit+integration report (reportgenerator) + a
ratchet is the follow-up to gate a single combined number.

Signed-off-by: Kenan Salim <kenan.salim@rolos.com>
@SharedQA
SharedQA force-pushed the claude/dotnet-coverage branch from 145cd5a to c75f841 Compare June 15, 2026 15:47
@SharedQA
SharedQA marked this pull request as ready for review June 15, 2026 16:39
SharedQA added a commit to SharedQA/insight that referenced this pull request Jun 16, 2026
Review feedback on constructorfabric#1317 (cyberantonz):

- "Why is coverage separate from unit tests?" — it wasn't justified: the suite
  ran twice (cargo test in `check`, then again instrumented in `coverage-unit`).
  Merge them: `check` now runs the suite ONCE under cargo-llvm-cov, which both
  runs the unit tests and measures line coverage + ratchets the floor. Deleted
  the duplicate `coverage-unit` job (nothing consumed its artifact separately).

- "What about C# coverage?" — documented in place: .NET line coverage for
  identity is wired via the coverlet collector in constructorfabric#1329 (different tooling from
  Rust's cargo-llvm-cov, so it can't share the same command).

- release-train: "What is infra/insight-gitops?" — it's the private GitOps
  deploy repo (documented in README). Reworded the release note to point at
  docs/components/deployment/gitops/README.md and dropped two unverified claims
  (an "allowlist gate" and approval on a `production` environment — no workflow
  uses a GitHub Environment).

Signed-off-by: Kenan Salim <kenan.salim@rolos.com>
@SharedQA
SharedQA requested a review from a team as a code owner June 17, 2026 10:50
@ktursunov ktursunov closed this Jun 22, 2026
@ktursunov

Copy link
Copy Markdown
Contributor

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.

2 participants