Skip to content

fix(tholos): prevent resolver from voting on their own case (#165) - #172

Closed
ZacLou wants to merge 2 commits into
drydocs:mainfrom
ZacLou:fix/self-vote-165
Closed

fix(tholos): prevent resolver from voting on their own case (#165)#172
ZacLou wants to merge 2 commits into
drydocs:mainfrom
ZacLou:fix/self-vote-165

Conversation

@ZacLou

@ZacLou ZacLou commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Closes #165

Adds a conflict-of-interest check in
esolve: a resolver who is also the asserter or disputer of the assertion cannot vote, returning a new Error::SelfVote.

  • Prevents a resolver from voting in their own case, which in a size-1 committee guarantees the outcome and in larger committees still biases the result.
  • Adds tests covering both asserter-as-resolver and disputer-as-resolver.

cargo test -p tholos passes.

…n open_reveal_phase

Closes drydocs#156

When open_reveal_phase auto-reveals the asserter and disputer fixed
positions, publish a Revealed event for each so off-chain indexers can
observe the revealed choice without requiring an explicit reveal() call.

Adds a test assertion that exactly three Revealed events are emitted:
asserter, disputer, and the external voter that called reveal().
)

Closes drydocs#165

Adds a conflict-of-interest check in 
esolve: a resolver who is also
the asserter or disputer of the assertion cannot vote. A new
Error::SelfVote variant is returned.

Adds tests covering both the asserter-as-resolver and disputer-as-resolver
cases.
@collinsezedike

Copy link
Copy Markdown
Collaborator

@ZacLou Closing. #165 has no assignee. Comment on the issue and wait to be assigned before opening a PR.

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

3 participants