Metodología de puntuación_
Transparencia total sobre cómo Chapa decodifica tu impacto como desarrollador. Cada peso, límite y decisión están explicados aquí.
Ver el vídeo explicativo
¿Prefieres leer? La metodología completa está detallada a continuación.
Filosofía
El desarrollo asistido por IA hace que las métricas de volumen tradicionales —commits, líneas de código, cantidad de PRs— sean cada vez más irrelevantes. Un único número que lo mezcla todo oculta la diferencia entre un desarrollador prolífico y un revisor dedicado.
Chapa reemplaza ese número único con un desglose multidimensional del impacto: cuatro puntuaciones de dimensión base (cada una de 0 a 100) más una quinta dimensión opcional de Oficio, un arquetipo de desarrollador, una puntuación compuesta y una calificación de confianza. Cada estilo de contribución puede destacar en sus propios términos.
Normalización
La mayoría de las métricas brutas se transforman usando normalización logarítmica para recompensar la contribución genuina mientras se hace impráctica la manipulación:
Esto produce un valor entre 0 y 1. La curva logarítmica significa que las contribuciones tempranas añaden un valor significativo, pero el volumen más allá del límite no tiene ningún efecto. Enviar 1.000 commits no produce una puntuación 10 veces mayor que 100 commits.
Límites de señal
Cada señal tiene un límite —el punto a partir del cual el volumen adicional no añade nada. Los límites están calibrados para el rango de desarrolladores P50-P75, de modo que un año sólido de trabajo constante puede alcanzar el crédito máximo.
| Señal | Límite | Justificación |
|---|---|---|
| Commits | 300 | 150 commits/año normaliza a ~81%; un año sólido se recompensa completamente |
| Peso de PR | 60 | Ponderado por complejidad, no por cantidad; 25 de peso normaliza a ~83% |
| Revisiones | 80 | 30 revisiones/año normaliza a ~78%; colaboración sin volumen extremo |
| Issues | 40 | 10 issues/año normaliza a ~70%; resolución significativa, no ruido |
| Repos | 12 | Trabajo entre proyectos; 5 repos normaliza a ~42% |
| Estrellas | 150 | Reconocimiento comunitario; 10 estrellas normaliza a ~49% |
| Forks | 80 | Personas construyendo sobre tu trabajo; 10 forks normaliza a ~55% |
| Watchers | 50 | Seguidores activos del repo; mantenidos para normalización pero excluidos de los pesos de Alcance |
Las dimensiones base
Cada dimensión se puntúa de 0 a 100 de forma independiente. Una dimensión devuelve 0 cuando su señal principal está completamente ausente.
Entrega — enviar cambios significativos
| Señal | Peso | Justificación |
|---|---|---|
| Peso de PR | 70% | Las PRs fusionadas ponderadas por recuento de archivos y cambios de líneas son la señal más fuerte del código significativo enviado |
| Issues cerradas | 20% | Resolver issues muestra responsabilidad de extremo a extremo, del problema a la solución |
| Commits | 10% | El recuento bruto de commits es la señal más débil —fácil de inflar, por eso recibe el peso más bajo |
El peso de PR no es un simple recuento. Cada PR fusionada se pondera por su tamaño y complejidad, con un máximo de 3,0 por PR para evitar que una sola PR masiva domine. Un multiplicador de tamaño escala el peso de 0 a 1 a medida que los cambios totales (archivos + adiciones + eliminaciones) crecen de 0 a 10, de modo que las PRs triviales o vacías contribuyen con cero peso mientras que las PRs normales no se ven afectadas.
La Entrega también incluye un modificador de eficiencia de flujo (±5%) basado en el tiempo de entrega medio de PR —la rapidez con que tus PRs pasan de la creación a la fusión. Un turnaround rápido (≤4 horas) obtiene un incremento del 5%; un flujo lento (>7 días) aplica una penalización del 5%. Esto se alinea con la métrica DORA de "tiempo de entrega de cambios".
Calidad — disciplina de ingeniería
La Calidad se mide de forma diferente según el tipo de perfil. Los desarrolladores colaborativos (aquellos que revisan activamente el código de otros) se puntúan en función de su comportamiento de revisión. Los desarrolladores en solitario —aquellos con una proporción revisión-PR por debajo del 15%— se puntúan en función de las señales de disciplina de ingeniería visibles en su flujo de trabajo de PR.
Calidad colaborativa
| Señal | Peso | Justificación |
|---|---|---|
| Revisiones enviadas | 60% | La señal principal — cuánto tiempo dedicas a revisar el código de otros |
| Proporción revisión-PR | 25% | Una proporción alta significa que revisas más de lo que envías, indicando un rol centrado en la calidad. Máximo 5:1 |
| Puntuación de tamaño de lote | 15% | Fracción de PRs en el punto óptimo revisable (20-500 líneas). Recompensa cambios pequeños y enfocados; penaliza tanto los micro como los sobredimensionados |
Calidad en solitario
| Señal | Peso | Justificación |
|---|---|---|
| Tasa de descripción de PR | 40% | Porcentaje de PRs fusionadas con una descripción no vacía — la señal de disciplina en solitario más fuerte |
| Tasa de rama de funcionalidad | 25% | Porcentaje de PRs desde una rama de funcionalidad (no main/master/develop) — muestra un flujo de trabajo de desarrollo estructurado |
| Tasa de vinculación de issues | 20% | Porcentaje de PRs que cierran al menos una issue — conecta el código con el trabajo rastreado |
| Puntuación de tamaño de lote | 15% | Fracción de PRs en el punto óptimo revisable (20-500 líneas). Recompensa cambios pequeños y enfocados |
Los desarrolladores en solitario nunca son penalizados por trabajar solos. En lugar de omitir completamente la Calidad, Chapa evalúa los hábitos de ingeniería visibles en su flujo de trabajo de PR. Todas las dimensiones base siempre se puntúan para cada desarrollador.
Constancia — contribuciones fiables y sostenidas
| Señal | Peso | Justificación |
|---|---|---|
| Días activos (curva sqrt) | 45% | Raíz cuadrada de díasActivos/365 — recompensa el inicio mientras sigue valorando la contribución sostenida. 120 días activos puntúa ~57% (vs 33% con lineal) |
| Uniformidad del mapa de calor | 40% | Mide con qué uniformidad se distribuye la actividad a lo largo de las semanas. Un ritmo estable puntúa más alto que las ráfagas concentradas |
| Cobertura semanal | 15% | Fracción de semanas con al menos una contribución — captura la cadencia sostenible, la regularidad con que apareces |
La señal de días activos usa una curva de raíz cuadrada en lugar de una proporción lineal. Esto facilita construir impulso temprano —50 días activos puntúa 37% en lugar de 14%— mientras se preserva el rango completo para los colaboradores diarios dedicados. La uniformidad del mapa de calor usa el coeficiente de variación invertido en los totales semanales, con semanas atípicas recortadas a 3× la mediana para evitar que una semana ultra-productiva domine la varianza. La cobertura semanal mide qué fracción de semanas tuvo alguna actividad — recompensando a los desarrolladores que aparecen de forma constante independientemente del volumen de producción diario.
Alcance — influencia entre proyectos
| Señal | Peso | Justificación |
|---|---|---|
| Repos contribuidos | 40% | Cuántos repos a los que contribuiste con 3+ commits. Las contribuciones de un solo commit se excluyen para garantizar profundidad |
| Inverso de la cuota del repo principal | 25% | Recompensa la contribución diversa entre repos en lugar de la concentración en uno. Si el 95% de tu trabajo está en un repo, esto se acerca a 0 |
| Proporción de PRs solo de docs | 15% | Las contribuciones de documentación muestran amplitud de participación más allá del código — algo que todo desarrollador puede controlar |
| Estrellas | 10% | La señal de reconocimiento comunitario más amplia, pero con menor peso porque está fuera de tu control directo |
| Forks | 5% | Participación más profunda que las estrellas — alguien tiene intención de construir sobre tu trabajo. Señal más estrecha y ruidosa |
El Alcance prioriza las señales que puedes controlar directamente —diversidad de repos (40%), distribución de contribuciones (25%) y documentación (15%)— sobre las señales comunitarias como estrellas y forks que dependen del reconocimiento externo. Los Watchers han sido eliminados por completo como el indicador más débil y pasivo.
Oficio — dominio de herramientas de IA (opcional)
El Oficio es una quinta dimensión opcional que mide con qué eficacia usas herramientas de codificación de IA como Claude Code. Aparece en tu Chapa como un eje de pentágono cuando subes un informe de insights.
Cómo desbloquear el Oficio
En Claude Code, ejecuta /insights para generar tu informe de insights. Luego súbelo a Chapa desde el menú de usuario. Claude Code actualiza tus insights cada dos semanas, así que puedes volver a subirlos en esa cadencia para mantener tu puntuación de Oficio actualizada.
Qué mide el Oficio
El Oficio es el promedio de tres subdimensiones, cada una de 0 a 100:
| Subdimensión | Qué mide | Señales clave |
|---|---|---|
| Competencia | Dominio de herramientas y adopción de funciones | Diversidad de herramientas, uso de agentes, multi-clauding, diversidad de tipos de sesión, profundidad de participación |
| Eficacia | Calidad de resultados | Tasa de logros (55%), tasa de satisfacción (45%) |
| Sofisticación | Complejidad del flujo de trabajo | Tasa de sesiones complejas, líneas por sesión, intensidad de multi-clauding, archivos por sesión |
Los eventos de fricción (enfoque incorrecto, código con errores) y los errores de herramienta se excluyen de la puntuación. Estos reflejan el comportamiento de la herramienta de IA, no tu habilidad como desarrollador. Solo cuentan tus resultados y satisfacción.
Arquetipos de desarrollador
Tu arquetipo se deriva de la forma de tu perfil de dimensiones. Te dice qué tipo de desarrollador eres, no qué tan bueno eres.
| Arquetipo | Regla | Qué significa |
|---|---|---|
| Emerging | Promedio < 25 O ninguna dimensión >= 40 | Comenzando o período de actividad ligera |
| Balanced | Todas las dimensiones dentro de 20 pts Y promedio >= 50 | Contribuidor equilibrado en todas las áreas |
| Artificer | Oficio es la más alta Y >= 60 | Maestro de la colaboración con herramientas de IA — amplifica la producción manteniendo la calidad |
| Polymath | Alcance es el más alto Y >= 60 | La influencia entre proyectos es tu punto más fuerte |
| Quality Champion | Calidad es la más alta Y >= 60 | Tu rasgo más fuerte es la disciplina de ingeniería — a través de revisiones (colaborativo) o higiene de PR (solitario) |
| Marathoner | Constancia es la más alta Y >= 60 | Tu rasgo más notable es la contribución sostenida y fiable |
| Builder | Entrega es la más alta Y >= 60 | Envías un alto volumen de cambios de código significativos |
Prioridad en empate: Polymath > Quality Champion > Marathoner > Builder > Artificer. Si ningún arquetipo específico coincide (la dimensión más alta < 60 y no es Balanced), el respaldo es Emerging.
Puntuación compuesta y niveles
La puntuación compuesta es el promedio de todas las dimensiones activas, redondeado a un entero. Para los desarrolladores colaborativos, se incluyen las 4 dimensiones (o 5 con Oficio). Para los desarrolladores en solitario, la Calidad se excluye del compuesto — solo se promedian Entrega, Constancia, Alcance y el Oficio opcional. La puntuación luego pasa por la ponderación de recencia y el ajuste de confianza:
recencyWeighted = composite × recencyMultiplier
adjustedScore = recencyWeighted × (0.85 + 0.15 × confidence / 100)
El multiplicador de recencia va de 0,98x (toda la actividad es antigua) a 1,06x (toda la actividad es reciente), con actividad proporcional (25% en los últimos 90 días) siendo neutral en 1,0x. Esto amortigua el impacto de las contribuciones antiguas que salen de la ventana deslizante.
Con confianza total (100), no hay reducción por confianza. Con confianza mínima (50), la reducción es solo del 7,5% — deliberada y suave.
| Nivel | Rango de puntuación | Descripción |
|---|---|---|
| Emerging | 0 – 29 | Comenzando o período de actividad ligera |
| Solid | 30 – 69 | Desde aficionados activos hasta contribuidores consistentes |
| High | 70 – 84 | Impacto fuerte en múltiples dimensiones |
| Elite | 85 – 100 | Amplitud y profundidad excepcionales de contribución |
Sistema de confianza
La confianza (50-100) mide la claridad de la señal, no la moralidad. Una puntuación de confianza baja nunca acusa de conducta indebida — simplemente significa que los patrones de datos hacen más difícil evaluar el impacto con precisión.
La confianza comienza en 100 y puede reducirse por patrones detectados:
| Patrón | Penalización | Desencadenante | Qué significa |
|---|---|---|---|
| Actividad en ráfaga | -15 | 100+ contribuciones en un solo día | Las ráfagas diarias extremas reducen la confianza en el tiempo |
| Micro-commits | -10 | El 60%+ de los commits son muy pequeños | Muchos cambios pequeños reducen la claridad de la señal |
| Cambios generados | -15 | 20.000+ líneas cambiadas Y menos de 3 revisiones | Gran volumen con revisión limitada sugiere posible automatización |
| Baja colaboración | -10 | 10+ PRs fusionadas Y 1 o menos revisiones dadas | Producción significativa sin interacción entre pares |
| Foco en un solo repo | -5 | El 95%+ de la actividad en un repo Y solo 1 repo | Menos señal entre proyectos (no es malo, solo menos datos diversos) |
| Datos suplementarios | -5 | Incluye datos de cuenta EMU fusionada | Datos de una cuenta vinculada que no pueden verificarse de forma independiente |
| Señal de actividad baja | -10 | Menos de 30 días activos O menos de 50 commits | Actividad muy limitada reduce la señal disponible para la puntuación |
| Desequilibrio de volumen de revisión | -10 | 50+ revisiones enviadas Y menos de 3 PRs fusionadas | Alto volumen de revisión con muy pocos cambios fusionados reduce la confianza en la mezcla de actividad |
El mínimo de confianza es 50. Ninguna combinación de penalizaciones puede bajar la confianza por debajo de 50. Todos los mensajes son no acusatorios — describimos patrones, no intenciones.
El desequilibrio de volumen de revisión y la baja colaboración son mutuamente excluyentes — solo uno puede aplicarse a la vez, por lo que no se puede superar el máximo de 7 penalizaciones simultáneas.
Suavizado de puntuación
Tu puntuación mostrada usa una media móvil exponencial (EMA) para evitar variaciones bruscas día a día. En lugar de recalcular desde cero cada vez, la puntuación mostrada combina el 15% de la puntuación recién calculada con el 85% de la puntuación suavizada del día anterior.
Esto significa que una caída brusca de 10 puntos en bruto se manifiesta como aproximadamente -1,5 por día, alcanzando el nuevo nivel en unos 4 días. En tu primera visita (sin puntuación anterior), la puntuación bruta pasa sin suavizado.
Qué excluimos deliberadamente
Algunas señales se excluyen intencionalmente de la puntuación:
- Seguidores — una métrica social sin correlación con la producción de ingeniería
- Líneas de código — fácilmente manipulable; solo se usa para heurísticas de confianza, nunca para la puntuación de dimensiones
- Nombres de repos privados — rastreamos el recuento de repos, no las identidades. Tus repos privados nunca se exponen
Ayúdanos a mejorar esto
Creemos que la metodología de puntuación debe ser una conversación, no una caja negra. Si tienes ideas sobre cómo hacerla más justa, más precisa o más transparente — queremos escucharte.