Connect mixed No-Field armies to native Occupy battles

This commit is contained in:
Quintine committed 2026-10-16 09:12:57 +11:00
1 parent a58b8bc92c
commit 0dfdeb9578
14 files changed
+778 -43

No files matched your search

+22 -1
View File
@@ -29,7 +29,28 @@ optional skill bands, combinations and public expansion starts remain open.
Rules implementation continues; comprehensive assurance and administration
remain deferred until all rules are implemented.
**Concealed No-Field battle cards — 16 October.** Own Harass privately forecasts
**Mixed ordinary/No-Field native Occupy — 16 October.** The selected Advanced
profile extends the existing explicitly provisional additive pool to allied
and opposing Richese. Original fixed Ecaz strength stays separate. The selected
Ecaz plan now receives its Richese variable-owner mixed warning; prevention
restores only the selected lead's own pool. Both seals still precede actual
reserve-capped revelation/history. No new saved field, Basic mixed-co-side,
public start or optional-module gate opens; the FAQ mixed cap stays unresolved.
Twenty-eight new native cases and the26-file358/358 related union pass, as do
types/lint and build with existing warnings. Four actual390px journeys finish
original CHOAM market into phase7: capped Ecaz lead, funded H/R Richese lead,
opposing zero/ordinary army and actual Karama prevention/redial. First seals
stay concealed; physical losses, original reserve cost and history hold.
Sixteen fresh native programs/all four policies accept80 policy actions through
Collection. Two generated guide topics retain Partial coverage;28/22 evidence
paths and the new source anchor resolve. One fixture's incidental tie was
repaired by a real three-counter commitment, not weakening the winner check.
Owned native-image mount prerequisite fixed, then hosts/tabs/scaffolds removed;
no human game, D1, deployment or new assurance campaign changed.
[Exact provisional pool and scoped proof](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026).
**Preceding concealed No-Field battle-card checkpoint — 16 October.** Own Harass privately forecasts
native reserve-limited ordinary counters at their actual sector, without moving
them before both plans seal. Original reveal/history precedes card effects.
Reinforcements requires three own reserves after projected materialization,
+6 -3
View File
@@ -264,8 +264,9 @@ Actual reveal precedes original reserve cost and successful return. Richese-held
Harass returns only its actual variable ordinary counters; Ecaz-held Harass
returns only its original fixed-pool undialed counters. Neither changes the
original mandatory Ecaz commitment. Reinforcements checks only its card user's
post-reveal reserves, not the allied marker's owner's supply. Marker-only
co-side does not admit same-owner mixed ordinary/marker Occupy.
post-reveal reserves, not the allied marker's owner's supply. The
[selected Advanced mixed-pool extension](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026)
retains that order, physical owners and fixed Ecaz commitment.
Native/pure67 cases, relevant284-case batch and27 actual native-program
cases pass, including all four legal policies. Two natural captured games
@@ -305,7 +306,9 @@ The physical Richese owner reveals once after both seals. Dial prescience and
whole-plan restrictions follow the actual variable-force owner rather than the
original chooser. Preventing Occupy with Ecaz lead makes only Ecaz's own pool
inspectable; the unrelated marker stays concealed until original reveal timing.
Richese's own ordinary-plus-marker dialing and broader disclosure rulings remain.
Richese's ordinary-plus-marker pool now composes under the separate
[explicitly provisional native interpretation](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026).
Broader disclosure and Basic mixed-co-side/module rulings remain separate.
Stone Burner compares **floor(E/2) + native ally physical undialed tokens** for
active Occupy, or the **selected lead's own pool only** after prevention.
+6
View File
@@ -113,6 +113,12 @@ would refill reserves. The same owner may still use Harass alone. Token3/
reserves6 can materialize3, pay original3, then return its undialed counters.
Preview facts are owner-only and add no persisted Game field.
The [Advanced mixed Occupy extension](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026)
also combines original ordinary counters with actual marker materialization.
Selected Ecaz still returns only its own fixed-pool undialed counters; selected
Richese returns only its actual ordinary-plus-revealed variable counters.
Original mandatory Ecaz losses and post-reveal reserve funding do not change.
### Scoped native proof
The34 new genuine-shipment cases pass; the frozen17-file related union
+33
View File
@@ -1,5 +1,38 @@
# Dune implementation status
## 16 October 2026 — Mixed ordinary/No-Field native Occupy
Actual native admission previously rejected both allied and opposing Richese
with one ordinary counter plus marker5/reserves2. Extend the existing explicitly
provisional additive pool into selected Advanced Occupy. Fixed Ecaz commitment,
native payer/support/counter owners, second-seal materialization/history and
post-reveal reserve-cost-before-return stay. Private mixed metadata follows
the selected plan's physical force owner; Ecaz gets the actual Richese variable
pool, while prevention restores only its own army. No new persisted field,
Basic mixed-co-side, optional-module or public start gate is opened.
Twenty-eight new native cases and26-file358/358 pass, with types/lint/build.
Existing module-register/chunk-size/route warnings remain. One opposing
prevention fixture accidentally tied; an actual third supported Ecaz counter
now guarantees its asserted ordinary win and exact three-counter loss. Old
blanket-rejection wording tests are deleted, not re-pinned.
Four actual390px journeys clear original CHOAM market into phase7: capped
Ecaz lead (Richese1/Tanks2, Ecaz2/Tanks3), funded mixed H/R Richese lead
(Richese reserves4/Tanks4, Ecaz2/Tanks3), opposing zero/ordinary Richese
victory (own2 committed losses; combined Ecaz5/Guild4 destroyed), and original
Karama prevention (Ecaz2 losses, all3 real Richese counters stay). All first
seals retain native concealment. No overflow or post-configuration browser/
application errors; the owned harness initially needed the existing native
Vinext image alias/environment, corrected before the actual journeys.
Sixteen fresh native programs/four policies accept80 policy actions through
Collection. Actual guide import resolves28/22 evidence paths and the new anchor;
both topic coverages remain Partial. Owned hosts/tabs/scaffolds removed.
No human game, D1, deployment or broad/HTTP/recovery assurance changed.
Mixed-cap source ambiguity and complete-mode/final acceptance remain open.
[Exact interpretation and scope](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026).
## 16 October 2026 — Concealed No-Field Harass and original reserve funding
Preserve native materialization before effects. Private owner previews forecast
+65 -5
View File
@@ -2,6 +2,65 @@
Audit date: 2026-09-06. This document distinguishes the printed token lifecycle from engine integration and unresolved combinations. It does not certify Richese, Homeworlds, or any other gated game mode.
## Mixed native Occupy pool — 16 October 2026
Standing choose-recommended extends the existing explicitly provisional
ordinary additive pool into the selected Advanced Occupy composition:
`Richese ordinary counters here + min(token value, current Richese reserves)`.
Active coalition total adds the original mandatory `ceil(Ecaz/2)` separately;
only native variable commitment spends support or creates variable losses.
This composes the earlier mixed-pool interpretation with native coalition
arithmetic; it does **not** adjudicate the FAQ's ambiguous mixed reserve cap.
Either Ecaz or Richese may form the active allied plan. The selected plan
actor receives its private mixed variable wheel and explicit provisional
notice, not Ecaz's own ordinary maximum. Richese as opposing army instead
uses only its own additive pool. Visible ordinary counters never disclose
the concealed prospective increment to rivals. Original prescience/full-plan
restrictions remain attached to the physical force owner.
Original Karama prevention preserves the chosen lead but removes the fixed
contribution and all unselected ally strength. Selected Ecaz uses only Ecaz
counters; selected Richese uses its own mixed pool. The original Richese
marker still reveals once after both seals, even when it no longer supplies
the plan. Zero creates no new counters; shortage remains reserve-capped.
Native support, Traitors, original physical losses and token history follow.
Harass/R uses the materialization-first cost contract below, not a new fee
order. No persisted field, new Basic coalition or optional-module gate opens.
### Scoped mixed runtime proof
Before-state actual native admission rejected one ordinary counter plus
marker5/reserves2 for both allied and opposing Richese. Four actual390px
journeys now finish the original CHOAM market into phase7:
- Ecaz lead: one ordinary plus capped2 reveals to3; total5/support2 leaves
Richese1/Tanks2 and Ecaz2/Tanks3. First seal kept the marker/reserves hidden.
- Richese lead: ordinary2 plus marker3, original reserves6, total4/support1,
H/R together; materialize3, spend original3, return4, lose original variable1.
End Richese reserves4/Tanks4, Ecaz2/Tanks3; both actual cards discard once.
- Opposing Richese: ordinary2 plus marker0 retains original reserves2, wins
with its own supported2/real leader, loses only those2 committed counters;
the actual combined Ecaz5/Guild4 side is destroyed and zero history remains.
- Original opposing Karama prevents Ecaz lead. The wheel redials only Ecaz5
with fixed0; total2/support2 loses Ecaz2, leaves all3 actual revealed Richese
counters untouched and consumes the native Karama once.
Each native marker retains its original last-shipped identity. All surfaces
have no overflow, post-configuration browser/application error or stalled
decision. The owned Vite mount initially lacked the native Vinext image alias/
environment; configuring that existing adapter fixed the harness prerequisite,
not product code. Owned host/tabs/scaffolds were removed after proof.
Sixteen fresh native programs accept80 policy actions across Easy/Medium/Hard/
Brutal, active/prevented allied/opposing roles, through original Collection.
This is explicit conserved battle staging after genuine setup/Nexus/shipment,
not unstaged complete-game or new save/deployed acceptance.
The28 new native cases and frozen26-file358/358 related union pass, with
types/lint/build and existing warnings. The two generated guide topics retain
Partial coverage;28/22 evidence paths and this source anchor resolve. One
prevented-opponent fixture needed three real supported Ecaz counters to avoid
an unintended tied precondition; the exact winner/loss assertion remains.
## Concealed battle-card composition — 16 October 2026
Harass now composes with own concealed No-Fields in supported Basic/Advanced
@@ -24,7 +83,8 @@ previously sealed, materialized to0 and stalled on Traitor resolution; the
new first-plan guard rejects that commitment and retains a legal Harass-only
alternative. Other owners' reserves/markers are not shared. Owner-only preview
facts are view data, not new saved Game fields or a historical-save migration.
Existing mode, mixed-co-side, full-plan and optional-module gates remain.
Existing mode, full-plan and optional-module gates remain; the selected
Advanced mixed-co-side extension is defined above.
## Advanced first versions — 8 October 2026
@@ -148,7 +208,7 @@ This table records the original adapter contract. The implemented subset and cur
## Unresolved or compositional boundaries
1. **Reserve shortage when destroyed.** Voluntary/battle text explicitly caps by reserves; the destruction sentence says to lose the indicated quantity without repeating the shortage clause. The pure model caps materialization to avoid creating physical units, but that is conservation-based composition for storm/worm losses, not an independently answered FAQ. It does not select substitute losses from unrelated board forces.
2. **Mixed forces and battle dials.** The FAQ forbids dialing more than reserves in a No-Field battle. A territory can also contain ordinary forces (the Smuggler answer demonstrates mixed presence), but no retrieved answer expressly defines that limit with existing forces, multiple sectors, typed units or independently committed reserve uses. Basic and Advanced prototypes use an explicitly provisional additive pool; this does not settle the source question. Same-owner mixed ordinary/marker Occupy remains guarded; the existing marker-only Advanced Occupy profile supports the owner-specific card composition above.
2. **Mixed forces and battle dials.** The FAQ forbids dialing more than reserves in a No-Field battle. Existing ordinary counters are possible, but no retrieved specific answer defines the cap across those counters, multiple sectors, typed units or independent reserve uses. Basic/Advanced ordinary and the selected Advanced Occupy prototype use the explicitly provisional additive pool above. This does not settle that source question or admit Basic mixed coalition/module profiles.
3. **Full-plan special Karama and structured Truthtrance.** The ordinary Atreides dial prohibition is explicit. Whether a broader entire-plan power or a particular promise question overrides it was not resolved by a retrieved specific answer. Do not leak the value through private legal-plan previews, public maximum dials, error strings or bot reasoning.
4. **Homeworld use.** R3 recommends Richese in a Homeworld combination but supplies no retrieved No-Field-specific rule defining off-planet hidden custody, one-on-planet versus off-planet coexistence, or homeworld threshold disclosure. General module availability is not an answer to those lifecycle questions. The isolated model represents a single Arrakis marker and does not authorize Homeworld placement.
5. **Capturing, transferring or returning a concealed marker as a force.** Movement-as-a-force and Gamont's explicit forced reveal do not establish a general conversion for every card or Guild transport-to-reserves. A generic return helper must not erase a hidden token without a source-backed reveal/custody cause. This module exposes no such automatic escape from last-use history.
@@ -173,13 +233,13 @@ Root integration review also corrected the Polar Sink address: its ordinary boar
`game/force-presence.ts` distinguishes presence from actual units, and map/occupancy, battle discovery, collection and control use that distinction. A marker is one collector even at zero. Storm checks the exact exposed marker sector before materialization/casualties; sheltered Imperial Basin and other sectors are preserved in focused checks. Unprotected worm destruction runs the actual reveal/casualty path, including a real Thumper trigger. Protected-worm and additional removal effects remain bounded by the source interpretations above.
Marker-only battle admission computes the owner's prospective pool from denomination and remaining reserves. The view exposes that pool only to its owning combatant; another player sees its own pool or none. Both plans seal before public reveal materializes the marker. The battle's `noFieldPlayers` flag persists, so zero still has its leader/cards/traitor resolution. Ordinary Atreides dial prescience is rejected on the server and avoided by controls/AI. Basic and Advanced physical-plus-marker admission use the provisional prototype above; combined mixed admission and special whole-plan inspection remain guarded. Broader Truthtrance remains an audit boundary.
Battle admission computes the reserve-capped prospective counters alongside actual ordinary units. Both plans seal before the original marker materializes. The selected active Occupy plan actor receives its own variable pool/provisional notice; rivals retain no concealed maximum. Prevented Ecaz uses only its own pool, while the marker retains native revelation. Zero keeps leader/cards/Traitor legality and original history. Dial prescience, special whole-plan inspection, broader Truthtrance and profile/module gates remain separate.
**Player controls — Partial.** `components/richese-no-field.tsx` provides concealed board markers plus owner-only denomination inventory, last-use status, token selection, ordinary one-force price/ally-share feedback and authoritative unavailable reasons. The parent table adds explicit marker movement selection and private prospective battle bounds. Token identifiers and hidden values are absent from rival board projections. The separate `components/richese-allied-no-field.tsx` supplies owner opportunity/proposal/payment controls and private recipient accept/decline/typed-force controls. Own shipment, marker movement and invitation/reveal have passed browser checks; an allied owner proposal was checked, but recipient browser acceptance and mobile remain pending.
**AI — Partial.** `game/bots.ts` selects eligible private own denominations, emits one-force shipments with exact funding, moves marker-only groups as `forces: {}` with explicit token/event, and reveals positive materializable tokens before a new shipment or after movement. It keeps a zero or exhausted-reserve marker concealed. Ordinary group candidates avoid combining with the owner's concealed marker while mixed battles are guarded. The battle policy uses the projected private force pool; opponent valuation uses public one-force presence. Responses, decisions and Truthtrance take priority. All four profiles also handle allied opportunity and acceptance from their entitled views, prefer positive safe owner-funded offers, decline unusable offers and avoid repeated automatic offers. Actual scheduling tests cover both seating orders, autopilot and a human supplier holding an AI ally’s shipment until explicit choice. Optimal strategy and complete Richese games are not claimed.
**AI — Partial.** Existing private own/allied shipment and explicit marker movement policies remain. Ordinary movement candidates still prefer separate physical and marker groups; current native battle policy consumes the private additive own/selected variable quote without exposing its prospective increment to rivals. Sixteen fresh programs across all four policies complete active/prevented allied/opposing mixed battles with80 accepted policy actions through native Collection. This is minimal legal participation, not Richese strategy or complete-game calibration.
**Documentation — Partial.** The in-app `richese-no-field` topic now documents the above controls and five facets. `RICHESE_NO_FIELD_ENGINE_AUDIT.md` retains the hook audit and current resolution notes. Source-confirmed Gamont requires reveal whenever its selected location contains the marker, then returns one actual force if present; the card is still used when zero results. Gamont engine/UI integration now follows that rule even when ordinary units also occupy the selected marker sector; its options label the reveal consequence without a separate target mode. Canceling the CHOAM power keeps the token concealed. Root reports 29 passing focused scenarios: 19 existing Gamont regressions plus the 10-case No-Field engine file, including two new Gamont scenarios covering 0/3/5, colocated zero/two ordinary forces, scarce reserves, cancellation and stale restored events. Allied shipment and typed allocations are integrated; mixed battles, Guild/Karama allied pricing and broader power interactions remain explicit unfinished work. No game-mode gate was opened.
**Documentation — Partial.** Current source, native lifecycle, allied price/consent and concealed-card/mixed-coalition compositions are recorded above and in the internal reference. Additive mixed caps and effect priority remain explicit provisional interpretations; Homeworld custody, full-plan/Truthtrance, unrelated overlays and complete-mode/final acceptance retain their separate gates. Earlier Gamont/allied proof remains historical, not a freshly repeated assurance campaign.
**Verification — Partial.** Current named focused results: `tests/richese-no-field.test.ts` (13), `tests/richese-no-field-engine.test.ts` (10), `tests/richese-no-field-review.test.ts` (8), `tests/richese-no-field-bots.test.ts` (9). The independent review compares complete opponent projections across 0/3/5 both before and after shipment, and after private plan sealing; checks payment/rates, storm shelter/sectors, actual worm activation, voluntary timing, later physical-token reuse with stale event, atomic BG/Terror entry rejection, stale CHOAM continuation and synthetic inventory validation. AI tests run every profile through Basic/Advanced marker-only zero/3/5 battles, including scarce reserves and repeated JSON restoration, to finite battle completion with conservation. Seven ordinary shipment-budget and four special-acquisition AI regressions also pass, with targeted lint and TypeScript. These focused checks are supplemented by the integrated acceptance updates below; complete Richese-game acceptance is not certified.
+1
View File
@@ -659,6 +659,7 @@ dedicated retrieved worked FAQs. [Contract and remaining limits](HOMEWORLD_OCCUP
| Sapho battle order | First/last reorders remaining Battle-phase choosers at clean boundaries. Phase priority persists through aftermath; actual legal pairs determine eligibility. Separating the chooser from physical attacker/tie advantage is an explicit implementation interpretation of the card's distinct alternatives, not a dedicated FAQ ruling. Last does not prevent others from choosing the holder as an opponent. | [Runtime scope and source interpretation](SAPHO_BATTLE_ORDER.md) |
| Harass & Withdraw | Either slot but neither category; private Prescience answers null. Return own undialed physical forces before weapon losses, selecting complete typed/sector returns after reveal where necessary; canceled by an opposing successful Traitor. Mandatory after-use discard overrides winner retention. Explosion ordering and own-Traitor disposal are explicit timing/specificity inferences, consistent with the recorded Planetologist precedent. | [Runtime and sources](HARASS_WITHDRAW_RUNTIME.md) |
| No-Field battle cards | Under standing choose-recommended, preserve native materialization before card effects: actual reserve-limited token reveal, original Reinforcements cost, then successful Harass return. Privately forecast physical counters/sector and require three own reserves after reveal before sealing the fee card; future returns or ally reserves cannot fund it. Zero, original token/history, support and fixed/variable owners remain native. This is explicitly provisional composition, not a new publisher FAQ or user answer. Other profile/module and inspection gates stay. | [Harass contract](HARASS_WITHDRAW_RUNTIME.md#own-no-field-composition--16-october-2026) · [Native lifecycle](RICHESE_NO_FIELD_RULES.md#concealed-battle-card-composition--16-october-2026) |
| Mixed No-Field Occupy | Extend the existing provisional additive ordinary-plus-reserve-capped-marker pool into selected native Advanced coalition battles, as ally or opponent. Original fixed Ecaz strength, support payer/counter owners, Traitor/actual reveal and history stay; prevention restores selected-lead-only pool. Selected Ecaz plan controls the ally's private variable quote, not its own ordinary maximum; rivals get no concealed increment. The FAQ mixed-cap ambiguity remains unresolved, not newly adjudicated. Basic mixed-co-side and other profile/module gates remain. | [Exact composition](RICHESE_NO_FIELD_RULES.md#mixed-native-occupy-pool--16-october-2026) |
| Clean Ix Stone / Tooth / Mirror | Reuse the existing CHOAM prototype order: original Stone first, then uncopied Tooth. The earlier priority question is unanswered; standing choose-recommended extends that order provisionally, not as a publisher ruling or user answer. Printed Mirror copy-first and user-selected physical retention stay independent. Clean selected Ix/Richese supports native Ixians/Tleilaxu in both modes; Ecaz/Moritani stays Advanced-only. Typed winner ambiguity, new Ix Tech/Stronghold and other module bands remain guarded. | [Source and profile distinction](MIRROR_WEAPON_ENGINE_AUDIT.md#clean-selected-ix-composition--16-october-2026) |
| Expansion-faction setup | Selecting Ecaz/Moritani factions does not select their independent three-card variant. Ordinary decks contain 33/35/47 cards; Richese's ten-card cache stays separate. Ecaz allocates six total forces within Imperial Basin sectors 9–11, retaining fourteen reserves. Flexible sector allocation is the literal printed territory constraint; Fremen→Ecaz→Advanced BG order is an implementation inference, while Moritani-last is printed. | [Source and profile contract](EXPANSION_FACTIONS_PROTOTYPE.md) |
| Ixian Technology on Richese lots | Superseded 8 October by the authorized supplied Advanced physical p34, which expressly excludes Richese auctions from Ixian Technology. Richese cache/Black Market lots now open directly; the once-per-round Technology use remains for ordinary lots. The temporary per-lot decline scaffolding and its tests were deleted. | [Auction source boundary](RICHESE_AUCTION_RULES.md#13-september-saved-per-lot-technology-decline--superseded-8-october) |