| id |
severity |
disposition |
title |
| CR-01 |
critical |
open |
Client file extension outside `[a-z0-9]+` poisons every listing with a permanent 500 (T-12-16 bypass) |
|
| id |
severity |
disposition |
title |
| WR-01 |
warning |
open |
Public originals keep the client extension, so a valid image can be served as HTML (stored XSS on the uploads origin) |
|
| id |
severity |
disposition |
title |
| WR-02 |
warning |
open |
Lock-order inversion between AcceptInvitation and the resolver can deadlock on Postgres |
|
| id |
severity |
disposition |
title |
| WR-03 |
warning |
open |
Artist names without Latin letters collapse into one global artist row (and genres into one empty-slug genre) |
|
| id |
severity |
disposition |
title |
| WR-04 |
warning |
open |
Album writes answer 500 after their transaction has committed |
|
| id |
severity |
disposition |
title |
| WR-05 |
warning |
open |
Bulk create runs up to 5 synchronous Discogs downloads per row, with no per-request cap |
|
| id |
severity |
disposition |
title |
| IN-01 |
info |
open |
Two copies of the upload storage code |
|
| id |
severity |
disposition |
title |
| IN-02 |
info |
open |
A pre-existing album write path and a no-op GORM callback remain |
|
| id |
severity |
disposition |
title |
| IN-03 |
info |
open |
Accept writes the notification inside the accept transaction, unlike PHP and the doc comment |
|
| id |
severity |
disposition |
title |
| IN-04 |
info |
open |
A collection name containing CR or LF silently breaks its invitation mails |
|
| id |
severity |
disposition |
title |
| IN-05 |
info |
open |
The trim and numeric helpers are re-implemented in several places |
|
| id |
severity |
disposition |
title |
| IN-06 |
info |
open |
Global mutable `models.MarketCurrencyFunc` is set at Boot without synchronization |
|