Support owned Box and Kulon movement-promise preparation

Extend bounded Basic ground-movement reachability to held native CHOAM Kulon and owned paid Box recovery. Before payment, use only known current-discard identities. Preserve actual paid event, full inspection, one two-spice fee, original physical card replay and existing provisional full-hand exchange. Reject a Yes-breaking selection before the server shuffle without losing the paid search. Keep No-only searches on their normal decision before movement can end.

Record movement-relevant current-discard certainty at actual disposal, paid search, mixed claim and deck rebuild boundaries without projecting raw metadata or erasing historical memory. Use deterministic preparation on private copies, include preparation state in search memoization, protect fee-funded routes from voluntary spending and keep native Kulon counter semantics. Persistent busy-safe guidance and existing legal profiles use the actual next paid action; no strategy tuning.

Verify 17 files231/231, types/lint/build, three original-action control/table-rendering programmes and four existing profiles with40 accepted actions including neutral passes. Original public sources44/25 retain actual purchases1+1, shipment costs6/1, exhausted Hajr and native Kulon route4. Separate full-hand, legacy certainty, fee-loss and acquired-counter edges disclose conserved staging. Two prior-engine Auditor fixture failures are repaired by actual battle-result acknowledgements; test-only const lint is corrected.

Other timing, preparations/counter mitigation, unknown private possibilities, optional/Advanced, full modes, comprehensive assurance and deployed acceptance remain open. No saved-room/reset/restart/deployment operation.
This commit is contained in:
Quintine committed 2026-10-24 14:53:11 +11:00
1 parent edbcbe28de
commit b5a53da712
16 files changed
+772 -41

No files matched your search

+21
View File
@@ -16,6 +16,27 @@ open mode gates.
## Current checkpoint and work
**Owned movement-card preparation — 24 October. Prototyped / Partial.**
Basic movement promises now include held native Kulon and owned paid Box
recovery. Before payment, only known current-discard identities supply a route;
paid inspection keeps its full original choice/event and single two-spice fee.
An incompatible Yes selection rejects before shuffle, preserving that paid
decision. No-only searches retain ordinary selection before End movement.
Physical Hajr replay, native Kulon counters and existing full-hand policy remain.
A disjoint knowledge/source lane, bounded preparation review and owner
integration pass **17 files231/231**, types/lint/build, three actual-control/table
rendering programmes and four existing profiles with40 accepted actions. Public
Box source44 uses actual purchases1+1, desert shipment6 and two completed Hajr
moves; native held-Kulon source25 uses actual shipment1 before route4. Full-hand,
legacy-knowledge, fee-loss and acquired-counter edges disclose controlled
conserved staging. Two stale Auditor fixture failures reproduced on the previous
engine and now acknowledge the actual battle result; test-only const lint was
repaired. [Source, exact proof and remaining scope](TRUTHTRANCE_MOVEMENT_PROMISES.md#owned-box-and-kulon-preparation--24-october-2026).
Other timing/preparations/counter mitigation, unknown private possibilities,
optional/Advanced, full modes and final assurance remain open. No strategy
tuning or saved-room/reset/restart/deployment operation.
**Basic Truthtrance ground-movement promises — 24 October. Prototyped / Partial.**
Structured future ground-movement answers now bind a clean active post-shipment
Basic native turn. One qualifying physical move fulfills Yes before arrival or
+22
View File
@@ -1,5 +1,27 @@
# Dune implementation status
## 24 October 2026 — Owned movement-card preparation
Extend bounded Basic movement promises with held native Kulon and owned paid
Box recovery. Pre-payment routes use known current-discard identities; private
choices invalidate location certainty without erasing historical memory. Actual
paid selection retains all entitled faces, its original event and one two-spice
fee. Reject a Yes-breaking choice before shuffle and keep that paid decision.
No-only searches retain ordinary selection; physical Hajr replay, native counters,
full-hand policy and persistent busy-safe controls remain.
Disjoint knowledge/source lanes, bounded review and owner integration pass
17 files231/231, types/lint/build, three actual-control/table-rendering programmes
and four existing profiles with40 accepted proposals. Original public sources
44/25 retain actual Box/Hajr purchases, shipment costs6/1 and native Kulon route4.
Separate full-hand/knowledge/fee-loss/counter edges disclose conserved staging.
Two old Auditor fixtures reproduce on the previous engine; actual battle-result
acknowledgements repair their source. Test-only const lint was corrected.
[Current authority, exact source and limits](TRUTHTRANCE_MOVEMENT_PROMISES.md#owned-box-and-kulon-preparation--24-october-2026).
Broader timing, preparations/counter mitigation, unknown private possibilities,
optional/Advanced, full modes, final assurance and deployed acceptance remain
open. No tuning or saved-room/reset/restart/deployment operation.
## 24 October 2026 — Basic Truthtrance ground-movement commitments
Add the missing structured future single-movement predicate for clean active
+1 -1
View File
@@ -907,7 +907,7 @@ dedicated retrieved worked FAQs. [Contract and remaining limits](HOMEWORLD_OCCUP
| Advanced Kull specific effect | Supplied physical29/logical27 restricts the attempted Karama for a specific effect, unlike publisher Basic phase-wide wording. New signed Advanced attempts bind semantic purpose; purchase/payment and native special variants normalize, as do enhanced Prescience/advisor conversion. CHOAM effects and special-force faction powers stay distinct. Retaining turn/phase expiry is explicit provisional composition under the 14 October policy, not supplied wording. Legacy unstamped pending/restriction frames retain broad scope. Prior distinct counter, BG-before-conversion and deferred overbid selections stay. | [Source cutover and keys](CHOAM_KULL_SOURCE_UPDATE.md#advanced-specific-effect-scope--18-october-2026), [connected implementation and limits](CHOAM_KULL_DESIGN.md#advanced-effect-scope--18-october-2026) |
| Kull Wahad preview timing | User selected a **distinct eligible counter** while the interrupted physical card stays reserved, and BG Worthless interception **before conversion/discard**. Pending declaration is not a ban; only success stamps turn/phase and retains original/special once-use. Decline or prevention resumes the original once. Old `kull` stays printed-only; fresh `nexus-kull` admits native CHOAM plus classic Basic/Advanced seats, CHOAM/Ix Treachery and Nexus alone, without physical Sandtrout. Nexus Use needs actual unallied CHOAM Nexus and canonical eligible own fuel: accepted declaration spends Nexus even if prevented, fuel stays held until success. Use requires source/event/card, with no old-source action shim or proactive Kull. Verified prior printed counter saves migrate only their selection binding; no new-choice retrofit. Reservations, promises and remaining winning-payment coverage constrain fuel/counters; ordinary retained Karama payment is not a canceled Cunning effect. Priority/custody/overbid are user policy; neutral timing/spend conventions are application policy. Bounded checks/CLI/runtime/phone cases pass; broader verification is Partial and no full/public/deployed gate opens. | [Selected preview policy](CHOAM_KULL_SOURCE_UPDATE.md#user-selected-preview-timing--30-september-2026), [source/cost boundary](NEXUS_CHOAM_RULES.md#kull-source-cost-and-action-boundary), [runtime and remaining limits](CHOAM_KULL_DESIGN.md), [new evidence](NEXUS_CHOAM_RUNTIME.md#five-part-status-for-the-new-interaction) |
| Semuta full-hand exchange | User selected **Allow exchange**: acquisition followed by Semuta disposal is an atomic net-zero hand exchange at the faction limit. Existing incoming reservations still consume capacity; this does not permit an already overfull hand or settle Box/Richese purchase timing. | [Selected capacity policy](SEMUTA_SOURCE_UPDATE_20260907.md#user-selected-full-hand-exchange--30-september-2026) |
| Truthtrance / Basic ground movement | Compose the general FAQ binding-while-possible rule with one future qualifying physical ground movement before the active post-shipment turn ends. Yes survives nonmatches while an owned completion remains; No forbids every later match through Hajr/Ornithopter until actual closure. Commit before arrival/disposal, preserve native controls, and retain compatible promises in accepted order after an opposing loss. Shipment/HMS/Ambassador relocation and the No-Field marker itself do not count as ordinary physical ground movement. This bounded predicate and release priority are software compositions, not a movement-specific publisher FAQ. Earlier timing, wider owned preparations, optional/Advanced and full acceptance remain unfinished. | [Authority, behavior and bounded evidence](TRUTHTRANCE_MOVEMENT_PROMISES.md) |
| Truthtrance / Basic ground movement | Compose the general FAQ binding-while-possible rule with one future qualifying physical ground movement before the active post-shipment turn ends. Yes survives nonmatches while an owned completion remains; No forbids every later match through Hajr/Ornithopter until actual closure. Commit before arrival/disposal, preserve native controls, and retain compatible promises in accepted order after an opposing loss. Held native Kulon and owned paid Box recovery use actual legality; before payment, only known current-discard identities supply a Box witness. Retain original paid selection/event, the two-spice fee and existing provisional full-hand exchange; do not inspect unknown piles or erase historical memory. Shipment/HMS/Ambassador relocation and the No-Field marker itself do not count as ordinary physical ground movement. This bounded predicate and release priority are software compositions, not a movement-specific publisher FAQ. Earlier timing, wider preparations/counter mitigation, optional/Advanced and full acceptance remain unfinished. | [Authority, behavior and bounded evidence](TRUTHTRANCE_MOVEMENT_PROMISES.md) |
| Semuta / native Basic entries | Fresh bare public Basic Richese previews initialize the existing protocol before genuine setup with selected native E1/E2/E3 families; no optional/Advanced inheritance or old-game retrofit. Clean source-witnessed shipment/movement CHOAM and Ixian Ambassador private discards, including BG copies, park the original entry: keep CHOAM's committed credit and draw the Ixian replacement only after the reaction. This composes printed component rules, not a new timing FAQ. Existing Basic Terror overflow retains the neutral all-seat response, committed-only face access, original victim/draw, removed token, payment, forces and optional gift. Nested parents, completed movement-card provenance and wider module/full-game coverage remain unfinished implementation boundaries, not printed Semuta prohibitions. | [Fresh Basic and Ambassador scope](SEMUTA_SOURCE_UPDATE_20260907.md#fresh-basic-starts-and-ambassador-discards--24-october-2026), [native Terror suffix](TERROR_DISCARD_CONTINUATIONS.md) |
Shipment and mixed current-fact/shipment AND/OR follow the FAQ's whole-question
+80 -6
View File
@@ -37,8 +37,9 @@ reconfigured and absent promise fields remain absent until a real answer binds.
- Feasible answers use actual board/typed groups and the shared human movement
declaration validator, not the strategic bot shortlist. The finite search
considers ordinary moves, held Hajr, both held/active Ornithopter modes and
their original cohort, current city access and current native bonuses such as
CHOAM Kulon. Preparations use private detached execution; actual cards retain
their original cohort, current city access, current native bonuses, held
CHOAM Kulon and the owned Box recovery described below. Preparations use
private detached execution; actual cards retain
their ordinary effects, counters, discard/response and arrival continuations.
Unknown future draws/gifts and unresolved opposing outcomes are not invented.
- Voluntary moves/actions cannot remove the last legal completion. A declared
@@ -53,11 +54,84 @@ reconfigured and absent promise fields remain absent until a real answer binds.
views without strategy changes or calibration.
This is bounded reachability, not complete arbitrary Truthtrance enforcement.
Other owned preparation families (including Box recovery and native relocation
preparation), earlier timing, optional/Advanced profiles and comprehensive
Other owned preparation families (including native relocation preparation),
earlier timing, optional/Advanced profiles and comprehensive
combination/recovery/privacy/custody acceptance remain due.
## Source programmes and current verification
## Owned Box and Kulon preparation — 24 October 2026
The same bare Basic predicate now considers a held native CHOAM Kulon and an
owned Nullentropy Box with its printed **two uncommitted spice** fee. Box
authority and the existing provisional atomic full-hand exchange are unchanged;
see [the Box source contract](NULLENTROPY_BOX_ENGINE_AUDIT.md). This extends
bounded owned reachability, not the supported mode/timing profile.
Before payment, only a relevant physical card known still to be in the discard
may supply a Box witness. Public disposals teach all actual seats; private
disposals teach their former holder. Hajr, canonical Ornithopter and Kulon are
the only remembered faces needed here. A private Box choice or mixed Semuta
claim invalidates other seats' certainty of those candidates' **current
location**; its entitled inspector knows the remaining faces. Rebuilding the
deck removes current-discard certainty. This bookkeeping does not erase anyone's
historical memory, reveal discard names/counts before payment or retroactively
inspect unconfirmed old piles. Unknown/private preparation possibilities outside
that provable knowledge remain unfinished. The metadata is server-only; the
ordinary owner sees only the next legal action.
After actual payment, the original private search still shows every eligible
card, retains its event and charges once. A live Yes supplies a compliant
movement-card selection in the persistent promise control. A selection that
would destroy the last route rejects **before** the real shuffle and leaves the
paid decision available; its fee is neither repeated nor refunded. No-only
promises keep the ordinary paid choice and do not offer End movement until that
choice finishes. Minimal policies use the same guided paid selection rather
than repeatedly choosing an incompatible high-value card.
Speculation uses detached copies and deterministic pile order; it never pays,
shuffles or samples the live game. Actual Box settlement retains its one server
shuffle, physical exchange and native discard continuation. Held Kulon uses its
original native legality/cost/bonus; actual counters keep it held and blocked
when canceled. Opposing loss can release an impossible answer, while voluntary
spending cannot remove the only remaining fee-funded route. Broader preparation
through native relocation, counter mitigation, earlier timing and optional or
Advanced rules remains unfinished.
### Current preparation evidence
`tests/fixture-truth-movement-box.ts` selects one original unopened Guild
Truthtrance deal, then uses actual public Basic Richese/Emperor/Guild setup,
Box1/Hajr1 purchases, three-force desert shipment6 and real Hajr plus two
one-force moves. Its44-action source leaves the original Hajr in discard, held
Box and exactly two owned spice. The actual definite Truthtrance answer adds
the second paid-search candidate. Yes recovers that same Hajr and makes the
third move; No uses the original ordinary paid-selection control. Native
CHOAM source25 stops before actual Kulon, then the question, held Kulon and
city-enabled route4 execute normally. Only unopened positions and native scalar
lotteries are selected; no dealt hand, wallet, force, clock or receipt is installed.
Separate full-hand, unknown legacy certainty, opposing fee-loss and acquired
Karama-counter tests explicitly stage conserved original outcomes.
The current seventeen-file union passes **231/231**, types/lint and production
build. Three actual-control/GameTable-rendering programmes retain full paid
inspection, original event, single fee, rejected selection and busy no-submit.
Four existing profiles make40 accepted paid-selection/Hajr/move/end/neutral-pass
actions and finish legally without strategy refinement. Two older Box/Auditor
fixtures failed identically on the previous engine and now acknowledge the
actual battle result; a test-only const lint issue was repaired. Bounded review
checked printed search entitlement, full-hand policy, original paid continuation,
primitive disposal knowledge, memoized preparation state and paid-choice priority.
Frozen base `edbcbe28de2128c1b59ab7b17bdf7328bddc7416`, tree
`fd900a863da9cbc9826c22ca7627c26123d1cad04915d059735cb32471c7ba00`,
2636 files. Private logs, original-state control HTML and receipts:
`/home/quintine/.local/share/dune/checkpoints/20261024-movement-card-preparation/`,
`frozen-integrated-3/report.json`. Only final checkpoint/reference prose overlays
follow that proof. Framework aliases/CSS stubbing establish server rendering,
not browser/visual/deployed acceptance. Other timing/preparations/counter
mitigation, unknown private possibilities, optional/Advanced, full modes and
comprehensive assurance remain open. No saved-room/D1/reset/restart/deployment.
## Preceding movement checkpoint
`tests/fixture-truth-movement.ts` uses genuine public Basic Atreides/Emperor
setup, original33-card inventory and actual dealt Truthtrance/Hajr. Only unopened
@@ -81,7 +155,7 @@ Separate multiple-question and impossibility edges explicitly stage a conserved
second original Truthtrance acquisition and conserved force-loss outcomes. They
are not natural second-purchase or native Atomics/Terror source evidence.
The seventeen-file affected union passes **218/218**, with types/lint and the
The preceding seventeen-file affected union passed **218/218**, with types/lint and the
production build passing. Seven actual gameplay/control/table-rendering
programmes cover direct Yes, later Hajr Yes, No surviving Hajr, both actual
Ornithopter groups, its range-three option and native current-Kulon route4.