Skip to content

Commit d039d17

Browse files
authored
Merge pull request w3f#49 from davxy/master
2 parents 26016ac + 1d98c77 commit d039d17

File tree

2,068 files changed

+3984754
-3774300
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,068 files changed

+3984754
-3774300
lines changed

.github/workflows/ci.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: CI Workflow
2+
3+
on:
4+
# Run CI on push only for 'main' branch
5+
push:
6+
branches: [master]
7+
tags:
8+
- "v*"
9+
# Run CI on pull request for all branches
10+
pull_request:
11+
branches: ["**"]
12+
13+
jobs:
14+
validate:
15+
runs-on: ubuntu-latest
16+
strategy:
17+
matrix:
18+
validator:
19+
- codec
20+
- erasure
21+
- traces
22+
- stf/accumulate
23+
- stf/assurances
24+
- stf/authorizations
25+
- stf/disputes
26+
- stf/history
27+
- stf/preimages
28+
- stf/reports
29+
- stf/safrole
30+
- stf/statistics
31+
steps:
32+
- name: Checkout
33+
uses: actions/checkout@v2
34+
- name: Set up Python
35+
uses: actions/setup-python@v4
36+
with:
37+
python-version: '3.8'
38+
- name: Install dependencies
39+
run: |
40+
pip install git+https://github.com/davxy/asn1tools.git
41+
- name: Validate ${{ matrix.validator }}
42+
run: ./${{ matrix.validator }}/validate.py
43+

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
## v0.6.6 [25-06-2025]
2+
3+
### Changes
4+
5+
- Codebase reorganization
6+
- Binary to JSON conversion scripts and utilities
7+
* Extended the `fetch` host call with new variants.
8+
* Updated numeric identifiers used in `fetch`.
9+
* Updated numeric identifiers for PVM errors.
10+
* PVM wrangled operands changed.
11+
* Removed the traces `000...000.bin/json` step, as it was not a valid trace step and was intended to be handled specially for genesis. Since it shared the same format as regular trace steps, it could be ambiguous or misleading.
12+
* Introduced an explicit `genesis.bin` file containing the genesis state and header.
13+
* The *authorizer trace* field has been moved to the end of the accumulation operand encoding (C.29)
14+
15+
### Deviations
16+
17+
* `fetch` host call for protocol parameters ($\omega_{10}=0$) has been implemented according to this (currently) unreleased change: https://github.com/gavofyork/graypaper/pull/414
18+
For the `fetch` hostcall id we're still using 18 as per GP 0.6.6. The picked change only concerns the value returned for w_10=0
19+
20+
### Extra
21+
22+
* Codebase reorganization
23+
* Binary to JSON conversion scripts and utilities
24+
* CI: ASN.1 verification
25+
26+
## v0.6.5 [02-06-2025]
27+
28+
- First Release

README.md

Lines changed: 40 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# Test Vectors for the JAM Protocol
22

3-
JAM protocol version 0.6.4
4-
53
## Codec
64

75
- [Codec](./codec/README.md)
86

7+
## Erasure Coding
8+
9+
- [Erasure Coding](./erasure/README.md)
10+
911
## State Transition Functions
1012

1113
We offer two types of test vectors:
@@ -24,6 +26,8 @@ We offer two types of test vectors:
2426
- core assignment rotation period: 10
2527
- ticket attempts: 2
2628

29+
For more information refer to the community [docs](https://docs.jamcha.in/basics/chain-spec).
30+
2731
### STF Output
2832

2933
Technically, the STF execution process does not inherently produce auxiliary
@@ -40,12 +44,37 @@ specific subsystem.
4044

4145
### Vectors
4246

43-
- [Safrole](./safrole/README.md)
44-
- [Disputes](./disputes/README.md)
45-
- [History](./history/README.md)
46-
- [Assurances](./assurances/README.md)
47-
- [Reports](./reports/README.md)
48-
- [Statistics](./statistics/README.md)
49-
- [Authorizations](./authorizations/README.md)
50-
- [Preimages](./preimages/README.md)
51-
- [Accumulate](./accumulate/README.md)
47+
- [Safrole](./stf/safrole/README.md)
48+
- [Disputes](./stf/disputes/README.md)
49+
- [History](./stf/history/README.md)
50+
- [Assurances](./stf/assurances/README.md)
51+
- [Reports](./stf/reports/README.md)
52+
- [Statistics](./stf/statistics/README.md)
53+
- [Authorizations](./stf/authorizations/README.md)
54+
- [Preimages](./stf/preimages/README.md)
55+
- [Accumulate](./stf/accumulate/README.md)
56+
57+
## Block Import Traces
58+
59+
- [Fallback](./traces/fallback): fallback block authoring, no-safrole, no-work-reports
60+
- [Safrole](./traces/safrole): safrole block authoring, no-work-reports
61+
- [Work Reports L0](./traces/reports-l0): basic work reports, no-safrole
62+
63+
## Vectors Validation
64+
65+
Validation scripts are included to verify the JSON files against the expected
66+
ASN.1 syntax provided with the test vectors. These scripts currently rely on my
67+
[asn1tools](https://github.com/davxy/asn1tools) fork.
68+
69+
## Binary To JSON
70+
71+
The repository binary test vector files can be converted to their JSON
72+
equivalents for easier inspection and debugging. Use the provided conversion
73+
script to transform binary files into human-readable JSON format:
74+
75+
```bash
76+
./scripts/convert-all.sh
77+
```
78+
79+
This conversion script requires the [jam-types](https://github.com/davxy/jam-types)
80+
Python library to be installed.

accumulate/README.md

Lines changed: 0 additions & 94 deletions
This file was deleted.
-77 KB
Binary file not shown.

0 commit comments

Comments
 (0)