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

archetech / archon / 32441040486
87%

Build:
DEFAULT BRANCH: main
Ran 21 Aug 2026 02:50AM UTC
Jobs 1
Files 89
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

21 Aug 2026 02:46AM UTC coverage: 94.073% (+0.007%) from 94.066%
32441040486

push

github

web-flow
refactor(wallet): Start sharing wallet UI instead of duplicating it (#911)

* refactor(wallet): Start sharing wallet UI instead of duplicating it

First slice of #894. react-wallet and browser-extension are two full copies of
the same UI, ~15k lines each, and 28 of their 30 same-named components have
already drifted. This does not move all of them -- it builds the thing that
makes moving them possible, and moves four to prove it works.

**packages/wallet-ui**, consumed as source. The apps alias it and let their own
bundler compile the TSX, so there is no dist and nothing to rebuild between
editing a component and seeing it.

**The injection seam.** SnackbarProvider was one of the diverged pairs, and the
divergence was exactly the interesting kind: react-wallet reads a safe-area
inset to clear the notch, the extension has no such context. It now takes
`topOffset` as a number and the host supplies it, so the component needs
nothing its platform might not have.

**Three prerequisites that turned out to be load-bearing**, each blocking any
shared .tsx at all:

- The extension compiled JSX with the classic runtime, needing `import React`
  in every file, while react-wallet's noUnusedLocals rejects exactly that
  import. No shared file could satisfy both. The extension moves to react-jsx,
  which drops 25 now-unused imports -- and those imports were themselves a
  source of the divergence being removed.
- The extension resolved modules as "node", under which MUI's typed exports do
  not resolve and component props degrade to any. Now "bundler", matching
  react-wallet.
- Shared files live outside both apps, so their React and MUI imports resolved
  to a second copy at the repo root. Two MUI instances means two emotion caches
  and broken theming, which this repo has already been bitten by. Both bundlers
  now dedupe to the app's own copies, and tsconfig paths mirror that for
  typecheck.

Both apps typecheck clean for the first time -- react-wallet had a pr... (continued)

3773 of 4247 branches covered (88.84%)

Branch coverage included in aggregate %.

8433 of 8728 relevant lines covered (96.62%)

687.02 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32441040486.1 21 Aug 2026 02:50AM UTC 178
95.09
GitHub Action Run
Source Files on build 32441040486
  • Tree
  • List 89
  • Changed 75
  • Source Changed 0
  • Coverage Changed 75
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #32441040486
  • ed9fa562 on github
  • Prev Build on main (#32420044363)
  • Next Build on main (#32515030803)
  • 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