Connect compound Truthtrance shipment promises

Shipment-only AND/OR questions now evaluate one eventual reserve shipment or skip as a whole. Yes to AND requires every leaf, Yes to OR requires one, and No negates the complete expression. Separate answered questions remain jointly binding. The completion search considers all destination branches and owned preparation paths. Release and fulfillment apply once to the aggregate promise, and legacy flat records retain their shape.

The two-condition browser builder, grouped question/history and respondent guidance, all four AI answer policies and saved continuation are connected. Nested expressions have explicit software size limits. Existing active-unused-shipment, Basic/no-Guild Advanced and module gates remain; mixed present/future predicates and unresolved rule questions are unchanged. Independent source, privacy and persistence review found no blocker.

Types, lint, 4815 offline tests, build and 43 HTTP tests pass with stable source. The first typecheck caught an omitted flat-only guidance consumer and a legacy test requiring type narrowing; grouped guidance and an actual promised-state regression fix them. SQLite Basic/Advanced tests verify private reauthentication, second-OR-branch fulfillment, zero-write rejected actions, legal No skip and duplicate CAS with one result.

Two fixed genuine Basic/Advanced mixed-profile games complete in 1534 accepted actions, 41 periodic private JSON restores and 0 rejected candidates. Each uses one scenario-directed compound question from an actual held Truthtrance at a real legal opportunity; AI supplies all responses and other actions. Exact card, force, typed-elite and post-setup traitor custody are checked. Initial private harness runs needed correct immutable setup configuration and full-game auction/Fedaykin inventory accounting; original failed traces remain private, and the final same-seed runs pass. The full sample tree is reconstructed exactly by replacing only the three later UI/test edits; all 219 game source files match the samples. No game logic changed after those runs.

Browser QA used genuine base initialization before conserved turn-two staging. The human asked twenty to Carthag OR four to Arrakeen; the AI answered Yes and shipped four to the second destination. Public grouped history survived refresh. All 6 accepted actions replay exactly, with one discarded Truthtrance, one fulfilled aggregate promise, private JSON views and original seat custody intact. This remains bounded prototype evidence, not complete Truthtrance or mode certification.

All 1004 opening games and original seat/recovery records are preserved (1038 rooms after checks), including all 1005 rooms present immediately before checks. SQLite integrity and foreign-key checks pass. The healthy server was reused without restart, reset or recurring automation.

Verified source tree: 1b24372fbe34e24db56e8f095c25744eeefb27581f2bc6cced2fb752f5bdcb94
This commit is contained in:
Quintine committed 2026-09-14 05:43:00 +10:00
1 parent cb691e1b14
commit 9f4de647ce
19 files changed
+1306 -117

No files matched your search

+68
View File
@@ -0,0 +1,68 @@
# Truthtrance: compound shipment promises
14 September 2026. This extends the [reserve-shipment prototype](TRUTHTRANCE_SHIPMENT_PROMISES.md)
with shipment-only AND/OR questions. Public mode and publication gates remain
unchanged.
## Meaning and authority
The [GF9 November 2020 FAQ, printed page 8](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf)
permits AND/OR questions and binds definite answers while compliance remains
possible. Each condition here describes the same eventual reserve shipment in
the active opportunity, using a destination and minimum physical force count.
This does not promise two shipments or combine present facts with future actions.
AND is true only if every condition matches. OR is true if any condition matches.
A No answer negates the whole expression: No to AND requires at least one false
condition; No to OR requires every condition to be false. Skipping shipment makes
all these positive shipment conditions false. Separately answered questions must
all be honored together.
For example, Yes to “at least six to Carthag OR at least four to Arrakeen” permits
either branch. No to that same question permits fewer than six to Carthag, fewer
than four to Arrakeen, another destination or no shipment. AND with two different
destinations cannot be fulfilled by a single shipment, so Yes is unavailable.
## Connected prototype
The question form adds a second destination/count condition and an AND/OR choice.
The shared engine expression supports grouping within software limits of sixteen leaves and four nested groups; the first visual builder exposes two conditions. Existing flat questions
and saved promises retain their meaning. Public question/history text preserves
grouping, while answer feasibility and suggested preparations stay private to
the respondent.
The completion search considers every relevant destination, physical count and
legal sector, with the same controlled preparations and funding as single
promises. It evaluates the entire expression and all earlier promises together.
Actual shipment, skipping, voluntary spending and opposing-effect release use
the same evaluator. A fulfilled promise records the shipment event and survives
later movement or casualties.
All four AI profiles rank the projected feasible answers using only public
destination value and their own reserves. Strategic preference never determines
whether an answer is possible. The existing complete continuation remains the
fallback when a strategic shipment shortlist misses a legal route.
## Evidence and remaining scope
Focused engine, controls, AI and authenticated SQLite cases cover whole-expression
truth, alternative destinations, old saves, joint commitments, custody, private
restoration and duplicate actions. Final results and source fingerprints belong
to the private checkpoint report and Git message.
The isolated browser used genuine base setup before conserved turn-two staging.
The human asked “twenty to Carthag OR four to Arrakeen.” The respondent's legal
AI policy answered Yes, and the public grouped question/answer survived refresh.
Its next AI action shipped four to Arrakeen, spent four spice and fulfilled the
aggregate promise once. All six accepted actions replayed exactly; all private
views, card/force custody and the original seat row were preserved. This is a
targeted browser scenario, not a complete human game.
The existing active-unused-shipment scope remains: base Basic, and supported
base Advanced games without Guild or optional modules. Earlier timing, mixed
fact/future predicates, expansion shipment combinations and arbitrary prose
remain unfinished. This prototype does not settle pending material rulings or
certify complete Truthtrance.
The opening backup preserves 1,004 local rooms and their seat/recovery records.
Reuse the healthy server and keep all subsequent games.
+12 -13
View File
@@ -6,13 +6,14 @@ gated.** Prototypes do not open completion or publication gates.
## Current checkpoint and work
Latest verified checkpoint: `0450156`, [Harass & Withdraw](HARASS_WITHDRAW_RUNTIME.md).
Types, lint, **4,776 offline tests**, build and **43 HTTP tests** passed.
Eight fixed Basic/Advanced six-seat samples finished in 9,956 actions with no
rejected candidates, three Harass withdrawals and 266 periodic save/restore
checks. Browser controls, private restoration and the final engine replay passed.
All 937 games present before verification and their original seat/recovery
records were preserved, with 970 rooms after HTTP checks.
Latest verified checkpoint: `cb691e1`, [Sapho Battle-phase order](SAPHO_BATTLE_ORDER.md).
Types, lint, **4,792 offline tests**, build and **43 HTTP tests** passed.
Six fixed genuine Basic/Advanced faction samples finished in 3,672 accepted actions
with 97 periodic save/restore checks. They retained 82 rejected candidates at
existing guarded arrival combinations and completed through legal fallbacks.
Browser battle ordering, tie preservation and private refresh/replay passed.
All 970 opening games and their original seat/recovery records were preserved,
with 1,004 rooms after checks.
Earlier evidence remains in the [implementation history](IMPLEMENTATION_STATUS.md).
The connected [Harass & Withdraw prototype](HARASS_WITHDRAW_RUNTIME.md) supports either
@@ -30,12 +31,10 @@ and foreign-key checks passed, and refresh restored the test seat. No restart,
database reset or recurring automation was needed. Exact verification, source
fingerprints and delivery are recorded in the private report and Git message.
Current work: [Sapho Battle-phase order](SAPHO_BATTLE_ORDER.md) connects first/last
remaining battle choices without rewriting storm order or tie roles. The browser completed a reordered
battle and restored its next choice; independent review and an actual Basic/Advanced
Face Dance continuation passed. Reinforcements
remains disabled while its reserve-cost question is pending; see the
[latest source review](ECAZ_TREACHERY_RULES.md#14-september-reinforcements-cost-review).
Current work: [compound shipment promises](COMPOUND_SHIPMENT_PROMISES.md) connects
shipment-only AND/OR questions, whole-expression enforcement, usable controls,
legal AI answers and saved continuation. Reinforcements and the other recorded
material rule questions remain pending.
## Authoritative navigation
+10
View File
@@ -1,5 +1,15 @@
# Dune implementation status
## 14 September 2026 — Compound shipment promises
[Shipment-only AND/OR](COMPOUND_SHIPMENT_PROMISES.md) extends the existing Truthtrance
shipment question with whole-expression truth, complete destination search,
controls and private AI answers. Earlier separate promises remain jointly binding,
and legacy flat records retain their meaning. The existing timing/module gates
and unresolved material questions stay in place. Source-bound final checks,
browser continuation, private preservation and verified Git delivery are recorded
in the checkpoint report and commit message. The opening baseline is 1,004 rooms.
## 14 September 2026 — Sapho remaining battle-choice order
[The Sapho battle-order prototype](SAPHO_BATTLE_ORDER.md) adds first/last remaining
+6
View File
@@ -37,6 +37,12 @@ Updated 14 September 2026. This is the authoritative navigation index for existi
| Homeworld custody and mobility | Physical home/visitor groups, population thresholds, tariffs and transport permissions retain distinct sources; Homeworld immunity is not universal immunity. | [Homeworld rules](HOMEWORLD_RULES.md), [benefits](HOMEWORLD_BENEFITS_RULES.md), [mobility](HOMEWORLD_MOBILITY_RULES.md), [invasion](HOMEWORLD_INVASION_RULES.md), [Guild transport](GUILD_HOMEWORLD_TRANSPORT_RULES.md) |
| Homeworld effects | Keep original payment/revival/placement identities and qualification observations; observations alone do not choose an occupied-benefit owner. | [Payments](HOMEWORLD_PAYMENT_INCOME_RULES.md), [card economy](HOMEWORLD_CARD_ECONOMY_RULES.md), [Collection](HOMEWORLD_COLLECTION_RULES.md), [revival deployment](HOMEWORLD_REVIVAL_DEPLOYMENT_RULES.md), [victory reinforcement](HOMEWORLD_VICTORY_REINFORCEMENT_RULES.md), [replacement](HOMEWORLD_REPLACEMENT_RULES.md), [Tupile](HOMEWORLD_TUPILE_INTELLIGENCE_RULES.md) |
Shipment-only AND/OR now follows the FAQ's whole-question truth: Yes to AND
requires all conditions, Yes to OR requires one, and No negates the whole
expression. One eventual shipment or skip is evaluated against every separate
promise. See [compound shipment promises](COMPOUND_SHIPMENT_PROMISES.md); mixed
present/future predicates and existing timing/module gates remain unfinished.
## Pending interpretations: preserve existing questions
These are unresolved in the cited records. Do not infer an answer from elapsed time, a fixture, a related card or this index. Check subsequent recorded user/source decisions before proceeding; do not send duplicate questions.
+1 -1
View File
@@ -1,6 +1,6 @@
# Truthtrance reserve-shipment promises
Original checkpoint, 7 September 2026; Advanced follow-up, 13 September 2026. This implements a bounded reserve-shipment future-action predicate. It does not certify complete Truthtrance, Advanced play or expansion interactions, and opens no new mode gate.
Original checkpoint, 7 September 2026; Advanced follow-up, 13 September 2026. The [14 September compound follow-up](COMPOUND_SHIPMENT_PROMISES.md) adds shipment-only AND/OR while retaining the boundaries below. This implements a bounded reserve-shipment future-action predicate. It does not certify complete Truthtrance, Advanced play or expansion interactions, and opens no new mode gate.
## Authority and supported meaning