fix: harden world travel presentation
This commit is contained in:
@@ -23,6 +23,15 @@ The reference screenshots were inspected but are not shipped or referenced by th
|
||||
- `ContextPanelComponent` renders the current/selected location, description, recommended level, safe status, hunting status, and server artwork.
|
||||
- Seed paths now match the delivered assets and are covered by the API seed test.
|
||||
|
||||
## Review-fix round
|
||||
|
||||
- Map-node geography is now anchored to the stable location keys (`south-gate` and `burned-road`). Current, reachable, and selected state only changes presentation; a regression test swaps the authoritative current location without moving either node.
|
||||
- On a server `COMPLETED` response, the selected connection is cleared and the store stays loading until the authoritative character/location/travel reload completes. All travel actions are disabled in that interval; no local arrival or location update is performed.
|
||||
- The moving countdown is a `<time role="timer">` without a broad live region. The selected and travelling mode headings remain labelled for assistive technology.
|
||||
- The decision panel now occupies normal document flow below the map scene, reserving a non-overlapping zone at desktop and narrow breakpoints.
|
||||
- The original delivered PNGs remain untouched. A deterministic local System.Drawing JPEG conversion (quality 86, high-quality bicubic) provides runtime derivatives: `map_ashen_realm-1440.jpg` (1440x810, 233,778 B), `Suedtor-960.jpg` (960x540, 94,286 B), and `Aschestrasse-960.jpg` (960x540, 93,277 B). The WorldPage and ContextPanel prefer these derivatives while retaining each server artwork path as the `<img>` fallback.
|
||||
- The load error is exposed as an alert and its retry control is covered by a store-load regression test.
|
||||
|
||||
## Verification
|
||||
|
||||
- RED confirmed: four new WorldPage contracts failed against the empty placeholder; seed artwork-path assertion failed against the former WebP paths.
|
||||
@@ -30,6 +39,10 @@ The reference screenshots were inspected but are not shipped or referenced by th
|
||||
- Full web tests: 18/18 pass.
|
||||
- Affected API seed tests: 2/2 pass.
|
||||
- `npm run build:web` and `npm run build:api` pass.
|
||||
- Review focused World/Store/Context tests: 19 pass (4 files; 4 pre-existing skips).
|
||||
- Review full web suite: 23/23 pass.
|
||||
- Affected API seed test: 2/2 pass.
|
||||
- Both review builds (`npm run build:web`, `npm run build:api`) pass.
|
||||
|
||||
## Remaining concern
|
||||
|
||||
|
||||
Reference in New Issue
Block a user