From 22948ff6e47235d4048abdd8429e615f7a796716 Mon Sep 17 00:00:00 2001 From: Quintine <15965533+Quintine@users.noreply.github.com> Date: Thu, 15 Oct 2026 08:17:32 +1100 Subject: [PATCH] Route Emperor Nexus extra revival through native pending settlement --- components/game-table.tsx | 7 + components/nexus-emperor-secret-ally.tsx | 6 +- docs/CURRENT_STATUS.md | 17 + docs/IMPLEMENTATION_STATUS.md | 43 ++ docs/NEXUS_CARD_RULES.md | 14 + docs/NEXUS_EMPEROR_RULES.md | 65 ++- docs/NEXUS_EMPEROR_SECRET_ALLY_RUNTIME.md | 39 +- docs/RULE_DECISIONS.md | 14 + game/engine.ts | 72 +-- game/homeworld-revival-deployment.ts | 7 +- game/homeworld-revival-return.ts | 6 +- game/nexus-emperor-secret-ally.ts | 281 ++++++++-- game/reference.ts | 9 +- game/revival-cancellation.ts | 20 +- game/revival-resume.ts | 122 ++++- game/revival.ts | 2 + ...ssic-nexus-skills-payments-runtime.test.ts | 1 + tests/discovery-classic-nexus-effects.test.ts | 19 +- ...overy-classic-nexus-skills-runtime.test.ts | 1 + tests/fixture-nexus-emperor-extra.ts | 206 +++++++ tests/fixture-single-nexus-e1.ts | 5 +- .../nexus-emperor-extra-continuation.test.ts | 502 ++++++++++++++++++ tests/nexus-emperor-extra-runtime.test.ts | 298 +++++++++++ tests/nexus-emperor-extra-source.test.ts | 304 +++++++++++ ...exus-emperor-secret-ally-controls.test.tsx | 66 --- tests/nexus-emperor-secret-ally.test.ts | 42 +- ...us-skills-modules-payments-runtime.test.ts | 1 + 27 files changed, 1901 insertions(+), 268 deletions(-) create mode 100644 tests/fixture-nexus-emperor-extra.ts create mode 100644 tests/nexus-emperor-extra-continuation.test.ts create mode 100644 tests/nexus-emperor-extra-runtime.test.ts create mode 100644 tests/nexus-emperor-extra-source.test.ts delete mode 100644 tests/nexus-emperor-secret-ally-controls.test.tsx diff --git a/components/game-table.tsx b/components/game-table.tsx index ba17ad3a..8d4cf773 100644 --- a/components/game-table.tsx +++ b/components/game-table.tsx @@ -3022,6 +3022,13 @@ export function GameTable({ to prevent their normal force and leader revivals for this turn.

+ {g.decision.source === 'nexusEmperor' && ( +

+ Provisional policy: this pending Emperor Nexus extra return also + requires your clearance. Prevention returns no counters or revival + income; both the Nexus and your special Karama remain spent. +

+ )} {g.revival.specialKaramaBlock && (

{g.revival.specialKaramaBlock}

diff --git a/components/nexus-emperor-secret-ally.tsx b/components/nexus-emperor-secret-ally.tsx index 0086a047..6542f91f 100644 --- a/components/nexus-emperor-secret-ally.tsx +++ b/components/nexus-emperor-secret-ally.tsx @@ -88,10 +88,12 @@ export function NexusEmperorSecretAlly({

Emperor Secret Ally

- Spend the Emperor Nexus card to revive 3 additional forces for free, - beyond your ordinary revival quota. The elite cap still applies. + Spend the Emperor Nexus card to request exactly 3 additional forces for free + through the normal revival continuation, beyond ordinary force/free allowances. + Native typed caps and prevention still apply; Recruits does not double this grant.

{offer.revival.blocked &&

{offer.revival.blocked}

} + {offer.revival.policy &&

{offer.revival.policy}

} {options.length > 1 && (