Run builds on old binary

I am encountering an issue where the application running on a physical device does not reflect the most recent source changes. Observed behavior On the device, the application behaves as if an older binary is running. Specifically:

Newly added debug UI labels do not appear.

The logs still show old debug prints instead of new ones.

Steps taken to ensure a clean install:

Changed the bundle identifier

Set a new display name (the app still showed the old display name when I click run).

Deleted the app manually from the device before every reinstall.

Build and install steps

Performed multiple clean builds with a fresh Derived Data path.

Built from terminal using xcodebuild (Debug configuration, physical device target, automatic provisioning).

Installed using:

xcrun devicectl device install app <path-to-app>

Verified:

The updated source files are listed under Compile Sources and compiled from the expected path.

The bundled Info.plist includes the new bundle identifier and display name.

Installation output confirms new bundle identifier.

Question What could cause a newly built and installed application to run with behavior from an older binary? Are there recommended ways to verify that the device is actually launching the latest installed build, and to ensure stale binaries are not being executed?

Any guidance on additional diagnostics or misconfigurations to check would be appreciated.

Run builds on old binary
 
 
Q