test(sink): WebApplicationFactory smoke test for samples/WebhookSink (S0b)#76
Conversation
Adds tests/WebhookSink.Tests/, wired into Caliber.Webhooks.slnx under /tests/. WebApplicationFactory<Program> smoke test asserts GET /healthz → 200. Pins Microsoft.AspNetCore.Mvc.Testing 10.0.6 in Directory.Packages.props (CPM). Program partial-class shim was already present in samples/WebhookSink/Program.cs. Closes #53 Co-authored-by: William de Witt <williamdewitt@users.noreply.github.com>
The first dispatched slice (S0b, PR #76) pinned Microsoft.AspNetCore.Mvc.Testing to 10.0.6, which drags Microsoft.Extensions.*.Abstractions to 10.x and downgrade- conflicts (NU1109) with the net8-floor central pins. Make the net8-floor rule explicit in House overrides so the agent pins test/sample deps to 8.0.x. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
@claude the Per the house CPM policy — pin to the net8 LTS floor — fix it by changing the |
|
Claude finished @williamdewitt's task in 4m 47s —— View job Fixing NU1109 package downgrade
What changed
Why this fixes NU1109: the Pushed as
|
…) to resolve NU1109
The 10.0.6 pin transitively pulls Microsoft.Extensions.{DependencyInjection,Hosting,Logging}.Abstractions 10.x, which downgrade-conflict (NU1109) against the repo's net8-floor central pins (8.0.2 / 8.0.0 / 8.0.3) under CentralPackageTransitivePinningEnabled. Pinning to the 8.0.x LTS line unifies the transitive Microsoft.Extensions.* with the existing pins; no Extensions pin bumps needed.
Co-authored-by: William de Witt <williamdewitt@users.noreply.github.com>
The agent's self-heal correctly pinned Microsoft.AspNetCore.Mvc.Testing to the net8 floor (8.0.11), but 8.0.11 → Hosting 8.0.1 → Hosting.Abstractions >= 8.0.1, one patch above the central 8.0.0 pin → NU1109. Raising the floor to 8.0.1 (still net8 LTS) resolves it; a maintainer dependency-floor decision, not an agent bump. Verified: dotnet build + dotnet test green (WebhookSink.Tests 1/1). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Automated by the agent-in-the-loop for #53. Closes #53.