Both jobs were continue-on-error: true at the job level, so a failing
pytest run reported success. They are the only two jobs in the workflow
tree that do this.
Verified green before removing the flag: the last 30 completed runs of
each workflow on master (90 matrix jobs each, ubuntu/windows/macos) have
zero failing steps.
Also sets fail-fast: false so one OS failing no longer cancels the other
two matrix legs' results.
* Fix showing progress from other sessions
Because `client_id` was missing from ths `progress_state` message, it
was being sent to all connected sessions. This technically meant that if
someone had a graph with the same nodes, they would see the progress
updates for others.
Also added a test to prevent reoccurance and moved the tests around to
make CI easier to hook up.
* Fix CI issues related to timing-sensitive tests