diff --git a/docs/concepts/flows.md b/docs/concepts/flows.md index f745363..5aa7caf 100644 --- a/docs/concepts/flows.md +++ b/docs/concepts/flows.md @@ -27,6 +27,10 @@ being explicit about the consequences: - **Fan-in is free.** Two nodes providing `temperature` are two producers of one message. The consumer does not change. +- **A node runs when something it reads was published.** Not merely when + something upstream of it ran: a node that produced nothing this time — held + back by a rate limit, say — leaves what reads it on the value it already + has, and so does everything behind that. - **A wire cannot be wrong.** There is no wire. There is a name that either matches or does not, and the canvas tells you at edit time which it is. - **Layout is not a document.** The canvas computes the arrangement, so a flow diff --git a/docs/reference/configuration.md b/docs/reference/configuration.md index 5593c7a..67a0b15 100644 --- a/docs/reference/configuration.md +++ b/docs/reference/configuration.md @@ -123,6 +123,7 @@ warning into a refusal to start. | Variable | Default | Notes | |---|---|---| | `FLOW_MAX_WORKERS` | `4` | node-code subprocesses run in parallel | +| `FLOW_MAX_CASCADES` | `4` | cascades in flight at once; throughput is this over the mean cascade time, so raise it where nodes wait on a network rather than a CPU | | `FLOW_NODE_TIMEOUT` | `0` | seconds a node may be silent, unless it sets its own; 0 is no limit | | `OBS_RETENTION_DAYS` | `30` | how long metrics, events and run records are kept |