ceremonyclient/node/store/constants.go
Cassandra Heart 12996487c3
v2.1.0.18 (#508)
* experiment: reject bad peer info messages

* v2.1.0.18 preview

* add tagged sync

* Add missing hypergraph changes

* small tweaks to sync

* allow local sync, use it for provers with workers

* missing file

* resolve build error

* resolve sync issue, remove raw sync

* resolve deletion promotion bug

* resolve sync abstraction leak from tree deletion changes

* rearrange prover sync

* remove pruning from sync

* restore removed sync flag

* fix: sync, event stream deadlock, heuristic scoring of better shards

* resolve hanging shutdown + pubsub proxy issue

* further bugfixes: sync (restore old leaf sync), pubsub shutdown, merge events

* fix: clean up rust ffi, background coverage events, and sync tweaks

* fix: linking issue for channel, connectivity test aggression, sync regression, join tests

* fix: disjoint sync, improper application of filter

* resolve sync/reel/validation deadlock

* adjust sync to handle no leaf edge cases, multi-path segment traversal

* use simpler sync

* faster, simpler sync with some debug extras

* migration to recalculate

* don't use batch

* square up the roots

* fix nil pointer

* fix: seniority calculation, sync race condition, migration

* make sync dumber

* fix: tree deletion issue

* fix: missing seniority merge request canonical serialization

* address issues from previous commit test

* stale workers should be cleared

* remove missing gap check

* rearrange collect, reduce sync logging noise

* fix: the disjoint leaf/branch sync case

* nuclear option on sync failures

* v2.1.0.18, finalized
2026-02-08 23:51:51 -06:00

181 lines
5.6 KiB
Go

package store
// Store prefixes:
const (
CLOCK_FRAME = 0x00
PROVING_KEY = 0x01
PROVING_KEY_STAGED = 0x02
KEY_BUNDLE = 0x03
DATA_PROOF = 0x04
DATA_TIME_PROOF = 0x05
PEERSTORE = 0x06
COIN = 0x07
PROOF = 0x08
HYPERGRAPH_SHARD = 0x09
SHARD = 0x0A
INBOX = 0x0B
CONSENSUS = 0x0C
MIGRATION = 0xF0
WORKER = 0xFF
)
// Clock store indexes:
const (
CLOCK_GLOBAL_FRAME = 0x00
CLOCK_SHARD_FRAME_SHARD = 0x01
CLOCK_SHARD_FRAME_CANDIDATE_SHARD = 0x02
CLOCK_SHARD_FRAME_FRECENCY_SHARD = 0x03
CLOCK_SHARD_FRAME_DISTANCE_SHARD = 0x04
CLOCK_COMPACTION_SHARD = 0x05
CLOCK_SHARD_FRAME_SENIORITY_SHARD = 0x06
CLOCK_SHARD_FRAME_STATE_TREE = 0x07
CLOCK_GLOBAL_FRAME_REQUEST = 0x08
CLOCK_GLOBAL_CERTIFIED_STATE = 0x09
CLOCK_SHARD_CERTIFIED_STATE = 0x0A
CLOCK_QUORUM_CERTIFICATE = 0x0B
CLOCK_TIMEOUT_CERTIFICATE = 0x0C
CLOCK_PROPOSAL_VOTE = 0x0D
CLOCK_TIMEOUT_VOTE = 0x0E
CLOCK_GLOBAL_FRAME_CANDIDATE = 0x0F
CLOCK_GLOBAL_FRAME_INDEX_EARLIEST = 0x10 | CLOCK_GLOBAL_FRAME
CLOCK_GLOBAL_FRAME_INDEX_LATEST = 0x20 | CLOCK_GLOBAL_FRAME
CLOCK_GLOBAL_FRAME_INDEX_PARENT = 0x30 | CLOCK_GLOBAL_FRAME
CLOCK_SHARD_FRAME_INDEX_EARLIEST = 0x10 | CLOCK_SHARD_FRAME_SHARD
CLOCK_SHARD_FRAME_INDEX_LATEST = 0x20 | CLOCK_SHARD_FRAME_SHARD
CLOCK_SHARD_FRAME_INDEX_PARENT = 0x30 | CLOCK_SHARD_FRAME_SHARD
CLOCK_GLOBAL_CERTIFIED_STATE_INDEX_EARLIEST = 0x10 |
CLOCK_GLOBAL_CERTIFIED_STATE
CLOCK_GLOBAL_CERTIFIED_STATE_INDEX_LATEST = 0x20 |
CLOCK_GLOBAL_CERTIFIED_STATE
CLOCK_SHARD_CERTIFIED_STATE_INDEX_EARLIEST = 0x10 |
CLOCK_SHARD_CERTIFIED_STATE
CLOCK_SHARD_CERTIFIED_STATE_INDEX_LATEST = 0x20 |
CLOCK_SHARD_CERTIFIED_STATE
CLOCK_QUORUM_CERTIFICATE_INDEX_EARLIEST = 0x10 |
CLOCK_QUORUM_CERTIFICATE
CLOCK_QUORUM_CERTIFICATE_INDEX_LATEST = 0x20 |
CLOCK_QUORUM_CERTIFICATE
CLOCK_TIMEOUT_CERTIFICATE_INDEX_EARLIEST = 0x10 |
CLOCK_TIMEOUT_CERTIFICATE
CLOCK_TIMEOUT_CERTIFICATE_INDEX_LATEST = 0x20 |
CLOCK_TIMEOUT_CERTIFICATE
CLOCK_SHARD_FRAME_CANDIDATE_INDEX_LATEST = 0x20 |
CLOCK_SHARD_FRAME_CANDIDATE_SHARD
CLOCK_GLOBAL_FRAME_CANDIDATE_INDEX_LATEST = 0x20 |
CLOCK_GLOBAL_FRAME_CANDIDATE
CLOCK_GLOBAL_FRAME_REQUEST_CANDIDATE = 0xF8
)
// Coin store indexes:
const (
COIN_BY_ADDRESS = 0x00
COIN_BY_OWNER = 0x01
TRANSACTION_BY_ADDRESS = 0x02
TRANSACTION_BY_OWNER = 0x03
PENDING_TRANSACTION_BY_ADDRESS = 0x04
PENDING_TRANSACTION_BY_OWNER = 0x05
)
// Data proof store indexes:
const (
DATA_PROOF_METADATA = 0x00
DATA_PROOF_INCLUSION = 0x01
DATA_PROOF_SEGMENT = 0x02
DATA_TIME_PROOF_DATA = 0x00
DATA_TIME_PROOF_LATEST = 0x01
)
// Hypergraph store indexes:
const (
SHARD_COMMIT = 0x00
HYPEREDGE_ADDS = 0x01
HYPEREDGE_REMOVES = 0x11
VERTEX_ADDS_TREE_NODE = 0x02
VERTEX_REMOVES_TREE_NODE = 0x12
HYPEREDGE_ADDS_TREE_NODE = 0x03
HYPEREDGE_REMOVES_TREE_NODE = 0x13
VERTEX_ADDS_TREE_NODE_BY_PATH = 0x22
VERTEX_REMOVES_TREE_NODE_BY_PATH = 0x32
HYPEREDGE_ADDS_TREE_NODE_BY_PATH = 0x23
HYPEREDGE_REMOVES_TREE_NODE_BY_PATH = 0x33
VERTEX_ADDS_CHANGE_RECORD = 0x42
VERTEX_REMOVES_CHANGE_RECORD = 0x52
HYPEREDGE_ADDS_CHANGE_RECORD = 0x43
HYPEREDGE_REMOVES_CHANGE_RECORD = 0x53
HYPERGRAPH_VERTEX_ADDS_SHARD_COMMIT = 0xE0
HYPERGRAPH_VERTEX_REMOVES_SHARD_COMMIT = 0xE1
HYPERGRAPH_HYPEREDGE_ADDS_SHARD_COMMIT = 0xE2
HYPERGRAPH_HYPEREDGE_REMOVES_SHARD_COMMIT = 0xE3
HYPERGRAPH_ALT_SHARD_COMMIT = 0xE4
HYPERGRAPH_ALT_SHARD_COMMIT_LATEST = 0xE5
HYPERGRAPH_ALT_SHARD_ADDRESS_INDEX = 0xE6
VERTEX_DATA = 0xF0
VERTEX_TOMBSTONE = 0xF1
HYPERGRAPH_COVERED_PREFIX = 0xFA
HYPERGRAPH_COMPLETE = 0xFB
HYPERGRAPH_GLOBAL_PROVER_RECALC_DONE = 0xF9
VERTEX_ADDS_TREE_ROOT = 0xFC
VERTEX_REMOVES_TREE_ROOT = 0xFD
HYPEREDGE_ADDS_TREE_ROOT = 0xFE
HYPEREDGE_REMOVES_TREE_ROOT = 0xFF
)
// Key store indexes:
const (
KEY_DATA = 0x00
KEY_BUNDLE_INDEX_EARLIEST = 0x10
KEY_BUNDLE_INDEX_LATEST = 0x20
KEY_IDENTITY = 0x30
KEY_PROVING = 0x31
KEY_CROSS_SIGNATURE = 0x40
KEY_X448_SIGNED_KEY_BY_ID = 0x50
KEY_X448_SIGNED_KEY_BY_PARENT = 0x51
KEY_X448_SIGNED_KEY_BY_PURPOSE = 0x52
KEY_X448_SIGNED_KEY_BY_EXPIRY = 0x53
KEY_DECAF448_SIGNED_KEY_BY_ID = 0x54
KEY_DECAF448_SIGNED_KEY_BY_PARENT = 0x55
KEY_DECAF448_SIGNED_KEY_BY_PURPOSE = 0x56
KEY_DECAF448_SIGNED_KEY_BY_EXPIRY = 0x57
KEY_DEVICE_PRE_KEY_BY_ID = 0x60
KEY_DEVICE_PRE_KEY_BY_DEVICE = 0x61
KEY_DEVICE_PRE_KEY_AVAILABLE = 0x62
KEY_DEVICE_PRE_KEY_ONE_TIME = 0x63
)
// Shard store indexes:
const (
APP_SHARD_DATA = 0x00
)
// Dispatch store indexes:
const (
INBOX_MESSAGE = 0x00
INBOX_MESSAGE_DATA = 0x01
INBOX_MESSAGE_BY_ADDR = 0x02
// Hub associations (2P-Set)
INBOX_HUB_BY_ADDR = 0x10
INBOX_HUB_ADDS = 0x11
INBOX_HUB_DELETES = 0x12
)
// Worker store indexes:
const (
WORKER_BY_CORE = 0x00
WORKER_BY_FILTER = 0x01
)
// Consensus store indexes:
const (
CONSENSUS_STATE = 0x00
CONSENSUS_LIVENESS = 0x01
)