nemesis/demo: Meta's no-chrome look, theme auto, denser terrain, Background menu, with tests and the Ridge zero-size fix #65

Merged
void merged 9 commits from void/nemesis-demo-tests into dev 2026-11-10 14:09:01 +00:00
Member

Contains nemesis/demo (fcabaee5, live on chat.gamecult.org since 13:31Z) plus 9d3343bb.

From nemesis/demo: Meta's logo and icons; chromeless plates (only composer, call bar, call view and non-bubble messages keep a blurred 45% tint); chromeless Button/Chip (sceneButtons.css.ts); skyThemeId('auto') resolves from the clock; terrain grid 256/512/768; Background (Terrain/Ridges) picker in the sky menu, also on the sign-in page.

9d3343bb:

  • skyTheme.test: auto picks the resolved state's theme; plate pins assert the new regions and that header, room list, pages, drawer and typing/following bars are NOT plates.
  • terrainWorld.test: triangle ceilings raised to the new grids (540k low, 1.2M full), index-range check added. The 2-texel quad-width test is unchanged and failed for still (256/1024: 7.10 m vs 5.87 m allowed), so still grid is 320 instead of loosening it.
  • Ridge: a scene started at zero size no longer throws on drawImage or returns null; it builds on the first non-zero resize. New test fails without the fix.
  • skyPlate.css.ts: dropped the void X placeholder imports.

vitest 598/598, tsc clean. Not deployed.

Risks noted, not changed: sceneButtons.css.ts selects folds' hashed class names (epr39zd, _1bv8u1w6), which break silently on a folds upgrade. Terrain hatching is Nibu's and untouched.

🤖 Generated with Claude Code

Contains nemesis/demo (fcabaee5, live on chat.gamecult.org since 13:31Z) plus 9d3343bb. **From nemesis/demo:** Meta's logo and icons; chromeless plates (only composer, call bar, call view and non-bubble messages keep a blurred 45% tint); chromeless Button/Chip (sceneButtons.css.ts); skyThemeId('auto') resolves from the clock; terrain grid 256/512/768; Background (Terrain/Ridges) picker in the sky menu, also on the sign-in page. **9d3343bb:** - skyTheme.test: auto picks the resolved state's theme; plate pins assert the new regions and that header, room list, pages, drawer and typing/following bars are NOT plates. - terrainWorld.test: triangle ceilings raised to the new grids (540k low, 1.2M full), index-range check added. The 2-texel quad-width test is unchanged and failed for still (256/1024: 7.10 m vs 5.87 m allowed), so still grid is 320 instead of loosening it. - Ridge: a scene started at zero size no longer throws on drawImage or returns null; it builds on the first non-zero resize. New test fails without the fix. - skyPlate.css.ts: dropped the `void X` placeholder imports. vitest 598/598, tsc clean. Not deployed. **Risks noted, not changed:** sceneButtons.css.ts selects folds' hashed class names (epr39zd, _1bv8u1w6), which break silently on a folds upgrade. Terrain hatching is Nibu's and untouched. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
- Logo: Meta's white matte (2026-11-09) as the UI mark; icons are the mark on a night-sky tile. Dark ink on Noonday Sky.
- Plates (title bars, lists, composer) and the sign-in card: blur with a light sky tint (PLATE_TINT 0.45), never opaque.
- auto sky picks the theme from the resolved sky: day light mode, night dark mode, dusk the dark-ink crossover.
- Terrain grid 768/2048 full, 512/1024 low, 256/1024 still.
- Temporary Background group (Terrain, Ridges) in the sky menu, also on the sign-in card.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
nemesis/demo: tests follow the new numbers; Ridge retries a zero-size start
All checks were successful
Build pull request / Build pull request (pull_request) Successful in 4m12s
9d3343bb31
skyTheme: auto resolves to the clock's theme; the plate pins now assert the
chromeless shell (only composer, call bar, call view and plain messages are
plates). terrainWorld: ceilings for the 512/768 grids; still grid 256 -> 320 so
its quads stay within two height texels at the nearest ground (the test is
unchanged). skyPlate.css: drop the void-import placeholders. Ridge: a scene
started with no area no longer throws on drawImage or returns null; it builds on
the first resize that gives it one.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
PR #65 steward ruling: user themes win over auto; focus ring; logo on light themes
Some checks failed
Build pull request / Build pull request (pull_request) Has been cancelled
c657d68615
skyThemeId('auto') is undefined again as on dev. sceneThemeId follows the resolved
sky for auto only while a scene is on and the person chose no theme (signed-out
pages pass none); useResolvedSkyState changes as the clock crosses so theme
classes re-render. Scene buttons and chips keep a focus-visible outline. The
white mark takes the dark filter through a LogoMark class on every themed <img>
under any prism-light theme (favicon and notification icons are files and keep
the white mark). Background picker is hidden without a backgroundScene config.
Ridge comment states what hasNoArea covers.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
void referenced this pull request from a commit 2026-11-10 14:06:09 +00:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diagnostic overlays (?probe=1, ?tierlabel=1) only where allowed; footer band test knows the Safari prefix
Some checks failed
Build pull request / Build pull request (pull_request) Has been cancelled
814fa4b3ab
debugOverlaysAllowed: a dev build, a VITE_PREVIEW_DEMO build, or
backgroundScene.debugOverlays in the client config. A production visitor adding the
query string gets neither the frame readout nor the tier label. footerBand.test pins
-webkit-backdrop-filter (live commit 0fe41efb) and that it blurs as the standard one.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sky-only tier label follows the overlay gate; tests pin the door's debug forwarding
All checks were successful
Build pull request / Build pull request (pull_request) Successful in 3m42s
48d6d171da
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
void merged commit 23bc67a1f0 into dev 2026-11-10 14:09:01 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/Ratatoskr!65
No description provided.