BuildJudgements() reads Kappa[v].Ed25519 (Ed25519Public, [32]byte) from chain state and passes it to ed25519.Sign(), which requires a 64-byte private key. Any call panics with "ed25519: bad private key length: 32".
Per GP §17.17: jₙ = { S_κ[v]ᵉ ⟨Xe(w) ⌢ H(w)⟩ | (c, w) ∈ aₙ }. S_κ[v]ᵉ means "sign with v's Ed25519 signing key", not "look up the public key entry in chain state". The existing BuildAnnouncement pattern already takes validatorPrivKey ed25519.PrivateKey from the caller.
Fixed in #939.
BuildJudgements()readsKappa[v].Ed25519(Ed25519Public,[32]byte) from chain state and passes it toed25519.Sign(), which requires a 64-byte private key. Any call panics with"ed25519: bad private key length: 32".Per GP §17.17:
jₙ = { S_κ[v]ᵉ ⟨Xe(w) ⌢ H(w)⟩ | (c, w) ∈ aₙ }.S_κ[v]ᵉmeans "sign with v's Ed25519 signing key", not "look up the public key entry in chain state". The existingBuildAnnouncementpattern already takesvalidatorPrivKey ed25519.PrivateKeyfrom the caller.Fixed in #939.