Currently web-apps started for the first time have no idea why they have been started by the browser. The “why” starts to matter when web-apps should not be executed in all cases:
- URL entered by the user
- URL reloaded by the browser
- URL intent from hybrid app XY
- URL intent from native app XY
- URL intent from operating system feature Beacons
- URL intent from operating system feature NFC
Maybe authors could use the webapp manifest for defining valid entry points for their app.