• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

archetech / archon / 33876238883
95%

Build:
DEFAULT BRANCH: main
Ran 04 Sep 2026 01:11PM UTC
Jobs 1
Files 92
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

04 Sep 2026 01:06PM UTC coverage: 92.487%. Remained the same
33876238883

push

github

web-flow
fix(wallet-ui): Drop a snackbar raised after its screen has gone (#1038)

* fix(wallet-ui): Stop writing state after the component has gone

refreshAll awaits two network calls and writes state after each, and three
effects started it with no cleanup, no abort and no mounted check. When a
request resolved after unmount the continuation still ran: in the browser
an error snackbar for a screen the user had left, and under test a hard
failure, because jsdom was gone and React reached for window (#1035).

useIsMounted holds the mounted state. SnackbarProvider drops a report
raised after unmount rather than rendering it, which is the path the
reported failure took. VariablesProvider guards at its context value, so
all thirty-two setters are covered rather than each useState in turn --
they are all called from the same refresh work.

The mount effect was also duplicated verbatim in UIContext, so refreshAll
ran twice on every mount, doubling both the work and the window in which
this could happen.

The end-to-end failure cannot be staged from inside a test: it comes from
the environment being torn down after the file finishes, not from the
unmount. A first attempt asserted that reporting after unmount does not
throw, which passed with the guard removed -- React does not throw there.
What is asserted now is the mechanism the guard depends on, and that the
guard does not cost the reporting it filters. Removing the cleanup from
useIsMounted fails it.

Closes #1035.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GYGMfX3foBcVqP7AQNXjWj

* Revert the VariablesProvider guard

Wrapping its thirty-two setters changed their identity on every render.
useState setters are referentially stable, and several effects depend on
that:

  AliasedDIDs.tsx:159   }, [pendingView, setAliasDID]);
  HeldTab.tsx:39        }, [pendingHeldDID, setHeldDID, setPendingHeldDID]);
  UIContext.tsx:281     }, [setAlias, setAliasDID]);

... (continued)

3881 of 4464 branches covered (86.94%)

Branch coverage included in aggregate %.

8528 of 8953 relevant lines covered (95.25%)

717.62 hits per line

Jobs
ID Job ID Ran Files Coverage
1 33876238883.1 04 Sep 2026 01:11PM UTC 184
93.57
GitHub Action Run
Source Files on build 33876238883
  • Tree
  • List 92
  • Changed 78
  • Source Changed 0
  • Coverage Changed 78
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #33876238883
  • d67f767e on github
  • Prev Build on main (#33812804984)
  • Next Build on main (#33885275603)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc