632 B
632 B
Decision 0003: Real-Time Thread Rules
Status: Accepted
Context
Audio glitches and unsafe graph changes can undermine the whole application.
Decision
The audio callback performs bounded processing using preallocated resources. It performs no allocation/free, blocking locks, file I/O, logging, GUI calls, plugin loading, or waits. Graphs are prepared outside the callback and active graph resources are retired only after safe reclamation.
Consequences
Thread ownership and publication mechanisms must be documented and tested. Any exception to these rules requires explicit evidence and review.