Per-comment thumbs ratings
Every reviewer comment on every assessment now has a useful / not-useful button. We collect the votes anonymously, publish the counts, and refuse to dress them up as a single "X% useful" metric.
Methodology
The widget appears next to every reviewer comment on the assessment report. A click sends a single POST to /v1/feedback/comment with the comment id, the vote (useful or not_useful), and a browser-issued cookie token. The cookie is set on first vote and persists for one year, scoped to the assessment domain.
- One vote per cookie per comment. A second vote on the same comment overwrites the first; it does not double-count.
- No login, no email. We do not collect an identifier that ties a vote to a person.
- Salt-hashed IP for abuse detection only. We compute
SHA-256(ip + daily_salt)server-side to spot vote-stuffing patterns; the raw IP is not stored. - No vote weighting. We do not adjust votes by reputation, geography, or session length. Every recorded vote counts exactly one.
What we publish
The three counters at the top of this page pull live from /v1/feedback/stats and update on every page load. Because the system is new, those counts may be zero or near-zero for some time. We have deliberately resisted the temptation to seed the counter with internal QA votes — the number you see here is the number real readers have produced.
Caveats — what this doesn't measure
- Self-selection: people who bother to vote are not a random sample of readers. The ratio of useful to not-useful votes is therefore not a calibrated measure of comment quality.
- The button has no "why" field. We do not yet know which kinds of comments tend to attract not-useful votes (hallucinated weakness? off-topic? wrong field?).
- The cookie can be cleared, allowing one user to vote multiple times across browsers. The salt-hashed IP signal is a tripwire for obvious abuse, not a hard guarantee against it.
- Until counts cross several thousand votes per comment cohort, breakdowns by agent role or grade will be too noisy to publish.
Code
Endpoint and storage: api/ · vote widget on the report: landing/assess.html.