Files
Your Name 61e939e0a3 chore: production readiness fixes + repo cleanup
Production hardening:
- OOM: cap Prisma include depth on deep artist queries
- DoS: hard cap on all user-supplied limit params
- SSRF: validateUrlForFetch on all outbound user-supplied URLs
- Double-auth: remove redundant authenticateRequest before requireAdmin calls
- N+1: pLimit(3) concurrency cap on LastFM/Deezer fan-out queries
- UMAP: scale nNeighbors with dataset size to prevent crash on small libraries
- Cache TTL: circular dependency fix for vibe cache config
- AbortController: wire signal to actual fetch call, not just stale-result guard
- Dead code: inline unused sourceTrack variable, rename deezerLimit2 -> lastfmDeezerLimit
- Dockerfile: NODE_OPTIONS, MALLOC_ARENA_MAX, Node 22 for slab leak mitigations

Repo cleanup:
- Remove planning/ from git tracking (internal agent docs, not public)
- Remove docs/CHANGELOG-v1.6.3.md (docs/ already gitignored, file predated rule)
- Delete frontend/QWEN.md (stray Qwen AI artifact)
- Add planning/ and e2e/ to .gitignore
2026-03-16 13:34:57 -05:00

51 lines
715 B
Plaintext

# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions
# testing
/coverage
playwright-report/
test-results/
tests/e2e/.auth/
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
# env files (can opt-in for committing if needed)
.env*
# vercel
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts
# android signing keys (NEVER commit these!)
*.keystore
*.jks
android/key.properties
# Note: android/gradle.properties is NOT ignored - it contains AndroidX settings needed for builds