CHANGELOG¶
v4.4.0 (2026-03-18)¶
Bug Fixes¶
-
frontend: Add aria-expanded and aria-label to collapse buttons (
8ffc547) -
frontend: Add fallback for tile width/height in card calculations (
69499ea) -
frontend: Add full ARIA tab semantics to ScenarioPanel scope tabs (
514f333) -
frontend: Add keyboard navigation to tablist (
e0b1a2b) -
frontend: Derive auto-compact collapsed state from current devices (
9029c55) -
frontend: Display products error state in DeviceToolbar (
2cf142a) -
frontend: Explicitly type edge arrays as HsbkColor[] (
e21e837) -
frontend: Expose isLoading from products store (
2365e6d) -
frontend: Fix expandAllViz in auto-compact mode (
1a8bd31) -
frontend: Guard glow edge extraction against invalid tile dimensions (
bd0a0df) -
frontend: Handle errors in products store load() (
cda2b4b) -
frontend: Make loaded/loading reactive with $state in products store (
ea671a1) -
frontend: Use flex-start instead of start for cross-browser compat (
45377db) -
frontend: Use stable tabpanel ID for aria-controls (
3ea070e) -
frontend: Use void for fire-and-forget products.load() call (
efa6214)
Features¶
-
frontend: Content-based card widths, auto-compact layout, and responsive fixes (
cacd2a4) -
frontend: Overhaul visualizer with Oklch color, ambilight glow, and compact layout (
fcc7534)
Performance Improvements¶
-
frontend: Memoize hsbkToCss() for render loop performance (
d10f39b) -
frontend: Memoize hsbkToLinearRgb for glow calculation performance (
d4e3151) -
frontend: Use half-eviction instead of full cache clear (
8ebc522)
v4.3.1 (2026-03-18)¶
Bug Fixes¶
- dashboard: Broadcast metadata changes via WebSocket for live updates
(
6b933ae)
Documentation¶
- event-bridge: Add metadata to _get_change_category return values
(
15e2dd1)
v4.3.0 (2026-02-04)¶
Bug Fixes¶
-
Address CodeRabbit review feedback (
0bc07f5) -
frontend: Clear pending updates on device removal and store clear (
933d22e) -
security: Update cookie to 0.7.0 to address CVE (
dcb7460)
Features¶
-
dashboard: Add live device visualizer with real-time state updates (
51fbcc0) -
visualizer: Add dynamic grid layout with span-based sizing for matrix devices (
9a7bb7e)
Performance Improvements¶
- frontend: Improve dashboard performance for high-frequency updates
(
7433077)
v4.2.0 (2026-02-03)¶
Bug Fixes¶
-
Address CodeRabbit PR review feedback (
e302407) -
Correct $derived usage in ActivityLog.svelte for reactive filtering (
a5e8280)
Features¶
-
api: Add WebSocket endpoint for real-time updates (
b1e9889) -
api: Complete WebSocket real-time event infrastructure (
81cfa6f) -
app: Add PyApp binary distribution support (Phase 5) (
3c893a8) -
dashboard: Add activity filtering and device toolbar (Phase 3) (
249964a) -
dashboard: Add scenario panel, pagination, and tabbed interface (Phase 4) (
a50951d) -
dashboard: Replace vanilla JS with SvelteKit frontend (
a143c2c)
v4.1.0 (2026-02-03)¶
Features¶
- api: Add device state update, bulk create, and pagination
(
1f7bb46)
v4.0.1 (2026-02-01)¶
Bug Fixes¶
- app: Add products API, populate dashboard dropdown, remove stale TODOs
(
c49502a)
v4.0.0 (2026-02-01)¶
Bug Fixes¶
-
app: Pad zone_colors to zone_count with default color (
46aed0a) -
app: Preserve explicit empty devices/scenarios and truncate zone_colors (
b5c420c)
Features¶
- app: Add YAML config file support for CLI
(
fceb9af)
Breaking Changes¶
- app: No devices are created by default anymore.
v3.1.0 (2026-01-11)¶
Features¶
- Add Python 3.10 support
(
c19eee5)
v3.0.2 (2025-12-24)¶
Bug Fixes¶
- api: Eliminate XSS vulnerabilities and extract dashboard JavaScript
(
8302a09)
v3.0.1 (2025-11-26)¶
Bug Fixes¶
- Adjust uv build for new monorepo layout
(
a0d5b7c)
v3.0.0 (2025-11-26)¶
Refactoring¶
- Split into monorepo with separate library and CLI packages
(
402fe6e)
Breaking Changes¶
- The project is now split into two packages:
v2.4.0 (2025-11-26)¶
- Initial Release