Allow Distrans between completed auction bids
Verify and publish checkpoint container / container (push) Successful in 10m44s

This commit is contained in:
Quintine committed 2026-10-29 10:34:00 +11:00
1 parent ab7a947833
commit ccc4c7bb40
16 files changed
+250 -80

No files matched your search

+20 -3
View File
@@ -2,9 +2,25 @@
Audit date: 2026-09-06. Read `docs/RICHESE_ACQUISITION_RULES.md` first. This audit does not activate the card or certify the remaining Richese effects.
## Between completed bid actions — 29 October 2026
**Prototyped / Partial.** Provisionally interpret the printed prohibition on
playing Distrans “during a bid” as applying to the bid action itself, so a
supported ordinary, Once Around, Silent or normal Black Market lot can also
accept a transfer between completed bid, pass or sealed-submission actions.
Preserve the current lot, accepted bids, sealed choices, funding commitments,
turn order and recipient capacity reserved by a pending bid. Existing other
priority and transaction boundaries still apply; started lots remain blocked
during pending auction interactions. Started special lots are also blocked
while the Semuta preview is enabled until their discard continuation is
supported. A transfer does not reopen bidding or create an extra bid. This interpretation supersedes the first-action
cutoffs in the historical checkpoints below. It is not a publisher ruling;
official clarification of the scope of “during a bid” remains pending.
Self-transfer remains separately unsupported.
## Untouched Richese special lot — 27 October 2026
**Prototyped / Partial.** Extend the selected pre-bid interpretation to an
**Historical checkpoint; its first-action cutoff is superseded above.** Extend the selected pre-bid interpretation to an
actual untouched Once Around or Silent cache or Black Market lot, or a normal
Black Market lot. Before its
first accepted bid, pass or sealed submission, the existing Distrans transfer
@@ -40,6 +56,7 @@ fee, recipient consent, new bid opportunity or new start permission.
## Untouched ordinary lot — 26 October 2026
**Historical checkpoint; its first-action cutoff is superseded above.**
The printed exception excludes use during a bid, without defining its complete
span. Under the 14 October choose-recommended authority, allow Distrans on a
real untouched ordinary lot before its first bid or pass. This is a provisional
@@ -115,7 +132,7 @@ The distinction between an ordinary Treachery effect and a cancellable faction/a
## Explicit unresolved guards
1. **Giving the activating Distrans itself.** The give-then-discard wording does not explain self-selection. Do not put the same physical card in both the recipient's hand and the discard, discard a different card, or silently omit the discard. Until clarified, require a separate transferred card and label self-selection unsupported, not a printed prohibition.
2. **Exact scope of “during a bid.”** The face does not define whether this means one bid declaration or the complete auction of a card. It does not say the entire Bidding phase. The selected policies above permit untouched ordinary, Once Around, Silent and normal Black Market lots before their first bidding action; started lots retain their timing boundary. Pre-bid declaration/selection, between-lot windows and post-purchase income are distinct contexts; do not present a blanket phase-3 ban as the official rule.
2. **Exact scope of “during a bid.”** The face does not define whether this means one bid declaration or the complete auction of a card. It does not say the entire Bidding phase. The provisional policy above also permits supported ordinary, Once Around, Silent and normal Black Market lots between completed bidding actions; unresolved actions and other priority restrictions remain separate. Pre-bid declaration/selection, between-lot windows and post-purchase income are distinct contexts; do not present a blanket phase-3 ban as the official rule.
3. **Active Truthtrance answer priority.** Existing question/priority resolution prevents changing the queried hand mid-question. No retrieved Distrans-specific rule overrides it. Keep this narrow existing priority boundary, rather than disabling Distrans for every unrelated decision or response.
4. **Semuta discard reaction — updated 11 October 2026.** The explicit development preview reacts after a clean completed transfer, including during battle. Only the used Distrans is fresh; the privately transferred card is never a Semuta target. Claim or decline cannot repeat the transfer or change a sealed plan. The recipient may itself hold Semuta and claim the used card while keeping the earlier gift. Competing parents retain their separate boundaries; the neutral response and approved full-hand exchange are documented in [the Semuta source/runtime contract](SEMUTA_SOURCE_UPDATE_20260907.md).
@@ -185,7 +202,7 @@ Recommended regressions: atomic distinct-card conservation and fresh-version rep
## Runtime integration checkpoint
The ordinary card action and owner-only projected transfer choices are integrated. Shared exact-card reservations cover saved parent Ix replacements and pending gifts; prospective checks preserve compulsory exchanges and binding donor promises. No new response or recipient confirmation is created. The supported post-payment context uses currentAuctionSale only after the existing code has paid and transferred the purchased card. At this historical checkpoint, only untouched ordinary lots were admitted; the later special-lot prototype is described above. Started bids and self-transfer remain guarded.
The ordinary card action and owner-only projected transfer choices are integrated. Shared exact-card reservations cover saved parent Ix replacements and pending gifts; prospective checks preserve compulsory exchanges and binding donor promises. No new response or recipient confirmation is created. The supported post-payment context uses currentAuctionSale only after the existing code has paid and transferred the purchased card. At this historical checkpoint, only untouched ordinary lots were admitted; the later special-lot prototype is described above. At that checkpoint, started bids and self-transfer remained guarded; later started-lot changes are described above.
Six root engine, six independent review, five AI and three real SQLite/API cases pass, in addition to six pure custody cases. Full registered suites pass1,247 rules/client and96 persisted/API tests; TypeScript, lint and production build pass. The real browser gave Shield from a synthetic Harkonnen hand using Distrans while preserving a separate pending Richese gift; fresh-tab recovery did not replay it. Exact logs and fixtures are in IMPLEMENTATION_STATUS.md. Mobile, future Semuta, bid/self-transfer rulings and full Richese games remain incomplete.