Files
zap/v1/codegen/schemas/lp-214-light-client.json
zeekay af88152c6f rename v2 -> v1: the typed-view API + codegen is the canonical 1.0 (no v2, ever)
There is one perfected typed ZAP layer and it lives at github.com/luxfi/zap/v1 —
forwards-only, no backwards-compat baggage, never a breaking major. Mechanical,
behavior-preserving: v2/ -> v1/ (git mv), package zapv2 -> zapv1, import path
.../zap/v2 -> .../zap/v1 (incl. the codegen's emitted banner + import so
generated files reference /v1). Codegen golden tests pass; typed layer vets
clean. (Pre-existing CGO 'resolv' link failures in the root package are
unrelated env noise.)
2026-06-23 15:05:15 -07:00

60 lines
2.5 KiB
JSON

{
"lp": "lp-214",
"description": "Lux light client (LP-214 §Wire schemas). 3 envelopes. Schema IDs 0xF0..0xF2.",
"schemas": [
{
"wire_name": "LightClientBlockHeaderRequest",
"go_name": "LCBlockHeaderReqSchema",
"kind": "0x50",
"size": 51,
"package": "lcwire",
"out": "lp-214/lc_block_header_request_zap.go",
"fields": [
{ "name": "Version", "type": "uint8", "offset": 1 },
{ "name": "ChainID", "type": "uint32", "offset": 2 },
{ "name": "BlockHeight", "type": "uint64", "offset": 6 },
{ "name": "BlockContentHash", "type": "bytes32", "offset": 14 },
{ "name": "CertMinTier", "type": "uint8", "offset": 46 },
{ "name": "RequestID", "type": "uint32", "offset": 47 }
]
},
{
"wire_name": "LightClientStateProofRequest",
"go_name": "LCStateProofReqSchema",
"kind": "0x51",
"size": 83,
"package": "lcwire",
"out": "lp-214/lc_state_proof_request_zap.go",
"fields": [
{ "name": "Version", "type": "uint8", "offset": 1 },
{ "name": "ChainID", "type": "uint32", "offset": 2 },
{ "name": "BlockHeight", "type": "uint64", "offset": 6 },
{ "name": "StateRoot", "type": "bytes32", "offset": 14 },
{ "name": "KeyHash", "type": "bytes32", "offset": 46 },
{ "name": "ProofScheme", "type": "uint8", "offset": 78 },
{ "name": "RequestID", "type": "uint32", "offset": 79 }
]
},
{
"wire_name": "LightClientCertProof",
"go_name": "LCCertProofSchema",
"kind": "0x52",
"size": 36,
"package": "lcwire",
"out": "lp-214/lc_cert_proof_zap.go",
"fields": [
{ "name": "Version", "type": "uint8", "offset": 1 },
{ "name": "RequestID", "type": "uint32", "offset": 2 },
{ "name": "ChainID", "type": "uint32", "offset": 6 },
{ "name": "BlockHeight", "type": "uint64", "offset": 10 },
{ "name": "CertTier", "type": "uint8", "offset": 18 },
{ "name": "ProofScheme", "type": "uint8", "offset": 19 },
{ "name": "BlockHeaderOff", "type": "uint32", "offset": 20 },
{ "name": "QuasarCertOff", "type": "uint32", "offset": 24 },
{ "name": "StateProofOff", "type": "uint32", "offset": 28 },
{ "name": "KeyValueOff", "type": "uint32", "offset": 32 }
]
}
]
}