Prototype Jacurutu income, Testing Station and Shrine effects
Connect automatic unambiguous Jacurutu physical-force income, a sole-occupant Testing Station storm choice and Shrine reciprocal physical card roles to engine actions, player controls, legal AI and saved continuation. Preserve Weather Control exclusion, exact card/force custody, private hand boundaries and committed effects after restart. Shared role checks cover existing ordinary and special Karama paths; reserved cards cannot enter another pending use. Keep Orgiz, mixed-force Jacurutu allocation and contested Cistern/Testing Station benefits explicitly pending. These are bounded prototypes; complete Discovery/Advanced/expansion and publication gates remain closed. Validation: types, lint and 4,345 offline tests passed (32 added), production build passed, and 40 HTTP tests passed. Independent cross-reviews repaired reserved-card deadlock, physical-card selection, alternate-role permission, storm source/token binding and public-entitlement bot ordering. The first broad run found five failures; focused repairs preceded the stable repeated check. Browser A5EJQ2W4 used genuine Discovery setup/reveal/free entry with targeted QA positioning. A human increased storm movement from two to three sectors, moving sector 6 to 9. Refresh restored station forces and the private Snooper. This was targeted control/recovery evidence, not an unmodified full game. All 187 opening saved rooms remained unchanged; 31 QA/HTTP rooms were added (218 total). Reused the running server; no restart or save reset. Source-bound report: /home/quintine/.local/share/dune/checkpoints/20260913-discovery-location-effects/verification-final/report.json Source fingerprint: beecb85ab7ec39319115389c115434d161591e8549802c542a6343a0fc19bea6 Durations: check 140540ms; build 6741ms; integration 24956ms. Aggregate goal counter 63,116,444 to 64,295,091 at final verification: 1,178,647 tokens before final Git/push overhead for three bounded functions. Standing authorization: Push all from now on.
This commit is contained in:
1 parent
ab0ab52849
commit
f0d3d9c464
31 files changed
+2524
-138
No files matched your search
+16
-15
@@ -4,17 +4,18 @@ Updated 13 September 2026. This is the short navigation dashboard; detailed evid
|
||||
|
||||
## Evidence and source of truth
|
||||
|
||||
- The current [Discovery prototype](DISCOVERY_PROTOTYPE.md) adds
|
||||
signed next-turn entry, sole-occupant Cistern income and later-turn carried
|
||||
Ornithopter movement to the first batch. Focused lifecycle, engine, recovery,
|
||||
private control and AI paths are present. Targeted browser room `CA782FQE`
|
||||
verified partial free entry and a later range-three token move from a genuine
|
||||
Discovery setup after QA state positioning; it was not an unmodified full-game
|
||||
journey. Refresh and a subsequent power-outage restart restored its forces,
|
||||
private hand, spice and spent token; all 157 saved rooms survived unchanged.
|
||||
Required broad results are recorded in the checkpoint commit. Four location abilities
|
||||
remain unavailable, and contested Cistern and Orgiz collection interpretations
|
||||
remain unresolved. This is still **Prototyped**, not complete-module verification.
|
||||
- The current [Discovery prototype](DISCOVERY_PROTOTYPE.md) adds unambiguous
|
||||
Jacurutu battle income, sole-occupant Ecological Testing Station adjustment and
|
||||
Shrine card conversion. They connect engine effects, private controls, legal
|
||||
AI and saved continuation. Orgiz, mixed-force Jacurutu payouts and contested
|
||||
Cistern/Testing Station benefits remain pending. Required broad checkpoint
|
||||
results are recorded in the commit; this is **Prototyped**, not full compliance.
|
||||
- Discovery checkpoint `ab0ab52` added signed next-turn entry, sole-occupant
|
||||
Cistern income and later-turn carried Ornithopter movement. It passed **4,313
|
||||
offline tests**, build and **40 HTTP tests**, preserving all 156 opening rooms
|
||||
(187 after QA/checks). Browser room `CA782FQE` exercised free entry and carried
|
||||
flight; refresh and recovery from a user-confirmed power outage retained the
|
||||
private hand, forces, spice and spent token. Those were targeted scenarios.
|
||||
- [First Discovery prototype](DISCOVERY_PROTOTYPE.md): genuine base-faction
|
||||
Basic/Advanced setup, seven Spice Cards, eight tokens, Great Maker, Collection
|
||||
inspection/rewards and revealed nested locations are connected. Checkpoint
|
||||
@@ -54,7 +55,7 @@ restoration after necessary restarts. No recurring automation is installed.
|
||||
| --- | --- | --- |
|
||||
| Basic core | Playable loop; shared setup, Fremen movement cancellation, structured Truthtrance facts and bounded Basic/no-Guild Advanced reserve-shipment promises. | Ordinary Guild rate/transport cancellation; wider truthful questions/action commitments; integrated rules and human/AI acceptance. |
|
||||
| Six-faction Advanced | Genuine offline setup across 456 configurations; four-profile full-game simulations and JSON continuations. | Base gaps plus provisional special-Karama outcomes, remaining timing audits and authentic multiplayer/browser acceptance. Public starts remain disabled. |
|
||||
| Twelve factions and optional modules | Many bounded faction, card, Homeworld and Nexus slices have controls, bots and recovery evidence; Discovery now includes free location entry, sole-occupant Cistern income and later-turn carried Ornithopter movement. | Every unfinished effect and interaction, occupation entitlement, four remaining Discovery location abilities, contested collection rulings and complete combined games. Inventory or fixture coverage does not enable a module. |
|
||||
| Twelve factions and optional modules | Many bounded faction, card, Homeworld and Nexus slices have controls, bots and recovery evidence; Discovery includes free entry, Cistern, carried flight and bounded Jacurutu, Testing Station and Shrine effects. | Every unfinished effect and interaction, occupation entitlement, Orgiz, mixed physical dial allocation and contested Discovery benefits and complete combined games. Inventory or fixture coverage does not enable a module. |
|
||||
| AI difficulty | Four profiles consume private legal views; recorded Basic and Advanced studies complete. | Demonstrate a consistent Medium → Hard → Brutal strength ordering, improve strategic gaps, and repeat targeted studies after relevant policy/rule changes. |
|
||||
| Multiplayer | Versioned writes, saved seats, owner recovery kits, uncertain-request retry and voluntary own-seat AI control. | Intentional transfer, unprepared abandoned-seat recovery, unattended continuation and remaining network-failure acceptance. Preserve privacy and existing games. |
|
||||
| Player experience | Internal component inspectors and many desktop/phone feature journeys verified. | Complete end-to-end games, accessible controls, responsive layout, clear rules/errors and recovery across all supported combinations. |
|
||||
@@ -75,9 +76,9 @@ now connects the [sourced components](DISCOVERY_COMPONENTS.md) to Great Maker,
|
||||
destructive Discovery blows, private inspection/reveal, stash rewards, carried
|
||||
Ornithopter custody and later-turn movement, five revealed nested locations,
|
||||
signed free entry on the following turn and sole-occupant Cistern income. Only
|
||||
Jacurutu counts toward stronghold victory. Next dependencies are Jacurutu battle
|
||||
income, Ecological Testing Station, Shrine and Orgiz, plus unresolved contested
|
||||
Cistern and collected-spice-blow interpretations. Complete variant acceptance
|
||||
Jacurutu counts toward stronghold victory. Jacurutu income, Testing Station and Shrine now have bounded connected
|
||||
prototypes. Next dependencies are Orgiz and the unresolved contested benefits,
|
||||
physical dial allocation and collected-spice-blow interpretations. Complete variant acceptance
|
||||
and normal public starts remain gated.
|
||||
|
||||
The user changed the development order on 13 September: get working prototypes
|
||||
|
||||
+63
-11
@@ -1,6 +1,6 @@
|
||||
# Discovery functional prototype
|
||||
|
||||
13 September 2026. The first connected Discovery batch is **Prototyped**, with
|
||||
13 September 2026. The connected Discovery batches are **Prototyped**, with
|
||||
partial rules coverage. It connects physical components, real actions, private
|
||||
controls, AI choices and saved continuation. Normal public Discovery and
|
||||
Advanced start gates, and the publication gate, remain closed.
|
||||
@@ -73,7 +73,23 @@ to redeal a started game. The default `ix` profile remains available.
|
||||
factions occupy Cistern, the unresolved benefit is withheld without blocking
|
||||
Collection; this boundary does not decide which occupant should receive it.
|
||||
|
||||
Great Maker vote/ride, Discovery token/discard, next-turn entry and carried
|
||||
- **Jacurutu:** winning a battle here automatically grants one bank spice per
|
||||
opposing undialed physical force sent to the Tanks. Winner casualties and
|
||||
pre-existing Tanks do not count. Ordinary and unambiguous Advanced plans are
|
||||
playable. Mixed normal/elite plans with different possible physical counts
|
||||
leave an explicit unpaid gap pending the allocation ruling below.
|
||||
- **Ecological Testing Station:** a sole non-advisor occupant receives an owned
|
||||
decrease/keep/increase choice after the ordinary storm-card window closes,
|
||||
before traversal and CHOAM/Fremen protection. The original natural dial/card
|
||||
source, turn, physical station and chosen distance remain bound through saved
|
||||
protection and typed loss continuations. Weather Control bypasses the station.
|
||||
- **Shrine:** current non-advisor occupation of the publicly revealed location
|
||||
authorizes Truthtrance as Karama or Karama as Truthtrance in the existing effect
|
||||
paths. Cards retain their physical identity and custody. A committed converted
|
||||
Truthtrance retains its use receipt through departure, answering and discard.
|
||||
This does not implement missing special powers or resolve their pending rules.
|
||||
|
||||
Great Maker vote/ride, Discovery token/discard, next-turn entry, station and carried
|
||||
Ornithopter controls use the same private legal choices as the four AI profiles.
|
||||
Token backs expose only permitted information; authorized faces have readable
|
||||
explanations of all eight effects. Busy and autopilot states disable human
|
||||
@@ -109,6 +125,25 @@ settle whether a stacked board deposit represents one or several collected
|
||||
spice blows; contested occupancy and unresolved Ecaz shared collection add
|
||||
further unanswered cases.
|
||||
|
||||
The Testing Station's two-occupant case leaves ordering and cumulative adjustment
|
||||
unresolved. The prototype opens only the sole-occupant path and continues an
|
||||
ordinary storm without that contested benefit. Choosing after the ordinary
|
||||
storm-card window is an implementation timing interpretation: the printed
|
||||
source specifies the Storm phase and excludes Weather Control, but does not
|
||||
supply a separate station/card priority order. A legacy pending storm without
|
||||
new source metadata keeps its existing movement; a subsequent naturally
|
||||
produced storm can use the station. No source is inferred from display logs.
|
||||
|
||||
Jacurutu's text says opposing **undialed forces**, not a numeric wheel difference.
|
||||
Advanced combat permits different physical allocations: an Emperor with one
|
||||
ordinary force and one Sardaukar, dial two and one paid support, can dial the
|
||||
supported Sardaukar alone or the supported ordinary plus unsupported Sardaukar.
|
||||
Those choices leave one or zero undialed counters. The existing loser resolution
|
||||
has no physical allocation choice. The user question asks whether the defeated
|
||||
player should select those counters; it remains pending. The prototype records
|
||||
the unpaid gap instead of silently choosing a reward. Source: publisher-authored
|
||||
Ecaz & Moritani rulebook p13, with no clarification in its bundled Q&A.
|
||||
|
||||
## Evidence and next dependencies
|
||||
|
||||
Focused suites cover component inventory and private projection
|
||||
@@ -124,7 +159,8 @@ engine, saved interaction and human/AI paths are covered by
|
||||
and disposal are covered by `tests/discovery-flight.test.ts`. They exercise
|
||||
immutable rejections, physical custody, hidden information and JSON restoration.
|
||||
They do not certify a complete module, all combined routes or difficulty strength
|
||||
ordering. Required broad checkpoint checks are pending for this expanded batch.
|
||||
ordering. The free-entry/flight checkpoint `ab0ab52` passed 4,313 offline tests,
|
||||
build and 40 HTTP tests, preserving all 156 opening rooms (187 after checks).
|
||||
|
||||
Browser room `CA782FQE` began through the genuine Discovery setup with one human
|
||||
and two AI seats, then used a targeted QA state to reach the new controls without
|
||||
@@ -158,11 +194,27 @@ The room is paused at acceptance of that blow. No other saved room was changed
|
||||
and no server restart was needed. Required broad verification results and the
|
||||
source-bound report are recorded in the checkpoint commit.
|
||||
|
||||
1. Connect the four remaining special location benefits: Jacurutu battle income,
|
||||
Ecological Testing Station storm adjustment, Shrine card conversion and Orgiz
|
||||
collection transfer. Ordinary Jacurutu victory counting does not implement its
|
||||
battle income; Orgiz awaits the collected-pile ruling above.
|
||||
2. Resolve contested Cistern ownership, then integrate combined modules and
|
||||
complete games before refining or opening gates.
|
||||
3. Run the required broad checkpoint, browser and saved-room verification for
|
||||
this expanded prototype. Focused evidence does not open normal public starts.
|
||||
The location-effects batch adds focused Jacurutu engine/SQLite tests, Testing
|
||||
Station Basic/Advanced producers, Weather exclusion, saved Fremen losses,
|
||||
private controls, all four AI paths and concurrent SQLite choices. Shrine tests
|
||||
cover ordinary/special card substitution, reserved-card rejection, individual
|
||||
physical-card controls and committed JSON/SQLite continuation. Concurrent
|
||||
declarations preserve one exact physical discard and resume the prior effect. Independent
|
||||
reviews check all three effects and required broad results are recorded in the
|
||||
checkpoint commit and its source-bound report.
|
||||
|
||||
Browser room `A5EJQ2W4` began as a fresh three-player lobby through the backed-up
|
||||
Discovery starter, then used real setup, reveal and free-entry actions in a
|
||||
focused QA scenario. Its human Atreides occupant chose to increase an ordinary
|
||||
two-sector storm to three; the storm moved from sector six to nine and proceeded
|
||||
to Spice Blow. Refresh restored the same station forces and private Snooper.
|
||||
This is targeted control/recovery evidence, not an unmodified complete game.
|
||||
The 187 opening saved rooms remain preserved; no server restart was needed.
|
||||
|
||||
1. Resolve Orgiz's collected-blow interpretation, contested Cistern/Testing
|
||||
Station benefits and Jacurutu's mixed physical dial allocation; complete their
|
||||
remaining controls and effects when settled.
|
||||
2. Integrate combined modules and complete games, then refine interaction,
|
||||
strategy and presentation coverage before opening normal start gates.
|
||||
3. Use the existing prototype starter and saved-room verification for further
|
||||
batches. Focused evidence does not establish complete module compliance.
|
||||
@@ -117,3 +117,22 @@ browser room uses genuine setup followed by explicitly targeted scenarios; the
|
||||
156 opening rooms are preserved. Required stable checks and the aggregate endpoint
|
||||
are recorded in the checkpoint commit, without counting these prototypes as
|
||||
complete Discovery rules compliance.
|
||||
|
||||
The next location-effects batch begins at aggregate counter 63,116,444. Two
|
||||
workhorse helpers implement Jacurutu and Shrine, then cross-review Shrine and
|
||||
review the owner's Testing Station. Reuse of the existing prototype starter,
|
||||
card-effect paths and SQLite fixtures connects three bounded functions. Review
|
||||
found a reserved-card Shrine deadlock, incomplete alternate-role permission and
|
||||
missing physical-card selection; these require fixes before broad verification.
|
||||
Station review strengthened restored source and physical-token binding. One
|
||||
focused rendered-control assertion was corrected to distinguish the native
|
||||
`disabled` attribute from the component's `data-disabled` attribute. A fresh
|
||||
browser scenario checks station controls and refresh; all 187 opening rooms
|
||||
remain the preservation baseline. The first broad run reached 4,345 offline tests with five failures: two exposed
|
||||
an unnecessary hand read before public Shrine entitlement, two old overlay
|
||||
fixtures queued nonexistent cards, and one assertion expected older rejection
|
||||
wording. The policy now checks public entitlement first; physical fixtures and
|
||||
wording are corrected without weakening custody validation. Focused regressions
|
||||
pass before the repeated stable broad run. Final aggregate endpoint and stable
|
||||
checks belong in the verified checkpoint commit. Pending rulings and complete-mode
|
||||
gates remain explicit rather than inflating accepted capability counts.
|
||||
@@ -1,5 +1,25 @@
|
||||
# Dune implementation status
|
||||
|
||||
## 13 September 2026 — Discovery location effects prototype
|
||||
|
||||
Adds automatic unambiguous Jacurutu battle income, an owned Testing Station
|
||||
storm adjustment and physical Shrine card substitution through existing Karama
|
||||
and Truthtrance paths. Decisions and committed effects preserve JSON/SQLite
|
||||
continuation, physical custody and private information. Testing Station cannot
|
||||
change Weather Control; Jacurutu counts opposing physical losses, not the wheel
|
||||
alone. See the [prototype scope and rulings](DISCOVERY_PROTOTYPE.md).
|
||||
|
||||
Orgiz, contested Cistern/Testing Station and mixed-force Jacurutu remain pending.
|
||||
Normal module/Advanced starts and publication stay gated. Targeted browser room
|
||||
`A5EJQ2W4` exercises station choice and refresh after real setup/reveal/entry with
|
||||
QA positioning. Independent review and focused regressions cover all three
|
||||
functions; required broad results, source fingerprint and preservation of all
|
||||
187 opening rooms are recorded in the checkpoint commit and private report.
|
||||
|
||||
The preceding `ab0ab52` entry/flight checkpoint passed 4,313 offline tests, build
|
||||
and 40 HTTP tests. Its outage recovery and 156-room opening baseline are historical
|
||||
results; the current batch keeps every game created afterward.
|
||||
|
||||
## 13 September 2026 — First connected Discovery prototype
|
||||
|
||||
Connects genuine base-faction Basic/Advanced audit setup to all seven sourced
|
||||
|
||||
@@ -15,7 +15,7 @@ Updated 13 September 2026. This is the authoritative navigation index for existi
|
||||
| Nexus faction effects | Preserve physical custody, original faction identity and durable effect receipts; use each printed family instead of borrowing another faction's rules by analogy. | [Atreides](NEXUS_ATREIDES_RULES.md), [Harkonnen](NEXUS_HARKONNEN_RULES.md), [BG](NEXUS_BENE_GESSERIT_RULES.md), [Emperor](NEXUS_EMPEROR_RULES.md), [Fremen](NEXUS_FREMEN_RULES.md), [Guild](NEXUS_GUILD_RULES.md) |
|
||||
| Expansion Nexus families | Source audit coverage does not imply every panel is playable; consult later runtime records in the status log. | [Ixian Cunning](NEXUS_IXIAN_CUNNING_RULES.md), [Ixian replacement](NEXUS_IXIAN_REPLACEMENT_RULES.md), [Tleilaxu](NEXUS_TLEILAXU_RULES.md), [CHOAM](NEXUS_CHOAM_RULES.md), [Richese](NEXUS_RICHESE_RULES.md), [Ecaz](NEXUS_ECAZ_RULES.md), [Moritani](NEXUS_MORITANI_RULES.md) |
|
||||
| CHOAM Secret Ally | Absent-faction Collection trade spends one actual Worthless card and the Nexus for two bank spice. It is separate from native Cunning and Auditor; the battle inspection alternative remains missing. | [Prototype contract](NEXUS_CHOAM_SECRET_ALLY.md) |
|
||||
| Discoveries | Preserve seven sourced Spice Cards and eight physical tokens, private faction peeks and Collection choices. Revealed locations are separate territories; only Jacurutu counts toward stronghold victory. Next-turn free entry, sole-occupant Cistern income and later-turn Ornithopter spending are prototyped; four special location effects remain missing. | [Component authority](DISCOVERY_COMPONENTS.md), [prototype boundary](DISCOVERY_PROTOTYPE.md) |
|
||||
| Discoveries | Preserve seven sourced Spice Cards and eight physical tokens, private faction peeks and Collection choices. Revealed locations are separate territories; only Jacurutu counts toward stronghold victory. Next-turn free entry, sole-occupant Cistern income and later-turn Ornithopter spending are prototyped; Jacurutu income, Testing Station and Shrine have bounded prototypes; Orgiz and contested/mixed cases remain pending. | [Component authority](DISCOVERY_COMPONENTS.md), [prototype boundary](DISCOVERY_PROTOTYPE.md) |
|
||||
| Guild Secret Ally | One explicit Guild-priced ordinary shipment; borrowed prices/routes preserve native identity. Free Fremen reinforcement remains a separate choice. | [Route contract](NEXUS_GUILD_SECRET_ALLY_RULES.md), [verified runtime](NEXUS_GUILD_SECRET_ALLY_RUNTIME.md) |
|
||||
| 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) |
|
||||
@@ -32,6 +32,8 @@ These are unresolved in the cited records. Do not infer an answer from elapsed t
|
||||
| Occupied Homeworlds | Entitlement/expiry after departure, replacement or contest; unique powers and shared income. The first-occupier/current-occupier question was already sent. | [Occupation questions](HOMEWORLD_OCCUPATION_RULES.md#questions-the-retrieved-sources-do-not-settle), [lifecycle audit](HOMEWORLD_OCCUPATION_LIFECYCLE_AUDIT.md) |
|
||||
| Nexus responses and composition | Betrayal private-response timing, partial revival/payment choices, Emperor fewer-than-five, fresh advisor/storm cases, Duke restoration and remaining faction-specific combinations. | [Common boundaries](NEXUS_CARD_RULES.md#remaining-source-questions-and-release-boundaries) and the individual faction source/runtime documents above |
|
||||
| Orgiz collection | User question pending: take one spice per positive board pile collected, or leave the effect pending? The publisher does not clarify stacked Spice Blows. The draft quote remains opt-in and is not enabled by the engine. Contested Cistern income also remains outside the ordinary sole-occupant prototype. | [Discovery interpretations](DISCOVERY_PROTOTYPE.md#interpretations-retained-for-refinement) |
|
||||
| Jacurutu physical dial | The user question asks whether the losing player should choose the physical normal/elite forces represented by its dial. When legal Advanced allocations produce different rewards, income remains explicitly unpaid; numeric wheel subtraction is not a ruling. | [Discovery interpretations](DISCOVERY_PROTOTYPE.md#interpretations-retained-for-refinement) |
|
||||
| Testing Station contest/timing | Only sole non-advisor occupation is prototyped. Two-occupant priority/stacking remains unresolved; opening after the ordinary storm-card window is an explicit source-timing inference. Weather Control is excluded by the printed text. | [Discovery interpretations](DISCOVERY_PROTOTYPE.md#interpretations-retained-for-refinement) |
|
||||
| Discovery prototype inferences | Free entry uses storm order and ordinary source-storm restrictions; these are general-rule inferences. Great Maker currently follows ordinary first-turn worm skipping and Sandtrout suppression; an exhausted token type creates no replacement token. These preserve current source interpretation and physical inventory but are not separately confirmed rulings or complete combined-module certification. | [Interpretations for refinement](DISCOVERY_PROTOTYPE.md#interpretations-retained-for-refinement) |
|
||||
| Other Homeworld combinations | Population/force splitting, removal custody, replacement shortages, income accounting and placement ordering remain local to their detailed contracts. | [Homeworld rules](HOMEWORLD_RULES.md), [occupation](HOMEWORLD_OCCUPATION_RULES.md) and the effect documents above |
|
||||
|
||||
|
||||
Reference in new issue
Block a user