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

VolvoxLLC / volvox-bot / 22806153766 / 1
90%
main: 90%

Build:
DEFAULT BRANCH: main
Ran 07 Mar 2026 07:59PM UTC
Files 179
Run time 3s
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

07 Mar 2026 07:58PM UTC coverage: 87.549% (+0.07%) from 87.484%
22806153766.1

push

github

web-flow
chore: tech debt — skeletons, error boundaries, toasts, validation, rate limit cleanup (#257)

* feat(web): add loading skeleton placeholders to dashboard pages

Replace raw loading text with animated Skeleton components on:
- Audit log, tickets, conversations, temp-roles pages (skeleton table rows)
- Role selector and channel selector popovers (skeleton list items)

Partially addresses #144

* feat(web): add reusable ErrorBoundary component with retry button

- Create ErrorBoundary class component in web/src/components/ui/
- Shows friendly error card with AlertTriangle icon and 'Try Again' button
- Supports custom fallback render prop for flexible error UIs
- Wrap AnalyticsDashboard (main dashboard page) and ModerationStats
- Dev mode surfaces the raw error message for easier debugging

Partially addresses #144

* feat(web): add toast notifications for XP adjustment and CSV export

Use sonner toasts to surface success/error feedback for:
- XP adjustment (toast.success / toast.error alongside inline state)
- Member CSV export (toast.success on download, toast.error on failure)

Config editor already had comprehensive toasts. Partially addresses #144

* fix(web): add payload validation to XP proxy route

Validate the incoming JSON body before forwarding to the bot API:
- Reject non-object payloads with 400
- Require 'amount' field as a finite number
- Reject non-string 'reason' values
- Strip unknown keys (only forward amount + reason)

Defense-in-depth: catches bad clients before they hit the backend.
Partially addresses #144

* fix(rateLimit): export startRateLimitCleanup and add stale-sweep test

- Export startRateLimitCleanup() for testing and graceful re-init
- Add 'stale entry cleanup (interval sweep)' test that verifies the
  5-minute setInterval sweep actually removes entries whose last activity
  is older than their retention window (uses fake timers)

The cleanup itself was already implemented; this adds test coverage and
makes the function a... (continued)

5937 of 7190 branches covered (82.57%)

Branch coverage included in aggregate %.

10222 of 11267 relevant lines covered (90.73%)

229.94 hits per line

Source Files on job 22806153766.1
  • Tree
  • List 179
  • Changed 7
  • Source Changed 6
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 22806153766
  • f53f0bef on github
  • Prev Job for on main (#22803426895.1)
  • Next Job for on main (#22808496811.1)
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