Re: [w3c/manifest] Should new manifest features require an explicit ID to be present in the manifest in order to be parsed? (Issue #1208)

dmurph left a comment (w3c/manifest#1208)

ID generation is unfortunately a fully settled & shipped thing - this was pack with pwa-unique-id explainer [here](https://github.com/philloooo/pwa-unique-id/blob/main/explainer.md).

- We can't require it for parsing in general, as it would break the web. We have to choose a 'fallback'.
- the desktop behavior was to use the start_url as the web app stable identifier for updates etc. Android was manifest_url
- we had usage of developers using data:// urls for manifest, which is completly incompatible with using a manifest_url as a stable identifier (as you can never update the manifest - any change to the manifest changed the id)

Then, we have the footguns that the origin migration feature is trying to help with, as well as dev use-cases for moving their pwa between places & origins. The footguns are solved if the dev specifies an id in the manifest.

So - to help 'fix/derisk' the platform, where we should have required an `id` from the beginning, for new features it doesn't seem unreasonable to require the developer to specify an `id` field for the app. I think the ecosystem benefit is far greater than the potential issues:
- If it's wrong, then sure, the developer is in the same place as the footgun. However, there is ample resources explaining the 'id' field, devtools explains the calculated id, and the developer can just fix it. Especially with the new API.
- Easy mitigation exists already - if the id is not present, we can output what the id 'should' be given the start_url in the exception message, as well as in the console, etc.

I don't  think it's possible to revisit the 'id' mechanics here, so much of the web is relying on how this works already, and we already came to agreement on that explainer & design. So then do we want to help deflake the installable web? Yes that sounds nice.

(this isn't a foreign thing - APIs do this all the time to fix bad practices etc - using new features requires fixing issues - if the dev is using the new feature, they are already editing their manifest, so it's a very very low cost)

-- 
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/issues/1208#issuecomment-3916146403
You are receiving this because you are subscribed to this thread.

Message ID: <w3c/manifest/issues/1208/3916146403@github.com>

Received on Tuesday, 17 February 2026 17:45:06 UTC