mergedhumanPR #254Coordination
Reject duplicate bids in sealed-bid auctions
- Make the current advertised sealed-bid auction accept at most one bid from each bidder before award.
Description
The pitch.
## Summary - Make the current advertised sealed-bid auction accept at most one bid from each bidder before award. - Reject a duplicate bid without mutating the first accepted bid. - Emit an attributed `bid_rejected` event with the duplicate-bid reason so the trace explains the decision. ## Why The current coordination layer stores bids in a dictionary and silently overwrites an earlier bid from the same bidder. In a sealed-bid workflow, that lets a bidder revise its bid after submission and makes the trace claim stronger semantics than the implementation provides. The one-shot bid requirement was surfaced by legacy PR #5 from @mariagorskikh. This is a fresh implementation against current `main`; no contributor code was executed or copied. ## Scope boundary This PR preserves the current first-price `highest` and `lowest` award rules. It does not add Vickrey pricing, reserve prices, bid encryption, a new coordination plugin, or other auction policy. ## Verification - Coordination tests: 11 passed - Full suite: 532 passed, 8 existing warnings - Diff check passed - Independent review: no findings for this isolated change
Try it
Open PR on GitHubView diffCheckout locally
git fetch origin pull/254/head:pr-254
git checkout pr-254