Add Kwisatz Haderach component inspection

Connect an original companion face and enlarged rules to the private Atreides panel and battle composer, authorized full-plan inspection, public revealed plans and an internal reference topic. Private loss progress and availability come only from the existing owner projection; plan components receive only inclusion. Rules calculations, save shape, AI strategy and mode gates remain unchanged.

Add focused projection, sealed/revealed rendering, JSON restoration, private-status and asset regressions. All 4950 offline tests, types, lint and production build pass. Independent privacy/rules review found no material findings. Browser checks verify reference opening, loaded artwork, Escape/Close focus return, mobile bounds and keyboard scrolling to the final rule. The focusable scroll region has a documented narrow lint exception. Earlier image-convention and focusability lint failures are retained in private evidence. HTTP tests are unnecessary for this presentation-only change.

All 1373 rooms, 2883 seats and original auxiliary rows remain unchanged; SQLite integrity and foreign keys pass. Existing server reused without restart. Screenshot capture, complete live Advanced browser acceptance and final manufactured-component/art verification remain open. No rules gate is opened by this checkpoint.

Private evidence: 20260921-kwisatz-inspection.
Verified source tree: 1181471eed47b86390882999a2ffce0db6a44b1379c7e8f7fc406bef39a94179
This commit is contained in:
Quintine committed 2026-09-21 09:00:51 +10:00
1 parent ed53eb7d76
commit 66c41b2af5
16 files changed
+341 -24

No files matched your search

+8
View File
@@ -1,5 +1,13 @@
# Component inventory and verification ledger
**Kwisatz Haderach inspection, 21 September 2026:** original companion artwork,
readable enlargement, private loss tracking and availability guidance now connect
to Atreides controls, authorized plan inspection and the internal reference.
Public plan inclusion never exposes the loss count, current death state or
territory usage. This closes the historical missing inspection/portrait gap;
exact manufactured component layout and combined-rule certification remain open.
See [scope and evidence](KWISATZ_INSPECTION.md).
**Storm Card inspection, 21 September 2026:** six numeric reference faces,
authorized private Fremen forecasts and structured public reveal receipts now
share an enlarged inspector. The actual card value survives separately from
+20 -20
View File
@@ -6,27 +6,27 @@ gated.** Prototypes do not open completion or publication gates.
## Current checkpoint and work
Latest delivered checkpoint: `67e429e`, [Charity and Revival practice](INTERACTIVE_INTRODUCTION.md).
Types, lint, **4,941 offline tests** and production build passed. All 1,337 rooms,
2,805 seats and existing recovery/entry/handover/delegation rows stayed unchanged.
The running server was reused; prior lesson results and paid returns restore.
The preceding `c4ff75a` connects alliance practice, `b7ec940` connects bidding,
and `b9718ac` connects
[lobby AI configuration](LOBBY_AI_CONFIGURATION.md), and `b21b2bc` connects
[one-use AI permission](SEAT_AI_PERMISSION.md). The `8f7a62c` policy checkpoint
removed the usage cutoff and deferred AI refinement until feature completion,
with three adjacent 75% targets. Earlier evidence remains in the
[implementation history](IMPLEMENTATION_STATUS.md).
Latest delivered checkpoint: `ed53eb7`, [Storm Card inspection](STORM_CARD_INSPECTION.md).
Types, lint, **4,946 offline tests**, production build and **46 HTTP tests** passed.
All 1,337 original rooms, 2,805 original seats and existing auxiliary rows stayed
unchanged; HTTP checks created their own additional records. The current baseline
contains 1,373 rooms and 2,883 seats. The running server was reused.
Earlier delivered checkpoints include `67e429e` for Charity/Revival practice,
`c4ff75a` for alliances, `b7ec940` for bidding, `b9718ac` for lobby AI configuration
and `b21b2bc` for one-use AI permission. The `8f7a62c` policy checkpoint removed
the usage cutoff and deferred AI refinement until feature completion, with three
adjacent 75% targets. See the [implementation history](IMPLEMENTATION_STATUS.md).
Current work: [Storm Card inspection](STORM_CARD_INSPECTION.md) connects six
reference faces, the permitted Fremen forecast and public chronicle receipts to
enlarged inspection. Original card values stay separate from modified movement;
legacy text logs remain valid. No rules or AI strategy changes. Independent review,
browser/check/build/HTTP/preservation and Git evidence belong to its private report.
A bounded current-state Duke review confirmed revival/loan paths still cross
recorded custody, return and cycle questions; existing identity/price helpers and
non-Ecaz guards are already present. No duplicate ruling or invented outcome.
Storm/spice-blow, full faction/Advanced/expansion teaching and broader
Current work: [Kwisatz Haderach inspection](KWISATZ_INSPECTION.md) connects an
original companion face, private battle-loss progress and availability guidance,
authorized private/public plan components and a static internal reference.
Rules calculations, sealed choices, save shape and mode gates remain unchanged.
Source-bound checks, independent review, browser and preservation/Git evidence
belong to the private checkpoint. Full Advanced acceptance, exact manufactured
component verification and the remaining component inventory are unfinished.
A bounded Duke review confirmed revival/loan paths still cross recorded custody,
return and cycle questions; no duplicate ruling or invented outcome was added.
Storm/spice-blow teaching, full faction/Advanced/expansion teaching and broader
multiplayer acceptance remain unfinished.
A bounded remaining-effect audit found that the reviewed faction/Nexus candidates
+11
View File
@@ -1,5 +1,16 @@
# Dune implementation status
## 21 September 2026 — Kwisatz Haderach component inspection
The [companion inspector](KWISATZ_INSPECTION.md) connects original artwork, private
battle-loss tracking and availability guidance, permitted full-plan and public
revealed-plan components, and static reference inspection. Existing server
projection remains the privacy boundary; no rules calculation, save migration
or AI tuning changes. Focused rendering/projection/JSON tests supplement the
existing battle/death/revival checks. Independent review and source-bound
check/build/browser/preservation/Git evidence belong to the private checkpoint.
Manufactured-layout verification and full Advanced acceptance remain open.
## 21 September 2026 — Storm Card inspection
The [Storm Card inspector](STORM_CARD_INSPECTION.md) connects six numeric reference
+54
View File
@@ -0,0 +1,54 @@
# Kwisatz Haderach component inspection
21 September 2026. Prototyped component presentation; Advanced and expansion
release gates remain closed. Original artwork and crisp interface text present
the Atreides companion separately from ordinary leader and Traitor identities.
The inspector explains its conditional strength, protection, losses, territorial
limit, death and separate revival. It does not submit or alter a battle plan.
## Connected surfaces and privacy
- The owning Advanced Atreides panel and battle composer use only `me.kwisatz`:
exact cumulative battle losses, activation, death and this-turn usage. A capped
seven-loss progress bar accompanies the exact count. The inspector explains
an unavailable, dead, canceled or already-used-in-another-territory state.
- Public revealed plans and permitted Atreides full-plan inspection pass only
the existing inclusion boolean. They never pass an owner's loss count or live
availability. The existing reveal and inspection-owner guards remain intact.
- The reference shows a static component with no live game state. Its topic is
linked from Advanced combat and the implementation checklist.
The unchanged `viewGame` projection authorizes owner data, including after JSON
restoration. Allies do not receive it. `KwisatzInspector` accepts no game, seat,
action or authoritative deck. The display helper explains already-projected
state; normal engine validation remains authoritative. Normal revival price,
cycle and eligibility are still provided by the existing revival controls.
No save schema, migration, network behavior or AI strategy changes.
## Authority and remaining work
Existing source records are the [classic GF9 rulebook, p.17](https://www.gf9games.com/dunegame/wp-content/uploads/Dune-Rulebook.pdf#page=17),
the [November 2020 FAQ, p.9](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf#page=9)
and the [Ghola lifecycle ruling](GHOLA_LIFECYCLE_AND_AI.md).
The base PDF refresh returned HTTP 403 on 21 September; this checkpoint uses
the previously recorded source contract and existing tested engine behavior,
not a claim of a newly retrieved printed face. Rules prose is an original
paraphrase. The companion face and progress bar are an interface adaptation;
exact manufactured layout and every printed detail still require final review.
The portrait was generated once with the built-in image tool, inspected and
bundled locally. Provenance and dimensions are recorded in
`public/art/leaders/kwisatz-generation.json`. The character has blue irises, not
fully blue sclera; final art refinement remains open. It is not an ordinary
leader, Traitor or Face Dancer identity and is not added to those catalogs.
Recorded Suk Graduate, Reinforcements and Smuggler combinations remain governed
by [pending rule decisions](RULE_DECISIONS.md). The inspector does not resolve
them, enable modules or certify the Advanced game.
Focused tests exercise real sealed/revealed engine projections, opponent/ally
privacy, basic-mode absence, JSON restoration, display states and the bundled
asset. The full-plan rendering test uses an explicitly constructed authorized
view and separately verifies its existing owner/reveal guard; it does not prove
every source timing window. Required broad checks, independent review, browser
controls and saved-game preservation are recorded in the private checkpoint.