VirtualPBX — Internal macOS Test Build
Version 1.0.0 (build 4) — October 14, 2026
Source: codex/transparent-desktop-icons, commit 4810a5c
Requires macOS 12 or newer. Includes Apple Silicon and Intel architectures.

INSTALL
1. Quit the previous VirtualPBX app completely from its app/tray menu.
   Closing its window only hides it.
2. Extract the ZIP, then copy VirtualPBX.app into Applications, replacing
   the previous tester copy if installed.
3. Open VirtualPBX and sign in with your test account.
4. Allow microphone access for calling. This build supports audio calls only.

FIRST OPEN
This internal build is ad-hoc signed and is not Apple-notarized. If macOS
blocks it as an unidentified developer, confirm that this is the package
provided by your test coordinator. After attempting to open the app, use
System Settings > Privacy & Security > Open Anyway. On macOS Monterey,
use System Preferences > Security & Privacy instead. If company policy
prevents approval, contact your IT team.
Apple's instructions: https://support.apple.com/en-us/102445

CALLING FROM PHONE LINKS
Open FaceTime > Settings > General, then select VirtualPBX under
Default for calls. Older macOS versions call Settings Preferences.
Stay signed in and connected in VirtualPBX. The Mac app no longer has a
Choose default button under Support; make this selection in FaceTime.
Apple's guide: https://support.apple.com/guide/facetime/change-general-settings-fctm35545/mac

CHANGES SINCE BUILD 3
- Password recovery from the login screen, including success and error states.
- Centered VirtualPBX branding and a smooth transition to password recovery.
- Blue-and-white app icon with transparent outer padding.
- Simplified Mac phone-link setup and clearer setup error messages.

WHAT TO TEST
- Sign-in, remembered credentials, sign-out, and restart.
- Forgot-password flow with a designated test account and invalid details.
- New app icon in Applications, the Dock, and the app switcher.
- Phone links after selecting VirtualPBX as the default in FaceTime.
- Outbound and inbound calls, including after leaving the app idle.
- Two-way audio, headset selection, mute, hold/resume, and transfers.
- Incoming-call notifications while the window is hidden.
- Phone status after sleep/wake and network reconnection.

REPORTING ISSUES
Include version 1.0.0 (build 4), commit 4810a5c, macOS version, Mac type,
reproduction steps, and the time of the issue. For additional diagnostics,
enable Capture detailed logs in Settings > Troubleshooting before reproducing,
then export the diagnostic report for your test coordinator.

BUILD TYPE
This is an optimized Flutter profile build for internal testing, using
Flutter 3.47.6 and Dart 3.13.5 with the committed dependency lockfile.
It uses the existing encrypted standard Keychain configuration and preserves
the current app identifier. A production release uses a different Keychain
configuration and requires Apple distribution signing and provisioning.

VALIDATION
Static analysis and all 589 Flutter tests passed on this source snapshot.
See BUILD-INFO.json for bundle and startup validation details.
Live PBX calling and acceptance on Intel hardware remain for the test team.
