When a service worker starts a BackgroundFetch, they receive a promise which will resolve as soon as the fetch metadata is saved in the BackgroundFetch system.
In order to find out that a fetch has actually completed, the system will need to send an event to the service worker. It's possible that the service worker will need to be loaded into memory in order to deliver the event.
This event will need to communicate at least the tag for the fetch, the status of the fetch, and how to access the fetch response.
Comment 1 by mlamouri@chromium.org
, Feb 22 2017