RFC: Formula needs attention (churn * cost * penalty produces unexpected results)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 20/100
Línea de trabajo
Empieza localizando el cálculo de SkunkScore y la ruta de comparación de ramas utilizada por skunk -b master. Lee el contexto enlazado sobre la puntuación de snapshots frente a la puntuación de comparación y, después, prueba la fórmula propuesta con un módulo cuya complejidad se haya reducido y cuyo cambio se haya committed. La tarea estará terminada cuando la comparación produzca una puntuación de Skunk más baja sin romper el comportamiento de los snapshots.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Context
Initially the SkunkScore was calculated as churn * cost * penalty. This made sense based on the churn vs. complexity idea -> https://www.agileconnection.com/article/getting-empirical-about-refactoring
However, I quickly realized that this formula would not work when running skunk -b master -- more here: https://www.fastruby.io/blog/code-quality/escaping-the-tar-pit-at-rubyconf.html
So I decided to change the formula to be cost * penalty.
Alternatives
I think a potential solution is to apply a modified weight to churn, so that the formula could look like this:
skunk_score = (magical_weight * churn) * cost * penalty_factor
That way, the formula could work both as a snapshot and as a comparison between two branches.
Test
Testing this should show that removing complexity in a module, git committing, and then running skunk -b master produces a lower skunk score.
- Lenguaje dominante
- Ruby
- Estrellas
- 547
- Forks
- 33
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de fastruby/skunk
-
enhancement
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
enhancement Feature Request
-
Feature Request
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de fastruby/skunk
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
hanami/hanami-cli#449 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
resque/resque-scheduler#826 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100