What does MacOS actually do when open a file?
LaunchServices

macOS includes Launch Services. This code is responsible for launching applications and providing those applications with the details of files to open or print:


  Launch Services is an API that enables a running application to open other applications or their document files or URLs (uniform resource locators) in a way similar to the Finder or the Dock. Using Launch Services, an application can perform such tasks as:
  
  
  Open (launch or activate) another application
  Open a document or a URL in another application
  Identify the preferred application for opening a given document or URL
  Register information about the kinds of document files and URLs an application is capable of opening
  Obtain appropriate information for displaying a file or URL on the screen, such as its icon, display name, and kind string
  Maintain and update the contents of the Recent Items menu
  


AEOpenDocuments

To open files, graphical applications on macOS are sent AppleEvents of type odoc:


  Event that provides an application with a list of documents to open. Sent, for example, when a selects one or more documents for your application in the Finder and double-clicks them.


The launched application's arguments do not include the paths of the files to open.