Commit 37ccee7
authored
chore(deps): bump leanSpec to f12000b (pre-devnet5), rename fork to Lstar (#391)
## Summary
The pinned `LEAN_SPEC_COMMIT_HASH` (`18fe71f`, 2026-04-29) can no longer
generate fixtures: the released `latest` test keys moved to the new key
JSON schema (`attestation_keypair.public_key` etc.), so the old code
fails with `KeyError: 'attestation_public'` during fixture generation.
The fix bumps the pin to **`f12000b`** (leanSpec PR #725, 2026-05-17),
which reads the new key schema. This is the commit **just before**
leanSpec's devnet5 work, chosen deliberately:
- An earlier draft of this PR pinned to `825bec6` (the #745 download
fix). That commit unavoidably includes leanSpec PR #717 (`ac5f259`),
which switched the aggregated-proof wire format to **devnet5**. The Rust
client still runs `leanMultisig@5eba3b1` (pre-devnet5), so the
forkchoice spec tests failed with
`AggregateVerificationFailed(DeserializationFailed)`. The devnet5 proof
format requires the full crypto-stack migration tracked in #378/#370,
which is not yet on `main`.
- `f12000b` predates #717, so fixtures keep the **old proof format**
that the current crypto stack deserializes correctly. No Rust changes
are needed.
Also rename `--fork devnet` → `--fork Lstar` to match the upstream fork
rename (already in effect at `f12000b`).
### Download workaround
`f12000b` predates leanSpec PR #745, whose `download_keys` reads the
still-open (unflushed) download tempfile, intermittently truncating the
gzip tail and aborting with `EOFError` (surfaced as `Aborted!`). Both
the Makefile and CI now fetch+extract the prod keys with `curl`+`tar`
before `fill`, which fully writes the archive before reading it; `fill`
then sees the keys present and skips its own buggy download. Both blocks
are commented `Remove once the pin moves past PR #745.`
## Why not 825bec6 / devnet5?
The devnet5 aggregated-proof wire format and the matching
`ethlambda-crypto` rewrite live in #378 / #370 and are not yet merged to
`main`. Bumping fixtures to a devnet5 leanSpec commit here would require
duplicating that crypto work. This PR stays scoped to "unbreak fixture
generation on `main`" and remains on the pre-devnet5 format until the
devnet5 PRs land.
## Test plan
- [x] `rm -rf leanSpec && make leanSpec/fixtures` — clean download (via
curl+tar) + extract, 554 fixtures generated, no `Aborted!`.
- [x] `cargo test -p ethlambda-blockchain --test forkchoice_spectests` —
84/0.
- [x] `cargo test -p ethlambda-blockchain --test signature_spectests` —
11/0.
- [x] `make test` — full workspace suite, 421/0.
- [ ] CI runs green.1 parent d3b364a commit 37ccee7
2 files changed
Lines changed: 28 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
98 | 98 | | |
99 | 99 | | |
100 | 100 | | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
101 | 107 | | |
102 | 108 | | |
103 | 109 | | |
104 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
105 | 116 | | |
106 | 117 | | |
107 | 118 | | |
| |||
120 | 131 | | |
121 | 132 | | |
122 | 133 | | |
123 | | - | |
| 134 | + | |
124 | 135 | | |
125 | 136 | | |
126 | 137 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
28 | | - | |
| 27 | + | |
| 28 | + | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
34 | 40 | | |
35 | | - | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
36 | 48 | | |
37 | 49 | | |
38 | 50 | | |
| |||
0 commit comments