| .. |
|
docs
|
Adopt the four markdown namespaces and gate them
|
2026-08-24 15:54:34 +02:00 |
|
main
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
tests
|
Serve no history for demo budget runs
|
2026-08-29 07:26:51 +02:00 |
|
__init__.py
|
feat: steam 100 percent extension
|
2026-03-02 20:29:32 +01:00 |
|
_actions.py
|
Allow abandoning a manual pick at any time; cap picks at 2
|
2026-08-24 15:41:32 +02:00 |
|
_allowed_games.py
|
fix(game_install): refuse to delete folders matching an allowed game's name
|
2026-07-25 15:50:29 +02:00 |
|
_budget_log_tail.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_budget_view.py
|
Serve no history for demo budget runs
|
2026-08-29 07:26:51 +02:00 |
|
_cdp.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_cmd_done_finalize.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_cmd_done.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_cmd_playtime.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_config_setup.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_controller_input.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_desktop_env.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_echo.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_enforce_loop.py
|
Keep non-production runs out of the budget audit log
|
2026-08-28 19:55:04 +02:00 |
|
_enforce_steps.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_engagement_probes.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_engagement_types.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_game_names.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_hltb_cached.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_hltb_comp_extract.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_confidence.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_hltb_detail.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_matching.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_page_parse.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_search_api.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_search.py
|
Bring the HLTB modules under the 250-line cap
|
2026-08-24 15:23:13 +02:00 |
|
_hltb_types.py
|
chore: set up as standalone repo
|
2026-05-28 07:21:29 +02:00 |
|
_hosts_protection.py
|
Split store_blocker along its one-way call boundaries
|
2026-08-24 15:06:15 +02:00 |
|
_manual_pick_lifecycle.py
|
Allow abandoning a manual pick at any time; cap picks at 2
|
2026-08-24 15:41:32 +02:00 |
|
_mcp_actions.py
|
Allow abandoning a manual pick at any time; cap picks at 2
|
2026-08-24 15:41:32 +02:00 |
|
_mcp_gaming_time.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_mcp_query.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_mcp_server.py
|
Latest stable dependencies, mcp 2.x, and the gate
|
2026-08-28 17:29:14 +02:00 |
|
_mcp.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_owned_apps_cache.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_pacman.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_block.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_budget.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_cutoff.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_engagement.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_playtime_history.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_playtime_kill.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_log.py
|
Keep non-production runs out of the budget audit log
|
2026-08-28 19:55:04 +02:00 |
|
_playtime_mountinfo.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_notify.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_playtime_procs.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_playtime_run.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_playtime_session.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_playtime_state.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_playtime.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_polls_reporting.py
|
Split steam_api and _scanning_confidence under the cap
|
2026-08-24 14:25:43 +02:00 |
|
_protected_apps.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_scanning_assign.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_scanning_candidates.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_scanning_confidence.py
|
Split steam_api and _scanning_confidence under the cap
|
2026-08-24 14:25:43 +02:00 |
|
_scanning_tampering.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_screen_hold.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_stats_display.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_stats_gathering.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_stats_types.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_stats.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
_steam_api_client.py
|
Split steam_api and _scanning_confidence under the cap
|
2026-08-24 14:25:43 +02:00 |
|
_steam_client.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_steam_errors.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_steam_launch.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_steam_models.py
|
Split steam_api and _scanning_confidence under the cap
|
2026-08-24 14:25:43 +02:00 |
|
_steam_process.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_steam_restart_guard.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_steam_state.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
_store_iptables.py
|
Split store_blocker along its one-way call boundaries
|
2026-08-24 15:06:15 +02:00 |
|
_total_block_domains.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_total_block_hosts.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_total_block_iptables.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_total_block_launchers.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_total_block_purge.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_total_block.py
|
Split total-block, playtime and MCP by responsibility
|
2026-08-23 20:52:08 +02:00 |
|
_web_dataset.py
|
Bring _web_dataset.py under the 250-line cap — cap campaign complete
|
2026-08-24 16:08:12 +02:00 |
|
_web_games.py
|
Bring _web_dataset.py under the 250-line cap — cap campaign complete
|
2026-08-24 16:08:12 +02:00 |
|
_web_models.py
|
Bring _web_dataset.py under the 250-line cap — cap campaign complete
|
2026-08-24 16:08:12 +02:00 |
|
_web_pace.py
|
Bring _web_dataset.py under the 250-line cap — cap campaign complete
|
2026-08-24 16:08:12 +02:00 |
|
_web_server.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
_whitelist_locking.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_whitelist.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
_x_focus.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
_x_probe.py
|
Bill gaming time only while the user is actually playing
|
2026-08-28 19:24:14 +02:00 |
|
config.py
|
Show the gaming budget in the web UI
|
2026-08-29 07:17:42 +02:00 |
|
enforcer.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
game_install.py
|
Re-arm the no-library warning before install_game's early return
|
2026-08-24 14:04:54 +02:00 |
|
game_uninstall.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
hltb.py
|
Split _actions, _whitelist, _cmd_done and hltb under the cap
|
2026-08-24 14:55:57 +02:00 |
|
library_hider.py
|
Stop the enforcer launching Steam and notifications as root
|
2026-08-24 13:55:44 +02:00 |
|
protondb.py
|
fix: HLTB count_comp=0 bug, false matches, and ProtonDB log noise
|
2026-05-28 20:40:51 +02:00 |
|
scanning.py
|
Bring _stats.py and scanning.py under the 250-line cap
|
2026-08-24 16:00:54 +02:00 |
|
steam_api.py
|
Split steam_api and _scanning_confidence under the cap
|
2026-08-24 14:25:43 +02:00 |
|
store_blocker.py
|
Split store_blocker along its one-way call boundaries
|
2026-08-24 15:06:15 +02:00 |