Repository navigation
chore: мелочи с код-ревью сентября–октября (XIC-101) - #95
Merged
Merged
Conversation
…1 п.1) Записанное нами хранится в AppConfig.PowerOverlayWritten (ac/battery), а не в памяти: выключение опции после перезапуска откатывает ровно своё. Проверка «есть ли что откатывать» на смене питания — под замком. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…(XIC-101 п.2) HttpApi.Bounded: по дедлайну бросаем ожидание, а саму висящую операцию http.sys наблюдаем и глотаем — её падение после закрытия сокета больше не пишется в log.txt «необработанным». И для чтения тела, и для записи ответа. Тест проверен на падение без исправления. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…DENIED (XIC-101 п.3) Прочие сбои чтения (SCM/RPC недоступен) — новое состояние Unknown: на вкладке «Драйверы» «Не прочиталось, подробности в log.txt», без кнопок и без совета про права. Строки RU/EN/ZH. StateOnFailure — чистая функция под тестами. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
В ветке hurry (сон, завершение сеанса) GET перед записью убран: это был лишний вызов WMI в окне, где времени нет. Запись там без сброса в «выкл», окна без защиты нет. Цена — одна запись в EC на каждом уходе в сон. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
LatestValue.Pending — чтение в полёте; MonitorForm.Dispose ждёт его (до 500 мс) перед освобождением источников температуры и ватт — больше нет ложного ObjectDisposedException в журнале при закрытии с открытым виджетом. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Конфиг пишут и UI-поток, и пул (PowerModeSync, самолечение порога заряда, RestoreAfterBoot). Две одновременные записи давали IOException, одна правка терялась. Под замком каждая запись сериализует весь текущий конфиг. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Сводная задача по замечаниям код-ревью коммитов 01.09–12.10.2026. Ни одно не ломает жизнь само по себе; по коммиту на пункт.
Что изменено
7878ee6) — записанное нами хранится вAppConfig.PowerOverlayWritten(ac/battery), а не в памяти: выключение опции после перезапуска откатывает ровно своё. Проверка «есть ли что откатывать» на смене питания — под замком.720bea3) —Bounded(...): по дедлайну бросаем ожидание, а висящую операцию http.sys наблюдаем и глотаем — её падение больше не пишется вlog.txt«необработанным». И для чтения тела, и для записи ответа (второе место в задаче не было). Тест проверен на падение без исправления.b1b041b) — «Нет доступа» только поERROR_ACCESS_DENIED; прочие сбои — новое состояниеUnknown: «Не прочиталось, подробности в log.txt», без кнопок. Строки RU/EN/ZH.fdcfe25) — перед сном порог не читаем, а сразу пишем одной командой без сброса (окна без защиты нет). Цена — запись в EC на каждом уходе в сон.d8a21c5) —LatestValue.Pending;Disposeждёт чтений в полёте (до 500 мс) перед освобождением источников.f56b73c) — сохранение под замком: конфиг пишут и UI-поток, и пул, одновременные записи давалиIOExceptionи потерю правки (замечание к XIC-100).Проверка
dotnet build— 0 ошибок / 0 предупреждений;dotnet test— 900 зелёных (+10).🤖 Generated with Claude Code