Skip to content

Fix on-prem detection for hybrid mailboxes; record Windows sidecar qualification - #896

Merged
bdart merged 2 commits into
mainfrom
fix/exchange-onprem-hybrid-detection
Aug 3, 2026
Merged

Fix on-prem detection for hybrid mailboxes; record Windows sidecar qualification#896
bdart merged 2 commits into
mainfrom
fix/exchange-onprem-hybrid-detection

Conversation

@bdart

@bdart bdart commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Two independent items split out of the feature/ermain-503-addin-sidecar-thread-fetcher branch (#892) so that PR stays focused on the sidecar fetcher. Both surfaced during Outlook-on-Mac testing.

1. Bug fix — on-prem detection for hybrid mailboxes (detectExchangeOnPrem)

New Outlook on Mac reports accountType: "office365" for a hybrid account whose mailbox actually lives on-prem — the value tracks the signed-in Entra identity, not the mailbox host. The previous logic let a cloud accountType veto the endpoint evidence, so these mailboxes were misrouted to the Graph path, which cannot reach an on-prem mailbox.

Fix: only the positive "enterprise" ⇒ on-prem signal is trusted; otherwise a non-Microsoft ewsUrl/restUrl host decides. Added a test asserting a non-Microsoft ewsUrl wins over a cloud accountType; existing cases updated to use cloud endpoints so they still read as not-on-prem. vitest → 11/11 pass.

Independent of the sidecar work; belongs on main regardless.

2. Docs — Windows classic Outlook transport qualification

Fills the Windows classic Outlook row of the TRANSPORT.md qualification matrix from live testing: WebView2 150, no Private-Network-Access preflight, no loopback exemption or permission prompt required. The macOS row stays pending and is tracked separately (WKWebView blocks plain-http loopback as mixed content — ERMAIN-522 adds the HTTPS profile).

bdart and others added 2 commits August 3, 2026 19:30
New Outlook on Mac reports accountType "office365" for a hybrid account whose
mailbox actually lives on-prem — the value tracks the signed-in Entra identity,
not the mailbox host. The old logic let a cloud accountType veto the endpoint
evidence, misrouting such mailboxes to the Graph path (which cannot reach an
on-prem mailbox). Only the positive "enterprise" ⇒ on-prem signal is now
trusted; otherwise a non-Microsoft ewsUrl/restUrl host decides.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ynzg88ooDpkwtoJo9VtHP
Fills the Windows classic Outlook row of the TRANSPORT.md qualification matrix
(WebView2 150, no PNA preflight, no loopback exemption or prompt needed). The
macOS row remains pending; it is tracked separately (WKWebView blocks plain-http
loopback as mixed content, requiring the HTTPS profile).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ynzg88ooDpkwtoJo9VtHP
@bdart
bdart force-pushed the fix/exchange-onprem-hybrid-detection branch from f806d61 to 5ea9e6d Compare August 3, 2026 18:09
@bdart
bdart merged commit a161cb6 into main Aug 3, 2026
31 checks passed
@bdart
bdart deleted the fix/exchange-onprem-hybrid-detection branch August 3, 2026 18:30
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.

1 participant