A private, friends-only online party game. Players answer questions, guess who wrote each answer, and vote on superlatives.
  • Python 70.9%
  • HTML 29.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
mercury f5e468d693 Spec amendment: 2026-09-11 playtest updates (ratified)
- New: spec-amendments/2026-09-11-playtest-updates.md — server-random
  superlatives, 60s result timer + Next Round bypass, click-timer +15s,
  per-answer guesser rows + round/total scoreboard with tie-aware medals,
  decoy wire-value fix, superlative list additions, Reader button rename
- DECISIONS.md: decisions 74-77 (random superlative, result 60s, timer
  extension, result view guessers/scoreboard)
- CURRENT.md: 2026-09-11 playtest session summary
2026-09-11 01:55:49 -04:00
data Question schema v2: structured decoys, attributes map, deck manifest; rename decisions.md→DECISIONS.md 2026-09-03 14:25:19 -04:00
spec-amendments Spec amendment: 2026-09-11 playtest updates (ratified) 2026-09-11 01:55:49 -04:00
validation Question schema v2: structured decoys, attributes map, deck manifest; rename decisions.md→DECISIONS.md 2026-09-03 14:25:19 -04:00
.gitignore Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00
app-about.html Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00
blocklist.json Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00
config.json Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00
CONTEXTMAP.md Fix 4-files references to capitalized names in README/CONTEXTMAP/CURRENT/spec 2026-09-02 16:01:38 -04:00
CURRENT.md Spec amendment: 2026-09-11 playtest updates (ratified) 2026-09-11 01:55:49 -04:00
DECISIONS.md Spec amendment: 2026-09-11 playtest updates (ratified) 2026-09-11 01:55:49 -04:00
game-design-spec.md Spec amendment: 2026-09-11 playtest updates (ratified) 2026-09-11 01:55:49 -04:00
README.md Fix 4-files references to capitalized names in README/CONTEXTMAP/CURRENT/spec 2026-09-02 16:01:38 -04:00
scrape.py Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00
taxonomy.py Initial commit: Who Said That? — game design spec, scraper, validation app, and project scaffold 2026-09-01 10:51:32 -04:00

Who Said That?

A private, friends-only online party game. Players answer questions, guess who wrote each answer, and vote on superlatives ("Classic Karl", "Grossest"...). Built on top of a daily AskReddit scrape for question + decoy content.

Repositories

Two repos split the project:

Repo Contents Visibility
mercury/WhoSaidThat (this) Spec, design decisions, content pipeline (scrape.py → data/deck.json), validation app private
mercury/whosaidthat-app The game application — Go backend + React web client public

The app repo consumes data/deck.json (via scripts/sync-deck.sh there) and implements game-design-spec.md. App development state lives in the app repo's own four files.

How to work in this repository (read this first)

This project uses progressive context shaping. The four files at the root are the contract between you (the agent) and the human running the project:

File Purpose You should
CURRENT.md The live state of the project Read first. Obey it. Update it after every consequential change.
CONTEXTMAP.md Map of what exists and where Consult it to find files. Help keep it accurate.
DECISIONS.md Decision log with rationale Add entries when a decision changes. Never use old decisions as current guidance.
README.md This file — how the method works Internalize it once.

Rules of engagement

  1. CURRENT.md is authoritative. If it says X and your instincts say Y, reconcile with the human before proceeding. Do not silently override it.
  2. Update CURRENT.md when the state changes. After you finish a meaningful chunk of work, reflect the new reality: what is done, what is next, what decisions changed. Keep it short enough that a human will actually read it.
  3. Add to DECISIONS.md, don't rewrite history. When a decision changes, record the new decision AND the reason. Old decisions stay in the log as history — they just stop being current guidance.
  4. CONTEXTMAP.md is a map, not a payload. The agent does not need every file's contents in context. It needs to know where to look. If you create or move files, update the map.
  5. Stop conditions matter. CURRENT.md should say when a run should stop or return to the human. Respect those.
  6. Ask before irreversible actions (deleting data, publishing, spending). The human reviews hands-on.