mirror of
https://github.com/luxfi/node.git
synced 2026-07-27 03:39:39 +00:00
Kills pcodecs from 3 complete subsystems (verified go test ./... = 155 ok / 0 FAIL):
- proposervm: block/state/summary struct-is-wire (blockwire.go + statewire.go;
deleted block/state/summary codec.go). blockKind bytes: reserved=0 signed=1
option=2. Epoch inlined in unsigned object. proposer/windower chainSource seed
= binary.LittleEndian (byte-identical to old wrappers.Packer.UnpackLong).
- example/xsvm: tx/block/genesis native Marshal (deleted 3 codec.go); create-chain
example uses genesis.Marshal().
- components: message.Tx native (deleted codec.go); keystore codec shell removed;
index pcodecs.LongLen → local const.
- evm/{predicate,lp176}: off pcodecs.
- platformvm residual: state metadata + genesis + metrics + signer + stakeable
native, vestigial serialize tags removed.
REMAINING (careful solo, agents weekly-capped): warp (reverted — agent left an
ID≠Marshal consensus inconsistency in ChainToL1Conversion; needs proper review,
not a golden-regen) + xvm (reverted — barely started). pcodecs package stays
until those 2 land. /ext/→/v1/ endpoint change also pending.
Co-authored-by: Hanzo Dev <dev@hanzo.ai>
41 lines
813 B
Go
41 lines
813 B
Go
// Copyright (C) 2019-2026, Lux Industries Inc. All rights reserved.
|
|
// See the file LICENSE for licensing terms.
|
|
|
|
package block
|
|
|
|
import "github.com/luxfi/ids"
|
|
|
|
type Header interface {
|
|
ChainID() ids.ID
|
|
ParentID() ids.ID
|
|
BodyID() ids.ID
|
|
Bytes() []byte
|
|
}
|
|
|
|
// statelessHeader is the (chain, parent, body) binding the proposer signs. Its
|
|
// bytes are a single fixed-shape zap object (see buildHeaderBuffer); the struct
|
|
// caches the three IDs plus the encoded bytes.
|
|
type statelessHeader struct {
|
|
Chain ids.ID
|
|
Parent ids.ID
|
|
Body ids.ID
|
|
|
|
bytes []byte
|
|
}
|
|
|
|
func (h *statelessHeader) ChainID() ids.ID {
|
|
return h.Chain
|
|
}
|
|
|
|
func (h *statelessHeader) ParentID() ids.ID {
|
|
return h.Parent
|
|
}
|
|
|
|
func (h *statelessHeader) BodyID() ids.ID {
|
|
return h.Body
|
|
}
|
|
|
|
func (h *statelessHeader) Bytes() []byte {
|
|
return h.bytes
|
|
}
|