mirror of
https://github.com/logos-blockchain/logos-execution-zone.git
synced 2026-07-21 21:29:36 +00:00
- persist a final-tier snapshot (state + meta) atomically with the follow update that advanced it; on boot, anchor `final` on it and replay stored blocks above it as `head`, so a post-restart orphan of a not-yet-finalized block still reverts instead of silently diverging - correlate orphan/finalize events by block hash: restored head entries carry hash-derived sentinel MsgIds (the real ones are not persisted) - a finalized block chaining on an unfinalized head entry finalizes that prefix (finality is prefix-monotone) - warn on (and keep ignoring) a same-height adopted competitor that arrives without its orphan sibling — an SDK-contract breach worth surfacing - follow path reverts orphans via one batched `apply_channel_update` (single truncate + head re-derivation) instead of a re-derivation per orphan - remove DESIGN.md, move to task docs instead - trim very long comments / docstrings
27 lines
620 B
TOML
27 lines
620 B
TOML
[package]
|
|
name = "chain_state"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
license = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
common.workspace = true
|
|
lee.workspace = true
|
|
logos-blockchain-core.workspace = true
|
|
logos-blockchain-zone-sdk.workspace = true
|
|
|
|
anyhow.workspace = true
|
|
log.workspace = true
|
|
serde.workspace = true
|
|
thiserror.workspace = true
|
|
|
|
[dev-dependencies]
|
|
testnet_initial_state.workspace = true
|
|
# we use borsh to compare byte-to-byte matching within tests
|
|
# (it sorts hashmap's before serialization, so we can compare two states for equality)
|
|
borsh.workspace = true
|
|
serde_json.workspace = true
|