fix(growth): rank the rate board by a smoothed score
Show the real percentage on the card, but sort with delta / (baseline + prior) so a small baseline cannot dominate. Same-day publishes stay off the rate board.
This commit is contained in:
1 parent
0f2ac612f5
commit
39a6537f67
14 files changed
+158
-16
No files matched your search
@@ -146,6 +146,7 @@ def test_analytics_defaults_and_validation():
|
||||
assert cfg.analytics.video_shrink_minutes == 60
|
||||
assert cfg.analytics.shrink_minutes is None
|
||||
assert cfg.analytics.home_growth_days == "auto"
|
||||
assert cfg.analytics.growth_rate_prior == 500
|
||||
assert cfg.schedule.recent_snapshot_minutes == 60
|
||||
assert cfg.schedule.recent_video_days == 2
|
||||
assert cfg.schedule.snapshot_at == "23:15"
|
||||
@@ -159,6 +160,7 @@ def test_analytics_defaults_and_validation():
|
||||
"video_shrink_minutes": 30,
|
||||
"shrink_minutes": 90,
|
||||
"home_growth_days": 1,
|
||||
"growth_rate_prior": 1000,
|
||||
}
|
||||
data["schedule"] = {
|
||||
"discover_minutes": 30,
|
||||
@@ -176,6 +178,7 @@ def test_analytics_defaults_and_validation():
|
||||
assert cfg.analytics.video_shrink_minutes == 30
|
||||
assert cfg.analytics.shrink_minutes == 90
|
||||
assert cfg.analytics.home_growth_days == 1
|
||||
assert cfg.analytics.growth_rate_prior == 1000
|
||||
assert cfg.schedule.recent_snapshot_minutes == 15
|
||||
assert cfg.schedule.recent_video_days == 3
|
||||
|
||||
@@ -194,6 +197,7 @@ def test_analytics_defaults_and_validation():
|
||||
({"home_growth_days": 3}, "home_growth_days"),
|
||||
({"home_growth_days": "7"}, "home_growth_days"),
|
||||
({"home_growth_days": 0}, "home_growth_days"),
|
||||
({"growth_rate_prior": -1}, "growth_rate_prior"),
|
||||
):
|
||||
data = base_config()
|
||||
data["analytics"] = bad
|
||||
|
||||
Reference in new issue
Block a user