57a59c1663f8fbdf5ecfc6440be7b13cc894d263
4
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
dea9b20f9b | Repair stale fixtures for Guild permission/rate windows, Banker ledger and opened lobby gates | ||
|
|
e05a205a47 |
Compose the deferred Terror arrival and green the mixed E3 programmes
Queue a committed Terror entry whose arrival also opened its own
interaction — Guild income, a Bene Gesserit fighter Intrusion or advisor
choice, or Fremen storm protection — in the additive
Game.pendingArrivalReaction list, and open the oldest queued entry from
settleAutomaticContinuations once nothing is pending. Payment, force
transfer and the original movement never replay; a Terror entry already in
flight and every Ambassador combination still reject.
Both withdrawn mixed E3 programme pairs are green: Moritani 9/9 and Ecaz
14/14, stable across 20 consecutive full-file runs. Their recorded resume
constraints became real fixture repairs, and the two restored consumer
omissions were corrected against the engine rather than re-pinned.
Repair pre-existing failures inherited at
|
||
|
|
de26aaf029 |
Implement Advanced Ecaz Loyalty with public card inspection
Before genuine Advanced Ecaz Traitor dealing, randomly set aside one of the five native Ecaz cards face up for the game. Store its owner and exact identity once; exclude it from the initial deck, Tleilaxu Face Dancer setup and Nexus replacement universes. Do not change leader custody or add choices, payment or Karama windows. Absent markers preserve older already-dealt saves without taking held cards away. Validate owner, timing and distinct physical custody before actions, normalization and projection. Expose a detached public card identity, never private deck order. Show the named card, portrait and enlarged Traitor inspection above the table. A dedicated Loyalty context explains public set-aside custody and cannot-call rules; browser review caught and fixed the generic held-Traitor guidance. Add internal help, checklist, shared Advanced faction text and source documentation. The official page8 requirement and page16 noKarama entry support the effect; relative pre-Traitor prediction/skill sequencing is an explicit composition. Gated Skills/Ecaz and Moritani assassination/Ecaz are not certified. Twelve new cases plus related regressions cover candidate selection, immutable invalid-state rejection,2..6 genuine deals, Basic/noEcaz, completed Tleilaxu setup, Harkonnen/Tleilaxu Nexus draws, full physical census, detached public views, all4 legal AI setups, JSON continuation, legacy custody and public rendering. Independent review found no material issue after genuine setup/legacy test fixes and the focused inspector correction.50 related focused cases pass. A mistyped filename filter failed closed before the corrected union ran successfully. Types, lint, all 5012 offline tests, production build and 49 HTTP tests pass on stable source. Earlier type/lint findings were corrected before this run. Six genuine faction-game samples finish with no rejected actions and repeated JSON restoration: CHOAM Basic1054/Advanced225 actions, Ecaz Basic91/Advanced245, combined Basic476/Advanced704. Existing physical Treachery/force custody checks pass; focused Loyalty tests cover expansion Traitor census. These bounded legal samples are not strength calibration or complete expansion acceptance. Browser QA created a fresh Ecaz/Easy Harkonnen ready lobby and initialized its Advanced setup before dealing using backup and CAS. Bindikk Narvi was public before choices and remained excluded through actual human Traitor/force setup, Storm and refresh. The saved human Traitor is Beast Rabban; a pointer action just after viewport reset differed from its intended Feyd target, so exact-target pointer acceptance across viewport changes is not claimed. Ordinary source bindings remain name/ID-specific. One hand card,12spice,14reserves and the pending Storm dial restore; both public projections agree and saved seat records match. The Loyalty inspector shows correct card-specific guidance; Escape restores focus. At390px its panel has no horizontal overflow,16px text and44/48px controls; the expanded scroll body fits342px. Internal help opens its complete checklist topic. Normal viewport restored. Screenshot capture timed out; full visual, long-inspector keyboard and broader module acceptance remain open. All 1539 pre-existing rooms, 3259 human seat records and auxiliary rows remain unchanged. SQLite integrity and foreign keys pass. Only isolated QA/HTTP fixtures add rooms. No server restart, database reset, migration, recurring automation, AI strategy change or mode/publication gate change. Private evidence: 20260921-gameplay-review. Verified source tree: 881bf1912665350086d80be664d479a1b2724146da6ccc9576790c07e0449ee6 |
||
|
|
cab2f1c42d |
Connect expansion faction setup and saved Ixian auction decline
Add a local faction-only prototype profile for all seven nonempty expansion selections, genuine Basic/Advanced initialization and existing private setup, controls, AI and saved continuation. Ecaz allocates six forces across Imperial Basin sectors and retains fourteen reserves before later setup; preserve Fremen, Advanced BG and Moritani ordering with printed and inferred boundaries explicit. Keep optional Ecaz Treachery cards separate, ordinary deck counts 33/35/47, and Richese cache separate. Public start and publication gates remain closed. Replace the Advanced Ixian/Richese pre-offer stop with an explicit per-lot Ixian decline. Bind the saved original offer to its round, turn, owner, independent event, exact card custody and terms before view/action/normalization. Decline resumes that unchanged lot once without using Technology; later normal lots still offer the exchange. Protect reserved cards across transfers, spending and random Harkonnen exchange, and preserve legitimate Gift/Truthtrance interruptions. The actual special-lot exchange still awaits replacement-custody interpretation. Validation: focused setup, rules, UI/bot, private JSON/SQLite reload and concurrent CAS tests and independent custody/persistence review passed. Typecheck, lint, 4573 offline tests, production build and 43 HTTP tests passed. Browser Ecaz setup rejected an incomplete total, saved a 2/2/2 split, and refreshed to fourteen reserves and unchanged private cards. A separate genuine Advanced QA game restored the Ixian choice; explicit decline opened the unchanged cache lot with legal bidding and retained private hand, spice, pool count and unused Technology after refresh. Five of six genuine four-profile samples finish: CHOAM Basic 1054 actions/28 JSON restores, CHOAM Advanced 225/6, Ecaz Basic 91/2, Ecaz Advanced 523/14, all-three Basic 476/12. Combined Advanced passes three former auction stops and reaches turn three/action614 with 16 restores, then hits an existing CHOAM movement/Ambassador arrival guard. Ecaz samples also include guarded arrival candidates with legal alternatives. Full combined play is not certified; arrival integration is the next gap. Retain initial failed logs, including a corrected private harness sold-card receipt alias. After the outage, all 597 opening rooms and original seat/recovery records were preserved (632 after QA/HTTP). A stale development module cache required restart after a fresh 598-room backup; all 598 matched afterward and the QA seat restored. Final integrity and foreign keys passed. No database reset, recurring automation or publication. Verified source tree: 5e2ff244a1167f2834bb46d609b8de914a34f7049ff7b06046243068c0935131 |