Today, Phabricator works reasonably well on phones by using responsive design. It's not perfect, but: it's generally pretty usable; the development and maintenance costs are very low; you can do essentially everything; and mobile support always ships at the same time as browser support.
There are some things we can not do with responsive design. Desire for these capabilities may eventually motivate the development of native applications.
I am generally not excited about developing native applications which duplicate all of the browser application features, but developing "utility" applications which give Phabricator access to system capabilities feels like it may be a more promising way to iterate here. A minimal desktop/mobile application which supported login and push notifications would be materially useful without stumbling into the next of vipers that supporting all Phabricator applications natively represents.
Because the most interesting capabilities are generally low-level (screenshots, NFC, NFS), these applications probably need to be built in raw native code. If we use a framework like React Native or Electron I'd guess we'll run into a wall sooner or later, although if you can drop through the porcelain reasonably easily maybe something like Electron would be fine for the core and we can do the NFC reader module in Cocoa/C/Java depending on the platform. I haven't touched desktop applications in about a decade so I have no clue what the state of the world is.
Push Notifications: We generally can't do offline/push notifications without native applications. We can get some of the way with SMS (T920) but this is very limited compared to native push notifications. See also T8924.
Screenshots: See PHI1001. We can't do things like "pick screenshots from a gallery of thumbnails" or "screenshot and upload directly to Phabricator" without native applications.
NFS: See T11367. We can't mount Files as a local folder without a native application.
MFA: See T8787. We can not do push MFA or read NFC hardware keys without a native application.
Persistent Chat: It's hard for Conpherence to stack up against other chat applications without native application persistence. Push notifications would help slightly, but the best ease-of-use we can get out of a browser-only chat application has a lot of rough edges.
Local Encryption: See T4721. It's hard to convincingly do local key management in a user-friendly way without a native application.
Offline Mode: I very much doubt we'll ever build this, but if we did, I think it's not practical to pursue without a native application.
Reliable "Currently Online": We can fake this to some degree with browser activity signals, but if we're making behavioral decisions based on online status (see T7004) we probably need the reliability of a native application.