NeoSyntropyDocumentation

Core concepts

Group — named subgraph

Organization plus an optional authored subgraph that merges into the parent FSM. At runtime there is still one control engine — groups are not nested runtimes.

What it is

A group is a named collection of nodes. Author with @group.node(...), group.routers, group.entry, and group.add_edge. A semantic hop to the group lands on entry when set. Compiled edges feed the same ControlManager pipeline.

Python SDKpython
billing = Group(name="billing")

@billing.node(id="ValidateCard", output_schema=EmptyOutput)
def validate(ctx):
    return ctx.result(output={}, state_updates={"card_valid": True})

logic = DeterministicRouter(
    id="BillingLogic",
    rules=[
        (lambda ctx: ctx.state.get("card_valid") is True, "ProcessPayment"),
        (lambda ctx: ctx.state.get("card_valid") is False, "RejectCard"),
    ],
)
billing.routers = [logic]
billing.entry = "ValidateCard"
billing.add_edge("ValidateCard", "BillingLogic")

Grounded in neosyntropy-framework/docs/concepts-explained.md §9.