Complete provisional Basic Tupile slot lifecycle
Basic marked Homeworld games now use the existing provisional current-sole-controller policy for Tupile slots. Observed eligible intervals retain one original activation across turns, close on departure/foreign contest/native high, and create a fresh source on restoration even when same-turn qualification rows deduplicate. Preserve original valid source histories and the lease format. Advanced retains its authorized last-departure rule. Original normal-limit cleanup remains binding before a returning holder can reuse a slot. Native low intelligence becomes available after Basic loss subject to actual population/contact, without clearing historical answers or lifetime faction usage. Existing owner-only cleanup controls and minimal policies use the native event and exact held cards. Persistent table and cleanup text explain the provisional policy. No new profile, state version or module opening. Validation and exact frozen-source evidence are recorded in the canonical Tupile runtime contract. Two original public Basic programmes use actual setup, three paid normal lots, earned Guild shipment income, a paid invasion and native battle, one continuous slot, optional real fifth purchase, paid last departure and zero/one normal-limit cleanup. All four minimal profiles submit legal held-card choices and finish the turn. Controlled interval/reactivation, allied cleanup and intelligence probes remain separate. No broad save/recovery campaign or strategy tuning. This is a first-version application interpretation under the standing recommended-choice direction; publisher Basic lifecycle clarification, full module/mode acceptance, final assurance and browser/deployed proof remain open. No saved-room/database/reset/restart/deployment operation.
This commit is contained in:
1 parent
ae2d0371ce
commit
26553dd175
14 files changed
+630
-52
No files matched your search
@@ -16,6 +16,26 @@ open mode gates.
|
||||
|
||||
|
||||
## Current checkpoint and work
|
||||
**Basic Tupile slot lifecycle — 24 October. Prototyped / Partial.** The
|
||||
existing provisional Basic current-sole policy now supplies Tupile's slot and
|
||||
normal-limit cleanup instead of stopping on its conservative lifecycle guard.
|
||||
Observed continuous intervals distinguish turn changes from actual loss/return;
|
||||
a new grant cannot erase an earlier required discard. Original intelligence use
|
||||
and Advanced last-departure retention remain. Controls label the Basic policy.
|
||||
|
||||
A disjoint genuine-fixture lane, bounded source-identity review and owner
|
||||
integration pass **10 files70/70**, types/lint/build and two original public
|
||||
Basic gameplay/rendering programmes plus four legal cleanup profiles. Actual
|
||||
normal1 purchases, earned Guild income2, invasion2/cost1 and native battle
|
||||
create one visitor/slot. The fifth-card source really buys card5 for1. Sources
|
||||
use88/91 actions; paid last return1 and zero/one cleanup use1/2 continuations,
|
||||
retain unused movement and then explicitly finish. Controlled turnover/contest/
|
||||
native-high/reacquisition/ally and intelligence probes are separate. Only a
|
||||
TypeScript loop-narrowing fix followed feedback. No wider recovery audit,
|
||||
complete-mode or browser/visual/deployed acceptance. No saved-room/database/
|
||||
reset/restart/deployment operation.
|
||||
[Canonical policy and exact proof](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#basic-current-sole-slot-lifecycle--24-october-2026).
|
||||
|
||||
**Truthtrance before the respondent's turn — 24 October. Prototyped / Partial.**
|
||||
Same-phase questions now include a supported unused turn still in the original
|
||||
queue. Waiting promises remain visible without an executable early action;
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
|
||||
Runtime follow-up, 10 September 2026: [Tupile intelligence and qualification history](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#occupation-observation-boundaries) implement confirmed observations while retaining the unresolved entitlement and expiry questions below. The source audit remains historical evidence.
|
||||
|
||||
The [24 October Tupile follow-up](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#basic-current-sole-slot-lifecycle--24-october-2026)
|
||||
extends the provisional Basic policy below to occupied Tupile slots and their
|
||||
normal-limit cleanup, superseding its historical conservative consumer exception.
|
||||
Advanced retains its distinct authorized retention rule. The publisher question
|
||||
remains explicit; this is usable provisional behavior under the standing
|
||||
recommended-choice instruction, not newly located source authority.
|
||||
|
||||
## Basic current-sole benefit policy — 9 October 2026
|
||||
|
||||
The content-first pass replaces Basic's blanket lifecycle block with an
|
||||
|
||||
@@ -2,6 +2,89 @@
|
||||
|
||||
Runtime checkpoint, 10 September 2026. Native CHOAM can now request and retain a private Tupile intelligence observation in a game with proven setup history. This implements the bounded disclosure described in the [source contract](HOMEWORLD_TUPILE_INTELLIGENCE_RULES.md); occupation entitlement, expiry and occupied income remain unresolved. Advanced and unfinished expansion starts, publication and complete-rules release retain the gates in [README](../README.md).
|
||||
|
||||
## Basic current-sole slot lifecycle — 24 October 2026
|
||||
|
||||
**Prototyped / Partial.** Basic Tupile now follows the same visibly provisional
|
||||
current-sole-controller policy as the other Basic occupied benefits. This
|
||||
supersedes the conservative Tupile exception in the 5 October contract and
|
||||
9 October general policy. No explicit human ruling required that exception;
|
||||
under the standing recommended-choice direction, keep the printed one-slot and
|
||||
normal-limit discard mechanics usable while publisher lifecycle clarification
|
||||
remains unresolved. This is an application interpretation, not a GF9 ruling or
|
||||
a transfer of the supplied Advanced retention rule into Basic.
|
||||
|
||||
A qualified sole foreign controller and its reciprocal ally each receive one
|
||||
slot while native reserves remain below high threshold. Departure, foreign
|
||||
contest or native high population ends the Basic grant. Actual recorded public
|
||||
snapshots identify each continuous eligible interval. A turn boundary preserves
|
||||
its activation; loss and later observed restoration create a fresh activation,
|
||||
even when the original qualification reducer deduplicates a same-turn fact.
|
||||
Current forces without the necessary observed source cannot invent a new grant.
|
||||
The existing source/lease format and historical valid qualification sources stay
|
||||
readable; no saved version or setup flag is added.
|
||||
|
||||
Losing holders owe the original normal-limit cleanup. A later activation cannot
|
||||
lend space until that holder's earlier cleanup finishes. Original exact held-card
|
||||
choices, protected cards, event identity, suspended controls and discard effects
|
||||
remain. Views and repeated sync never draw a card, add spice, stack slots or
|
||||
settle another player's discard. Alliance changes continue to remove only the
|
||||
former holders. Basic loss restores new low-intelligence eligibility when
|
||||
population/contact permit it, without clearing historical private answers or
|
||||
once-per-faction use. Advanced retains its original last-force-departure rule.
|
||||
Existing unmarked profiles keep their previous behavior; no other module opens.
|
||||
|
||||
### Targeted proof and limits
|
||||
|
||||
One disjoint original-action fixture lane, bounded source-identity review and
|
||||
owner integration pass **10 files70/70**, `npm run check:quick`, production build
|
||||
and two gameplay/rendered-table programmes plus four finite legal policies.
|
||||
First feedback repaired only TypeScript loop narrowing: the replay tracks its
|
||||
active interval by index rather than an inferred nullable object. The full
|
||||
frozen batch then passes; no new source policy or numerical ruling followed.
|
||||
|
||||
The passing source is based on
|
||||
`ae2d0371ceb0b9119b929ba0eef616df565ace56`, tree
|
||||
`de29c84b36a735c7a2e9da2614b936ead6fd0a68f18043059f84d9b05ba3c1c7`,
|
||||
2,601 tracked/nonignored files. The untracked source PDF contributes only its
|
||||
hash, without being committed or republished. Final checkpoint/reference prose
|
||||
is reviewed against all frozen source-file hashes before push.
|
||||
|
||||
`tests/fixture-basic-tupile-lifecycle.ts` uses the real public Basic three-seat
|
||||
Atreides/CHOAM/Guild Homeworld start. Only unopened land Spice positions and
|
||||
scalar lotteries are selected. Three actual normal1 purchases fill Guild's
|
||||
original dealt hand to4. Atreides's actual earlier Imperial Basin shipment costs2
|
||||
and earns Guild2. Guild ships2 from its own World to Tupile for1. A real unarmed
|
||||
battle with Guild dial1 and CHOAM dial0 puts native20 and Guild1 in Tanks, leaving
|
||||
one foreign visitor and its single slot. No dealt cards, funds, forces, phase,
|
||||
queue, alliance, lease or occupation history is installed.
|
||||
|
||||
The no-fifth source uses88 actions; the fifth-card source uses91 and actually
|
||||
buys that fifth normal-auction card for1. Both retain the same original activation
|
||||
across the turn boundary. Actual last-force return costs1 and takes1 continuation
|
||||
with no overfull prompt, or2 with exactly one normal-limit discard. Both preserve
|
||||
unused original movement, then the runtime explicitly ends the real Guild turn.
|
||||
All four minimal profiles submit one legal actually held-card cleanup and finish
|
||||
the native turn; no strength or strategy calibration is claimed.
|
||||
|
||||
`tests/basic-tupile-lifecycle-engine.test.ts` covers those original control paths.
|
||||
The revised controlled Tupile tests separately cover turn continuity, departure,
|
||||
contest, native high population, a different controller, same-turn return with
|
||||
no new qualification row, no unobserved activation, old cleanup before reacquired
|
||||
capacity, reciprocal ally removal and preserved Basic/Advanced intelligence use.
|
||||
Existing Advanced retained-occupation, hand-capacity, cleanup and source tests pass.
|
||||
|
||||
Actual GameTable and cleanup components render the persistent provisional Basic
|
||||
policy, occupied/fifth-card/paid-return state, exact owned choice and busy controls.
|
||||
Framework aliases/CSS stubs do not establish browser clicks, visual or deployed
|
||||
acceptance. Private source hashes, logs, HTML and runtime results are in
|
||||
`/home/quintine/.local/share/dune/checkpoints/20261024-basic-tupile/`;
|
||||
`frozen-integrated-2/report.json` is the complete passing batch, with the earlier
|
||||
feedback retained. No broad recovery/privacy/custody audit was added.
|
||||
|
||||
Publisher Basic lifecycle clarification, wider interactions, full Homeworld/mode
|
||||
certification, final assurance and browser/deployed acceptance remain open. No
|
||||
saved-room/database/reset/restart/deployment operation was performed.
|
||||
|
||||
## Semuta / original lost-slot discard — 11 October 2026
|
||||
|
||||
The separate fresh `semuta --homeworlds` entry reuses original occupation setup
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# Dune implementation status
|
||||
|
||||
## 24 October 2026 — Basic occupied Tupile lifecycle
|
||||
|
||||
Extend the existing provisional Basic current-sole policy to one-slot grants and
|
||||
original normal-limit cleanup. Observed intervals keep continuous turns separate
|
||||
from loss and reacquisition; old discards cannot be erased by a returning grant.
|
||||
Historical valid sources, intelligence usage and Advanced retention remain.
|
||||
Persistent controls label the application policy rather than claiming a GF9 ruling.
|
||||
|
||||
A disjoint original-action fixture lane, bounded source review and owner
|
||||
integration pass10-file70/70, types/lint/build and two actual public Basic gameplay/
|
||||
rendering programmes plus four legal cleanup profiles. Sources88/91 earn actual
|
||||
cards/income, paid invasion and native battle, then one continuous slot and a real
|
||||
optional fifth purchase. Paid return1 plus zero/one cleanup use1/2 continuations,
|
||||
leave original movement unused and then explicitly end the turn. Controlled
|
||||
lifecycle/ally/intelligence probes remain separate. Only TypeScript loop narrowing
|
||||
needed feedback repair. [Canonical source, policy and exact proof](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#basic-current-sole-slot-lifecycle--24-october-2026).
|
||||
Full module/modes, publisher clarification, final assurance and browser/deployed
|
||||
acceptance stay open. No saved-room/database/reset/restart/deployment operation.
|
||||
|
||||
|
||||
## 24 October 2026 — Truthtrance before the respondent's turn
|
||||
|
||||
Supported unused shipments still in the original same-phase queue now admit
|
||||
|
||||
@@ -803,7 +803,7 @@ dedicated retrieved worked FAQs. [Contract and remaining limits](HOMEWORLD_OCCUP
|
||||
|
||||
| Topic | Decision to preserve | Detailed authority and evidence |
|
||||
| --- | --- | --- |
|
||||
| Stable Homeworld occupation | Fresh original Homeworlds alone and source history. Advanced uses authorized p22 sole qualification retained until last-force departure; Basic uses the visibly provisional current-sole policy recorded in the Basic table above, with Basic Tupile keeping its conservative epoch gate. Actual bank/percentage income, sharing, Caladan/Ix/Richese/Giedi ownership and native defenses are connected. Native CHOAM fresh entries separately mark original Tupile slots, owner-selected normal-limit cleanup and low-query restoration; old profiles are not upgraded. No inferred controller, back-award, invented canceled-auction count, public/save conversion or unrelated overlay. Exceptional Duke remains separate. | [Source cutover](HOMEWORLD_OCCUPATION_RULES.md#occupied-economics-bidding-and-advanced-source-cutover--5-october-2026), [Basic policy](HOMEWORLD_OCCUPATION_RULES.md#basic-current-sole-benefit-policy--9-october-2026), [Tupile original lease and consumers](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#occupied-tupile-slots-and-original-cleanup--5-october-2026) |
|
||||
| Stable Homeworld occupation | Fresh original Homeworlds alone and source history. Advanced uses authorized p22 sole qualification retained until last-force departure; Basic uses the visibly provisional current-sole policy recorded in the Basic table above, including Tupile through observed continuous activation sources and original normal-limit cleanup. Turn boundaries do not stack slots; reacquisition cannot erase an owed discard. Actual bank/percentage income, sharing, Caladan/Ix/Richese/Giedi ownership and native defenses are connected. Native CHOAM fresh entries separately mark original Tupile slots, owner-selected normal-limit cleanup and low-query restoration; old profiles are not upgraded. No inferred controller, back-award, invented canceled-auction count, public/save conversion or unrelated overlay. Exceptional Duke remains separate. | [Source cutover](HOMEWORLD_OCCUPATION_RULES.md#occupied-economics-bidding-and-advanced-source-cutover--5-october-2026), [Basic policy](HOMEWORLD_OCCUPATION_RULES.md#basic-current-sole-benefit-policy--9-october-2026), [Tupile Basic lifecycle and original consumers](HOMEWORLD_TUPILE_INTELLIGENCE_RUNTIME.md#basic-current-sole-slot-lifecycle--24-october-2026) |
|
||||
| Printed high Ecaz Homeworld victory | Fresh native Ecaz/Homeworld entry only: current high7+, reciprocal alliance jointly holds one actual uncontested stronghold and proved physically held worlds of two other native factions. Separate source joins ordinary winner union before BG prediction/final fallback; no ordinary point inflation, Tech substitute or Duke permission. Basic holdings now follow the provisional current-sole policy, so a repopulated, contested or departed world simply stops counting instead of blocking the win; old/public profiles unchanged. | [Card contract and actual original win](HOMEWORLD_RULES.md#printed-high-ecaz-alliance-victory--5-october-2026) |
|
||||
| Standalone E3 Nexus / Skills / original components | Fresh Ecaz OR Moritani/classic ecaz33/all14/all12, Basic/Advanced2..6, original Tech3+/Advanced Strongholds2+. Original Duke/assassination/Terror, chosen-plan Advanced Occupy and separate physical armies remain. Ecaz-led Suk rescues only its own fixed casualties; Diplomat uses the selected faction's own undialed commitment. Owner-pool skill composition is an explicit implementation inference, not a combined-skill FAQ. E3 pairs/Harkonnen Advanced/HW/previews/shared-Duke training/enhanced relocation and pending rulings remain guarded. | [Source and verified scope](NEXUS_CARD_RULES.md#standalone-e3-nexus-skills-and-original-components--5-october-2026), [coalition contract](ECAZ_OCCUPY_RULES.md#standalone-nexus--skills-coalition--5-october-2026) |
|
||||
| Harkonnen special-Karama forced return | Return automatically only when the combined hand equals the count owed. Keep actual drawn-card observations owner-private after settlement; legacy forced saves describe held-card history without inventing draw provenance. Existing provisional auction-payment recovery and mode gates remain. | [Contract and limits](HARKONNEN_EXCHANGE.md) |
|
||||
|
||||
Reference in new issue
Block a user