1
0
Fork 0
forked from hanez/xtc
xtc/docs/decisions/0001-modular-engine-first.md
2026-10-26 22:51:25 +01:00

762 B

Decision 0001: Modular engine first

Status: Accepted

Context

The project aims to preserve energyXT's combination of a simple workflow and a flexible modular routing model.

Decision

Use one unified processing graph for sources, instruments, effects, mixers, and outputs. The sequencer is a timeline/event source integrated with that graph. The default GUI is simple and sequencer-oriented, while a graph editor exposes routing when needed.

Consequences

  • Graph validation, scheduling, buffer allocation, and safe graph replacement are foundational requirements.
  • Initial audio graph rejects cycles.
  • Graph execution plans are prepared off the audio thread.
  • The UI must not create a separate routing model disconnected from the engine.