Skip to content

Exchange Reputation & Voting

Exchange Reputation & Voting v1 adds lightweight community feedback to published questions and answers.

Authenticated Exchange members can cast:

  • +1 upvote;
  • -1 downvote;
  • 0 to remove their existing vote.

Each account can hold at most one current vote for a specific question or answer.

Changing a vote replaces the previous value.

The API rejects votes on content authored by the current user.

This rule is enforced server-side.

The displayed score is:

sum(all current votes for the content)

Votes are attached to the immutable Exchange user identifier and the target content identifier.

A member’s v1 reputation is derived rather than stored as a separate mutable balance.

The score is the sum of current votes received on that member’s questions and answers.

The profile view separates:

  • total score;
  • question score;
  • answer score;
  • received vote count;
  • published question count;
  • published answer count.

Reputation is informational. It does not grant administrator or moderation permissions.

Votes are stored in exchange_votes.

A unique database constraint enforces one current vote per:

voter + target type + target id

Removing a vote deletes that current vote row.

This v1 does not implement:

  • vote-history/audit events;
  • public leaderboards;
  • reputation thresholds;
  • badges;
  • vote-based permissions;
  • anti-brigading controls;
  • dedicated per-action rate limiting;
  • automated fraud scoring.

The existing Exchange write gate still applies to vote writes.

Voting is intentionally separate from moderation authorization.