Lacks persistence
When a node event happens that should trigger a CI run, this information is currently lost if the broker terminates. This is bad.
Likewise, the broker has no memory of CI runs have already started. When they run outside the adapter, it would be good to be able to start a new adapter child process, when the broker is restarted, so that the new child can capture the run finishing.