AIP-22 erratum (2026-10-16), section 6: the first form of the equivocation-evidence contract took two COMMIT-1 seals (no round) as evidence; COMMIT evidence is now round-bound (COMMIT-2), new instances on testnet 28001, the old ones retired, both clients agree on the eight vectors

This commit is contained in:
Aere Network 2026-10-16 03:55:34 +03:00
parent 7a5340aea5
commit e1c39747ed

View File

@ -370,6 +370,24 @@ Two refinements to the text above, recorded rather than silently applied: the Me
misleads one validator of ten, below `f` = 3, whose own commits stay sealed with its own key; combined with `f` Byzantine misleads one validator of ten, below `f` = 3, whose own commits stay sealed with its own key; combined with `f` Byzantine
validators, the misled second client would count as one more faulty node, and that case is not analyzed. validators, the misled second client would count as one more faulty node, and that case is not analyzed.
- 2026-10-16, section 6 and the stage record of 2026-09-23 (stage 6): the first form of `PqEquivocationEvidence` took two
COMMIT-1 seals of one row at the same height over two block hashes as an equivocation, with no round ("COMMIT (the anchor
form, which carries no round), same height and a different block hash"). An honest validator can seal block `p` in a round
that does not decide and block `p'` in a later one, the case of the entry of 2026-10-01, so that form could record an honest
validator, and section 6 makes a record the basis of a removal vote. Repaired: a COMMIT equivocation is two round-bound
seals, `M_r = keccak256(RLP["AERE-PQ-COMMIT-2", chainId, n, r, hash])`, of one row at the same height AND round over two
block hashes, as for the other three types; a COMMIT-1 pair is refused, because its first seal does not verify under
COMMIT-2. The contract is immutable and ownerless, so the repair is a new pair of instances on testnet 28001 (drill and real,
2026-10-16); the instances of 2026-09-23 stay on chain and are retired, and their records are named as made by the first
form. Measured on 28001 with the live Falcon-512 precompile: the drill instance recorded a PREPARE and a COMMIT-2
equivocation, and refused, as calls, the COMMIT-1 pair and a seal given in another round than the one presented, besides the
refusals of the first record; the real instance verifies the five Falcon-512 seals of the v3 anchor certificate at block
6,363,712 over COMMIT-2 of round 0, and refuses each of them under round 1; the runtime code of all four instances equals its
source (the new ones today's, the retired ones the source of 2026-09-23). The equivocation vectors of section 9 (eight, two
valid) are judged identically by both clients, each refusal for the named reason, including the COMMIT-1 object that the
first form recorded on chain. Chain 2800 is not affected: no evidence contract is deployed there and its commit seal is still
COMMIT-1 (the round-bound height is not set).
## Post-Acceptance Outcome Record ## Post-Acceptance Outcome Record
Not accepted; nothing to record. Not accepted; nothing to record.