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

NodeBB / NodeBB / 27554239790 / 1
85%
master: 85%

Build:
Build:
LAST BUILD BRANCH: fix/chat-popup-copy-link
DEFAULT BRANCH: master
Ran 15 Jun 2026 02:48PM UTC
Files 410
Run time 20s
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

15 Jun 2026 02:41PM UTC coverage: 84.87% (+0.001%) from 84.869%
27554239790.1

push

github

julianlam
fix(uploads): replace extension-based MIME validation with content sniffing

The validateUploadedFileMime function used mime.getType() which derives MIME type from file extension only, not file content. This allowed a file with an allowed extension (e.g. .jpg) containing non-image content to bypass the upload:post:image privilege check.

Replaced with file-type's fileTypeFromFile() which reads magic bytes from the file header to detect the actual MIME type. For files without magic bytes (text, html, etc.), falls back to extension-based detection via mime.getType().

Added file-type@22.0.1 as a dependency in install/package.json.

Assisted-by: unsloth/Qwen3.6-35B-A3B-GGUF

13136 of 18211 branches covered (72.13%)

27750 of 32697 relevant lines covered (84.87%)

730.95 hits per line

Source Files on job ubuntu-latest-node-24-db-mongo - 27554239790.1
  • Tree
  • List 410
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 27554239790
  • 66800601 on github
  • Prev Job for on develop (#27505577890.4)
  • Next Job for on develop (#27560078687.2)
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