Skip to content

M9-S3: seller query endpoints + ExtendedBiddingTriggered handler carry-forward#106

Merged
erikshafer merged 1 commit into
mainfrom
m9-s3-seller-query-endpoints-housekeeping
Jun 13, 2026
Merged

M9-S3: seller query endpoints + ExtendedBiddingTriggered handler carry-forward#106
erikshafer merged 1 commit into
mainfrom
m9-s3-seller-query-endpoints-housekeeping

Conversation

@erikshafer

Copy link
Copy Markdown
Owner

Summary

  • Obligations BC: GET /api/obligations/status?sellerId= — pure IQuerySession read over the existing ObligationStatusView inline projection (no new types, no module changes)
  • Settlement BC: SellerSettlementSummary handler-driven projection from SettlementCompleted + GET /api/settlement/summaries?sellerId= endpoint; rides settlement-settlement-events queue alongside PendingSettlementHandler under Separated dispatch
  • Listings BC: AuctionStatusHandler.Handle(ExtendedBiddingTriggered) advances CatalogListingView.ScheduledCloseAt; publish route added to listings-auctions-events (M8-S7 Finding 1 carry-forward)
  • Cache-bridge burst-final hardening: evaluated and deferred — the fix is localised but affects three SPAs and the seller cache bridge doesn't exist yet; natural landing point is @critterbids/shared extraction (M9-S5/S7)

All five seller-facing endpoint gaps from the M9 milestone audit (§2) are now closed. Backend precursor slices (S2 + S3) complete.

Build: 0 errors, 2 CS0108 warnings (baseline)
Tests: 326 all pass (316 baseline + 10 new across 3 BCs)

Test plan

  • GET /api/obligations/status?sellerId= returns seller's obligation views (happy path, empty, seller isolation)
  • SellerSettlementSummaryHandler creates summary from SettlementCompleted (creation + redelivery idempotency)
  • GET /api/settlement/summaries?sellerId= returns seller's settlements (happy path, empty, seller isolation)
  • ExtendedBiddingTriggered handler advances ScheduledCloseAt on open listings
  • ExtendedBiddingTriggered handler no-ops on Withdrawn listings
  • Full regression: 326/326 tests pass

…y-forward

Obligations BC: GET /api/obligations/status?sellerId= — pure IQuerySession
read over the existing ObligationStatusView inline projection.

Settlement BC: SellerSettlementSummary handler-driven projection from
SettlementCompleted, with GET /api/settlement/summaries?sellerId= endpoint.
Rides the settlement-settlement-events queue alongside PendingSettlementHandler
under Separated dispatch.

Listings BC: AuctionStatusHandler.Handle(ExtendedBiddingTriggered) advances
CatalogListingView.ScheduledCloseAt; publish route added to
listings-auctions-events in Program.cs.

Cache-bridge burst-final hardening evaluated and deferred — the fix is
localised but affects three SPAs and the seller cache bridge doesn't exist
yet; natural landing point is the @critterbids/shared extraction (M9-S5/S7).

All five seller-facing endpoint gaps from the M9 milestone audit are now
closed. 10 new integration tests (326 total, 0 failures).
@erikshafer erikshafer self-assigned this Jun 13, 2026
@erikshafer erikshafer merged commit f800a9f into main Jun 13, 2026
14 checks passed
@erikshafer erikshafer deleted the m9-s3-seller-query-endpoints-housekeeping branch June 13, 2026 07:52
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