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

archetech / archon / 32765265353
87%

Build:
DEFAULT BRANCH: main
Ran 24 Aug 2026 07:00PM UTC
Jobs 1
Files 91
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

24 Aug 2026 06:56PM UTC coverage: 93.932% (+0.007%) from 93.925%
32765265353

push

github

web-flow
fix(lint): Bring .jsx into scope, and clear what that surfaced (#939)

* fix(lint): Bring .jsx into scope, and clear what that surfaced

`eslint .` expands a directory only to extensions it knows about: .js by
default, plus any named in an `overrides.files` pattern.
eslint-config-react-app contributes `**/*.ts?(x)`, which is why .ts and
.tsx were linted and .jsx silently was not.

That left 15 files unlinted, two of them the 8400-line KeymasterUI copies
-- which are also outside the typecheck gate (#923, they are not
TypeScript) and outside the render harness (#914, which covers the wallets'
provider trees). Every automated check in the repo missed them, which is
how a whole feature could land in two of four UIs and go unnoticed for
weeks (#919, #935). Coverage goes 457 -> 472 files.

An empty override is all it takes; naming the extension is the point.

Clearing the 281 errors that surfaced, in ascending order of risk:

- 272 `indent`, auto-fixed. Whitespace only, and proved so rather than
  assumed: both clients rebuild to byte-identical bundles.
- 8 `sonarjs/no-duplicated-branches`. The dmail tab filter was a dispatch
  table written as an if/else chain whose every branch assigned the same
  thing. Now an actual dispatch table. This file has no tests, so
  equivalence was proved exhaustively instead -- every subset of the seven
  DmailTags crossed with six tabs, 768 cases, zero mismatches.
- 1 `sonarjs/no-collapsible-if`, nested ifs with no else and nothing
  between them.

Both KeymasterUI copies stay byte-identical to each other.

tests/ci/lint-scope.test.ts keeps .jsx named, and fails if a fifth source
extension appears unlinted. Mutation-tested: removing the override, and
naming tsx instead of jsx, each turn it red.

It reads the config as text rather than parsing it. The first version
stripped comments before JSON.parse and the block-comment regex ate the
override -- `**/*.ts?(x)` contains `/*` and `"**/*.jsx"` contains `*/`, so
it matched fro... (continued)

3854 of 4341 branches covered (88.78%)

Branch coverage included in aggregate %.

1 of 1 new or added line in 1 file covered. (100.0%)

8484 of 8794 relevant lines covered (96.47%)

690.73 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32765265353.1 24 Aug 2026 07:00PM UTC 182
94.94
GitHub Action Run
Source Files on build 32765265353
  • Tree
  • List 91
  • Changed 77
  • Source Changed 1
  • Coverage Changed 77
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #32765265353
  • beb9d916 on github
  • Prev Build on main (#32758646009)
  • Next Build on main (#32796830887)
  • 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