Files
Dune/docs/CURRENT_STATUS.md
T
Quintine 7814f740ef Add durable public and private table discussion
Humans can discuss plans publicly or message another human seat privately while
pending game decisions stay intact. The conversation panel provides plain text,
explicit recipient names and factions, saved history, private pagination and
exact retries through refresh. Human AI-control owners can still talk; bots do
not interpret messages or negotiate. Existing game actions execute agreements.

An additive indexed D1 message table stores discussion separately from game JSON,
versioning, readiness and bot continuation. Every read/insert checks active seat
credentials and membership; direct audiences and cursor lookups are filtered
before limiting. Public history has no private activity counts or sequential IDs.
Recovery/handover inherits seat history while fencing old credentials.

Independent review found two retry races: a rotation between a committed insert
and receipt read, and stale unmounted completion deleting a newer retry record.
Both are fixed with regressions. A prior uncertain retry stays pending on later
rejection. The nine focused offline cases and two HTTP cases cover production SQL,
concurrent/altered receipts, audience/cursor privacy, rotation/membership races,
actual saved-kit recovery and unchanged sealed setup state.

Types, lint, all 4963 offline tests, production build and 48 HTTP tests
pass on stable source. An initial check caught an invalid checklist status label;
that was corrected before the successful final2 verification.

Desktop browser checks send public/private messages, receive a peer reply, retain
private history after refresh and remove it on channel switch. Literal markup and
URLs remain text. Recipient and bystander API reads confirm the browser messages'
audiences. Screenshot capture was unavailable and the viewport override did not
take effect; mobile, full keyboard/visual and injected browser network-failure
acceptance remain open. No final rules, mode, AI or publication gate changes.

All 1373 pre-existing rooms, 2883 seats and auxiliary rows
are unchanged. SQLite integrity/foreign keys pass; migration 0007 adds messages
without replacing data. The healthy server was reused without restart.

Private evidence: 20260921-table-talk.
Verified source tree: 236dd55b6c15d55dbced735be67427e5fbd7fa348d583f119e67a03894ec21b0
2026-09-21 09:52:31 +10:00

12 KiB

Current development status

Updated 21 September 2026. The full twelve-faction goal is unfinished. Basic is playable; public Advanced and unfinished expansion/module starts remain gated. Prototypes do not open completion or publication gates.

Current checkpoint and work

Latest delivered checkpoint: b2fcef8, Storm and Spice Blow practice. Types, lint, 4,954 offline tests and production build passed. All 1,373 rooms, 2,883 seats and existing auxiliary rows stayed unchanged. The running server was reused. Earlier checkpoints include 66c41b2 for Kwisatz Haderach inspection, ed53eb7 for Storm Cards and 67e429e for Charity/Revival practice. The 8f7a62c policy checkpoint removed the usage cutoff and deferred AI refinement until feature completion, with three adjacent 75% targets. See the implementation history.

Current work: table discussion adds public conversation and private human-seat messages, separate from game state and decision continuation. Durable history, audience-filtered pagination, exact retries and active-session fences support communication through refresh and seat recovery. AI conversation and prose-deal enforcement remain unfinished. Source-bound checks, independent review, browser and preservation/Git evidence belong to the private checkpoint. A fresh bounded Terror/Kull audit confirmed existing pending rulings; independent multiplayer communication proceeds without inventing their outcomes. The full rules, multiplayer and component acceptance gates remain open.

A bounded remaining-effect audit found that the reviewed faction/Nexus candidates still cross recorded pending rulings. Continue independent features rather than inventing answers. The platform audit found no supported Sites scheduler or Durable Object provisioning contract. Durable unattended bot resumption remains blocked on that capability; current request/reconnect continuation does not establish it. Continue independent player-facing features and integration while preserving pending rules questions.

The connected Harass & Withdraw prototype supports either battle-card slot, private category inspections, exact undialed normal/elite returns, opponent-Traitor cancellation, mandatory disposal, controls and all four AI profiles. New battles also have revealed physical allocation for ordinary/elite mixtures and multi-sector returns. Richese card combinations and additional optional modules stay gated. Withdrawal before explosion and card-specific discard precedence are explicitly labeled inferences. The Stone Burner timing question is pending; no user answer is assumed. Reinforcements remains unfinished. This does not open variant, mode or publication gates.

The preceding early Sapho aggressor connects the printed battle-priority effect during the existing shared pre-plan opportunity. Physical attacker/defender/chooser stay stable; Habbanya takes precedence in either slot. Shared priority feeds Stone admission, ordinary/Stone resolution, public controls and all four AI profiles. Battle-bound history survives private saved continuation. Later intervention remains unfinished; no new ruling is assumed. Final checks, samples, browser evidence and delivery belong to the source-bound private report and Git message.

The Mirror admission review found that every genuine Richese setup contains the unresolved copied weapons. Ordinary-only activation cannot safely depend on hidden custody or alter the printed deck. Mirror remains gated pending the existing disposal ruling and copied-choice work. Continue with independent missing faction/card functions, then integrated play and refinement.

The Smuggler follow-up review supports a saved reveal-time receipt with settlement only on leader survival, but located no official ruling on modified leader strength. The user has been asked about Kwisatz/trainer/Stunner composition; no answer is assumed. See the source follow-up.

Authoritative navigation

  • Rules checklist, topic implementation-checklist and each feature's entries: track implementation, controls, AI, documentation and verification, plus Missing, Prototyped, Integrated, Verified and Polished stages.
  • Rule decision index: settled contracts, source precedence and pending material interpretations. Consult it before reopening research.
  • Development guide and verification tools: architecture, focused checks, source-bound reports, reusable faction samples, private backup and saved-seat restoration.
  • Implementation history: newest first. Historical evidence and outage records stay there and in feature documents; read bounded relevant sections and verify old absence claims against current code/tests.
  • Efficiency pilot: the first three milestones are pushed; measurement limits remain explicit. Reuse tools and checks, without promising an unmeasured savings percentage.

Connected development capabilities

These links define bounded working behavior, not complete module certification.

Area Current connected work and evidence
Base/Advanced setup Genuine setup, Advanced study, Fremen cancellation, Atreides full-plan audit. Earlier Basic-then-flip fixtures do not establish current setup coverage.
Expansion factions Ixians/Tleilaxu and all seven faction selections: genuine setup, Ecaz six-force placement, separate optional card variants, private controls and saved per-lot Ixian/Richese decline. Actual special-lot exchange remains pending.
Leader Skills Common lifecycle, known skilled capture, Mentat question preview, Bureaucrat payments, five battle disciplines, Planetologist, Suk Graduate, Rihani and other battle effects, Smuggler shipment, No-Field and battle collection, Sandmaster routes and worm rides, Banker spending, Diplomat defense. Remaining bands and combinations are explicit in those contracts.
Discoveries Prototype: genuine setup, Great Maker, seven cards/eight tokens, inspection and stash rewards, nested sites, signed later free entry, carried Ornithopter, sole Cistern, bounded Jacurutu income, Testing Station and Shrine. Orgiz and contested/mixed cases remain pending.
Nexus/Homeworlds Decision index links each integrated faction family, native/borrowed effects, physical custody, private choices, payments and transport. CHOAM Collection trade and Emperor extra revival are connected; CHOAM inspection and Emperor purchase remain pending. A source audit or helper alone is not a completed effect.
Truthtrance Spice facts, card counts, hand inventory, recorded knowledge, and Basic/no-Guild Advanced reserve-shipment promises use authoritative private state. Earlier readiness audits do not supersede these follow-ups.
Other cards Sapho runtime includes first among remaining unstarted movement turns after Advanced Guild has finished. Recruits connects clean Revival play; Harass & Withdraw connects the bounded battle return in the same independent three-card preview. Richese card contracts and the checklist identify other connected effects and explicit gaps.
Multiplayer Public and private discussion, saved rooms/seats, recovery, uncertain-request retry, own-seat AI, named-player AI permission and voluntary seat handover have connected controls and recovery evidence.

Remaining readiness

Area Remaining gate
Basic core Ordinary Guild repricing/transport settlement, broader truthful commitments, unresolved special timing and integrated rules/human/AI acceptance.
Six-faction Advanced Base gaps, provisional special-Karama outcomes, remaining timing audits and authentic multiplayer/browser acceptance. Setup matrices and complete samples do not open public starts.
Twelve factions and all optional modules Every missing effect, remaining skill bands, Ecaz card variant, Kull Wahad, unfinished Richese cards, Terror effects, occupation entitlement, Nexus interactions, contested Discoveries and complete games across valid combinations. Detailed boundaries remain in the checklist/decision index.
AI Maintain minimal legal participation and critical correctness fixes while game features are unfinished. Full implementation, strategy refinement and calibration wait until all non-AI features are complete; then target approximately 75% higher-tier wins for Medium/Easy, Hard/Medium and Brutal/Hard. See the AI development plan. These targets remain unverified.
Multiplayer Broader disconnected/abandoned-seat recovery, unattended continuation and network-failure acceptance, while preserving authoritative versioning, custody, privacy and saves.
Components and experience Full component inventory/text verification, all readable inspectors, original artwork, animation/sound/accessibility/mobile polish, complete internal guidance and end-to-end human play.

AI calibration, multiplayer audit, component inventory and visual playtest record their measured scope. README retains publication gates.

Working sequence and preservation

Prototype every remaining function in dependency order, using existing controls, legal AI and the saved-state model. Continue independent functions while material rulings are pending. Then run integrated games, repair failures, deepen combination and recovery coverage, and complete all non-AI features. Only then fully implement and refine AI strategy and calibrate the adjacent difficulty pairs. Keep focused checks for crashes, deadlocks, legality, custody and privacy; complete required broad checkpoint checks. Use selective subagents and independent review for complex rules/privacy/persistence. Commit and push verified checkpoints under “Push all from now on”, verify push success. The user removed the usage cutoff and routine account-usage checks; efficient work, Git delivery and selective subagents remain required.

The user-authorized 13 September reset happened once; preserve all games created since it. Keep .wrangler/state, credentials and private backup artifacts out of Git. Reuse a healthy server; restart only for a relevant change or observed problem, with a fresh backup, safe human-play boundary and verified restoration. No hourly restart or recurring maintenance automation is installed; do not recreate one.