fix(server): keep provider CLIs available in the macOS service - #8173
Merged
Merged
MacroscopeApp / Macroscope - Correctness Check
succeeded
Aug 25, 2026 in 3m 24s
No issues identified (1 code object reviewed).
• Merge Base:
afc8342
• Head:e2e1de2
Details
| ✅ | File Path | Comments Posted | Reason |
|---|---|---|---|
| ✅ | apps/server/src/cloud/bootService.ts |
0 | |
| ➖ | apps/server/src/cloud/bootService.test.ts |
Excluded by default ignore patterns |
Filtered Issues Details
apps/server/src/cloud/bootService.ts
- line 464: The
xmlSafeInstallerDirectoriespredicate is not actually an XML 1.0 character check: it accepts code units0xFFFE/0xFFFF(and lone UTF-16 surrogates) because every value at least0x20passes. A PATH entry containing such a Unicode character is therefore emitted unchanged byescapeXmlText, producing a malformed plist thatlaunchdcannot parse/bootstrap instead of dropping the unsafe entry. The check needs to enforce the XMLCharranges (and iterate code points). [ Already posted ] - line 715:
normalizeUnitremoves thePATHentry from both plists before comparison. Consequently, an existing pre-change LaunchAgent plist that has noPATHcompares equal to the new rendered plist (all other fields are unchanged), sostatus.currentbecomestrue;reconcileServicethen skipsinstalland never writes the PATH needed to make provider CLIs available. The normalization should distinguish a missing PATH key from a differing PATH value. [ Already posted ]
Loading