RFC: Formula needs attention (churn * cost * penalty produces unexpected results)
まだ誰も着手していません。
評価
調査の方向性
まず、SkunkScore の計算と、skunk -b master が使用するブランチ比較パスを見つけます。スナップショットのスコアリングと比較のスコアリングに関するリンク先のコンテキストを読み、その後、複雑性を下げて commit したモジュールに対して提案された式をテストします。比較によってより低い Skunk スコアが生成され、スナップショットの動作を壊さなければ完了です。
索引モデルが issue の本文から書いたものです。
説明
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.
- 主要言語
- Ruby
- スター
- 547
- フォーク
- 33
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
fastruby/skunk のほかの issue
-
enhancement
-
bug
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
-
enhancement
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
-
enhancement Feature Request
-
Feature Request
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
hanami/hanami-cli#449 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
resque/resque-scheduler#826 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100