Migration can be suggested to the user
The new manifest names the old app, the old origin explicitly authorizes the new app, and both origins are HTTPS and same-site.
v147 · PWA · demo
Build the PWA origin migration handshake with the current manifest fields: migrate_from on the new app, allow_migration in the old origin association file, optional migrate_to on the old app, and install_url for redirect-safe updates.
Each button regenerates the manifest JSON and validation result. The checks model the current same-site handshake; they are not generic PWA capability probes.
The new manifest names the old app, the old origin explicitly authorizes the new app, and both origins are HTTPS and same-site.
| Field or file | Where it lives | What Chrome uses it for |
|---|---|---|
migrate_from |
New app manifest | Declares the old app identity that may migrate into this destination app. |
/.well-known/web-app-origin-association |
Old origin | Authorizes the destination app with allow_migration: true, preventing unilateral takeover by another site. |
migrate_to |
Old app manifest | Optional proactive signal that points an installed legacy app at the destination app. |
behavior |
Inside a migrate_from object |
suggest allows an ignorable update; force blocks launch until the user updates or uninstalls. |
install_url |
migrate_from or migrate_to object |
Keeps a non-redirecting install page available when old app routes redirect to the new origin. |
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗