You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently ignite chain simulate runs a very basic simulation test for chains, calling the basic BenchmarkSimulation() test, which creates a simulation test that runs a number of randomized state transitions and will fail of the app panics.
There are many other simulation targets and tests that could be added as seen here, namely a TestAppStateDeterminism() target. This specific test runs the simulation with the same random seed multiple times and checks the resulting AppHash against other runs to verify that the state of the app is being deterministically set. Non-determinism is one of the largest issues devs (especially new ones) face when starting with blockchain development. This test could be a really useful target to eliminate these issues for devs.
If we want to keep the command simplified (i.e. just calling ignite chain simulate) I think we should replace BenchmarkSimulation with TestAppStateDeterminism as the this covers everything BenchmarkSimulation covers plus non-determinism.
Additionally, we could expose multiple simulation targets if we want to make the command a bit more complex.
The text was updated successfully, but these errors were encountered:
Currently
ignite chain simulate
runs a very basic simulation test for chains, calling the basicBenchmarkSimulation()
test, which creates a simulation test that runs a number of randomized state transitions and will fail of the app panics.There are many other simulation targets and tests that could be added as seen here, namely a
TestAppStateDeterminism()
target. This specific test runs the simulation with the same random seed multiple times and checks the resultingAppHash
against other runs to verify that the state of the app is being deterministically set. Non-determinism is one of the largest issues devs (especially new ones) face when starting with blockchain development. This test could be a really useful target to eliminate these issues for devs.If we want to keep the command simplified (i.e. just calling
ignite chain simulate
) I think we should replaceBenchmarkSimulation
withTestAppStateDeterminism
as the this covers everythingBenchmarkSimulation
covers plus non-determinism.Additionally, we could expose multiple simulation targets if we want to make the command a bit more complex.
The text was updated successfully, but these errors were encountered: