From 09a3a15d6489d4eea5b425f05e5c9a5ab1efa51e Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Sat, 17 Oct 2026 17:28:39 +0200 Subject: [PATCH] earned_time 0.13.1: sick-day helper out of resolve (pylint too-many-locals) Co-Authored-By: Claude Opus 5.5 (1M context) --- earned_time/README.md | 2 +- earned_time/earned_time/_resolve.py | 8 ++++++-- earned_time/pyproject.toml | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/earned_time/README.md b/earned_time/README.md index d8f1f6b..7a4d45d 100644 --- a/earned_time/README.md +++ b/earned_time/README.md @@ -241,7 +241,7 @@ on the day itself is logged and does not count. ## Install ```console -pip install --user --break-system-packages --no-deps "earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.13.0#subdirectory=earned_time" +pip install --user --break-system-packages --no-deps "earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.13.1#subdirectory=earned_time" ``` The root `steam-backlog-enforcer.service` sets `HOME=/home/kuhy`, so it imports diff --git a/earned_time/earned_time/_resolve.py b/earned_time/earned_time/_resolve.py index feb74c8..691f165 100644 --- a/earned_time/earned_time/_resolve.py +++ b/earned_time/earned_time/_resolve.py @@ -128,6 +128,11 @@ def _check_registered( raise KeyError(msg) +def _sick_or(earned: int, terms: list[Term], day: date) -> int: + """A sick day's shutdown: 20:00 plus gaming pay, never below ``earned``.""" + return max(earned, sick_shutdown_from(sum(t.gaming_minutes for t in terms), day)) + + def resolve( answers: Mapping[str, Answer], day: date | None = None, @@ -187,8 +192,7 @@ def resolve( shutdown_ceiling_for(target), base.shutdown_minutes + sum(t.shutdown_minutes for t in terms), ) - paid = sum(t.gaming_minutes for t in terms) - shutdown = max(earned, sick_shutdown_from(paid, target)) if sick else earned + shutdown = _sick_or(earned, terms, target) if sick else earned return Resolution( day=target, base=base, diff --git a/earned_time/pyproject.toml b/earned_time/pyproject.toml index 540c7a2..c92ad8e 100644 --- a/earned_time/pyproject.toml +++ b/earned_time/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "earned-time" -version = "0.13.0" +version = "0.13.1" description = "Penalty-then-reward registry: what every gate app earns in gaming time and shutdown time" requires-python = ">=3.14" dependencies = []