You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
S0a of the WebhookSink artifact (epic #49). App project only — the smoke-test project is split into #53 to keep this within one agent run (the first attempt hit the 30-turn cap after also creating a test project). Design: docs/design/webhook-sink-design.md.
Acceptance criteria
New project samples/WebhookSink/ — ASP.NET Core minimal-API, single-target net10.0, wired into Caliber.Webhooks.slnx (a /samples/ solution folder).
<IsPackable>false</IsPackable>.
ProjectReference to src/Caliber.Webhooks/Caliber.Webhooks.csproj. No new third-party packages (the scaffold needs none — just the framework reference).
Endpoints: GET /healthz → 200 OK, and a placeholder GET / home page (plain text/HTML stub that names the sink). No capture / dashboard / fault-injection / signature code — later slices.
Inherits the repo shell (nullable, warnings-as-errors, Meziantou) with zero new suppressions.
Definition of done
dotnet build -c Release green across the solution, zero analyzer warnings.
Small, well-specified slice — implement directly with minimal exploration. The design is summarised above; no need to re-read the full docs bundle. Aim to finish well inside the turn budget.
S0a of the WebhookSink artifact (epic #49). App project only — the smoke-test project is split into #53 to keep this within one agent run (the first attempt hit the 30-turn cap after also creating a test project). Design:
docs/design/webhook-sink-design.md.Acceptance criteria
samples/WebhookSink/— ASP.NET Core minimal-API, single-target net10.0, wired intoCaliber.Webhooks.slnx(a/samples/solution folder).<IsPackable>false</IsPackable>.ProjectReferencetosrc/Caliber.Webhooks/Caliber.Webhooks.csproj. No new third-party packages (the scaffold needs none — just the framework reference).GET /healthz→200 OK, and a placeholderGET /home page (plain text/HTML stub that names the sink). No capture / dashboard / fault-injection / signature code — later slices.Definition of done
dotnet build -c Releasegreen across the solution, zero analyzer warnings.WebApplicationFactorysmoke test for/healthzlands in the follow-up test(sink): WebApplicationFactory smoke test for samples/WebhookSink (S0b) #53.Implementer notes
Program.csminimal-hosting; it's the seam S1 (capture) builds on. Addpublic partial class Program { }so test(sink): WebApplicationFactory smoke test for samples/WebhookSink (S0b) #53'sWebApplicationFactorycan reference it.risk:low(samples/**): PR gates on CI-green + a light human approval; does not auto-merge.