GameBoost
Автоматическая оптимизация Windows под игры
Замечает запуск игры, переключает схему питания, поднимает приоритет игры и приглушает фон, а после выхода возвращает систему точно в исходное состояние.
Ниже одна игровая сессия от запуска игры до отката, отдельно случай, когда pid уже занят другим процессом, и как менялись тесты и покрытие по дороге к релизу v1.1.0.
- Обнаружениеигра распознаётся по пути к исполняемому файлу: Steam, Epic, Xbox, Minecraft
- Бустсхема питания, приоритет игры, фон ниже, обои на паузу; каждое изменение пишется в файл состояния
- Игравотчер следит за процессом, интервалы считает по монотонным часам
- Выходчерез 15 секунд после закрытия игры начинается откат
Отказ
- pid занят другим процессом
- сверка имени и времени старта
- чужой процесс отката не получает
- Откатпо файлу состояния система возвращается в исходное
Проверяемые решения
Откат
Каждое изменение записывается в файл состояния, откат после выхода из игры идёт по нему. Файл состояния прошёл фаззинг, 700 итераций без исключений.
Релиз
Релиз v1.1.0 вышел только после зелёного CI и прохода ревью без новых дефектов. 348 тестов, покрытие 82.5%.
Цифры
Путь к v1.1.0
Тесты в каждом зелёном прогоне CI, от первого до релиза, и покрытие там, где прогон его считал. Время UTC, 18 и 19 сентября 2026.
Данные графика
| Прогон, UTC | Тестов | Покрытие | Тег |
|---|---|---|---|
| 18.09 20:11 | 49 | ||
| 19.09 00:51 | 72 | v1.0.0 | |
| 19.09 01:06 | 77 | ||
| 19.09 01:51 | 104 | ||
| 19.09 02:23 | 147 | ||
| 19.09 02:44 | 159 | ||
| 19.09 02:52 | упал | ||
| 19.09 03:04 | 159 | 72,6% | |
| 19.09 11:51 | 231 | 79,1% | |
| 19.09 12:18 | 249 | 79,4% | |
| 19.09 12:35 | 260 | 79,4% | |
| 19.09 18:45 | 348 | 82,5% | v1.1.0 |
Покрытие по файлам, v1.1.0
Доля команд PowerShell, которые выполнили тесты, в каждом файле релиза. Вертикальная линия: покрытие всего релиза.
Данные графика
| Файл | Команд выполнено | Покрытие |
|---|---|---|
| lib/Watcher.ps1 | 127 / 128 | 99,2% |
| lib/Suppression.ps1 | 66 / 67 | 98,5% |
| lib/Rollback.ps1 | 110 / 114 | 96,5% |
| lib/State.ps1 | 160 / 168 | 95,2% |
| lib/Boost.ps1 | 176 / 186 | 94,6% |
| lib/Detection.ps1 | 90 / 98 | 91,8% |
| lib/Core.ps1 | 21 / 23 | 91,3% |
| lib/Recovery.ps1 | 170 / 187 | 90,9% |
| lib/SystemActions.ps1 | 33 / 48 | 68,8% |
| lib/Status.ps1 | 24 / 49 | 49% |
| ConfigValidation.ps1 | 58 / 61 | 95,1% |
| TaskHelpers.ps1 | 17 / 21 | 81% |
| gameboost.ps1 | 26 / 36 | 72,2% |
| install.ps1 | 55 / 99 | 55,6% |
| uninstall.ps1 | 0 / 61 | 0% |
| watcher.ps1 | 0 / 28 | 0% |
Подробно
Что делает
При запуске игры включается схема питания максимальной производительности, обои Wallpaper Engine ставятся на паузу, фоновые процессы уходят в пониженный приоритет (кроме белого списка), а игра получает высокий. Игры распознаются по пути к исполняемому файлу: библиотеки Steam, манифесты Epic, каталог Xbox и Minecraft на Java. Через 15 секунд после закрытия игры всё возвращается как было.
Откат
Каждое изменение записывается в файл состояния, и откат идёт по нему. Процесс, которому поднимали приоритет, опознаётся не только по pid, но и по имени и времени старта: pid могут переиспользовать, и чужой процесс не должен получить чужой откат. Интервалы вотчер считает по монотонным часам, а не по системному времени, которое может прыгнуть.
Проверки
Релиз v1.1.0: 348 тестов Pester, покрытие 82.5%, CI зелёный. Файл состояния и маркеры прошли фаззинг, 700 итераций без единого исключения. Тег ставится только после зелёного CI и ещё одного прохода ревью, который не нашёл новых дефектов.