Spaces:
Running
Running
Commit History
-
Fix: Add python-multipart for file upload Running
Vaibhav Pharmacy7b0ddb2 -
Update architecture to run collector in GH Actions and sync DB via API
Vaibhav Pharmacy2a39c74
-
fix: JSON parsing for Gemini and hide missing API key message in UI
Vaibhav Pharmacy54dedc3
-
feat: Add A&R Discovery Agent and Deep Comment Themes
Vaibhav Pharmacye901791 -
feat: Add LangChain-powered viral prediction engine and UI integration
Vaibhav Pharmacy956699f -
fix: Update quota API payload keys to match frontend and trigger DB sync on stats refresh
Vaibhav Pharmacya61da91 -
fix: Filter viral alerts leaderboard to only show spikes from the last 30 days
Vaibhav Pharmacyfeb644e -
feat: Implement Hugging Face Dataset sync for persistent SQLite database storage
Vaibhav Pharmacy775411b -
fix: Extrapolate daily and monthly view counts from latest snapshots to resolve zero growth bug
Vaibhav Pharmacy624bdd4
-
feat: Add Daily and Monthly view tracker and UI toggle
Vaibhav Pharmacya3ee7b2 -
feat: Add Song Comparison Dashboard, Sentiment Analysis, and fix GH Actions timeout
Vaibhav Pharmacyb4c99ff
-
Add simulation endpoint
Vaibhav Pharmacyf7f72d1 -
Fix database: Auto-seed all 189 artists to fix HF missing database issue
Vaibhav Pharmacy9321b3c
-
Untrack db files, add auto-seeding logic, add logs endpoint
Vaibhav Pharmacyea7d5d2
-
Fix youtube dashboard, quota issues, add leaderboard
Vaibhav Pharmacy14fc427
-
fix: make YouTube Data API the default and ytmusicapi the fallback
Vaibhav Pharmacy- Swapped the order of collection mechanisms in both collector.py and api/main.py - ytmusicapi is heavily rate limited / blocked by YouTube on data center IPs - The official YouTube Data API (which we have an API key for) is now the primary method for fetching songs for all artists (watched and unwatched) - ytmusicapi is retained purely as a fallback if the official API returns 0 songsa532903
-
revert: switch back to Turso from local SQLite
Vaibhav Pharmacyfba9505 -
fix: use official YouTube Data API channel search as fallback when ytmusic is blocked, centralize collect logic
Vaibhav Pharmacyb45a7fd -
fix: add diagnostic logging and fallback logic for youtube collection
Vaibhav Pharmacy9335186 -
fix: add per-artist collect status tracking and poll-based frontend
Vaibhav Pharmacy- Backend now tracks collection status per artist (collecting/done/error) - Added GET /api/artist/{id}/collect/status endpoint - Frontend polls status every 3s instead of blind 8s timeout - Errors are properly captured and logged with full traceback14451dd -
refactor: remove all Turso/libsql dependencies, switch to pure local SQLite
Vaibhav Pharmacy8210ec1 -
fix: write collector subprocess output to collector.log so frontend can read progress
Vaibhav Pharmacy794da35 -
feat: integrated progress bars directly into the stats and discover refresh buttons by parsing the collector log
Vaibhav Pharmacyed46c5a -
fix: revert web scraper fallback and surface real API errors to the user
Vaibhav Pharmacyb91ea26 -
fix: add missing google-api-python-client to api requirements
Vaibhav Pharmacyf67905a
-
fix: stage and commit remaining local bug fixes, styles, and cache overrides
Vaibhav Pharmacydee76eb -
chore: switch daily scheduler to Python collector for VM capability support
Vaibhav Pharmacy3568949 -
Optimize SQL queries for artists endpoints to resolve timeout
Vaibhav Pharmacyf62d852
-
Optimize frontend speed and add Go backend
Vaibhav Pharmacy5a30a94 -
Optimize frontend load time: combine 5 API calls into 1 dashboard endpoint and enable GZip compression
Vaibhav Pharmacy978be0e -
Harden all edge cases: auto-reconnect with health check, thread-safe connection pool, scoped artist CTEs (137K→30 row scan), ttl_cache on stats/filters, invalidate_cache on mutations, safe is_watched cast, remove test files
Vaibhav Pharmacy96bdeb2
-
Comprehensive performance overhaul: eliminate ALL correlated subqueries with CTEs, add 6 composite indexes, add TTL cache, fix N+1 patterns in viral/search/artist endpoints, remove duplicate font import, add lazy loading
Vaibhav PharmacyChanges: - api/main.py: Rewrote 17 correlated subqueries across 8 endpoints with CTE/JOIN patterns - api/metrics.py: Replaced per-cycle loop with GROUP BY, added enrich_viral_alerts_bulk - collector/db.py: Added 6 composite indexes + auto-creation on import - api/cache.py: New TTL cache module for expensive responses - frontend: Fixed toggleWatch re-fetching, added lazy loading, removed duplicate font import689e51a
-
Fix 6s latency on artist page by replacing python N+1 enrichment loop with bulk SQL query
Vaibhav Pharmacy67cbd1b -
Optimize get_artists query to eliminate N+1 correlated subqueries using CTEs, fixing 10s load time
Vaibhav Pharmacy6c2619c -
add global exception handler
Vaibhav Pharmacy7575ba7 -
Force HTTPS connection for Turso to prevent WebSocket hangs
Vaibhav Pharmacybf58a75 -
update debug endpoint
Vaibhav Pharmacydc5b1f6 -
Add debug endpoint to check Turso env vars
Vaibhav Pharmacy2e4cb34 -
Deploy Symphony without binary files
Vaibhav Pharmacy892cb85