fix(comments): prevent nil pointer dereference in vote state hydration
Type assertions on map values return pointers to loop variables, which can cause
nil pointer dereferences or incorrect values if addresses are taken directly.
Changes:
- Create explicit copies of type-asserted direction and voteURI values
- Take addresses of copies instead of loop variables for Viewer.Vote and Viewer.VoteURI
- Add DefaultRepliesPerParent package-level constant (was magic number)
- Document constant rationale: balances UX context with query performance
This fixes potential nil pointer panics in comment viewer state hydration and
improves code maintainability by making magic numbers visible and documented.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>