feat(web): expose saved download absolute paths

Merged
RU
13d ago
+21-6
  • Add absolutePath to browser.waitForDownload() results so deterministic tests can read downloaded bytes without reconstructing an internal artifact directory. This addresses the readable download gap in #1020.
  • Keep the report-relative path and suggested filename, and expose the runner-side file after a provider has copied the download back.

Verified

Ran it locally: yes.

Native Chromium over CDP downloads to a simulated remote provider disk and copies the actual bytes to the runner for both worker and attempt leases. The result absolutePath is absolute, matches its attached relative artifact and can be read directly. CDP recovery download tests, public types and full pnpm check pass.

mainthis branch
Regression failsRegression and adjacent tests pass
RUN  v5.0.1 packages/web


 Test Files  2 passed (2)
      Tests  18 passed (18)
   Start at  10:05:26
   Duration  13.92s (tests 94%, import 3%, transform 3%)

The full repository pnpm check, changed package build, typecheck, and changed TypeScript lint pass. The full repository pnpm check passes on the pinned unchanged base with the complete frozen-lockfile install. Browser and mobile benchmark suites were not run; no live model calls were made.

Prior art: closed, unmerged #477 included absolutePath in its popup/page-stack proposal. Its author deferred that stack design and recorded the remaining gaps in #487. This change addresses only the still-missing readable download result requested again in #1020, using the existing provider transfer lifecycle.

Also rebuilt the exact frozen commit and passed a real runner/worker/browser product fixture with no model calls. The candidate capability executed through the built SDK and real worker.