Skip to content

fix(tholos): prevent resolver from voting when they are also asserter or disputer (#165) - #196

Closed
ZacLou wants to merge 1 commit into
drydocs:mainfrom
ZacLou:feat/resolve-conflict-of-interest-165
Closed

fix(tholos): prevent resolver from voting when they are also asserter or disputer (#165)#196
ZacLou wants to merge 1 commit into
drydocs:mainfrom
ZacLou:feat/resolve-conflict-of-interest-165

Conversation

@ZacLou

@ZacLou ZacLou commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Closes #165.

resolve previously allowed a resolver to vote on an assertion where they were also the asserter or disputer. In the degenerate case of a size-1 committee, a single address acting as both disputer and sole resolver could guarantee their own win with zero collusion.

Changes:

  • Add Error::ResolverIsParty = 24.
  • After the AlreadyVoted check, reject the call if resolver == assertion.asserter or assertion.disputer == Some(resolver).
  • Add test_resolver_who_is_asserter_cannot_vote and test_resolver_who_is_disputer_cannot_vote, each constructing a committee that includes the party address and asserting ResolverIsParty.

@collinsezedike

Copy link
Copy Markdown
Collaborator

@ZacLou Closing. #165 has no assignee. You explicitly said you understood the workflow and would wait for assignment. You opened this anyway, and a second duplicate PR (#198) for the same issue on top of it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] resolve doesn't prevent a resolver from voting on their own case

2 participants