Connect Tleilaxu income to committed Ambassador revivals

Positive free force/leader returns share the existing beneficiary/turn free-income ledger under the explicit provisional source composition. Actual Ghola remains separately rewarded. Decline earns nothing. Bind a distinct revival-income response to the completed physical return and original Ambassador; allow/cancel finishes once and cancellation preserves the return and spent entitlement.

Add persistent preselection and income guidance. Admit the bare Basic Ecaz+Ix native Tleilaxu composition through existing coalition/Face Dance mechanics, retaining unsupported faction/module guards and existing start/battle assertions.

Verify focused tests, types/lint/build, four original public Basic native/copy allow/cancel programmes, actual control rendering and eight existing legal policies. Exact frozen evidence and boundaries are in docs/TLEILAXU_AMBASSADOR_RULES.md. Full rules/modes, wider combinations, assurance and deployed acceptance remain unfinished. No strategic calibration, saved-room operation, reset, restart or deployment.
This commit is contained in:
Quintine committed 2026-10-24 13:07:08 +11:00
1 parent f9e204c301
commit 6d30e7c5e1
15 files changed
+1125 -30

No files matched your search

+2 -1
View File
@@ -224,7 +224,8 @@ const cancellationSources = {
revivalLimit: (g) => g.pendingRevival ?? null,
revivalDiscount: (g) => g.pendingRevival ?? null,
earlyRevival: (g) => g.pendingRevival ?? null,
revivalIncome: () => null,
revivalIncome: (g, response) => response.source === 'ambassadorRevival'
? g.pendingAmbassador?.revivalReceipt ?? null : null,
foreignGhola: (g) => g.pendingRevival ?? null,
ixSubstitution: (g) => ({
...aftermathSource(g),