scena 1.7.1

A Rust-native scene-graph renderer with typed scene state, glTF assets, and explicit prepare/render lifecycles.
Documentation
# scena v1.5.1

This patch release improves the public browser showcase and fixes the startup
path that made below-fold sections feel slow or blank.

## Highlights

- The public materials section now uses the approved live browser-rendered
  12-sphere scene instead of PNG proof thumbnails.
- The showcase now ships a precomputed sidecar for the approved studio HDR, so
  the browser does not need to run the expensive GGX environment prefilter on
  cold start.
- Public and proof WASM bundles are split: the public showcase uses the lean
  demo bundle, while `/proof/` keeps the heavier browser-probe exports.
- Below-fold sections preload assets and prepare scenes during idle time, so
  scroll activation waits only for the surface attach and first visible frame.
- The browser canvas render scale is raised and capped to avoid pixelated
  material sphere edges without using unsafe oversized WebGL2 surfaces.
- Doctor now validates the HDR sidecar, bundle split, generated WASM size
  manifests, and showcase startup contracts.

## Fixes

- Fixed black canvases in the public showcase by detaching inactive WebGL2
  surfaces without dropping prepared renderer state.
- Fixed false "rendered" states by waiting for warm frames before marking a
  live showcase section as visible.
- Fixed duplicated asset byte fetches in the showcase page.

## Validation

- `cargo fmt --check`
- `cargo clippy --all-targets -- -D warnings`
- `cargo test`
- `cargo run -p xtask -- doctor --full`
- `RUSTDOCFLAGS="-D warnings" cargo doc --no-deps --all-features`
- `cargo build --target wasm32-unknown-unknown --tests`
- `cargo publish --dry-run`
- `npm run demo:build`
- `npm run proof:build`
- `npm run showcase:probe -- http://127.0.0.1:<port>/`