From e6e02089336e5d6983ab6632dad48772f9f064fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Osman=20=C3=87a=C4=9Fr=C4=B1=20GEN=C3=87?= Date: Tue, 29 Sep 2026 01:58:30 +0300 Subject: [PATCH 1/2] docs: finalize 3.1.0 release notes Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 14 +++++++++++++- README.md | 4 ++-- ROADMAP.md | 13 +++++++------ SECURITY.md | 4 ++-- 4 files changed, 24 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4562513..e0d51b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,10 +3,22 @@ All notable changes to MacOptimizer Pro are documented in this file. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). -## [3.1.0] - Unreleased +## [3.1.0] - 2026-09-29 The safety release. v2.1.0–v3.0.0 contain known safety defects; use v3.1.0 or later. +### Release + +- First Developer ID-signed, hardened-runtime and notarized release, shipped as a universal + (Apple silicon and Intel) DMG. One version source (`VERSION`); the release script signs, + notarizes, staples and verifies. (#21) +- New app icon. (#24) +- The dashboard quit button, like every other process-termination path, now asks for + confirmation and sends SIGTERM. The Autonomous Guard's terminate button now shows its + confirmation dialog on its own screen. (#23) +- The App Manager screens are localized; the CLI prints English labels only; the offline + assistant shows a localized system summary. (#20) + ### Security - Removed a command injection in the update screen: a remote Sparkle appcast could make the app diff --git a/README.md b/README.md index bf99be1..3295c7e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # MacOptimizer Pro -> **Safety notice:** Releases [v2.1.0–v3.0.0](https://github.com/Codifya/MacOptimizer/releases) contain known safety defects. Do not use them; use v3.1.0 or later. v3.1.0 is being prepared now and will be the first Developer ID-signed and notarized release. +> **Safety notice:** Releases [v2.1.0–v3.0.0](https://github.com/Codifya/MacOptimizer/releases) contain known safety defects. Do not use them; use [v3.1.0](https://github.com/Codifya/MacOptimizer/releases/tag/v3.1.0) or later, the first Developer ID-signed and notarized release.
@@ -125,7 +125,7 @@ MacOptimizer help ### Download a release -Signed and notarized DMGs start with **v3.1.0**, which is being prepared now. Earlier releases +Signed and notarized DMGs start with **v3.1.0**. Earlier releases (v2.1.0–v3.0.0) were not notarized and contain known safety defects. Do not use them. ### Build from source diff --git a/ROADMAP.md b/ROADMAP.md index cefca99..07d5fcb 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -12,7 +12,7 @@ injection in the update screen, deletion paths without preview or confirmation, as successful when commands failed, and documentation that claimed more than the code did. Do not use those releases. -## v3.1.0 — Safety release (in progress) +## v3.1.0 — Safety release (released 2026-09-29) Done (merged to `main`): @@ -28,16 +28,17 @@ Done (merged to `main`): - [x] English and Turkish localization, following the system language. - [x] Documentation aligned with the code. -Remaining: - -- [ ] One version source for the app, the CLI and the release tag. -- [ ] Developer ID signing, hardened runtime, notarization and stapling of the DMG. +- [x] One version source for the app, the CLI and the release tag. +- [x] Developer ID signing, hardened runtime, notarization and stapling of the DMG. +- [x] App icon. ## Later (not scheduled) - Split `AppState` into smaller feature models and inject services. - Merge `Helpers/SafetyGuard` into the `Core/Security` policies. -- App icon, and applying the menu bar extra setting. +- Applying the menu bar extra setting. +- CLI `status`: English-only power source and uptime formatting. +- Autonomous Guard: keep an alert open when the user cancels the terminate dialog. - Verify Homebrew update detection against current `brew` JSON output. - Instruments measurements for the figures still marked `REQUIRES_INSTRUMENTS_VALIDATION` in [docs/PERFORMANCE_BASELINE.md](docs/PERFORMANCE_BASELINE.md). diff --git a/SECURITY.md b/SECURITY.md index 677ffc1..61cfb93 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -8,7 +8,7 @@ problem. | Version | Status | | --- | --- | -| 3.1.0 and later | Supported. v3.1.0 is being prepared and will be the first Developer ID-signed and notarized release. | +| 3.1.0 and later | Supported. v3.1.0 is the first Developer ID-signed and notarized release. | | 2.1.0 – 3.0.0 | **Not safe. Do not use.** These releases contain known safety defects: a command injection in the update screen, and deletion paths that skipped the preview and confirmation. They were ad-hoc signed and not notarized. | ## Deletion pipeline @@ -86,7 +86,7 @@ to the Keychain. | Command injection | No shell; allow-listed executables; argument filtering; validated Homebrew tokens | — | | Killing critical processes | PID and name/path protection lists; confirmation for force quit and AI suggestions | Name lists are maintained by hand | | Data sent to the cloud | NVIDIA NIM is off by default and needs a disclosure; app names need a separate opt-in | See [PRIVACY.md](PRIVACY.md) for exactly what is sent | -| Tampered downloads | From v3.1.0: Developer ID signature and notarization (in preparation), plus GitHub build-provenance attestation | Releases up to v3.0.0 were not notarized | +| Tampered downloads | From v3.1.0: Developer ID signature and notarization, plus GitHub build-provenance attestation | Releases up to v3.0.0 were not notarized | The app is not sandboxed and has no privileged helper. It runs with your user's permissions only. There is no audit log of file operations; the History screen lists completed operations from From 69a397960b269f9e04db97897106711f03af2f8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Osman=20=C3=87a=C4=9Fr=C4=B1=20GEN=C3=87?= Date: Tue, 29 Sep 2026 01:58:47 +0300 Subject: [PATCH 2/2] docs: drop the stale in-progress release note Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e0d51b7..159d301 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -70,11 +70,6 @@ The safety release. v2.1.0–v3.0.0 contain known safety defects; use v3.1.0 or (#2, #6, #7) - Gitleaks runs as a CLI in CI. (#2) -### Release (in progress) - -- Developer ID signing, notarization and one version source for the app, the CLI and the tag are - being prepared. They are not merged yet. - ## [2.2.0] – [3.0.0] - 2026-08-28 Released the same day as 2.1.0 without changelog entries; see the