Simplify receive-pack completion and convergence handling

Commit

Andrea Nodari2w ago

Flatten the post-drain branches in sendReceivePack, share report-status error formatting and the unpack check, and store a RefOutcome in refAnswer instead of two booleans. reconcileRejections skips all work for accepted reports and computes verification candidates once. Tests reuse countingCloser, iotest.ErrReader and sync.OnceValue.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com Claude-Session: https://claude.ai/code/session_015v2pr6ALtc7fv7W22x8DUM Entire-Checkpoint: 01M5CAN5V936FTJZMA7HSWAK53