tools/agreement

How often listeners agree with Jev's art critic. The jev panel's "do you agree with Jev?" asks a listener which of two songs is more art, and posts the pick to the site (website/src/jev/agree.mjs), which keeps a count per pair and pick (worker/src/votes.ts). agreement.mjs reads those counts from GET /jev/votes/summary and scores them against each song's current critic.art in its SPEC.md (tools/critic/).

nix run .#agreement                                  # the public site
nix run .#agreement -- --url http://localhost:4324   # `buck2 run //:preview`, or any deploy

It prints the overall share of votes whose pick is the song the critic scores higher, then a line per song: its score, and the share over the votes on pairs it was in. Left out, and counted as such: votes on pairs the critic scores equally (no preference, as on the page), and votes on songs no longer in the repo or never scored.

Agreement is always against the scores as they stand: a rescore moves it, since a vote records only the pair and the pick.