Prototype Moritani Assassinate Leaders with saved Mentat replacement

Connect a qualifying native Advanced Moritani battle loss to private reveal/continue controls, live or already-dead opposing-faction targets, printed-strength bank bounty, and automatic Mentat replacement. Keep the revealed physical card held until Mentat, then set it aside as a public per-faction use marker and draw one private card. All four AI profiles use the owner-only legal quote. New local preview profile supports genuine setup without opening public starts.

Keep unresolved normal traitor-call duration and uniform private no-choice UX explicit. Record normal calls and guard later use without claiming a settled permanent loss. Exclude exceptional captured/foreign leader custody, other expansion factions and combined optional modules from this bounded preview. No mode or publication gate opens.

Independent source/privacy/persistence review and 32 focused cases pass. Battle obligations independently bind cleanup, sealed normal-call logs wait for public revelation, physical replacement custody rejects missing cards and forged same-turn chains, and invalid actions remain immutable. Five authenticated SQLite cases cover pending/resolved restoration, Truthtrance interruption, competing submissions, stale/duplicate actions and corrupt saves. The local writer preserves seats and unrelated rooms.

Validation: types, lint, 4690 offline tests, production build and 43 HTTP tests passed with unchanged source. Two genuine Advanced four-profile games finish in 296 and 101 actions with zero rejected candidates, ten periodic JSON rounds and eight restored final seat views. All physical cards, forces and elites remain conserved. Two observed assassination opportunities are declined; these complete games do not establish natural reveal/replacement use.

The separate browser exercise explicitly stages conserved battle forces and one physical traitor swap after genuine setup. Actual battle actions open the choice. Master Bewt dies once and pays three spice; the card remains held through cleanup and is automatically replaced at Mentat with a public set-aside marker. Pending and resolved refresh, readable context-correct inspectors, physical custody and private projection pass. Guild independently collects two spice from Arrakeen. The saved QA game remains at human Terror placement.

After the reported outage, all 801 opening games and original seat/recovery records are preserved (835 after HTTP checks). All 802 rooms and original records immediately before verification also remain unchanged. Database integrity and foreign keys pass. The healthy server was reused without restart, reset or recurring automation.

Verified source tree: ad64f6775fb4c481002cc5eccf6d31e490085d11e10b7b19fb7df4947bcf0ccd
This commit is contained in:
Quintine committed 2026-09-14 02:16:58 +10:00
1 parent 8906b41bda
commit 58ae84f8e2
20 files changed
+2152 -13

No files matched your search

+34
View File
@@ -1,5 +1,39 @@
# Dune implementation status
## 14 September 2026 — Moritani Assassinate Leaders prototype and outage preservation
[Assassinate Leaders](MORITANI_ASSASSINATE_LEADERS.md) connects native Advanced
Moritani's qualifying battle loss to private reveal/continue controls, a different
opposing-faction Traitor Card, live-target death and bank bounty, and automatic
Mentat replacement with a public set-aside marker. Dead targets remain legal with
zero bounty. All four AI profiles use the owner's legal choices; one use per
faction and physical held/reserve/retired custody persist across saves.
The explicit local preview excludes exceptional captured/foreign leaders and
combined modules. A uniform private step prevents hidden eligibility leaks but
awaits the user's UX decision. Normal traitor-call duration also remains unresolved;
a recorded call guards later use without declaring a publisher ruling. No ordinary
start or publication gate opens. The checklist records the bounded prototype.
Independent source/privacy/persistence review and 32 focused cases pass. Separate
battle obligations bind cleanup, normal-call logs wait for public revelation, and
replacement custody rejects missing cards and forged same-turn consumption chains.
Five SQLite cases cover authenticated pending/resolved restoration, Truthtrance
interruption, competing writes, stale/duplicate actions and corrupt saved receipts.
Two genuine Advanced four-profile games finish in 296/101 accepted actions, with
zero rejected candidates, ten periodic JSON rounds and all eight final seat views
restored. Exact physical custody holds. Two opportunities are declined; these
samples do not exercise an assassination reveal. A separate conserved, staged
browser battle verifies Master Bewt's death, three-spice bounty, retained card,
automatic Mentat replacement, public marker, context-correct readable inspection,
and pending/resolved refresh. The QA game remains at human Terror placement.
After the reported power failure, all 801 opening games remain unchanged and the
healthy server is reused. Final types/lint/offline/build/HTTP results, source
fingerprint, preservation of room and seat/recovery records, and Git delivery are
recorded in the verified commit and private report. The full goal remains unfinished.
## 14 September 2026 — Truthtrance recorded knowledge and outage preservation
[Truthtrance knowledge](TRUTHTRANCE_KNOWLEDGE.md) connects stored Bene Gesserit