From 887d58dc3503d6040ceecd8751e092c0e67889a2 Mon Sep 17 00:00:00 2001 From: jessikitty Date: Wed, 19 Aug 2026 16:31:58 +1000 Subject: [PATCH] docs: correct production hostname; note the scene-filter gotcha and its diagnostics --- docs/PAGES.md | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/docs/PAGES.md b/docs/PAGES.md index 2e09e3e..ee56ed5 100644 --- a/docs/PAGES.md +++ b/docs/PAGES.md @@ -1,7 +1,8 @@ # Pages -Every HTML page the exhibit serves, and what it's for. Base URL in production: -`https://newbury.hideawaygaming.com.au/` +Every HTML page the exhibit serves, and what it's for. + +**Production base URL: `https://newburynights.hideawaygaming.com.au/`** **Keep this current.** When a page is added, renamed, or removed, update this file in the same commit — it's the index there is, since there's no `/admin/` @@ -27,8 +28,8 @@ Open in `EXHIBIT_MODE=dev`; password-protected in `EXHIBIT_MODE=final` | `/admin/preview.html` | Virtual Viewport | Live orbit view of whatever ghosts are currently active, straight off the same WebSocket feed as the exhibit. Ground truth when the AR view disagrees. | | `/admin/plan.html` | Placement Plan | Measured plan for physically positioning crests and models on the real table. | | `/admin/print.html` | Print Crests | Generates printable ArUco markers ("Newbury Crests") at the configured `sizeMM`. | -| `/admin/calibrate.html` | Calibrate | Camera/marker calibration helper. | -| `/admin/errors.html` | Client Errors | Errors reported by visitor devices (JS errors, unhandled rejections, ghost build failures). First stop when something works on one phone but not another. | +| `/admin/calibrate.html` | Calibrate | Camera/marker calibration helper. Detects crests **without** filtering against the scene, so it's the quickest way to prove a printed crest is readable at all. | +| `/admin/errors.html` | Client Errors | Errors reported by visitor devices (JS errors, unhandled rejections, ghost build and scene-fetch failures). First stop when something works on one phone but not another. | | `/admin/login.html` | Login | Only relevant in final mode. | ## Useful API endpoints @@ -48,3 +49,16 @@ the rest need auth in final mode. | `/api/layouts` | Saved named layouts | | `/api/client-errors` | Reported client errors (auth in final mode) | | `/ws` | WebSocket: `scene`, `active`, `spawn`, `despawn`, `characters`, `pong` | + +## Gotcha worth remembering + +Detection filters camera detections against the marker IDs in the **active +scene**. A crest that isn't an anchor in the current layout is detected and then +discarded, which used to look exactly like "the camera can't see anything". + +- The scene is now fetched over HTTP at start, so a down or flapping WebSocket + no longer breaks tracking. +- The HUD reports `scene N anchors` (or `NOT LOADED`) and `markers 1/2 seen + [0,7]` — usable over raw — so a filtered-out crest is visible at a glance. +- The tracking chip says "Crest N not in this layout" rather than "Point at a + Newbury Crest" when this happens.