150 lines
9.1 KiB
Markdown
150 lines
9.1 KiB
Markdown
# Truthtrance combined shipment and physical movement
|
|
|
|
## Native travel prototype — 26 October 2026
|
|
|
|
**Prototyped / Partial.** The question is `{kind:'travel',target,turn,mixed}`.
|
|
Travel action leaves are `{kind:'ship'|'move',territory,minimum}` inside the shared
|
|
fact/action/AND/OR tree. Current facts are optional; at least one action remains
|
|
required. Every original subtree is validated under sixteen logical leaves and
|
|
four grouping levels. Old mixed families still require a fact by default.
|
|
|
|
## Authority and interval
|
|
|
|
Reuse publisher November2020 FAQp8 game-related yes/no/current-turn/AND/OR and
|
|
shipment example, plus supplied Advanced physical39/printed37 compliance,
|
|
impossibility and unknown authority. No dedicated printed cross-action planner
|
|
is claimed. The existing native owned-action witness interpretation is a
|
|
provisional online implementation choice under the standing14October priority.
|
|
|
|
This first cross-action envelope is the current phase5 native active or unused
|
|
waiting turn accepted by the existing movement target rules. Printed factions
|
|
and selected native expansion decks use that existing scope; optional modules
|
|
retain their separate limits. Earlier phases and arbitrary future card/power/
|
|
other-action expressions remain unfinished. Parser rejection is a software
|
|
boundary, not a printed rule that those questions cannot be asked.
|
|
|
|
Shipment leaves concern the one future original reserve-shipment event after
|
|
the answer. A shipment already used before answering is false for those future
|
|
leaves. Cross-planet/return transport consumes that original opportunity without
|
|
becoming a reserve shipment. A skipped or stopped shipment records absence.
|
|
Arrival, original fees, physical reserves and native responses remain unchanged.
|
|
|
|
Movement leaves concern one future actual ordinary physical ground group to a
|
|
named destination. The largest group per destination is retained, not a sum of
|
|
smaller moves. Original Hajr/Ornithopter and owned preparations may supply more
|
|
moves through the existing planner; no entitlement is added. Ambassador moves,
|
|
markers and shipments do not contribute movement progress. A shipment may
|
|
prepare a later movement while satisfying only its own shipment conditions.
|
|
|
|
## One whole answer and native feasibility
|
|
|
|
Current facts freeze at the actual answer. Unknown is false for a definite Yes
|
|
and true for No, retaining the earlier guaranteed-aggregate interpretation.
|
|
Unknown-fact correlations are not inferred. No negates the whole tree, not each
|
|
leaf. A true current fact OR action, or false current fact AND action, can make
|
|
the selected answer terminal without a future commitment.
|
|
|
|
`game/travel-expression-promises.ts` lazily reduces the whole compiled answer
|
|
to signed branches, folding actual progress and closed opportunities. Every
|
|
shipment leaf shares one event. Native min/cap contradictions are pruned;
|
|
alternatives remain available rather than binding one route. Private detached
|
|
witnesses translate a branch into existing shipment and movement constraints,
|
|
then call the original ground-movement completion search. The real ledgers never
|
|
receive that selected branch. Quotes retain original force types, wallets,
|
|
movement allowance, routes, owned card preparation and prior native promises.
|
|
|
|
Actual shipment/ground hooks record receipts; a qualifying whole Yes fulfills
|
|
immediately. Whole No remains binding through the respondent's actual turn end.
|
|
Ending cannot erase a required action. Spending or consuming the last owned
|
|
route is rejected. An opposing completed effect can release a now-impossible
|
|
answer; interrupted responses retain original priority.
|
|
|
|
At the first combined answer, the private order records existing shipment rows
|
|
and the native within-movement sequence before the new row. Subsequent real
|
|
scalar, whole/mixed movement, shipment and travel answers append their native
|
|
ledger index. Joint feasibility reconciles prefixes in that accepted order;
|
|
no virtual branch is made permanent. Historical ordering between different
|
|
native families before this cutover is not reconstructed. Wider cross-family
|
|
revival/payment/alliance/battle composition remains outside this first envelope.
|
|
|
|
### Guild-allied Fremen reserve transport follow-up
|
|
|
|
Bounded read-only review found the joint movement preparation search enumerated
|
|
ordinary `ship` but omitted native Fremen `guildShip` from southern reserves.
|
|
The native generator now retains that distinct reciprocal-Guild-ally variant;
|
|
the witness uses the original Guild tariff and funding split, then dispatches
|
|
the actual transport validator. It never substitutes Fremen's free ordinary
|
|
reinforcement price. The exact private guide/control also accepts that packet.
|
|
Three controlled conserved native cases isolate real transport, subsequent
|
|
physical movement, pledged Guild funding, later scalar compatibility and
|
|
insufficient funds. They claim no historical setup/alliance acquisition. Native
|
|
enumeration and exact guide packet checks also cover that variant. The complete
|
|
v4 batch passes after this correction; the earlier v3 proof predates it.
|
|
|
|
## Connected controls and minimal policies
|
|
|
|
The shared full editor switches ship/move leaves, destination and minimum,
|
|
adds/wraps/nests/removes/collapses groups, and optionally includes current facts.
|
|
It reads public vocabulary only. Original raw preview/Ask, private whole-answer
|
|
choices and persistent own aggregate history connect through the existing
|
|
Truthtrance window. Raw own rows omit compiled/frozen values and route choices.
|
|
|
|
One private exact guide offers the next native action, with original selection
|
|
and costs available for review. Identity, actor, turn, phase, event, busy and
|
|
native modal guards prevent stale dispatch. Ordinary manual legal alternatives
|
|
remain available. Four minimal profiles answer and consume that same guide;
|
|
strategic refinement/calibration remain deferred.
|
|
|
|
## Evidence and remaining gates
|
|
|
|
Helpers: `tests/travel-expression-promises.test.ts`,
|
|
`tests/mixed-action-question.test.ts`. Source/runtime:
|
|
`tests/fixture-truth-travel.ts`, `tests/truth-travel-runtime.test.ts`.
|
|
A separate actual Harkonnen two-card opening supplies both original Truths for
|
|
`tests/fixture-truth-travel-order.ts` and `tests/truth-travel-order.test.ts`;
|
|
its acceptance-order journeys install no extra card or ledger.
|
|
Controls: `tests/truth-travel-controls.test.tsx`.
|
|
Frozen v4 passes **24 files,237/237**, types/lint/build and six original runtime
|
|
paths,21 GameTable SSR renders, six actual answer callbacks/six guide callbacks
|
|
and one editor callback followed by native Ask. Active19 adds7 for paid shipment2
|
|
and a distinct actual move/own end. Edited OR19 adds6 for manual movement without
|
|
shipping. Both No-to-AND routes19 add6 and complete only at own end. Frozen Hajr/
|
|
spice facts19 add10 for actual bribe3, shipment2, nonmatching move, physical Hajr
|
|
and required second move. Waiting19 adds8 while preserving the original other
|
|
owner's turn before the respondent's actual ship/move. Four minimal profiles
|
|
actually answer and perform the same native guide. All33 original cards remain.
|
|
|
|
Ten helper, nine controls and18 native cases supplement existing shipment,
|
|
movement and funding coverage. Nine original two-Truth cases use genuine Harkonnen
|
|
opening custody and27 native actions (bidding20 plus continuation7), covering both
|
|
orders across scalar shipment, scalar movement and whole movement, compatible
|
|
whole No and conflicting second-answer rejection while retaining earlier records.
|
|
No opposing native release journey is claimed from those sources.
|
|
|
|
Focused feedback repairs the native shipment event projection, a bot actor lookup
|
|
and test assumptions about undrawn cards and redundant valid branches. Frozen
|
|
v1 catches JSX composition; v2 catches generic array narrowing. Those are repaired
|
|
before the passing v3. Bounded read-only review then identifies the missing
|
|
Guild-allied Fremen preparation route described above; native generator, exact
|
|
Guild price and guide repairs precede the complete passing v4. Extra evidence:
|
|
`tests/movement-shipment-preparation.test.ts` and
|
|
`tests/truth-travel-guild-fremen.test.ts`. Proof and per-file manifest:
|
|
`/home/quintine/.local/share/dune/checkpoints/20261026-truth-travel-proof-v4/`;
|
|
journeys/HTML: adjacent `20261026-truth-travel-runtime/`.
|
|
Evidence is local native engine/SSR/actual callbacks, not DOM, hydration, browser,
|
|
mobile or deployed acceptance, and certifies no complete mode.
|
|
|
|
The original Basic base33 source retains its actual selected unopened deal,
|
|
Storm/Spice/Charity/Bidding/Revival prefix. Active selects the recorded prefix
|
|
immediately before the paid shipment; waiting retains the current owner and
|
|
original movement queue. Only one Truthtrance is actually dealt in that source;
|
|
the other original physical copy remains undrawn. No extra hand, wallet, force,
|
|
clock, promise, answer or event is installed. Controlled helper/view cases are
|
|
not represented as historical acquisition evidence.
|
|
|
|
Earlier phases, other cross-action families, unknown-fact correlations, native
|
|
optional-module/expansion/owned-preparation compositions and full rules/recovery/
|
|
privacy/custody/browser/mobile/deployed acceptance remain required. No complete
|
|
mode is certified. No database, saved-game, server, reset, restart or deployment
|
|
operation belongs to this prototype batch.
|