Skip to main content

Phase 5 — Vertical-Feed Console

Duration: ~10 working days Critical-path predecessor: Phase 3 Status: in progress

Deliverables (§6.1)

The console orchestrates ten decision-relevant frames in a deliberate sequence, each carrying a defined information payload, expected dwell time, and primary user action. This is the same discipline used in operations-room display design.

#SectionDwellPrimary action
0Operational status1–2 sDrill into alert
1Live cryospheric overview8–15 sToggle layers, click zone
2Prediction-zone panel4–8 sSelect zone for deep dive
33D photorealistic flyover6–12 sPause, rotate, freeze-frame
4Spectral-unmixing simulator20–60 sAdjust fractions
5Telemetry streamcontinuousWatch / acknowledge
6Forecast horizon ribbon4–6 sScrub timeline
7Mass-balance tracker6–10 sCompare years
8Knowledge layeron demandRead
9Provenance & auditon demandVerify

Acceptance Gate

Full ten-section walkthrough, accessibility audit clean.

Run:

cd snow-ir-app
pnpm dev

Open http://localhost:5173. Scroll through all ten sections. The right-hand nav rail must update active section as you scroll. Reduced-motion preference must hard-bypass Lenis smooth scroll. axe-core must report zero critical or serious violations in the dev console.

Architecture

ComponentResponsibility
LenisProviderSmooth scroll wrapper + GSAP scrollerProxy integration
VerticalFeedLayoutSection iteration, pin-on-scroll for the map and 3D sections
SectionNavRailRight-side anchor rail with active-section indicator
SECTIONSSingle source of truth — order, labels, dwell targets
OntologyBrowserTree view backed by src/domain/ontology.ts
ProvenanceDetailsPer-alert PROV-O lineage panel
AcknowledgeButtonLocal-first acknowledgement; Phase-7 wires to /alerts/{hash}/acknowledge
useAxeDev-only accessibility audit hook

Discipline

  • §6.1 sequencing — registry-driven, one component per section.
  • §6.2 transitions — 120/240/480 ms triad enforced via Framer-Motion durations.
  • §6.4 colour tokens — every severity uses both colour and text/icon shape.
  • §6.7 performance budgets — sections lazy-load, map and 3D pin to viewport.