Skip to content

Worker restart and browser restart are not equivalent during export #348

Description

@lamemustafa

Split out of #345 (closed) and #347, because it is a distinct question and would otherwise be lost inside them.

The problem

Any single "export phase" recovery observation cannot record which restart was tested, and the two are not equivalent in that window:

  • Service-worker restart — the worker is killed and revived. The offscreen document and in-flight browser download activity survive. This can also be satisfied earlier, during target acquisition, without ever reaching the export window.
  • Browser restart — additionally tears down the offscreen document, which is where buildFiledReturnsGstr2bWorkbook and the ZIP assembly run, and drops in-flight download activity entirely.

So a pass recorded after testing only the worker restart closes the cell while the harder case -- rebuilding an archive whose offscreen builder no longer exists -- was never exercised.

Why it is not obvious

The existing matrix already has separate Service-worker restart and Browser restart columns, which makes it look as though the distinction is covered. It is not: those columns can both be satisfied during acquisition, before any export begins. The export window needs its own pair, or an explicit statement of which restart the single observation must use.

What would close it

Either two export observations per row, or one with a recorded restart kind, so the evidence says which teardown was survived rather than leaving it to the reader to assume.

Not blocking

No known defect. Recorded because the ambiguity is easy to miss and makes an observation look stronger than it is.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions