Show completed core actions and summarize notice bursts
Tag committed ordinary movement, shipping, revival, collection, battle, native Guild transport and HMS relocation for the existing house notices and optional sounds. Keep pending and canceled actions free of false completion notices and preserve richer Smuggler and card-specific labels. Bound feedback to three 1.5-second notices including the active notice. Summarize older pending events with an exact count and retain individual chronicle entries. Consume stale, duplicate, muted and hidden updates without replay; clear visible and queued feedback when the page hides. These changes add log metadata and cosmetic presentation only. Validation: types, lint, 5137 offline tests and production build passed. Independent review resolved one duplicate Smuggler notice. Nine engine regressions and six queue/cursor/component tests cover the new behavior. Two Basic/Advanced four-player games completed with 821 legal actions, 21 JSON restores and zero rejected actions; no AI tuning was done. Browser QA 76CMLL8Z used genuine Basic setup and private real-action batches. A seven-event burst displayed Revival plus four earlier actions, then drained. Chronicle navigation and silent toggle/refresh were checked; refresh kept the saved row identical. Phone notice bounds fit without overflow. Transient phone text and actual background visibility were not captured; screenshot and full visual acceptance remain open. All 1,585 prior rooms, 3,353 seats and auxiliary records stayed unchanged. One QA room and human seat were added; no reset, restart or automation.
This commit is contained in:
1 parent
7136c8dd19
commit
a3bc0ac837
12 files changed
+495
-48
No files matched your search
@@ -0,0 +1,58 @@
|
||||
# Completed-action feedback
|
||||
|
||||
The existing optional house-colored notice now covers ordinary completed
|
||||
shipments, ground movement, force and leader revival, spice collection, battle
|
||||
results, native Guild transport and Hidden Mobile Stronghold relocation. Existing
|
||||
card-specific and faction-specific labels remain where they give more context.
|
||||
These notices describe committed results. Declaring a shipment or waiting for a
|
||||
response does not announce that the shipment has already happened.
|
||||
|
||||
The server adds only a public faction and short action name to the existing
|
||||
chronicle entry. No private card identity, plan, force denomination or balance
|
||||
is added to the notice. Rules, choices, payments, force custody and server AI
|
||||
pacing are unchanged. The optional sound system already consumes these tags;
|
||||
its separate mute and volume settings still apply.
|
||||
|
||||
## Bursts, refresh and controls
|
||||
|
||||
Each notice lasts 1.5 seconds and does not intercept pointer or keyboard input.
|
||||
The queue holds at most three notices including the visible one. When more
|
||||
actions arrive, older pending notices merge into a count beside the most recent
|
||||
action in that group; their individual details remain in the table chronicle.
|
||||
A new burst never replaces the currently displayed notice. After arrivals stop,
|
||||
the visible notice and pending queue finish within 4.5 seconds, rather than
|
||||
retaining minutes of old events.
|
||||
|
||||
Initial and restored snapshots establish a silent baseline. Already-seen events
|
||||
do not replay. Events received while notices are off or the page is hidden are
|
||||
consumed silently. Hiding the page clears any visible or queued notice. The
|
||||
**Automatic action notices** toggle remains cosmetic; it cannot submit a game
|
||||
action or change a saved decision. Reduced motion removes the fade.
|
||||
|
||||
## Verification boundary
|
||||
|
||||
`tests/action-notice-queue.test.tsx` checks small updates, a full 250-entry burst,
|
||||
successive bursts during an active notice, exact represented counts and the
|
||||
initial nonblocking output, plus stale/duplicate sequence handling and silent
|
||||
consumption without replay. `tests/completed-action-events.test.ts` exercises
|
||||
committed results and pending/canceled paths. Private checkpoint evidence records
|
||||
the browser checks and final source-bound verification.
|
||||
|
||||
Browser QA used genuine Basic Atreides/Harkonnen/Emperor setup. Private batches
|
||||
advanced only that QA room through real engine actions, preserving card/force
|
||||
custody and seat controllers. A seven-event burst displayed the Emperor's
|
||||
**Revival** with four earlier completed actions, then drained. The chronicle
|
||||
remained usable and the notice had no pointer interception. A disabled notice
|
||||
control stayed empty as new chronicle entries arrived; re-enabling and refreshing
|
||||
left it empty. Refresh retained the exact saved game row. At a 390-pixel viewport,
|
||||
the notice container was 343 pixels within a 375-pixel document without horizontal
|
||||
overflow; transient mobile text was not captured. The viewport was reset afterward.
|
||||
|
||||
The provider reports background tabs as visible, so an actual background-page
|
||||
transition was not exercised. The cursor tests and handler review cover that
|
||||
branch; the automated component test does not mount timers. Existing screenshot
|
||||
capture failures leave full visual acceptance open.
|
||||
|
||||
This extends functional feedback; complete animation design, every successful
|
||||
power tag and full visual/device acceptance remain unfinished. It does not
|
||||
remove any additional player decision or resolve pending rules interpretations.
|
||||
+16
-13
@@ -6,20 +6,23 @@ gated.** Prototypes do not open completion or publication gates.
|
||||
|
||||
## Current checkpoint and work
|
||||
|
||||
Latest delivered checkpoint: `d1bf33d`, [Basic CHOAM with Leader Skills](CHOAM_LEADER_SKILLS.md).
|
||||
Types, lint, **5,101 offline tests** and the production build passed; five
|
||||
complete two-through-six-player samples had no rejected actions across 3,067
|
||||
actions and 79 JSON restores. Browser setup, market Ghola revival, private
|
||||
skill refresh, mobile assignment and exact sale settlement were checked.
|
||||
All 1,583 prior rooms and 3,351 seats remained intact; one QA room/seat brought
|
||||
the baseline to 1,584 rooms and 3,352 human seats.
|
||||
Screenshot capture timed out; full visual acceptance remains open.
|
||||
Latest delivered checkpoint: `7136c8d`, [Truthtrance physical-force questions](TRUTHTRANCE_FORCE_FACTS.md).
|
||||
Types, lint, **5,122 offline tests** and the production build passed; six
|
||||
complete Basic/Advanced samples had no rejected actions across 1,551 actions
|
||||
and 39 JSON restores. Browser compound questions, AI responses, mobile controls
|
||||
and exact human private-answer refresh were checked. All 1,584 prior rooms and
|
||||
3,352 seats remained intact; one QA room/seat brought the baseline to 1,585 rooms
|
||||
and 3,353 human seats. Full visual acceptance remains open.
|
||||
|
||||
Current work adds [Truthtrance physical-force questions](TRUTHTRANCE_FORCE_FACTS.md):
|
||||
normal, elite or total counters in reserves, the Tanks or one board location.
|
||||
Existing compound questions, private answers, card retirement and saved history
|
||||
are reused. These are present facts, without hidden No-Field values or future
|
||||
movement constraints. Saved facts are revalidated before actions or projection.
|
||||
Current work connects [completed-action feedback](ACTION_FEEDBACK.md) for core
|
||||
movement, shipment, revival, collection and battle results. Existing cosmetic
|
||||
notices coalesce bursts into at most three visible/pending notices, with complete
|
||||
chronicle details retained; hidden pages clear and silently consume feedback.
|
||||
|
||||
A bounded follow-up candidate is the forced Harkonnen special-Karama return
|
||||
when every held card must go back. Automatic settlement must preserve a private
|
||||
saved record of the randomly inspected cards and the original interruption.
|
||||
This is unfinished; larger hands must keep their real return choice.
|
||||
|
||||
The [Sandmaster/HMS source comparison](SANDMASTER_MOVEMENT.md#21-september-native-hms-relocation-eligibility)
|
||||
found no official clarification that passengers remaining in the interior
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
# Dune implementation status
|
||||
|
||||
## 21 September 2026 — Completed-action feedback
|
||||
|
||||
Core committed movement, shipping, revival, collection and battle results now
|
||||
feed the existing house-colored notices and optional sound. Burst summaries
|
||||
retain every represented action count while limiting the visible/pending queue
|
||||
to three notices. Hidden pages consume updates silently and clear old feedback.
|
||||
See [coverage and verification](ACTION_FEEDBACK.md). Rules and AI strategy are
|
||||
unchanged; full visual acceptance and remaining power tags stay open.
|
||||
|
||||
## 21 September 2026 — Truthtrance physical-force questions
|
||||
|
||||
Current force facts compare normal, elite or total physical counters in reserves,
|
||||
|
||||
@@ -43,3 +43,7 @@ to change sound settings. Settings were returned to off and 35% afterward.
|
||||
This is a functional prototype, not the final sound design. Successful powers
|
||||
without an automatic notice tag remain outside these cues. Per-component audio,
|
||||
broader device/browser acceptance and final sound mixing remain unfinished.
|
||||
|
||||
[Completed-action feedback](ACTION_FEEDBACK.md) extends the tagged events to
|
||||
ordinary movement, shipping, revival, collection and battle results. The sound
|
||||
system keeps its existing silent baseline, coalescing and independent controls.
|
||||
Reference in new issue
Block a user