test(desktop): prove signature verification against live release #55
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: ochenstarik/server-monitor-manager#55
Loading…
Reference in a new issue
No description provided.
Delete branch "antigravity/desktop-update-proof"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Antigravity: доказать проверку подписи на стороне Desktop
Реализован и проверен набор тестов приёмки и негативных проверок против опубликованного релиза (
smm-antigravity-task-desktop-update-proof-2026-08-13.md).Что сделано
AcceptanceRealReleaseManifestAndSignatureAreAccepted):server-monitor-manager-manifest.json,.sigи.pemдля тега релиза через публичный HTTP-транспорт безghи без токенов.SMM_TEST_RELEASE_TAGсо значением по умолчаниюv0.1.0-alpha.14и поддержкой проверки свежих релизов (включаяv0.1.0-alpha.18).ProcessSignatureVerifierиUpdateService.cosign(Fulcio OIDC identitylinux-release.yml), извлекается корректная версия, валидный URL скачивания MSIX и хэш SHA-256.Negative1TamperedHashInRealManifestIsRejected: динамическая подмена хэша в настоящем manifest приводит к отказу верификации подписи;Negative2RealManifestWithSignatureFromDifferentIdentityIsRejected: подпись от посторонней identity отвергается;Negative3MissingCertificateIsRejected: отсутствие сертификата приводит к отказу;Negative4CertificateFromDifferentWorkflowIsRejected: сертификат от другого workflow/эмитента отвергается.windows-build.yml:Test Desktop security: выполняетdotnet test ... --filter Category!=LiveRelease— основной быстрый офлайн-гейт без обращения к внешним сетевым ресурсам;Test Desktop security (live release): выполняетdotnet test ... --filter Category=LiveReleaseсSMM_TEST_RELEASE_TAG: v0.1.0-alpha.18— изолированный сетевой шаг проверки реального релиза.Test Desktop securityв Windows CI (прогон 32049692162).Отчёт о тестировании
1. Локальное тестирование (PASS)
dotnet test tests/ServerMonitorManager.Desktop.Security.Tests— 29 тестов пройдено (24 модульных + 5 тестов реального релиза).dotnet test --filter Category!=LiveRelease— 24 теста пройдено (266 мс).2. Доказательство исполнения в Windows CI через намеренную поломку (FAIL -> PASS)
build(stepTest Desktop security): https://github.com/ochenstarik-ui/server-monitor-manager/actions/runs/32049692162/job/95445812073windows-build.yml):Test Desktop security(offline) — PASSTest Desktop security (live release)(alpha.18) — PASS3. Границы изменений
git diff --name-only origin/main:.github/workflows/windows-build.yml(разделение шагов запуска тестов)tests/ServerMonitorManager.Desktop.Security.Tests/LiveReleaseUpdateVerificationTests.cs(тесты проверки реального релиза)4. Что не запускалось и почему