Saltar al contenido
← Volver

The Cap Room

Una consola de front office de la NBA: hojas salariales, una máquina de canjes cuyos veredictos se explican solos y evaluación de jugadores.

En línea Next.jsTypeScriptReactVitest
The Cap Room: Una consola de front office de la NBA: hojas salariales, una máquina de canjes cuyos veredictos se explican solos y evaluación de jugadores.

En línea, código público en GitHub. Construida para una aplicación real.

La idea

La construcción de rosters en la NBA corre sobre el convenio colectivo del 2023, un reglamento tan denso que los front offices tienen especialistas para navegarlo. The Cap Room convierte ese reglamento en software: hojas salariales contra las cinco líneas, una máquina de canjes que sella los acuerdos como legales o ilegales, y evaluación de jugadores consciente de sus contratos. Lo construí como demo de ingeniería para un rol en un front office de la NBA.

Lo que construí

Todo se apoya en un solo motor de reglas en TypeScript puro: constantes del CBA, matemática de la hoja salarial, legalidad de canjes, reglas de picks. No importa nada del UI y lleva 43 pruebas unitarias, así que las reglas existen una vez y se prueban una vez. Encima van tres módulos: una Hoja Salarial que muestra la nómina del equipo como un medidor contra el piso, el tope, el impuesto y los dos aprons, con excepciones vivas y el hard cap que cada una dispararía; la Máquina de Canjes; y la Evaluación de Jugadores con percentiles de liga calculados contra todos los jugadores calificados, no solo los equipos precargados.

La estrella es el Rule Ledger. Arma un canje entre dos equipos, jugadores, efectivo y picks, y el veredicto lista cada regla que el motor evaluó, pase o falle, con la aritmética en lenguaje claro. Un canje ilegal cita la regla que lo mató. Uno legal que crea un hard cap lo dice. Las propuestas se serializan en el URL, así que cualquier canje es un link compartible. El escenario de demostración es la prueba Dončić: un paquete de picks que falla la regla Stepien, hasta que cambias el primero del 2028 por el del 2029 y sella LEGAL.

Lo difícil

01

Un reglamento como funciones

El CBA es prosa. El motor lo necesita como verificaciones componibles: aprons, excepciones, la regla Stepien para los picks. Lograr que compongan sin casos especiales fue el verdadero trabajo de modelado.

02

Sin veredictos mudos

Una X roja sin explicación no sirve en un front office. Cada fallo carga su regla y sus números, lo que obliga al motor a producir evidencia, no solo booleanos.

03

Compartible de construcción

Serializar las propuestas en el URL hace reproducible cada escenario: un reporte de bug, un debate o una demo es solo un link.

Lo que sigue

Más temporadas de datos y lógica de picks más profunda.