SAService Architect Back to designer
SAService ArchitectDocumentation
Designer guide Explicit feedback boundary

Cycles and CycleLink

Normal graph editing rejects cycles. CycleLink is the explicit transformation used when feedback is intentional rather than an accidental dependency loop.

When to use

Use this page while editing or reviewing the graph in the designer.

Behavior

  • The source selector simulates removed and added edges before applying a change. If the resulting normal execution graph contains a cycle, the edit is rejected.
  • CycleLink is shown with the sync icon and requires a source like other consumed transformations.
  • For cycle detection, outgoing edges from CycleLink are treated as a feedback boundary. The code generator applies the same rule during semantic validation.
  • Input outgoing relationships are also excluded from cycle detection because an Input source can represent an endpoint-result relationship rather than a normal recursive execution edge.
  • If an automatic KeyBy or Map must be inserted next to CycleLink, the designer rewires the surrounding links so the explicit feedback boundary remains in the topology.

Configuration example

state -> update -> CycleLink -> state consumer