Skip to content

add support tcp mode#17

Open
iwizard7 wants to merge 9 commits into
jsattler:mainfrom
iwizard7:main
Open

add support tcp mode#17
iwizard7 wants to merge 9 commits into
jsattler:mainfrom
iwizard7:main

Conversation

@iwizard7
Copy link
Copy Markdown

  1. TCP/SSH Monitoring Support
    New Provider: Implemented TCPMonitorProvider using Network.framework for efficient port checking.
    UI Integration: Added a new "TCP / SSH" section in the settings to allow monitoring specific hosts and ports (defaulting to 22 for SSH).
    Strict Handshake Mode: Added a "Verify Service Handshake" feature that waits for server data (like an SSH banner) to filter out "black hole" ports or silent proxies.
  2. CI/CD & Automation
    Automatic Releases: Created a GitHub Actions workflow that automatically builds the macOS app, packages it into a .dmg, and creates a new GitHub Release on every push to the main branch.
    Build Optimization: Configured the build process to work without requiring private Apple Developer certificates for quick CI turnaround.
  3. Security & Networking Fixes
    Sandbox Entitlements: Added the com.apple.security.network.client entitlement to allow the app to make outgoing connections from the macOS sandbox.
    HTTP Cleartext Support: Configured App Transport Security (ATS) exceptions in Info.plist to allow monitoring of insecure http:// services (often used for internal/private UIs).
  4. Stability & Performance
    Swift 6 Concurrency: Resolved several build errors and warnings related to strict concurrency and data race safety in the monitoring engine.
    Robust Polling: Updated the monitoring logic to handle various network states (like .waiting or .failed) more accurately to avoid false status reports.
  5. Visual Polish
    App Icon Restoration: Recovered the official high-resolution application icon from the project resources and correctly linked it to the macOS application target.
    UX Improvements: Added helpful tooltips and validation logic to the monitor configuration screen.

@jsattler
Copy link
Copy Markdown
Owner

@iwizard7 many thanks for your contribution. I'm going to review the changes in the coming days and it should be part of the next release.

@jsattler
Copy link
Copy Markdown
Owner

jsattler commented May 9, 2026

@iwizard7 what is the reason for introducing the auto-release workflow? We should not create a new release on every push to main - this is by design.

What is the reason for adding the com.apple.security.files.user-selected.read-write entitlement?

Can you explain the app icon change a bit more? Looking at the change it seems to be the same icon for all resolutions? To my understanding, the icon size should be different depending on what it is used for.

Other than that, it looks good! Thanks again for your contribution.

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.

2 participants