docs(manifest): describe thin signing index

This commit is contained in:
Nicholas Dudfield
2026-08-31 14:35:33 +07:00
parent 5979bfa2d4
commit bfefe4eb5e

View File

@@ -180,10 +180,13 @@ handleNewValidation(
auto const seq = val->getFieldU32(sfLedgerSequence);
// A validator that rotated its ephemeral key while this node was not
// listening signs with a key no held manifest mentions, which is
// indistinguishable from a validator this node has never heard of. Every
// manifest published on-chain is written at its ephemeral keylet as well
// as its master one, so that binding is recoverable in a single read.
// listening may sign with a key absent from every manifest held here. That
// is indistinguishable from a validator this node has never heard of. Every
// manifest published on-chain has a thin signing-key index pointing to its
// canonical master-key object, so that binding takes two bounded reads.
// This is a rare cold-cache fallback: manifest gossip and canonical-wrapper
// harvesting normally populate the mapping first. It is mainly needed at
// startup, after missed propagation, or after local cache loss.
//
// Done here rather than left to the next consensus round, because
// ManifestCache::applyLedger() runs there against the master keys already