Compose classic independent cards with World Nexus rules

Retain independent36, original Homeworlds and Nexus12 through classic fresh setup with optional Skills and phase modules. Resolve own-World Reinforcements fees before computing temporary Sardaukar roles, preserving original Cunning declarations, printed traits and physical counters. Record the provisional ordinary-nonrole-first policy and align human/AI quotes and captions.

Validation: types/lint/build, 128 affected tests across 15 files, bounded rule-source review and finite original-action smoke for Recruits, Harass, local-fee Cunning, all four legal policies and rendered source controls. Verified runtime c219ec587a54b44079539168d93835a5af904c8afb4de58bcec0a3d60c809f0c; documentation-only proof update 8ee21598e7be0c89a08fbad50786c346ebc8ae705492d8b31ea00fae0ffefa3c. Full modes, combinations, assurance and deployed acceptance remain open. No saved-room/provider changes.
This commit is contained in:
Quintine committed 2026-10-18 10:20:08 +11:00
1 parent 178251ad35
commit 97c2b67650
18 files changed
+737 -30

No files matched your search

+26 -4
View File
@@ -16,6 +16,29 @@ open mode gates.
## Current checkpoint and work
**Classic independent World/Nexus — 18 October. Prototyped / Partial.**
Fresh classic2–6 independent36 + Homeworlds + Nexus12 now retains optional all14,
Tech3+ and Advanced Strongholds2+ through original module selection/setup.
Actual Recruits returns recheck Fremen population; foreign-World Harass returns
typed visitors and own-World Harass stays forbidden. Local Reinforcements fees
provisionally spend non-role normals before converted counters: Kaitain7 paying3
leaves normal4/temporary4, while the original Cunning declaration remains5.
Real Salusa stars, pre-fee face/support traits and physical fee/loss separation
remain. Shared engine, human selected-source limits and legal bot pools agree;
active/preview captions now explain declaration versus remaining roles.
Frozen15-file **128/128**, types/lint/build pass. Direct original-action smoke
finishes the local-fee battle (97 actions), Recruits (101), typed Harass (59),
and four legal policies' card plans within 89-action programmes each. Rendered
source/active controls retain the real choices and provisional explanation.
The first typecheck exposed a nullable test-view field; two setup assertions
were corrected to actual lobby selections/deal chronology. A smoke caption
assertion was corrected to the actual text; diagnostic logs are retained.
No saved room/database, server restart or deployment was involved. Browser,
full combinations and comprehensive assurance remain deferred. Other native
families, Discovery and unrelated preview envelopes remain separate.
[Canonical source, implementation and limits](NEXUS_CARD_RULES.md#classic-independent-world-nexus--18-october-2026).
**Current priority — Basic → Advanced → interaction refinement.** The user
requests usable first versions for every faction before refinement. Administration
is deferred. Broad suites and capture-resumption campaigns are deferred; rule
@@ -31,8 +54,7 @@ remain deferred until all rules are implemented.
**Integration review — 18 October.** The earlier non-AI checklist closure
was unsupported: a topic marked Prototyped/Partial does not prove every
rules-permitted combination works. Independent36 World/Nexus and other named
interaction boundaries remain open. Rules delivery is not complete, and the
rules-permitted combination works. Specific module envelopes and named interaction boundaries remain open. Rules delivery is not complete, and the
deferred comprehensive multiplayer/privacy/custody gate has not been opened.
The regression repair now admits original Ecaz CLI snapshots with their actual
@@ -54,8 +76,8 @@ Plain base33 World/Nexus lacked native reaction states; one public capability
now composes original Homeworlds with base33, optional14 and original
Tech3+/Advanced Strongholds2+. Actual host controls retain every selected
module through private training/Traitors into first Storm; salusa elite5 and
unassigned tokens/cards prove no premature owners. Independent36 World/Nexus
stays a named pending gate; other envelopes remain separate.
unassigned tokens/cards prove no premature owners. Independent36 World/Nexus was left pending at that checkpoint; its current
composition is the active delivery above. Other envelopes remain separate.
Real World fee sources pass their original gates: Guild Junction→Giedi
departure2, Cunning visitor return through native permission/rate/fee2;
+16
View File
@@ -1,5 +1,21 @@
# Dune implementation status
## 18 October 2026 — Classic independent World/Nexus
Fresh classic independent36/World/Nexus now retains optional14 and original
phase modules through native setup. Actual Recruits, foreign Harass and
own-Kaitain Reinforcements/Cunning use the original card/actions. Local fees
provisionally spend non-role normals first; the shared physical quote reduces
only paid temporary roles, retaining the original five-counter declaration and
real Salusa custody. Human/bot source pools and active captions use that split.
Two disjoint fixture lanes and bounded source review were integrated by one
owner. Frozen15-file128/128, types/lint/build and finite original-action/
rendered-control smoke pass. Source assertion/type corrections and limitations
are recorded in the [canonical contract](NEXUS_CARD_RULES.md#classic-independent-world-nexus--18-october-2026).
No stored room/reset/restart/deployment; complete modes and comprehensive
assurance remain open.
## 18 October 2026 — Original World Nexus core
Plain base33 World/Nexus started without native reaction states, and
+43
View File
@@ -2,6 +2,49 @@
Original source audit, 10 September 2026, with dated bounded runtime follow-ups below. This document establishes the printed component inventory, source protocol and implementation boundaries; none lifts expansion release gates. The ordinary worm-triggered alliance Nexus already in the engine is distinct from this optional card module.
## Classic independent World Nexus — 18 October 2026
**Prototyped / Partial.** Fresh classic2–6 Homeworlds + Nexus12 now also
retains explicitly selected independent36, optional all14 Skills, Tech3+ and
Advanced Strongholds2+. The public core capability and original setup own
admission and actual Guild/Harkonnen/Ixian reaction initialization; no played
game is reflagged and no card or power is silently added. This supersedes the
base33-only admission boundary in the earlier checkpoint below. Other native
families, Discovery/Semuta and unrelated reaction envelopes remain separate.
Recruits uses actual current native population/rates and the original typed
revival destination. Foreign-World Harass returns real normal/special visitors
to their native Worlds; own-World Harass stays forbidden. These are the existing
card effects through the newly composed selection, not new numerical rules.
The substantive battle fix is local Reinforcements fees with Emperor Cunning.
Ordinary counters without the temporary role provisionally pay first; converted
fee counters then lose that role. Kaitain7 paying local3 leaves a legal combat
pool normal4/temporary4, preserving the original count5 declaration, pre-fee face
and support traits, and real Salusa stars. Off-World fees leave the original
Kaitain role pool. This overlap is an explicit
[recommended provisional composition](RULE_DECISIONS.md#provisional-own-world-temporary-role-reserve-fee--18-october-2026),
not a retrieved publisher ruling.
Implementation: [core capability](../game/faction-module-profile.ts),
[shared fee pool](../game/reinforcements-homeworld.ts), existing engine/actions,
selected-source controls and legal bot source pools. Original-action fixtures
and cases are `tests/fixture-nexus-world-independent-cards.ts`,
`tests/nexus-world-independent-cards.test.ts` and
`tests/nexus-world-independent-battles.test.ts`. Comprehensive rules/combination,
save/privacy/custody and final deployed acceptance remain open.
Owner frozen15-file **128/128**, types/lint/build pass. A finite original-action
programme completes the local fee/Cunning battle (97 actions), Recruits (101)
and typed foreign Harass (59), plus four legal policies' source-bearing card
plans within 89-action programmes each. Rendered selected-source and active
Cunning controls retain the real choices and distinguish original declaration
from the remaining pool. Initial nullable-view/lobby chronology assertions and
one smoke caption matcher were corrected; no game numeric rule was changed to
satisfy those assertions. Logs remain outside Git. No saved room/database,
server restart or deployment was involved; browser/deployed and full
combination/assurance acceptance remain deferred.
## Original World Nexus core — 18 October 2026
**Prototyped / Partial.** Fresh original base33 classic Homeworld+Nexus now
+31
View File
@@ -16,6 +16,37 @@ fixes the exact card. Harass & Withdraw may share the plan under the
Original or copied Stone Burner composes in clean selected Ix/CHOAM families
and the existing native Advanced Occupy envelope. Other profile boundaries remain.
## Independent World/Nexus temporary roles — 18 October 2026
Fresh classic independent36 + Homeworlds + Nexus12 now composes in Basic and
Advanced, retaining optional all14, Tech3+ and Advanced Strongholds2+. Original
host controls select these modules before readiness and native setup. Other
native-family, Discovery and unrelated preview envelopes retain their limits.
This is prototype integration, not complete-mode certification.
The shared own-World fee pool now removes a temporary role only when its
physical normal counter pays the fee. Provisionally, ordinary non-role counters
pay first. Kaitain7 with five Cunning roles paying three here leaves normal4 /
temporary4, a valid physical pool with maximum dial8. A fee on the other native
World leaves all seven Kaitain counters and five roles. Pre-fee printed face and
support traits remain; the reserve fee cannot enter dial casualties or Suk rescue.
The original Cunning receipt retains count5. A reduced-role casualty record
additionally identifies its local reserve fee; unchanged historical five-role
records keep their existing form.
This extends the existing provisional fee-exclusion policy, using the user's
choose-recommended direction. The sources establish the original three-counter
fee and five-counter declaration, not the ordering of this overlap. It is not a
new publisher ruling. Engine, human selected-source maximum and minimal bot
source pools all use [the same physical quote](../game/reinforcements-homeworld.ts).
The source selector explains the policy and the table displays the remaining
temporary count.
Original-action cases: [native battles](../tests/nexus-world-independent-battles.test.ts),
[Recruits/Harass and setup](../tests/nexus-world-independent-cards.test.ts), and
[physical role quote](../tests/reinforcements-temporary-role.test.ts).
Full combinations and comprehensive assurance remain deferred.
## Original Skills/phase composition — 17 October 2026
Supported original all14/card profiles retain Tech3–6 Basic/Advanced and
+17
View File
@@ -2,6 +2,23 @@
Updated 18 October 2026. This is the authoritative navigation index for existing decisions, not a replacement rulebook or a new ruling. Detailed linked contracts retain their source citations and exact supported boundaries. Runtime follow-ups supersede historical absence claims; passing tests establish software behavior, not publisher authority.
## Provisional own-World temporary-role reserve fee — 18 October 2026
Under the 14 October choose-recommended direction, an own-World Reinforcements
fee spends physical ordinary counters without a temporary Sardaukar role first.
If that is insufficient, paying converted counters removes their temporary role
from the combat pool. The original Emperor Cunning declaration still records
five converted ordinary counters. Seven Kaitain normals paying three here leave
four normals with four temporary roles; paying on Salusa leaves the Kaitain
group unchanged. Real starred-counter custody and pre-fee support/face traits
remain separate.
The printed five-counter Cunning group, three-reserve fee and independent
modules are sourced in the existing contracts. Their overlap does not specify
which converted counters pay. This is an explicit provisional composition,
not a publisher FAQ or a newly supplied user numerical ruling.
[Physical fee and scope](REINFORCEMENTS_RUNTIME.md#independent-worldnexus-temporary-roles--18-october-2026).
## Provisional paid Black Market retention — 18 October 2026
The supplied revision physical36/printed34, Richese A/C, gives the shared