From cdc453bdf4799177803e0ed8a536735f1a8abd2c Mon Sep 17 00:00:00 2001
From: Krzysztof kuhy Rudnicki Two changes to the Steam Backlog Enforcer — a 4-day window to undo a manual pick, and support for two locked-in games at once. Commits Two changes to the Steam Backlog Enforcer — a 4-day window to undo a manual pick, and support for up to three locked-in games at once. Commits Manual picks: a way out, and a second slot
-eb1472a and 05e070c, 19 July 2026.eb1472a and 05e070c, 19 July 2026.
The chosen answer was not to forbid re-picking, but to make a second concurrent pick a
-first-class, capped feature. If you may legitimately have two games locked in, correcting
+first-class, capped feature. If you may legitimately have several games locked in, correcting
a pick no longer requires a pick→abandon→pick cycle, and the cap is what bounds the whole thing.
-Config.max_manual_picks defaults to 2.
Config.max_manual_picks defaults to 3.
That turns the enforcer's central question from "which game?" into "which set of games?" — and that is the real substance of the diff:
diff --git a/steam_backlog_enforcer/config.py b/steam_backlog_enforcer/config.py index 9289e30..7d60f13 100644 --- a/steam_backlog_enforcer/config.py +++ b/steam_backlog_enforcer/config.py @@ -60,7 +60,7 @@ class Config: kill_unauthorized_games: bool = True uninstall_other_games: bool = True desktop_notifications: bool = True - max_manual_picks: int = 2 + max_manual_picks: int = 3 """How many games may be manually locked in at once. All active picks stay installed and visible; the enforcer treats them as diff --git a/steam_backlog_enforcer/docs/pick_game_manually_design.md b/steam_backlog_enforcer/docs/pick_game_manually_design.md index 42b6378..9ff3e55 100644 --- a/steam_backlog_enforcer/docs/pick_game_manually_design.md +++ b/steam_backlog_enforcer/docs/pick_game_manually_design.md @@ -39,11 +39,11 @@ full 2 weeks. There is now a short mistake-correction window: The lock-active message advertises `abandon-pick` only while the window is still open, and the `pick-manual` warning mentions it up front. -## Two concurrent manual picks (added 2026-07-19) +## Concurrent manual picks (added 2026-07-19) -`Config.max_manual_picks` (default 2) is how many games may be locked in at -once. Both stay installed, visible and un-killed; the lock releases only when -every pick is finished or past its own 14-day deadline. +`Config.max_manual_picks` (default 3) is how many games may be locked in at +once. All active picks stay installed, visible and un-killed; the lock +releases only when every pick is finished or past its own 14-day deadline. - `State.manual_picks` is the list of `{app_id, game_name, started_at}` entries. The old single-slot `manual_pick_*` fields are still read on load, @@ -52,15 +52,15 @@ every pick is finished or past its own 14-day deadline. source of truth for "may exist". `uninstall_other_games`, `hide_other_games`, `enforce_allowed_game` and `_guard_installed_games` all take that set instead of one app id. -- `pick-manual` is in `_MANUAL_LOCK_EXEMPT_COMMANDS` so a second game can be - added while the first holds the lock; the cap is what limits it. Its +- `pick-manual` is in `_MANUAL_LOCK_EXEMPT_COMMANDS` so another game can be + added while earlier picks hold the lock; the cap is what limits it. Its post-pick cascade operates on the whole allowed set, so adding a pick never tears down an earlier one. - `abandon-pick