feat(classify): zero title-only titles, penalize <10min, add discover.candidate_min_score

标题仅含 require_title 不再计分(必须咻咻满+任一正向词);时长 <10 分钟 -1(时长未知不扣);新增 discover.candidate_min_score(默认=notify.min_score)控制是否进候选池,只过标题关的不再入池。库内 796 条:仅过标题关的 8 条从 1/3 分降为 0/-1,其余不变。
This commit is contained in:
kairee committed 2026-11-01 20:18:43 +08:00
1 parent aa9aa7c589
commit c6790f0ba1
10 files changed
+138 -69

No files matched your search

+6
View File
@@ -190,6 +190,7 @@ class DiscoverConfig:
keywords: tuple[str, ...]
pages: int
window_days: int
candidate_min_score: int
@dataclass(frozen=True)
@@ -485,6 +486,11 @@ def _build_config(data: Mapping[str, Any], path: Path) -> AppConfig:
window_days=_as_int(
discover_raw.get("window_days", 14), "discover.window_days", minimum=1
),
candidate_min_score=_as_int(
discover_raw.get("candidate_min_score", notify.min_score),
"discover.candidate_min_score",
minimum=0,
),
)
classify_raw = data["classify"]