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
Why this exists:
S3-A2 (Tron) and S3-A3 (AvaX) were both reverted (commits 9e7cb22, 436e1d0)
because their L1 unit tests and self-authored L3 e2e_smoke siblings exercised
only the adapter Python classes directly — never the real production entrypoint
(tools/chain_adapters/cli.py build-target, called from target_generator.sh).
Both adapters had P0 bugs at the CLI layer that L1 PASS could not surface.
This commit closes that gap: every chain registered in config/chains/*.json
must produce a valid vegeta target via the real cli.py subprocess path, with
the supplied address appearing in either the decoded JSON body or the URL.
What's added:
- tests/test_chain_adapters.py: new test_cli_build_target_all_36_chains
- KNOWN_BROKEN_CLI dict: 16 chains currently failing the CLI gate, each
tagged with failure-mode (F1/F2/F3/F4) and fix-wave owner (S3-B/C/D/E/F)
- Invariant: KNOWN_BROKEN set may only shrink across commits. Test fails on
EITHER (a) new chain broken not in KNOWN_BROKEN (regression) OR
(b) chain newly healthy but still in KNOWN_BROKEN (must remove entry).
Current baseline (commit 436e1d0, 2026-05-24 audit):
Healthy at CLI entrypoint: 20/36
Known broken: 16/36
F1 (chain_template.rpc_methods.single picked health-probe instead of
benchmark method — pure template edit fix): 7 chains
algorand, aptos, hedera, tezos, ton, kusama, polkadot
F2 (REST path wrapped as jsonrpc body — adapter dispatch fix in
tendermint/ogmios adapter): 5 chains
celestia, injective, osmosis, cosmos-hub, cardano
F3 (family mismatch: substrate/tendermint marked but chain runs EVM
compat — family + method choice fix): 4 chains
astar, moonbeam, sei, acala
Test suite: 10/10 PASS (was 9/9 before this commit, no regression on
existing tests).
Fix-wave assignments (each wave must remove its assigned chains from
KNOWN_BROKEN_CLI before its commit):
S3-B (Tendermint 5 chains): celestia, injective, osmosis, cosmos-hub, sei
S3-C (Substrate 5 chains): astar, moonbeam, acala, kusama, polkadot
S3-E (REST 5 chains): algorand, aptos, hedera, tezos, ton
S3-F (Ogmios 1 chain): cardano
S3-A2' and S3-A3' (Tron + AvaX redo) will also be guarded by this gate, but
since those chains are currently healthy under the baseline jsonrpc family
(no entries in KNOWN_BROKEN), the gate enforces no regression rather than
mandatory fix.
0 commit comments