iOS 27 — Call Directory blocking overridden by Contacts or outgoing Recents?

We are developing GateCall, an iOS application that uses a Call Directory extension to maintain a private, user-selected list of blocked telephone numbers.

We are seeking clarification about Call Directory blocking precedence on iOS 27.0.1, particularly when a number exists in Contacts or outgoing Recents.

Test environment

  • Physical iPhone 11 Pro Max running iOS 27.0.1.
  • Call Directory extension enabled in Settings.
  • Blocking entry: a valid Canadian telephone number normalized to E.164 and submitted as an Int64.
  • CXCallDirectoryManager.reloadExtension returned successful completion.
  • The application reported synchronization of one blocking entry.
  • Actual extension-loaded entry count has not been independently verified.

Observed sequence — November 1, 2026

  1. The target number was initially present in iPhone Contacts.
  2. At 2:01 PM, the application reported successful Call Directory synchronization.
  3. At 2:06 PM, the iPhone placed an outgoing call to the target number.
  4. At 2:16 PM, an incoming cellular call from the same number caused the iPhone to ring.
  5. The call subsequently appeared in Phone → Recents as a missed call.

We reviewed the September 2025 Apple DTS discussion:

https://developer.apple.com/forums/thread/800415

That discussion describes a caller-information priority hierarchy and changes in iOS 26 affecting outgoing Recents.

Questions

  1. Does iOS 27.0.1 intentionally prioritize Contacts and outgoing Recents over explicit blocking entries supplied by a third-party Call Directory extension?
  2. Is there a supported public API or configuration that allows a user-selected Call Directory block to take precedence over those sources?
  3. Is this priority behaviour documented or expected to change in future iOS releases?
  4. Is there a supported diagnostic mechanism to verify which blocking entries were actually loaded by iOS, beyond successful extension reload completion?

We understand that a successful reload does not independently prove that a particular number was loaded or that Call Directory caused the observed behaviour.

Our objective is to implement accurate, user-controlled blocking and avoid claiming protection that the operating system cannot guarantee.

Any clarification from Apple DTS or developers with recent iOS 27 experience would be appreciated.

Does iOS 27.0.1 intentionally prioritize Contacts and outgoing Recents over explicit blocking entries supplied by a third-party Call Directory extension?

Yes. The basic logic here is that "people you know" (Contacts) and "people you called" (outgoing Recents) should both be able to reach you, regardless of what any other source on the system says. Note that for Contacts in particular, it's not clear what alternative the system could use, short of having ANOTHER list the user is supposed to manage.

Is there a supported public API or configuration that allows a user-selected Call Directory block to take precedence over those sources?

No.

Is this priority behaviour documented

Not in detail. We've never specifically documented how the details of this work, as the basic behavior is straightforward.

or expected to change in future iOS releases?

I can't comment on our future plans, but iOS has basically "always" worked this way and, as I noted above, it's hard to see what the alternative would be.

Is there a supported diagnostic mechanism to verify which blocking entries were actually loaded by iOS, beyond successful extension reload completion?

No.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware