Files
dh 9542c05ea4 feat(macos): add native desktop controls and hotkey integration
- Introduced MacOsDesktopControlManifest to manage desktop control configurations.
- Implemented MacOsDesktopControlService to handle the lifecycle of the macOS helper process.
- Created MacOsWorkflowRulesEditorWindowService for managing workflow rules through a native window.
- Developed a Swift helper for macOS that integrates with AppKit and Carbon for menu-bar controls and global hotkeys.
- Added support for recording lifecycle actions via HTTP endpoints, maintaining consistency with existing Windows functionality.
- Enhanced user experience by allowing macOS users to start/stop recordings and access settings through a menu-bar interface.
- Documented design decisions, implementation evidence, and verification tasks for the new macOS features.
2026-08-06 08:18:52 +02:00

2.0 KiB

Implementation Evidence

Date: 2026-07-21 Host: macOS arm64

Behavior verification

  • Focused interactive-instruction and startup tests:
    • Command: dotnet test MeetingAssistant.Tests/MeetingAssistant.Tests.csproj --filter 'FullyQualifiedName~InstructionBuilder|FullyQualifiedName~ApplicationStartupRegistersDetectedHostOperatingSystemOnce' --no-restore --nologo
    • Result: passed, 11/11.
  • The focused tests cover Windows guidance, macOS guidance, unsupported-host fallback, custom-prompt retention, and singleton startup detection.

Build and spec verification

  • Portable application build:
    • Command: dotnet build MeetingAssistant/MeetingAssistant.csproj -f net10.0 --no-restore --nologo
    • Result: succeeded with 0 warnings and 0 errors.
  • OpenSpec validation:
    • Command: openspec validate detect-host-operating-system --strict
    • Result: valid.
  • Diff check:
    • Command: git diff --check
    • Result: passed.

Broader test result and known limitations

  • Full portable test project:
    • Command: dotnet test MeetingAssistant.Tests/MeetingAssistant.Tests.csproj --no-restore --nologo
    • Result: 422 passed, 9 failed.
    • The 9 failures are the pre-existing macOS failures identified before this change: Windows/GDI+ image rendering, Windows-path expectations, and Windows user-environment behavior. None exercise the new host detection or platform instruction output.
  • Windows target:
    • Restore with EnableWindowsTargeting=true succeeded.
    • Native Windows build cannot complete on macOS because the Windows SDK attempts to execute MakePri.exe and returns Exec format error. Windows CI or a Windows host remains the appropriate verification environment for that target.

Refactoring review

  • DRY review consolidated shared platform-guidance policy text and reused the production detector in the startup test.
  • SOLID review found no actionable issue.
  • KISS review found no actionable simplification.

The live Meeting Assistant process was not restarted or modified during verification.