Insight-new console errors appear after restore the encoder and export again

Open
#106,070 7 comments 1 reaction 3 assignees View on GitHub

Maintainers usually reply within 1 day

@daledah is already working on this.

Since Nov 5, 2026.

Assessment

This issue has not been assessed yet.

Description

Bug DeployBlockerCash Engineering Hourly

If you haven’t already, check out our contributing guidelines for onboarding. To join our Slack channel, fill out this form.


Version Number: v9.5.32-3
Reproducible in staging?: Yes
Reproducible in production?: N/A - new feature, doesn't exist in prod
If this was caught during regression testing, add the test name, ID and link from BrowserStack: https://github.com/Expensify/App/pull/105195
Email or phone of affected tester (no customers): N/A
Issue reported by: Applause Internal Team
Bug source: Pull Request QA execution
Device used: Windows 11 / Chrome
App Component: Other

Action Performed:

Preconditions: logged in to an account that has many expenses

Steps:

  1. Open Insights and wait until Export is enabled.
    Run this in the Console:
window.__insightsOriginalToBlob ??= HTMLCanvasElement.prototype.toBlob;
HTMLCanvasElement.prototype.toBlob = function (callback) {
    setTimeout(() => callback(null), 0);
};
  1. Click Export. Expect a generic error dialog and no download. Dismiss the dialog
  2. Run this in the Console:
HTMLCanvasElement.prototype.toBlob = window.__insightsOriginalToBlob;
delete window.__insightsOriginalToBlob;
  1. Clear the Console to exclude the deliberately induced failure, then click Export again.

Expected Result:

a PNG downloaded, and no new console errors appear after restore the encoder and export again

Actual Result:

a PNG downloaded, but new console errors appear after restore the encoder and export again

Workaround:

Unknown

Platforms:

  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome Safari

Screenshots/Videos

https://github.com/user-attachments/assets/84d85e3b-a1a4-46b4-9140-796b9358e731

View all open jobs on GitHub

Applause Internal Information
Exported by: Rizky Gunawan
Bug ID: 7305644

Dominant language
TypeScript
Stars
5k
Forks
4k
Avg merge
3d 7h
Merged PRs (30d)
561

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Expensify/App

All issues in Expensify/App

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.