Files
RuView/scripts
Dan Alec 8e846a9a36 fix: security floors, dashboard a11y violations, README visual assets
Three independent fixes that each resolve a red job on main.

Security floors (v2/Cargo.lock, v2/Cargo.toml)
  cargo audit reported 10 advisories across three transitive crates:
  quinn-proto 0.11.15, rustls 0.23.45 and wasmtime 36.0.16. Bump to
  0.11.18 / 0.23.46 / 36.0.18. All three arrive through
  midstreamer-quic = 0.3, so only the lockfile enforces them; v2/Cargo.toml
  now records the floors so a plain `cargo update` cannot walk them back
  without explanation.

Dashboard accessibility
  18 axe failures (3 browsers x 6 views): 58 role=switch toggles with no
  accessible name, two unlabelled range inputs, low-contrast timestamp /
  chip / badge text, and two scrollable regions with no keyboard access.

  The welcome modal also left the accessibility tree only by fading to
  opacity 0. A closed state at opacity 0 still gets scanned, and axe
  composes the semi-transparent text over the darkened backdrop, which
  produced a false color-contrast failure (ratio 1.55 reported where the
  real ratio was ~17:1). It now leaves via visibility, and
  connectedCallback exposes a `ready` attribute once its async storage read
  settles so the smoke test stops sampling the modal mid-transition.

README visual asset validation
  The workflow regenerates the 20 SVGs and requires byte-identical output.
  scripts/render-readme-visuals.py stripped unused CSS rules but left the
  trailing newline behind, so 14 removed rules collapsed into 16 blank
  lines. The producer now consumes the orphan newline and the assets are
  regenerated (94,576 -> 94,027 bytes).

Verified locally: cargo audit 0.22.2 exits 0, cargo check --workspace
--no-default-features --all-targets is clean, the README renderer is
idempotent with verify passing, and the axe suite is 18/18 across chromium,
firefox and webkit on six consecutive runs.
2026-10-16 16:06:38 -03:00
..