docs(phase-04): evolve PROJECT.md after phase completion

This commit is contained in:
Claude
2026-04-07 00:00:51 +00:00
parent 399b7a1e05
commit 34077018a9

View File

@@ -21,13 +21,20 @@ Being able to load a song, build a synchronized light show, and play it back liv
- [x] 7 built-in animation types (solid, chase, pulse, rainbow, strobe, color-wipe, fire) as pure renderers — `lightsync/animations/`
- [x] Animation factory and registry — `create_animation()` by name, extensible for Phase 4+
**Timeline Editor (Phase 04)**
- [x] Timeline editor: per-device tracks, drag-and-place animation blocks — `TimelineCanvas` + `handleDrop()` (validated Phase 04)
- [x] Block interactions: move, resize, delete with 50-step undo/redo — `CommandHistory` + command pattern (validated Phase 04)
- [x] Beat detection overlay: marks on timeline, snap-to-beat on all block ops — `BeatGrid` class (validated Phase 04)
- [x] Block inspector: color picker + parameter controls, all undoable — `BlockInspector` + `UpdateParamsCommand` (validated Phase 04)
- [x] Playback cursor moves in realtime — `requestAnimationFrame` reads `audio.currentTime` (validated Phase 04)
- [x] Beat calibration offset: shifts marks without corrupting raw data (validated Phase 04)
### Active
**UI**
- [ ] Web app with terminal/hacker aesthetic — dark theme, monospace fonts, no generic SaaS look
- [ ] Song loading via local file or YouTube URL (via yt-dlp + MPV subprocess)
- [ ] Audio playback controls: play, pause, seek, position display
- [ ] Timeline editor: per-device tracks, drag-and-place animation blocks
- [ ] Animation library panel with configurable parameters (speed, colors, length, etc.)
- [ ] Manual mode: pause playback, assign animation to timestamp, resume
@@ -101,4 +108,4 @@ This document evolves at phase transitions and milestone boundaries.
4. Update Context with current state
---
*Last updated: 2026-04-06 — Phase 03 complete: communication protocol layer, animation library, E2E UDP validation*
*Last updated: 2026-04-07 — Phase 04 complete: interactive timeline editor, command pattern undo/redo, BeatGrid module, block inspector*