HydraIssues

Kiosk experience filtering: use Experience Library instead of Sunshine app list
open feature Project: hydraheadflatscreen Reporter: 9 Apr 2026 20:36

Description

## Context

Upstream API changes deployed:
- Experience Library v0.10.3: GET /api/v1/experiences/live?district=X&venue=Y filters by venue
- HydraCluster v2.0.19: Head config returns experience_library_url and allowed_experiences

## Changes needed in hydraheadflatscreen

1. Add ExperienceLibraryURL and AllowedExperiences to HeadConfig (pkg/client/config.go)
2. In localapi.go handleExperiences: query Experience Library instead of Sunshine app list
3. Apply allowed_experiences filter if set
4. Remove fetchSunshineApps() for experience listing (keep for pairing only)

## Configure a kiosk

POST /api/v1/nodes/{id}/allowed-experiences with {"experiences": ["mercator-talks"]}

## Acceptance criteria

- Kiosk shows experiences from Experience Library filtered by venue
- Per-head allowed_experiences override works
- Kiosk configured with ["mercator-talks"] only shows that experience