-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support divergent EC chain views in simulator #115
Labels
testing
Related to testing and validation
Comments
masih
added a commit
that referenced
this issue
May 3, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 3, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 7, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 8, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 8, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 10, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
masih
added a commit
that referenced
this issue
May 13, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
github-merge-queue bot
pushed a commit
that referenced
this issue
May 13, 2024
So far simulations used the same EC chain across all participants after the first instance. This approach was simple but not representative of the real-world where the EC chain may diverge across multiple subsets of participants. The changes here implement a comprehensive set of APIs that allow a set of EC generation strategies to mix-and-match and replicate complex EC chain evolution through iterations of a simulation. The chain evolution is controllable by instance by actor ID. This allows us to simulate fluctuating EC evolution patterns throughout a simulation. The changes include an initial set of EC generators that cover: * Fixed EC for all instances and participants. * Random EC per instance per participant. * Random EC per instance but uniform across all participants. * Common prefix EC per instance with probabilistic length * Majority common prefix across a set of participants with probabilistic length The EC generators can be aggregated and set per number of participants, which enables simulation of a flexible set of scenarios including evolving majority common prefix. Fixes #115
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
As of #111 the simulator can show participants different EC chains only for the first instance. After that, all participants see the same chain.
Improve this so that participants can at least temporarily observe different chains. They should eventually observe the same chain if progress is to be made. This could be really fiddly to do manually, so a good approach might be to produce a chain (view) generator which evolves stochastically.
Note that the sim doesn't currently feed additional chains into the protocol during each instance. This is part of the spec not currently exercised in any tests.
The text was updated successfully, but these errors were encountered: