Thanks Rick and Philip!

Re. the WebDriver request, I’ve opened Specify automation for Web Install 
confirmation-dependent WPTs · Issue #41 · 
WICG/install-element<https://github.com/WICG/install-element/issues/41> to 
track as a follow up. We do have extensive browser tests for successful 
installation and dismissal, but AFAIK there are no existing WebDriver endpoints 
or commands that fit web app installation needs.

From: Philip Jägenstedt <[email protected]>
Sent: Wednesday, September 30, 2026 9:04 AM
To: Rick Byers <[email protected]>
Cc: Lia Hiscock <[email protected]>; [email protected]; 
[email protected]; Rob Paveza <[email protected]>; Limin Zhu (Edge) 
<[email protected]>; Kristin Lee (EDGE) <[email protected]>; Lu Huang 
<[email protected]>
Subject: Re: [blink-dev] Intent to Ship: Web Install API

You don't often get email from [email protected]<mailto:[email protected]>. 
Learn why this is important<https://aka.ms/LearnAboutSenderIdentification>
LGTM2

Regarding https://wicg.github.io/install-element/#testing and testing in WPT, 
this should be testable with testdriver.js given a WebDriver classic endpoint 
or WebDriver BiDi command in the spec. 
https://wicg.github.io/turtledove/#sctn-automation and 
https://wicg.github.io/ua-client-hints/#automation are examples to copy from.

Do you have tests written outside of WPT that could be converted and upstreamed 
with this approach? If so, I think that would be very good to do as part of 
shipping.

On Wed, Sep 30, 2026 at 4:33 PM Rick Byers 
<[email protected]<mailto:[email protected]>> wrote:
LGTM1

I read through some of the long debates on this API. From an API owner 
perspective, I believe all requirements have been met: spec, tests, developer 
feedback and needs assessment, feedback from other browser vendors. Certainly 
this API seems likely to be Chromium-only for the foreseeable future, but that 
is nothing new when it comes to advanced web app capabilities. If we can't even 
agree on whether WebBluetooth belongs on the web, then I don't expect us to 
agree on this either, but like Web Bluetooth, it's a progressive enhancement so 
the downside of lack of interoperability is well managed. Thank you for all the 
long and thoughtful engagement in public discussion and debate, I personally 
believe the API owners' bar is now well cleared (though other API owners may 
still disagree, of course).

I personally have some concerns about the potential for annoying users and am 
adamant that we not repeat the push notification permission disaster, but those 
are Google Chrome UI concerns and are not subject to the API owners' process; 
they can reasonably be expected to differ across Chromium embedders. I will 
follow up internally on those concerns specific to Google Chrome's feature 
launch process. The  potential mitigation suggested in the explainer than only 
installed apps can install other apps would entirely adddress my concern, and 
I'm sure there are other (less dramatic) ways to do so as well.

Rick



On Mon, Sep 21, 2026 at 11:38 AM 'Lia Hiscock' via blink-dev 
<[email protected]<mailto:[email protected]>> wrote:
Contact emails
[email protected]<mailto:[email protected]>, 
[email protected]<mailto:[email protected]>
Explainer
https://aka.ms/webinstall
Specification
https://wicg.github.io/install-element
Design docs
https://docs.google.com/document/d/12nSXJLm8mW0gWZ_yjlXfrV8r9gwJliVt4WVa-209-KA/edit?tab=t.0
Summary
Triggers a request for the browser to install a web app, given a manifest URL 
and optional manifest ID. The navigator.install() method enables cross-origin 
web app installation and provides a better developer experience than handling 
beforeinstallprompt events. This API is proposed to ship together with the 
<install> element, a declarative entry point to the same installation 
capability: https://chromestatus.com/feature/5152834368700416.

Enterprises can control this in two ways - (1) Enterprise policy, 
WebAppInstallByUserEnabled, can disable user web app installs broadly, 
including installs initiated via navigator.install() and <install>. Or (2) 
Permissions Policy, web-app-installation, can allow or disallow use of this 
feature on origins the enterprise controls (for example, internal 
sites/iframes).
Blink component
Blink>AppManifest<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EAppManifest%22>
Web Feature ID
navigator-install<https://webstatus.dev/features/navigator-install>
Motivation
The web currently lacks the ability for a site to offer installation of a web 
app identified by a cross-origin manifest. Limited support exists for eligible 
same-origin web apps via ambient installation affordances and the 
beforeinstallprompt event. However, the existent browser-provided entry points 
are difficult for developers to use and users to discover.

This capability lets developers distribute web apps across the web without 
proprietary protocols or platform-specific stores. It brings web app 
distribution closer to the reach developers expect from other application 
models while preserving browser-controlled safeguards and explicit user choice.

Initial public proposal
https://aka.ms/webinstall
Search tags
web install<https://chromestatus.com/features#tags:web%20install>, 
install<https://chromestatus.com/features#tags:install>, 
webappinstallation<https://chromestatus.com/features#tags:webappinstallation>, 
webinstallapi<https://chromestatus.com/features#tags:webinstallapi>
TAG review
https://github.com/w3ctag/design-reviews/issues/1245

TAG review status
Issues open

Review was requested two months ago with updates addressing concerns raised in 
the earlier design review: 
https://github.com/w3ctag/design-reviews/issues/1051. The TAG has not yet 
provided substantive feedback on the updated API shape or design. A recent TAG 
meeting agreed to develop a finding about the broader capability of web app 
installation and prompting. That work remains open, and we will continue 
participating in it.

Origin Trial Name
WebAppInstallation
Chromium Trial Name
WebAppInstallation
Link to origin trial feedback summary
https://docs.google.com/document/d/1B21htNQFmhEhhIpnIU7z_jOeH9wEF1Hz9XSKlMWW3a0/edit?pli=1&tab=t.0
Origin Trial documentation link
Demos/pwa-install-api/README.md at main · 
MicrosoftEdge/Demos<https://github.com/MicrosoftEdge/Demos/blob/main/pwa-install-api/README.md>
WebFeature UseCounter name
WebDXFeature::navigator-install
Risks

Interoperability and Compatibility
These are additive entry points to web app installation, a capability browsers 
already provide through browser-controlled UI. The primary interoperability 
risk is uneven cross-browser availability rather than conflicting behavior for 
existing content: other engines have not committed to these entry points, and 
WebKit opposes site-initiated web app installation.

WebKit opposes these entry points because it considers installation a user 
decision whose flow should begin in browser UI. We acknowledge this substantive 
difference in approach. However, origin-trial partners, public developer 
reports, and standards discussions consistently identified existing web app 
installation as difficult for users to discover and cumbersome for developers 
to offer. Developers expressed strong support for a direct and predictable 
installation path while retaining browser-controlled confirmation UI and 
existing installability requirements.

Our designs preserve browser control over installation through required user 
activation, explicit consent in browser-controlled UI, and the user agent’s 
ability to suppress the flow. The <install> element further provides 
user-agent-controlled rendering. Detailed abuse, privacy, and security 
protections are described in our explainer and our TAG review request. Given 
those safeguards and the demonstrated developer and user need, we believe 
shipping in Chromium is appropriate while standards discussions continue.

Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1179)

WebKit: Oppose (https://github.com/WebKit/standards-positions/issues/463)

Web developers: Positive 
(https://github.com/w3ctag/ethical-web-principles/issues/120#issuecomment-2285348765)
 
https://github.com/w3ctag/ethical-web-principles/issues/120#issuecomment-2285431557

Other signals: pwastore.io<http://pwastore.io/> - 
https://www.reddit.com/r/PWA/comments/1o1excp/comment/niit2jh/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
Ergonomics
This could be used in conjunction with the navigator.getInstalledRelatedApps 
API, which tells a developer if any related web apps are installed for their 
site, before attempting to install with navigator.install. There is overlap 
between navigator.install and the BeforeInstallPrompt event. navigator.install 
is more ergonomic, and we think developers will prefer its declarative install. 
See this thread - https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/1055
Activation
No activation risks. It should be relatively easy for developers to take 
advantage of this feature immediately, as-is. The API was designed with 
ergonomics in mind, and we have four places with instructions for developers 
(two test sites, the explainer itself, and a Developer Trial README)
Security
Security considerations - 
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/WebInstall/explainer.md#accessibility-privacy-and-security-considerations
WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications?
N/A

Debuggability
Existing DevTools support for promise-based JavaScript APIs applies. In 
addition to the generic DataError rejection, Web Install failures for eligible 
same-origin manifests are reported in the Issues panel using bounded failure 
categories, such as manifest fetch or parse failure, invalid start_url, and 
missing required fields. This provides diagnostics for browser-process manifest 
fetches that are not visible in the Network panel. Cross-origin and internal 
failure details are not reported. See Debuggability doc - 
https://docs.google.com/document/d/1rGvLhD4SR8Y9M1wVmqgyesPNkbZGU7HOqlttjEFJ5Vo/edit?tab=t.i3gxb63o1ngb
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
No
Windows, Mac, Linux, and ChromeOS will be shipped first. Android will be 
supported later, due to significant technical deviation in the web app 
ecosystem - https://issues.chromium.org/issues/424497410. As of now, no plan to 
support Android WebView.
Is this feature fully tested by 
web-platform-tests<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
No
The API's shape and activation restrictions are tested - 
https://wpt.fyi/results/web-install. However, web app installs are currently 
not supported by automated tests, as they require user interaction to confirm 
the installation. Manual web app testing instructions can be published.
DevTrial instructions
https://microsoftedge.github.io/Demos/pwa-install-api/
Flag name on about://flags
web-app-installation-api
Finch feature name
WebAppInstallation
Rollout plan
Will ship enabled for all users
Requires code in //chrome?
False
Tracking bug
https://issues.chromium.org/issues/333795265
Launch bug
https://launch.corp.google.com/launch/4495880
Measurement
We have a JavaScript UseCounter and WebDX feature - 
https://chromestatus.com/metrics/webfeature/timeline/popularity/375 We will 
also implement chromium UMAs and possibly UKMs for the API service results.
Availability expectation
Feature is available only in Chromium browsers for the foreseeable future.
Adoption expectation
Feature is used by specific partner(s) to provide functionality within 12 
months of launch in Chrome.
Adoption plan
We are in communication with partners. We plan to post an update on 
developer.chrome.com<https://developer.chrome.com/> and 
blogs.windows.com<https://blogs.windows.com/>, and add AI guidance for Web 
Install to 
github.com/GoogleChrome/modern-web-guidance<https://github.com/GoogleChrome/modern-web-guidance>.
Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source 
repository and its open-source dependencies to function?
No.
Estimated milestones
Shipping on desktop
156
Origin trial desktop first
143
Origin trial desktop last
148
Origin trial extension 1 end milestone
150
Origin trial extension 2 end milestone
150
DevTrial on desktop
139

Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop 
issues. Please list open issues (e.g. links to known github issues in the 
project for the feature specification) whose resolution may introduce web 
compat/interop risk (e.g., changing to naming or structure of the API in a 
non-backward-compatible way).
N/A
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5183481574850560?gate=5120761429229568
Links to previous Intent discussions
Intent to Prototype: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DB9PR83MB05184F25E5FEE4595055FE34CC042%40DB9PR83MB0518.EURPRD83.prod.outlook.com
Ready for Trial: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/ame_t7wN2cU
Intent to Experiment: 
https://groups.google.com/a/chromium.org/g/blink-dev/c/KCpVX8F6yh8/m/Fbs3p4PdAwAJ
Intent to Extend Experiment 2: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CH3PR00MB267356EB5428C4233B819ECFD35EA%40CH3PR00MB2673.namprd00.prod.outlook.com
This intent message was generated by Chrome Platform 
Status<https://chromestatus.com/>.

--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CH4PR00MB26595E5F1D84E916BDB48773D3842%40CH4PR00MB2659.namprd00.prod.outlook.com<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CH4PR00MB26595E5F1D84E916BDB48773D3842%40CH4PR00MB2659.namprd00.prod.outlook.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-aqgpTu7kcN%2BQaX23VNmACT0AAX00SemA6SzkaUxxiEw%40mail.gmail.com<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-aqgpTu7kcN%2BQaX23VNmACT0AAX00SemA6SzkaUxxiEw%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/IA1PR00MB2654E51C04EF8CAAA75928C7D3932%40IA1PR00MB2654.namprd00.prod.outlook.com.

Reply via email to