This folder is a working sketchbook. Each file is a proposal, not a shipped feature. Three rules:
1. Cite real code when you make a claim about current behaviour. If a doc says "the router does X," it must reference the file/line that does it. Memory rots faster than code.
2. Order matters. The numbered backlog at docs/ideas/v0.5-backlog.md is the canonical order — everything else is supporting analysis. If you do work out of order, update the backlog.
3. Don't grow scope silently. If a feature reveals a new feature mid-build, add it to the backlog with a one-line cost estimate. Don't fold it into the in-flight task.
Index
- Next-session handoff — Read-this-first brief for the agent picking up after v0.4. 30-second context, ordered reading list, sanity checks.
- Architecture limits & loop protection — How long can a chain be before things break? What stops an infinite loop? Where the current code has unguarded re-entry.
- Dispatch semantics: fan-out, ordering, parallel vs. sequential — Does one input fire many outputs at once? Can we say "wait for the DMX frame to flush before firing the OSC packet"? Today's answer + the proposed
dispatch-modemodel. - v0.5 backlog (ordered) — The actual to-do list, with effort estimates, owner-friendly summaries, and which tasks unblock which.
- Competitor gap analysis — Chataigne / Companion / OSCulator / TouchDesigner: what they do well, what they miss, where XOSC wins or loses by default.
- Math & logic nodes (proposal) — Clamp, scale, invert, hold-timer, double-tap, expression. Sketches the type system + UI.
- OSC inbound + Resolume feedback loop — Listen on a UDP port for OSC from anything (not just Resolume's WS) and pipe it onto the input bus. Closes the "physical LED on user's prop tracks Resolume state" loop.
- mDNS / network discovery — Auto-find Resolume + other OSC peers on the LAN.
- DMX integration feasibility — Can we add DMX nodes? Mapping TagTable's "beat pad / sequence / priority" model into the XOSC graph. Last on the priority list — see file for why.
How to read these as a fresh agent
1. Skim architecture-limits.md first — it's the only file that audits the running code. Everything else is forward-looking.
2. Then v0.5-backlog.md for the action list.
3. Read the rest only when you start the relevant task. They're deep dives, not pre-reading.