Skip to main content

Extend DataBraid

Required contracts

  1. Implement the LiteGraph node without placing raw credentials in properties.
  2. Register a stable Category/Name node type.
  3. Declare canonical input and output ports in the manifest catalog.
  4. Expose schema-driven properties, conditional visibility and secret references.
  5. Classify runtime safety, network, side effects, timeout, output limits and projection.
  6. Add behavior tests and regenerate the property and documentation catalogs.

Runtime decision

Do not mark a node server-safe merely because its constructor loads. Browser globals, relative fetches, file pickers and rendering APIs require a server wrapper or a browser-sink adapter. External calls require timeout, output caps and an explicit cancellation mode. Side effects require idempotency guidance and auditable errors.

For cooperative cancellation, pass LiteGraph.RUN_CONTEXT.signal into the Bead's internal request and pass the resulting route's request.signal into every provider fetch or SDK call. Retry delays must be abortable, and catches must not start fallback work after cancellation.

Definition of done

  • Manifest and runtime policy cover the new type.
  • Inputs and outputs use canonical types or intentionally documented any.
  • Missing credentials and upstream failures produce structured errors.
  • A deterministic fixture covers the primary behavior without a real secret.
  • The generated Bead reference builds without manual edits.
  • A demo template is added only when it teaches a distinct capability.