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

agama-project / agama / 22897556027
77%

Build:
DEFAULT BRANCH: master
Ran 10 Mar 2026 10:16AM UTC
Jobs 3
Files 871
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

10 Mar 2026 10:13AM UTC coverage: 76.865% (+0.07%) from 76.793%
22897556027

push

github

web-flow
feat(web): add error page (#3261)

## Problem

When Agama crashes due to an unexpected error, an ugly page with a
cryptic error message is shown most of the time.

## Solution

Render a more appealing `ErrorPage` with a better formatted error
message, filtering out third-party references from the stack trace and
pointing to the exact location where the error originated (or at least
something more accurate than what was displayed until now).

## Note about error location

The new `ErrorPage` introduces
[**StackTracey**](https://github.com/xpl/stacktracey) as a dependency,
which allows using `withSources`/`withSourcesAsync` to display the
original source location instead of the compiled build location, by
leveraging source maps.

The output is equivalent to using `source-maps-cli` as described at
https://lists.opensuse.org/archives/list/yast-devel@lists.opensuse.org/thread/OHU6OJAMXTPD6SXXOGKC6Q2K6U7RBFDO/,
though be aware the location might be approximate. Not entirely sure
why, possibly because it is the original file without comment lines and
other build optimizations. In any case, `React.createElement` line in
the examples points exactly to the problem, at least in the manual
testing done to validate these changes.

## Note about the `as-table` dependency

This PR uses the `.asTable()` method, which pulls in the `as-table`
dependency from the same author as StackTracey. Although `as-table` has
not been updated in a long time, it only has one further dependency
(also from the same author) and does not appear to be a problem. In any
case, as documented in the code:

> It can be dropped at any point if any problem is found, but for now it
gives us better formatted error messages at almost no cost.

## Tests

- Added unit tests
- Tested manually

## Follow-up

Among other ~crazy ideas~ improvements, maybe the download logs button
could be added to such an error page if the server still alive. But out
of the scope of this _fast-track_ PR intended for bot... (continued)

3150 of 5091 branches covered (61.87%)

Branch coverage included in aggregate %.

41 of 41 new or added lines in 4 files covered. (100.0%)

15 existing lines in 2 files now uncovered.

20463 of 25629 relevant lines covered (79.84%)

82.61 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
96.0
0.76% web/web/src/router.tsx
14
86.84
0.73% web/web/src/test-utils.tsx
Subprojects
ID Flag name Job ID Ran Files Coverage
3 web 22897556027.3 10 Mar 2026 10:16AM UTC 557
72.31
GitHub Action Run
1 rust 19474749743.1 18 Nov 2025 05:18PM UTC 185
22.45
GitHub Action Run
3 service 22848041887.3 09 Mar 2026 10:02AM UTC 314
87.95
GitHub Action Run
Source Files on build 22897556027
  • Tree
  • List 871
  • Changed 6
  • Source Changed 3
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #22897556027
  • 43d5ba32 on github
  • Prev Build on master (#22853221357)
  • Next Build on master (#22902809966)
  • Delete
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