Skip to content

chore(deps): group FluentValidation / Grpc / Testcontainers so companion packages can't skew#178

Merged
emeraldleaf merged 2 commits into
mainfrom
chore/dependabot-group-companion-packages
Jul 19, 2026
Merged

chore(deps): group FluentValidation / Grpc / Testcontainers so companion packages can't skew#178
emeraldleaf merged 2 commits into
mainfrom
chore/dependabot-group-companion-packages

Conversation

@emeraldleaf

@emeraldleaf emeraldleaf commented Jul 19, 2026

Copy link
Copy Markdown
Owner

The recurrence this prevents

FluentValidation and FluentValidation.DependencyInjectionExtensions were ungrouped in dependabot.yml, so they came as separate PRs (#123, #124). Merging #123 alone left main skewed — core at 12.1.1, the DI-extensions companion a full major behind at 11.11.0 (11.x extensions built against 11.x APIs, now running on 12.x core). Same family-skew class as the WolverineFx.RabbitMQ drift fixed in #176.

The CLAUDE.md "families move together" rule can't prevent this — dependabot doesn't read CLAUDE.md. The mechanical fix is a dependabot group, which every other multi-package family here already has.

Change

Adds groups for the three multi-package families that were still ungrouped and skew-prone:

  • fluent-validationFluentValidation* (2 pkgs) — the one that just bit us
  • grpcGrpc.* (2 pkgs — Grpc.AspNetCore, Grpc.Tools)
  • testcontainersTestcontainers* (3 pkgs — MsSql, PostgreSql, core)

Also refreshed the stale WolverineFx ignore comment ("Stay on 5.x" → the 5→6 migration landed in #154; family's on 6.17.3, so the ignore now defers 7.0+). Policy unchanged, comment only.

Scope

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Improved weekly package update grouping for related dependencies.
    • Updated automated version-update rules to allow compatible releases while deferring future major-version upgrades.

…ion packages bump in lockstep

#123 (FluentValidation 12.1.1) and #124 (FluentValidation.DependencyInjectionExtensions) were
ungrouped, so they opened as separate PRs — merging #123 alone left main with FluentValidation
core at 12.1.1 and its DI-extensions companion a full major behind at 11.11.0 (an unsupported
pairing: 11.x extensions built against 11.x APIs, running on 12.x core). Same family-skew class
as the WolverineFx.RabbitMQ drift (#176).

The CLAUDE.md "families move together" rule can't prevent this — dependabot doesn't read
CLAUDE.md. The mechanical fix is a dependabot group, which every other multi-package family
here already has (wolverine, entity-framework, microsoft-extensions, aspire, opentelemetry).
This adds groups for the three that were still ungrouped and could skew the same way:
FluentValidation* (2 pkgs), Grpc.* (2), Testcontainers* (3).

Also refreshed the stale WolverineFx ignore comment ("Stay on 5.x" → the 5→6 migration landed
in #154; the family is on 6.17.3 and the ignore now defers 7.0+). Policy unchanged.

Does NOT fix the current live skew — #124 (rebasing) closes that. This prevents recurrence.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: e2a26fbe-1b93-4e9d-9424-cf32d74db7cf

📥 Commits

Reviewing files that changed from the base of the PR and between 8342a45 and bd4ffa6.

📒 Files selected for processing (1)
  • .github/dependabot.yml

Walkthrough

Dependabot now groups additional NuGet package families into weekly updates, and its WolverineFx ignore-rule comment reflects the completed 5→6 migration and deferred 7.0+ major versions.

Changes

Dependabot configuration

Layer / File(s) Summary
NuGet grouping and version policy
.github/dependabot.yml
Adds grouped updates for FluentValidation, Grpc, and Testcontainers packages, and documents the WolverineFx 7.0+ major-version deferment while retaining 6.x updates.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested labels: dependencies, nuget

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the Dependabot grouping change for FluentValidation, Grpc, and Testcontainers companion packages.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/dependabot-group-companion-packages

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.

@codecov

codecov Bot commented Jul 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@emeraldleaf
emeraldleaf merged commit 41b3789 into main Jul 19, 2026
8 checks passed
emeraldleaf added a commit that referenced this pull request Jul 20, 2026
… groups (they're transitively coupled) (#185)

Microsoft.AspNetCore.* transitively depends on Microsoft.EntityFrameworkCore.Relational, so an
AspNetCore bump pulls a newer EF.Relational and downgrades it against the pinned EF Core →
NU1605. As two separate groups they came as two PRs that merged out of step and broke the build
TWICE: #155 (Aug) and again #180/#181 this week (AspNetCore 10.0.10 needs EF 10.0.10; the EF
group PR was separate).

#178 grouped the standalone families (FluentValidation/Grpc/Testcontainers) but not this
CROSS-family transitive coupling. Merging the two groups into one (`microsoft-aspnet-ef`) means
one PR, so AspNetCore and EF Core always move together — the NU1605 skew becomes structurally
impossible. Npgsql EF provider rides along (same cadence).

Config-only, no code/package change — architecture-review gate exempt.
Does not fix the current #180 — merge #181 (EF 10.0.10) first, then #180 rebases green.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
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