WPT details: The exposure change is covered by extending the existing xhr/progressevent-constructor.any.js WPT to ServiceWorker, alongside Window, DedicatedWorker, and SharedWorker. The tests cover construction, default values, EventInit options, inherited Event attributes, numeric values, and value conversion. Local runs passed. Blink's default and virtual/stable service worker interface-listing tests additionally cover the exposed interface surface. The expanded WPT is included in the CL: https://chromium-review.googlesource.com/c/chromium/src/+/8425503
ProgressEvent is available in service workers, allowing developers to construct progress events with lengthComputable, loaded, and total attributes. This aligns service workers with other worker contexts and the XMLHttpRequest Standard.
Blink exposes ProgressEvent in Window, DedicatedWorker, and SharedWorker contexts, but not in service workers. Exposing it in service workers closes this gap with the XMLHttpRequest Standard and allows code that constructs progress events to be reused across worker contexts. The change reuses the existing implementation without exposing XMLHttpRequest or adding automatic fetch progress events. Draft implementation: https://chromium-review.googlesource.com/c/chromium/src/+/8425503