Tournament v2 for developers. Competitors are PRs, brackets are merge queues, champion is the shipped feature, elimination is code review rejection.
  • JavaScript 100%
Find a file
2026-06-30 11:15:28 +00:00
node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709 test: add e2e tests 2026-06-28 11:11:46 +00:00
src feat(#1): tournament v2 engine — competitors, brackets, rounds, upsets, ASCII arena 2026-06-16 12:38:15 +00:00
tests fix: e2e tests now use CommonJS require for node --test compatibility 2026-06-30 11:15:25 +00:00
package.json feat(#1): tournament v2 engine — competitors, brackets, rounds, upsets, ASCII arena 2026-06-16 12:38:15 +00:00
README.md feat(#1): tournament v2 engine — competitors, brackets, rounds, upsets, ASCII arena 2026-06-16 12:38:15 +00:00

code-tournament-v2

Tournament v2 for developers. Competitors are PRs, brackets are merge queues, champion is the shipped feature, elimination is code review rejection.

Usage

const { Tournament, COMPETITOR_TYPES } = require('./src/tournament');

const t = new Tournament('Merge Bowl');
t.setPrizePool(500);

// Register PRs
t.register('PR #1: Auth Refactor', COMPETITOR_TYPES.POLISHED);
t.register('PR #2: Cache Layer', COMPETITOR_TYPES.SPEEDY);
t.register('PR #3: Dark Mode', COMPETITOR_TYPES.SNEAKY);
t.register('PR #4: GraphQL API', COMPETITOR_TYPES.MAMMOTH);

// Run the tournament
const champion = t.runFull();

console.log(t.bracketView());
console.log(t.report());

Competitor Types

  • Polished PR (STR 8, CON 9) — Well-tested favorite
  • Speedy PR (STR 6, FLA 9) — Fast delivery, high variance
  • Dark Horse PR (STR 5, FLA 7) — Underdog that surprises
  • Controversial PR (STR 7, FLA 8) — Sparks debate
  • Mammoth PR (STR 9, CON 5) — 500+ files changed
  • Refactor PR (STR 6, CON 8) — Cleaner code, respected but boring