A coverage env (the native env with gcov counters) runs the native
tests in CI; gcovr writes the HTML report and a table on the run's
summary page. The web UI tests report coverage with Node's built-in
coverage, and genhtml turns its lcov into HTML. Both reports are run
artifacts, and pushes to main publish them to GitHub Pages.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>