Skip to content

GeniaFirewall 0.7.4 RC3: fix EnableAll bidirectional semantics - #1

Draft
geniasoftwin wants to merge 17 commits into
mainfrom
feature/0.7.4-rc1-single-exe-portable
Draft

geniasoftwin wants to merge 17 commits into
mainfrom
feature/0.7.4-rc1-single-exe-portable

Conversation

@geniasoftwin

@geniasoftwin geniasoftwin commented Sep 25, 2026 •

Copy link
Copy Markdown
Owner

Что изменено

  • portable-пакет содержит один GeniaFirewall.exe;
  • embedded Service автоматически устанавливается в защищённый %ProgramFiles%\GeniaFirewall\Service;
  • обновление Service транзакционное: прежний EXE сохраняется как защищённый .previous до полного health-check и восстанавливается при сбое;
  • после установки проверяются SHA-256 payload, own-process/LocalSystem/auto-start/error-control/BFE/display name/точный quoted path, файловые ACL, ACL объекта службы и IPC identity;
  • Compatibility startup удаляет persisted WFP policy до запуска Service и затем подтверждает через IPC: engine/provider/sublayer закрыты, filters=0, cleanup-verified=true, residual=0;
  • активация и безопасная деактивация Service доступны в настройках;
  • BlockAll стал абсолютным глобальным режимом без app-level и loopback-исключений: ровно 8 блокирующих TCP/UDP IPv4/IPv6 фильтров;
  • при активном BlockAll UI показывает красный баннер и фактический статус «Глобально заблокировано», не изменяя сохранённые правила приложений;
  • диагностика сохраняет признак boot-restore policy после последующих UI/interface-синхронизаций;
  • CI выполняет Windows build/publish, проверяет однофайловый layout и прикладывает RC2 test artifact;
  • добавлены уведомления о лицензиях и third-party notices для bundled .NET компонентов.

RC2 status

  • commit: df3dc40d136fd5c155e0dc969b2b960499c796bd;
  • CI #13: ✅ success;
  • CodeQL #16: ✅ success;
  • GitHub Code Scanning: ✅ no new alerts in code changed by this pull request;
  • RC2 artifact: GeniaFirewall-0.7.4-RC2-SingleExe-Portable-win-x64.zip;
  • SHA-256 ZIP: 19c0a8b664030c5dce465908b4fc4f2f7133f48c8ab533ec50422784009223a2.

RC2 можно публиковать как GitHub Pre-release с тегом v0.7.4-rc2, привязанным к указанному commit. PR при этом остаётся Draft и не сливается в main.

Gate

Stable release и merge в main запрещены до завершения ручного Windows 10/11 smoke-test по RELEASE_CHECKLIST_0.7.4-RC2_RU.md и Authenticode-подписи обоих PE.

Остаточный риск

RC2 пока не подписан Authenticode. SHA-256 подтверждает целостность embedded/extracted payload, но не заменяет доверие к издателю.

Путь к Stable

  • выбран законный signing path для российского open-source издателя: SignPath Foundation;
  • добавлены публичные Code signing policy, privacy policy и процедура удаления;
  • требуется одобрение заявки SignPath и настройка двухэтапной подписи: Service → embedded payload → UI;
  • полный Windows 10 smoke-test ещё не выполнен;
  • до закрытия обоих пунктов PR остаётся Draft, версия остаётся RC2, Stable tag/release запрещён.

@geniasoftwin geniasoftwin changed the title GeniaFirewall 0.7.4 RC1: single-EXE portable service lifecycle GeniaFirewall 0.7.4 RC2: hardened single-EXE service lifecycle Oct 5, 2026

Copy link
Copy Markdown
Owner Author

RC2 automated verification

Head: 196a88c3e0f2c10cd7c15c718e41557e550c7d8b

  • CI run 8: ✅ build, single-EXE publish and artifact upload
  • CodeQL run 11: ✅
  • artifact: GeniaFirewall-0.7.4-RC2-SingleExe-Portable-win-x64
  • GitHub artifact digest: sha256:66f2e42a240e09b9eb119e25f3aeace8b526bce99ee8d3427536e86bdf8c4636
  • portable ZIP SHA-256: a2f5ac3eb074f74d9fa9c8bb7f01dcbfd179e3f0f0d37861389150af6611eec8
  • inner ZIP verified: exactly one GeniaFirewall.exe (114132245 bytes, PE32+ x64)
  • UI markers verified: 0.7.4.0, 0.7.4 RC2, embedded resource GeniaFirewall.Payload.GeniaFirewall.Service.exe
  • Authenticode security directory: empty (expected RC residual risk)

PR intentionally remains Draft. Do not merge/tag Stable before the manual Windows 10/11 checklist and Authenticode signing.

@geniasoftwin geniasoftwin changed the title GeniaFirewall 0.7.4 RC2: hardened single-EXE service lifecycle GeniaFirewall 0.7.4 RC3: fix EnableAll bidirectional semantics Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant