-
Notifications
You must be signed in to change notification settings - Fork 25
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
M1 Conformance #21
Comments
I'm putting together a "importblocks" fuzz tester and would like to know which state elements would be changed by blocks in "M1 Import blocks" milestone from My guess is: "M1 Import blocks" will have blocks that change the state of:
... implying these will happen later:
So ... what state changes will M1 Import Blocks cover exactly? This has implications as to what teams should focus on finishing in what order. I remember earlier comments that M1 doesn't even need PVM implementation, which is at odds with the above guess. This is important for the design+implementation of a fuzz tester that only generates blocks suitable for each milestone / mode, with a parameter like "mode" that is like
|
Also, do you have suggestions on how to have larger configurations than "tiny"? Above is my starting point for some chain specs, in expectation that the JAM Toaster will support teams having { small => 2x large } configs 100% on their own and then { 2, 3, 4 } teams can assemble into a { xlarge, 2xlarge, 3xlarge } config in 2025 as they pass M1 Conformance tests. Added chainspecs.json and initial genesis states |
Test Vectors
Codec
STF
Super PR #28
Other
Conformance Tool
Upon completion of the M1 Test Vectors, the plan is to provide a procedural conformance testing tool.
This tool is intended to determine whether an implementation adheres to the specified expectations concerning M1.
It will engage with a JAM process, which embodies a JAM implementation capable of fulfilling M1 requirements. This interaction will occur through a minimal protocol, utilizing simple I/O mechanisms, such as pipes or networking.
Starting from a well-defined genesis state, the tool will deliver a procedurally generated stream of blocks to the implementation and then read back the expected state root hash.
The test will be reproducible using a seed provided to the conformance testing tool at startup.
In the event of a failure, the tool will output:
When relevant, the vector responsible for triggering the failure will be added to the STF vector set to target the specific subsystem associated with the fault.
See also: #7
🎁 While the vector PRs are under review, you may use the following repository for a single branch containing all the provided test vectors: https://github.com/davxy/jam-test-vectors.
The text was updated successfully, but these errors were encountered: