diff --git a/earned_time/README.md b/earned_time/README.md index 6a69b32..d671b58 100644 --- a/earned_time/README.md +++ b/earned_time/README.md @@ -40,7 +40,7 @@ never a same-day cut): The two floors are derived separately (`_resolve._shutdown_floor`), so the ladder cannot move a gaming minute. -**Unified ladder (0.12.0, `UNIFIED_FROM` 2026-10-18):** each rung pays what +**Unified ladder (0.12.0; `UNIFIED_FROM` parked at 2027-01-01 in 0.12.1):** each rung pays what its earner pays in gaming (workout 120, LeetCode 60, reading 60, tutor 1/unit to 60), so the floor drops 18:50 -> 18:00 under the same 23:00 ceiling: nothing 3 h / 18:00, workout 5 h / 20:00, +LeetCode 21:00, +reading 22:00. @@ -240,7 +240,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.12.0#subdirectory=earned_time" +pip install --user --break-system-packages --no-deps "earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.12.1#subdirectory=earned_time" ``` The root `steam-backlog-enforcer.service` sets `HOME=/home/kuhy`, so it imports diff --git a/earned_time/earned_time/_ladder.py b/earned_time/earned_time/_ladder.py index c2d0386..bddbb97 100644 --- a/earned_time/earned_time/_ladder.py +++ b/earned_time/earned_time/_ladder.py @@ -51,8 +51,10 @@ TUTOR_FROM: Final = date(2026, 10, 10) ANKI_WAIVED_FROM: Final = date(2026, 10, 9) # From this day every rung pays exactly the gaming time its earner pays # (:data:`UNIFIED_LADDER`, 0.12.0). It lowers the floor 18:50 -> 18:00, so it -# lands the day after the deploy (2026-10-17), never on it. -UNIFIED_FROM: Final = date(2026, 10, 18) +# lands the day after the deploy, never on it. Parked (0.12.1) until +# screen-locker's late-credit rule ships: an 18:00 floor without it locks out +# a credit landing after the shutdown. +UNIFIED_FROM: Final = date(2027, 1, 1) _SLEEP_MINUTES: Final = 8 * 60 _DAY_MINUTES: Final = 24 * 60 diff --git a/earned_time/earned_time/tests/test_unified.py b/earned_time/earned_time/tests/test_unified.py index 267695e..0a43118 100644 --- a/earned_time/earned_time/tests/test_unified.py +++ b/earned_time/earned_time/tests/test_unified.py @@ -29,7 +29,8 @@ def _day(day: date, **done: int) -> tuple[int, str]: def test_switch_is_the_day_after_the_deploy() -> None: - assert date(2026, 10, 18) == UNIFIED_FROM + assert date(2027, 1, 1) == UNIFIED_FROM # parked until the late-credit rule + assert ladder_for(date(2026, 10, 18)) is TUTOR_LADDER assert ladder_for(EVE) is TUTOR_LADDER # deploy day keeps the old rungs assert ladder_for(UNIFIED_FROM) is UNIFIED_LADDER diff --git a/earned_time/pyproject.toml b/earned_time/pyproject.toml index cd87d0c..d22c4e2 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.12.0" +version = "0.12.1" description = "Penalty-then-reward registry: what every gate app earns in gaming time and shutdown time" requires-python = ">=3.14" dependencies = []