Files
nvrl fbcff2266b Harden the backend: read pool, tighter limits, crawler guards
Feed, likes, artist, track and the session lookup run on four
read-only SQLite connections, so a slow feed no longer blocks writes.
Reads are capped at 120 a minute per user and the audio and image
proxy at 3000 a minute per IP. Session rotation happens once when
requests race, and the page, assets and legal pages skip the session
lookup. Events and follows for unknown tracks or artists return 404,
and radio only explores artists already in the catalogue.

The crawler queue is capped at 20k jobs, an empty home page counts as
a failure, and 25 failures in a row log an error that pl8list may
have changed its API. A guest who signs in with "stay connected" gets
up to 200 likes and follows saved to pl8list. The old Python server is
removed; it lives on in 54a436a.
2026-11-02 22:03:14 +01:00

10 lines
96 B
Plaintext

.env
*.db
*.db-*
__pycache__/
backend/target/
web/node_modules/
web/dist/
backend/cache/
cache/