99 lines
6.2 KiB
Markdown
99 lines
6.2 KiB
Markdown
# Occupied Ecaz: Duke Vidal grant
|
|
|
|
## Source and selected ordinary lifecycle — 26 October 2026
|
|
|
|
**Prototyped / Partial.** The occupied Ecaz
|
|
card grants Duke Vidal to the occupier or their ally and overrides the native
|
|
Ecaz/Moritani Duke advantage. The already visually verified component is indexed
|
|
in [the component audit](HOMEWORLD_COMPONENT_AUDIT.md) and represented in
|
|
`game/homeworld-cards.ts`. Advanced occupation uses the authorized supplied PDF,
|
|
physical22: sole foreign qualification persists until the occupier's last force
|
|
leaves. Basic retains its existing provisional current-sole policy.
|
|
|
|
The user's [Ecaz-only revival ruling](ECAZ_REVIVAL_RULES.md#selected-product-interpretation-28-september-2026)
|
|
supersedes the card's foreign-revival wording. This grant never revives Duke.
|
|
The shared disc, native identity, strength6, deaths, actual battle use and Tanks
|
|
stay authoritative; neither a leader copy nor a foreign native roster is added.
|
|
Homeworld benefits are Karama-immune under [the global source](HOMEWORLD_RULES.md#karama-and-other-optional-systems).
|
|
|
|
Under the 14 October choose-recommended authority, the first ordinary lifecycle
|
|
is explicitly provisional: one recipient choice per actual turn/qualification,
|
|
one battle, unused tenure ends at turn end. Continuing occupation permits a new
|
|
choice next turn after native reset. Departure/changed qualification or loss of
|
|
the selected reciprocal ally ends only this source; no earlier holder returns.
|
|
A real source receipt retains the original qualification/occupier/recipient.
|
|
Used-at history blocks repeated same-turn grants even after requalification.
|
|
|
|
At a settled otherwise quiet boundary, one eligible recipient receives Duke
|
|
automatically. An allied occupier chooses self or reciprocal ally in persistent
|
|
controls, including before either Battle Plan seals. Committed responses,
|
|
arrivals, auctions and sealed plans resolve first. Ordinary living native tenure
|
|
is set aside when occupation overrides it; native Ambassador/Moritani acquisition
|
|
cannot take him back. Living Ecaz Nexus Cunning likewise respects that priority;
|
|
Ecaz's separate resurrection remains distinct. Captured, concealed or foreign
|
|
Ghola custody is explicitly guarded rather than silently removed.
|
|
|
|
## Connected controls and minimal policies
|
|
|
|
The owner-only `homeworldEcazDuke` view contains original event, projected
|
|
recipient labels and an availability reason. `homeworldDuke` accepts exactly
|
|
that event/recipient, validates the live entitlement and appends its receipt.
|
|
No printed fee, power use or revival is fabricated. The GameTable panel does
|
|
not time out, and its busy/blocked controls suppress callbacks. All four existing
|
|
profiles choose the first legal projected recipient; strategy remains deferred.
|
|
|
|
## Native source and scoped proof — 26 October 2026
|
|
|
|
Three disjoint helper/native-source/control lanes and root integration pass
|
|
**15 files,129/129**, types/lint/build and **eight native engine/GameTable SSR/
|
|
actual grant-control journeys** on unchanged source. Thirty-five new cases cover
|
|
automatic/explicit recipients, source/actor guards, one use/death, actual Ecaz
|
|
revival, controlled lifetime boundaries and all four minimal profiles. Native
|
|
Basic97/99 and Advanced113/115-action sources retain all33 original cards:
|
|
real deferred bribe, shipments, worm Nexus alliance, four-force World invasion,
|
|
actual victory leaving3 foreign occupiers, and a separate original next battle.
|
|
No played force, wallet, hand, clock, occupation or grant is installed. Pure
|
|
quote/contract controls remain labelled controlled supplements.
|
|
|
|
The [native producer](../tests/fixture-homeworld-ecaz-duke.ts) starts public
|
|
Ecaz/Emperor/Guild/Atreides with exact Ecaz deck and Homeworlds only. Guild's
|
|
actual one-spice bribe waits for Mentat; Emperor's actual paid2 Carthag shipment
|
|
supplies the later army. Turn2's actual worm Nexus optionally allies Emperor/
|
|
Guild. A real quoted four-normal World invasion and native E5+dial1 versus
|
|
Ecaz2+World2 battle leave three Emperor occupiers, zero native counters and the
|
|
original living Duke. Atreides' separate paid entry creates the next actual
|
|
Arrakis battle. Original setup/deal/Spice positions and scalar lotteries alone
|
|
are selected. The first unallied grant is automatic; the allied frame retains
|
|
both original choices before plans.
|
|
|
|
The [engine cases](../tests/homeworld-ecaz-duke-engine.test.ts) use Duke in that
|
|
separate battle, preserve one-use receipt and actual death, and progress to
|
|
turn3 Revival. A foreign revival rejects. Ecaz really pays5, retaining the same
|
|
disc/deaths while returning him alive and set aside; the ongoing occupier then
|
|
gets its new turn's two-recipient choice. The runtime follows actual component
|
|
callbacks for both recipients and a second actual grant after this revival.
|
|
|
|
Eighteen [pure quote cases](../tests/homeworld-ecaz-duke-quote.test.ts) explicitly
|
|
use controlled typed/history inputs for Basic loss versus Advanced retained
|
|
occupation, reciprocal recipients, spent/new-turn choices, source/stale denial,
|
|
lifecycle release and unsupported custody. Seven
|
|
[control cases](../tests/homeworld-ecaz-duke-controls.test.tsx) label their
|
|
projected contract rather than invent native gameplay. Three
|
|
[minimal-policy cases](../tests/homeworld-ecaz-duke-bots.test.ts) use genuine
|
|
Basic/Advanced sources and all four actual owner-view proposals; separate
|
|
blocked-projection negatives remain controlled. No strategy/calibration occurs.
|
|
|
|
Feedback repairs only the native fixture's later Basic dial and typed original
|
|
poison lookup. Final v2 binds2949 files to
|
|
`a6067af16cb7095856c6dc186d8f5c58e4146cb44c1017274caed718d98c3c68` on base `d5c5342d2d620f685cdce52fb941f4141573fdfa`.
|
|
Final frozen v2 report/logs:
|
|
`/home/quintine/.local/share/dune/checkpoints/20261026-occupied-ecaz-duke-proof-v2/`;
|
|
journeys/HTML: adjacent `20261026-occupied-ecaz-duke-runtime/`.
|
|
|
|
Complete rules, wider interactions and final assurance remain open. No saved-
|
|
room/D1/server, reset/restart, deployment or recovery operation occurs. DOM/
|
|
hydration, browser/mobile and exact-revision deployed acceptance remain due.
|
|
Public mode gates, existing saves and unrelated games remain preserved.
|
|
Captured/concealed/Ghola transfer, wider Nexus/Skill compositions and complete
|
|
Homeworld/Duke acceptance remain open; this ordinary grant is not their release.
|