Files
zeekayandHanzo Dev 715fe5d8e0 The Zoo network's identity, as a node
A node is asked which network this is, what number that network is, where its
files live, what it binds, and whether a genesis document is this network's.
zood answers those.

The answers are compiled in rather than read from a file, because a node that
reads its own identity from somewhere editable can be pointed at a fork by
editing it. One number per network — network id and EVM chain id are the same
value, so a wallet and a validator cannot disagree about which network they are
on in a way that only shows up after something has been signed.

A genesis is checked, not trusted. It must state the number of the network it
was named with, and a whole-network document must state that number in both of
the places it writes it: a document whose two halves name different networks is
one half of two genesis files, and whichever the node believed would be wrong
somewhere else.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-07 23:27:26 -07:00

12 lines
465 B
Plaintext

node
Copyright (c) 2026 Zoo Labs Foundation
This product builds on the following third-party component, which remains
under its own terms.
--------------------------------------------------------------------------------
JSON for Modern C++ — https://github.com/nlohmann/json
Copyright (c) 2013-2025 Niels Lohmann
Licensed under the MIT License. A genesis document is read with it, because a
hand-written parser at a boundary is a vulnerability with a schedule.