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

VolvoxLLC / volvox-bot / 23515356542
91%

Build:
DEFAULT BRANCH: main
Ran 24 Mar 2026 10:32PM UTC
Jobs 1
Files 187
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 Mar 2026 10:30PM UTC coverage: 90.16% (+0.007%) from 90.153%
23515356542

push

github

web-flow
feat: expand Redis caching across bot API routes and web dashboard (#346)

* Initial plan

* feat: add Redis caching to guild stats, analytics, moderation stats, member enrichment, and web proxy ISR

Co-authored-by: BillChirico <13951316+BillChirico@users.noreply.github.com>
Agent-Logs-Url: https://github.com/VolvoxLLC/volvox-bot/sessions/f3047b02-6585-493d-81d1-b6bd1738ec63

* perf: batch engagement DB writes into a 10-second write-back buffer

Co-authored-by: BillChirico <13951316+BillChirico@users.noreply.github.com>
Agent-Logs-Url: https://github.com/VolvoxLLC/volvox-bot/sessions/8587ef61-e1a6-4f09-b846-18ea93a1f737

* fix(analytics,engagement): fix stale activeAiConversations in realtime, fix comment precision, guard concurrent interval flushes

* fix(analytics,engagement): move realtime fields outside cache, guard concurrent interval flushes, sync lockfiles

* fix(engagement,analytics,tests): fix comment, propagate flush errors, add AI-conversation fallback, fix test mock order, fix lint

* fix(lint,docker): fix moderation import order, regenerate web/pnpm-lock.yaml

* fix(engagement,analytics,cache,moderation): address all review comments

- engagement.js: add MAX_BUFFER_SIZE (50k) with backpressure, batch inserts (BATCH_SIZE 10k),
  in-flight guard to prevent overlapping flushes, rate-limited error logging (1st + every 30th),
  fix comment (FLUSH_INTERVAL_MS -> DEFAULT_FLUSH_INTERVAL_MS), rethrow on flush failure
- guilds.js: validate channelId as snowflake (digits, max 20 chars) before cache key,
  wrap activeAiConversations query in try/catch with null fallback
- moderation.js: use dedicated TTL.MOD_STATS instead of TTL.LEADERBOARD
- cache.js: add TTL.MOD_STATS, add bot:stats:* to cacheClear() prefixes
- guilds.test.js: fix mock sequence for moved activeAiConversations query,
  update channelId fixtures to valid snowflakes
- reviewHandler.test.js: fix flatMapIdentity lint (biome)

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+... (continued)

6372 of 7462 branches covered (85.39%)

Branch coverage included in aggregate %.

186 of 200 new or added lines in 5 files covered. (93.0%)

10835 of 11623 relevant lines covered (93.22%)

224.29 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
86.05
-0.26% src/index.js
5
87.1
0.66% src/api/routes/guilds.js
8
85.5
-14.5% src/modules/engagement.js
Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/179287065 23515356542.1 24 Mar 2026 10:32PM UTC 187
90.16
GitHub Action Run
Source Files on build 23515356542
  • Tree
  • List 187
  • Changed 8
  • Source Changed 6
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #23515356542
  • f936456b on github
  • Prev Build on main (#23514176343)
  • Next Build on main (#23515970425)
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