System Architecture
Context
Text alternative: builders use the Astro editor and API clients use the public endpoint; both reach BraidRunner, which reads and audits PostgreSQL data, resolves provider calls and publishes short-lived browser-sink results.
Containers
Text alternative: the UI invokes a session API while external clients invoke the Bearer webhook. Both use BraidRunner, which enforces policy and budgets before LiteGraph executes registered Beads and persists run events.
Design boundaries
- LiteGraph remains the visual adapter; DataBraid owns document, manifest, policy and run contracts.
- The server is authoritative for execution and secret resolution.
Utils/noteis editor metadata and is removed before server graph configuration.- Browser-dependent sources and sinks use explicit server adapters; editor-only notes are removed before graph configuration.
- Nested Braids execute internally under the same owner and secret scope. They share node/external-call budgets and the root deadline, reject cycles, default to depth 5 (hard maximum 10), cap public child output at 1 MiB and persist child runs linked to the root run and invoking Bead.
- Cancellation propagates through the run tree and prevents further node starts. Legacy Beads that do not accept an abort signal may still finish an already-started external operation; this remains explicit runtime debt.