Psyclone 2.2.0: the Startup Supervisor
Real-time systems live or die on how they start. Psyclone 2.2.0 introduces an automatic Startup Supervisor — a proper first-class citizen of the runtime that owns bring-up, watches the system, and gives you a single point of control over the whole lifecycle.
A Root-space crank, not a special case
The Supervisor now runs as a genuine Root-space crank. You create it as an ordinary continuous crank component that owns a Supervisor object, and it comes to life as part of the system — no more procID==0 fan-out and special-case registry plumbing, which have been dissolved entirely. It mints a Recipe ID, sends the recipe to the target node, streams .status and .data back, and drives PAUSE/START control with proper acknowledgements.
Knows when the system is truly ready
The node broadcasts Psyclone.SystemStatus on a five-second cadence, and the Supervisor auto-subscribes — so it always has a live picture of the running system. Component creation is now owned by the Supervisor, and crucially Psyclone.Ready fires only once every component actually exists, not a moment before. A node-level heartbeat keeps the whole thing honest, and unregister drains in-flight dispatches so teardown is clean rather than racy.
From one node to many
The same Supervisor now orchestrates multi-node bring-up across separate OS processes. bringUpSpec groups components by node=, defers unknown nodes, routes Psyclone.Builder.* to the right node and forwards cross-node recipes and triggergroup joins — handling ID-reservation ordering, context ID-clash tie-breaks and component-info confirmation along the way. The new test=psymulti suite runs three real OS-process nodes under Supervisor orchestration to prove it.
The Supervisor builds directly on the new Builder pipeline. Together they turn bring-up from a leap of faith into a supervised, observable operation.
Psyclone 2.2.0 is available now on the download page. Full detail in the Psyclone documentation.
