b7ec94015ae93f2d143c19db65d74c9ed955058b
4
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
640342527a |
Filter unsupported ordinary AI arrival candidates
Bots previously retried ordinary ship/move arrivals rejected by the existing Ambassador/Terror guard. A focused owner-view adapter now calls the same immutable arrival quote as authoritative preflight after source and payment selection. It preserves single reactions, faction exemptions, BG stance, actual Guild contribution income and No-Field component pricing. Specialized Homeworld, explicit Nexus and special movement routes retain their existing adapters; no simultaneous-reaction priority or module gate changes. Independent rules/privacy review passed. Six new regressions cover all four profiles, executable alternatives, real-engine single reactions, Guild-funded contributions, BG accompaniment/intrusion, owned No-Fields, immutable JSON views and access traps on rival private data and concealed Terror faces. The adapter catches only typed arrival failures and does not sample randomness. Twenty-five focused rules and recovery cases passed, followed by types, lint and 4829 offline tests on frozen source. No UI, build, dependency, HTTP or database code changed; build and HTTP suites were not repeated. Eighteen genuine Basic/Advanced base and expansion samples completed: 9470 accepted actions, 247 periodic JSON restores and zero rejected candidates. The original reproduction dropped forty Basic and four Advanced rejected candidates; the six expansion baseline samples dropped eighty-two more. All accepted sequences matched their same-seed predecessors after excluding trace counters and consistently mapping random UUID v4 event identifiers by first appearance. Action values, repeated identity relationships, summaries and winners were preserved. Samples do not certify all optional modules, every AI candidate or difficulty ordering. After the reported power failure, the development server remained healthy and the existing private QA seat restored after browser refresh. All 1038 opening saved games and original seat, recovery, room-entry and handover records are unchanged. SQLite integrity and foreign keys pass. No server restart, database reset or recurring automation was needed. Full rules and publication completion gates remain closed. Verified source tree: 75ab4624dbeff634d3bd4606b0deb4b701efca82d55c189896205cc9a576217d |
||
|
|
368a7a5144 |
Add reusable base game samples across player counts
The existing offline faction runner now selects genuine Basic and Advanced base games with two through six players. Original six expansion defaults and seed offsets remain stable; player-count filters require the explicit base profile. Saved AI profiles choose every setup and game action. This replaces repeated private harness copies while preserving source-bound private reports, failed traces and explicit snapshot resume. Shared custody checks include every physical Treachery zone, nonnegative integer resources, twenty-force totals, the distinct Emperor/Fremen/Ixian elite totals and subsets, and canonical base Traitor identities after dealing. Rejected actions must leave their input unchanged; periodic JSON restoration compares all private views and excludes rival private hand/spice/Traitor/Face Dancer fields. Optional modules and separate private previews cannot be resumed as ordinary fixed scenarios. Resume still requires checking original setup provenance and intentionally restarts the selected random stream. Independent review caught and corrected seven-cyborg accounting, save-derived Traitor expectations, missing elite records and private-preview classification. Meaningful regressions cover those failures plus strict filters, original names/seeds, failed subprocess reporting, source stability and resume. Types, lint and 4823 offline tests pass. No application, dependency, HTTP or database code changed, so build/HTTP suites were not repeated. All ten base and six existing expansion samples completed on the final unchanged source: 6746 accepted actions, 175 periodic restores, 82 rejected candidates retained in traces. The expansion guarded-arrival fallbacks remain visible; these samples do not certify every faction, optional module, player-count rule or difficulty ordering. Exact expansion Traitor/Face Dancer custody still needs its own adapter. The earlier pilot/source-changed report remains private; the required check was repeated after the late review correction rather than accepting results from changing source. All 1038 opening games and original seat/recovery records are unchanged; 1038 rooms remain. SQLite integrity and foreign keys pass. The existing QA table restored its saved seat and fulfilled shipment after browser refresh. The healthy server was reused without reset or restart. The rules register now explicitly records the Moritani Secret Ally after-loss privacy blocker. A holder-only pause exposes its hidden Nexus; the existing alliance-retention helper does not resolve the shared pending response UX decision. No duplicate user question, new house rule or mode/publication gate change was introduced. Verified source tree: 85d5a53fa72efb9704c1828526aaccba1554670307ce476f729eae9c5c4abff9 |
||
|
|
903d861170 |
Prevent saved CHOAM movement arrival deadlocks
Preflight ordinary movement through the existing arrival quote before creating new Ornithopter escrow or opening Ixian, Fremen and CHOAM prevention windows. An explicit legacy CHOAM decline can return an uncommitted unsupported arrival for another choice without consuming movement or touching forces, spice, cards or tokens. Preserve an existing Ornithopter and retire it exactly once on a legal replacement move. Keep dedicated Ambassador relocation handling and Karama cancellation validation before cost; unrelated exceptions remain atomic. Simultaneous Ambassador/Terror priority still awaits the recorded material interpretation, with no invented ordering. Add reusable offline faction-game samples with genuine Basic/Advanced setup, all four AI profiles, physical custody checks, JSON restorations, private traces and failed snapshots. Source-bound reports and input snapshot hashes make fresh and resumed samples repeatable; document that a resumed continuation starts a new seeded stream and does not prove input setup provenance. Validation: independently reviewed fresh declaration, native cancellation, supported single arrivals, legacy retry and card custody tests. Two production SQLite tests cover authenticated private restoration, stale/duplicate/wrong-owner rejection, resource conservation and concurrent version races. Typecheck, lint, 4583 offline tests, production build and 43 HTTP tests passed. Retain the initial failed check log for the corrected numeric-sort lint issue. All six fresh samples complete. CHOAM Basic 1054 actions/28 JSON restores, CHOAM Advanced 225/6, Ecaz Basic 91/2, Ecaz Advanced 523/14, all-three Basic 476/12, all-three Advanced 1303/35 with a turn-six CHOAM win. Combined Advanced has 46 guarded arrival candidates with legal alternatives. The exact prior 614-action failed snapshot separately finishes after 691 additional actions/18 restores and 39 guarded candidates. These are bounded paths, not complete faction or combination certification. Gameplay source hashes match the final checkpoint; later evidence-only documentation and recovery-test lint edits are explicit. After the reported outage, all 632 opening games and original seat/recovery records were preserved (665 after HTTP tests); integrity and foreign keys passed. Existing Ecaz and Ixian browser seats restored their same private hands, resources and pending choices after reload. This is browser restoration evidence, not a staged arrival-return claim. The healthy server was reused; no restart, database reset, recurring automation or publication. Verified source tree: 550221850f4802c41155f7bbc35d623965bc7db3330825636d50f26bb42868f8 |
||
|
|
6e26ba5daa |
Add repeatable verification and establish fresh save checkpoint
Consolidate current readiness and existing rule decisions, preserve selective subagents and automatic verified Git pushes, and record the efficiency pilot. Add source-bound compact checks, private saved-game snapshots/online backups, and bounded HTTP seat-restoration checks with 15 meaningful regressions. At the user's explicit request, archive and clear 3,644 old local rooms and related records while retaining schema/migrations; preserve future games from a fresh empty baseline. Private backups and credentials are outside Git. Validation: npm run check passes types, lint and all 4,177 offline tests. Full report: 20260913-efficiency-check-3, 130.147 seconds; source fingerprint 344ce1d44475b0cd4ff10a915f28331cb4e2fcacbc7595636fbaa645c0568f64. Two earlier broad attempts stopped at new type/lint errors before tests; both were fixed. Independent review found cancellation falsely passing; SIGINT/SIGTERM regressions and review confirm the fix. Documentation links, example test selection, private backup integrity and empty baseline verified. No app/build/dependency/HTTP implementation changed; no production build, HTTP suite, browser acceptance or AI calibration claimed for this checkpoint. The full game goal and existing release gates remain unfinished. |