Skip to content

Latest commit

 

History

History
62 lines (40 loc) · 12.5 KB

File metadata and controls

62 lines (40 loc) · 12.5 KB

Проверка WindowNotes 1.1.0

Дата: 5 сентября 2026 года. Проверены самостоятельно написанная программа «Оконные заметки» и финальная self-contained сборка для Windows x64. Результаты не гарантируют отсутствия любых ошибок или уязвимостей.

Результат

Проверка Результат
Сборка Release Успешна, 0 ошибок и предупреждений. SDK 10.0.400, .NET/Windows Desktop Runtime 10.0.11
Основные автотесты 30 из 30
Интеграционные проверки готового EXE 66 из 66; всего с основными тестами — 96
Portable ZIP Все 480 файлов совпали по SHA-256 с проверенной папкой portable
Проверка NuGet Markdig 1.3.2 закреплён в lock-файлах; команда аудита известных уязвимостей завершилась без находок
Microsoft Defender Сканирование artifacts завершилось с ExitCode=0, угроз не обнаружено
Базы Defender 1.459.68.0, обновлены 05.09.2026 10:06:36 −06:00; антивирус и защита в реальном времени включены
Наблюдение за сетью 8 успешных снимков за 10,3 секунды простоя: TCP=0, UDP=0
Права Манифест asInvoker, uiAccess=false; установщик PrivilegesRequired=lowest
Подпись Программа и установщик не подписаны: NotSigned

Доказательства: машиночитаемые отчёты. windows.json включает дополнительную диагностическую запись об активации, которая не считается тестом. Команда аудита зависимостей проверяет известные записи источника NuGet, а не доказывает полную безопасность библиотеки или платформы.

Исправление внешнего вида и окон

Внешняя заметка раскрывается непосредственно от края целевого окна; ширина вкладки больше не добавляется к отступу. Цветная вкладка встроена в заголовок раскрытой заметки, отдельная вкладка в этот момент скрыта. После сворачивания она возвращается. Общий размер заметки сохранён. Правые кнопки и дополнительная панель удалены; команды находятся в контекстном меню. Компоновка основана на предоставленных пользователем изображениях «до» и «после».

На реальных вспомогательных WPF-окнах проверены четыре расположения (слева/справа, внутри/снаружи), совпадение краёв с точностью до одного физического пикселя, общая ширина, отсутствие видимых кнопочных панелей, доступность команд, повторное открытие и доступность соседних вкладок. Также проверены перемещение, изменение размера, максимизация, возврат в оконный режим, сворачивание, порядок перекрытия, закрытие, восстановление, неоднозначный выбор и ручное открепление.

Обнаруженная ошибка открытия исправлена: заметка больше не сворачивается из-за простого обновления геометрии во время открытия, если Windows отказала в переводе фокуса. Сворачивание происходит при смене активного приложения. При отказе активации заметка остаётся в порядке окон своего приложения, не получает режим «поверх всех».

Финальный тест подтвердил реальную активацию другого процесса (activated=true, foregroundMatchesExpected=true) и последующее сворачивание заметки. Windows может отклонять программный перевод фокуса. Для тестов предусмотрен контролируемый клик только по собственному вспомогательному окну после проверки его процесса и попадания; изменения политики Windows не применяются. Если окно перекрыто или пользователь вводит данные, такой клик отменяется и тест сообщает ошибку. Обычный режим приложения этот код ввода не использует.

Markdown, изображения и сохранность

Проверены собственный WPF-просмотр Markdown, заголовки, списки, задачи, таблицы, выделение, зачёркивание, код и буквальное отображение HTML. Переключение режимов сохраняет выделение и историю отмены; изменение чекбокса обновляет исходник и отменяется. Проверен ограниченный просмотр сложных документов с сохранением исходного текста.

Проверена вставка растрового изображения через маршрутизируемое WPF-событие вставки, общий обработчик файлов для выбора/перетаскивания, PNG/JPEG/BMP, кириллица, несколько картинок подряд, отмена/повтор, вписывание в ширину, сохранение после перезапуска, экспорт/импорт Markdown и восстановление резервной копии с новыми локальными копиями изображений. Проверены повреждённые файлы, лимиты размера и числа пикселей, отказ записи и запрет изменения заблокированной заметки. Физическое нажатие Ctrl+V, мышиное перетаскивание из стороннего приложения и системный диалог выбора файла отдельно вручную не испытывались; буфер обмена пользователя не изменялся.

Миграция схемы 1 → 2 проверена с неизменными текстами, привязками и копированием изображений в резервную папку. Проверены отказ записи при миграции, сохранение исходного файла, повреждённый JSON, неизвестная будущая версия схемы, атомарная запись, резервирование до изменений и защита CSV от формул.

Отображение не загружает удалённые изображения и не выполняет HTML, скрипты или XAML из заметки. Проверены заглушки для сетевых/произвольных файловых ссылок и отсутствующих изображений, запрет выхода из каталога при импорте. HTTP/HTTPS открывается только явным действием во внешнем браузере; локальные пути показываются в Проводнике, а не запускаются как файлы. Фоновые украшения не заменены изображениями внутри Markdown.

Автозапуск и пределы проверки

Проверены одноразовое включение автозапуска, сохранение последующего отключения, обнаружение несовпадающего пути, аргументы с пробелами/кириллицей и корневым каталогом, отказ записи без ложного сообщения об успехе. Эти проверки используют изолированный адаптер реестра. Готовый EXE проверен с --startup: палитра скрыта, приложение остаётся работающим, повторный автоматический экземпляр завершается без диалога.

Установленная ранее программа, её настройки и текущие заметки извне не изменялись. Реальная запись автозапуска версии 1.1 создаётся при её первом обычном запуске. Полный выход пользователя из Windows и повторный вход не выполнялись; фактический запуск через HKCU Run после входа остаётся непроверенным на этом компьютере. Ограничения диспетчера задач и системных политик не обходятся.

Фактическая среда: Windows 11 Pro x64, ОС 10.0.26200. Windows 10 2004+ остаётся целевой, но здесь непроверенной платформой. На реальных тестовых окнах испытан один монитор. Масштабы 100/150/200%, отрицательные координаты, точное доступное место и нижняя граница проверены на модели геометрии. Физический переход между мониторами с разным DPI, переподключение экранов, виртуальные рабочие столы, Remote Desktop, полноэкранные игры и все сторонние приложения не проверены.

Визуальная проверка по пикселям нового приложения не проводилась согласно предпочтению пользователя; проверялись координаты и структура WPF. Установщик собран, но установка/деинсталляция на компьютере пользователя не выполнялись. Данные и резервные копии не зашифрованы. Короткое наблюдение за сетью не исключает кратковременных соединений; отсутствие обнаружений Defender не является гарантией безопасности.

Контрольные суммы проверенных пакетов

Файл SHA-256
WindowNotes-1.1.0-win-x64-setup.exe b2131ca6811ba16240d601c4830d249510dffe0a8e7415771489a4193b11ca80
WindowNotes-1.1.0-win-x64-portable.zip f2365217f0c5c0249ff33ecc1ac8d725529daa8a1fa1be7a111ee283927ba0a0
portable/WindowNotes.exe 4dfcc885fcf78a39d5969bbb3fbdad9cbae1a647303917d39fc99cce36bea5be
portable/WindowNotes.dll cae99aa9ba93c3c4fda19d082b0b8aea601befb9387dd6d2e0512669ac7d5a1a

Сумма финального архива исходников указана вместе с суммами пакетов в artifacts/SHA256SUMS.txt. Для повторения: build.ps1 и затем tools/verify-release.ps1. В публичных копиях журналов локальный абсолютный путь заменён на ; результаты и хеши не изменены.