From 40b63034054e8d17b57d3d7eecba64d1d9153459 Mon Sep 17 00:00:00 2001 From: Serhii Vasylenko Date: Thu, 14 May 2026 03:21:20 +0300 Subject: [PATCH] docs: fix SMAppService placement in system context diagram SMAppService is used by MenuBarView (MenuBarView.swift imports ServiceManagement and calls SMAppService.mainApp.register/unregister/status), not by SleepManager. The previous diagram incorrectly placed it in the SleepManager subtree alongside powerd. --- ARCHITECTURE.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index a0a957f..6ab9233 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -8,17 +8,20 @@ User clicks icon ───► Menu bar (MenuBarExtra .window) │ ▼ - MenuBarView ──► SleepManager - │ - ┌───────────────────────┬┘ + MenuBarView ──────────────────► SMAppService + │ login item registration + ▼ + SleepManager + │ + ┌─────────┴─────────────┐ ▼ ▼ IOKit (IOPMLib) UserDefaults IOPMAssertionCreateWithName rememberLastState IOPMAssertionRelease wasActiveAtQuit │ sleepMode ▼ - powerd (kernel daemon) SMAppService - system-wide assertions login item registration + powerd (kernel daemon) + system-wide assertions ``` ## Design Rationale