Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
This PR introduces a few light changes to reachability that may have horribly broken things.
The intent is mostly a refactoring, which attempts to make the progress logic a bit more clear. It is in preparation for a more extensive reworking in which progress tracking is demoted to a secondary thing that a dataflow scheduler does. As such, we are trying to make it as simple as possible here.
The main change that might be surprising is what I think is a bugfix: scopes previously reported outgoing messages as part of their "internal" capabilities, in addition to reporting them as outgoing messages. The capabilities were not released until the next time the scope was interacted with. This may have led to one-round latencies on progress information flowing out of scopes. But it is fixed now, and may or may not be problematic.