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

valksor / kvelmo / 26040674470
84%

Build:
DEFAULT BRANCH: master
Ran 18 May 2026 02:44PM UTC
Jobs 3
Files 515
Run time 2min
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

18 May 2026 02:21PM UTC coverage: 51.266%. First build
26040674470

push

github

k0d3r1s
Quiet React Compiler false-positives in load/poll useEffect sites

bun run lint was failing with 31 errors after a recent dependency
bump enabled the React Compiler (eslint-plugin-react-hooks /
eslint-plugin-react-compiler) lint family. None of the errors were
introduced by recent work — confirmed via git stash + lint repro on
the parent commit. Per the project rule ("Fix ALL errors and
failures in the output, not just ones you introduced") this commit
addresses them.

Breakdown of the 31 failures and how each was handled:

bun run lint --fix auto-fix (9 errors)

- @typescript-eslint/no-unnecessary-type-assertion in
  FieldRenderer.tsx, export.test.ts, browserStore.test.ts,
  chatStore.test.ts: stale `as Foo` assertions on values whose
  inferred type already matches.

One follow-up to the auto-fix (1 error)

- web/src/components/settings/FieldRenderer.tsx: removing the
  String(value) wrapper triggered @typescript-eslint/no-base-to-
  string because value is `unknown`. Replaced with a type-narrowed
  conversion: only String() when value is already string|number,
  empty otherwise.

eslint-disable-next-line with per-line justification (20 errors)

- 18 components, 20 sites flagged by react-hooks/set-state-in-
  effect. Every site is the load-on-mount or polling idiom
  `useEffect(() => { void asyncFn() }, [deps])` where the
  setState calls live inside the async callback, not synchronous
  in the effect body. The rule fires conservatively because the
  compiler treats any setState reachable from an effect as
  problematic. Justification on each line:
  "load/poll idiom: setState lives in the async callback, not
  synchronous in the effect body".
- Components touched: ActivityPanel, AgentPanel, BackupPanel,
  BrowserPanel (2 sites), CIStatusPanel, CatalogPanel,
  ChecklistWidget, DiagnosePanel, EventLogPanel, FilePicker,
  FolderPicker, HooksPanel, MetricsPanel, PolicyPanel,
  QualityPanel, RecordingsPanel, Settings (2 sites), TaskHistory.

eslint-disa... (continued)

2818 of 4044 branches covered (69.68%)

Branch coverage included in aggregate %.

28594 of 57228 relevant lines covered (49.97%)

1.78 hits per line

Jobs
ID Job ID Ran Files Coverage
1 tauri-coverage - 26040674470.1 18 May 2026 02:44PM UTC 3
47.21
GitHub Action Run
2 web-coverage - 26040674470.2 18 May 2026 02:44PM UTC 77
75.92
GitHub Action Run
3 go-coverage - 26040674470.3 18 May 2026 02:51PM UTC 435
47.31
GitHub Action Run
Source Files on build 26040674470
  • Tree
  • List 515
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #26040674470
  • b3f46cf8 on github
  • Prev Build on master (#25987978365)
  • Next Build on master (#26090271605)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc