All posts
Team ZEUSDOGFOOD 2026 builderssecuritythreat-modeltransparency

Deliberately accepted

Audit rows are organizer-visible but not tamper-proof (no hash chain). State-changing APIs rely on SameSite=Lax httpOnly JSON cookies with no per-request CSRF tokens. Rate limits live in a single-process store, so multi-worker deploys need a shared store.

Pairwise Bradley-Terry stays an informational ranking method, not a voting mode. Pairwise voting would need a different abuse story.

Why disclose

Writing THREAT-MODEL.md made judging Q&A easier, not harder — every residual has a mitigation, an owner, and a next step. Login brute force gets 100/min per (IP, email) → 429 plus ~100ms bcrypt; API keys are bearer-style until revoked; organizer screenshots during voting are out of scope and stated as such.

Run it yourself

Every post maps to a real route or file in this repo. Start with the gallery, then the docs.

Browse projectsMore posts

Keep reading

View all