- Fork elmeg-demo codebase for multi-band support - Add data importer infrastructure with base class - Create band-specific importers: - phish.py: Phish.net API v5 - grateful_dead.py: Grateful Stats API - setlistfm.py: Dead & Company, Billy Strings (Setlist.fm) - Add spec-kit configuration for Gemini - Update README with supported bands and architecture
1.6 KiB
1.6 KiB
Handoff - 2025-12-22
Work Completed
Database & Migrations
- Performance Slug: Identified and resolved missing
slugcolumn onPerformancetable.- Fixed migration
65c515b4722a_add_slugs.pyto includeserver_defaultfor NOT NULL columns (User table), allowing SQLite migration to succeed. - Applied migration
65c515b4722asuccessfully.
- Fixed migration
- Data Fixes: Updated
fix_db_data.py:- Added robust pagination for API fetching.
- Implemented logic to ensure slug uniqueness for Shows, Venues, Songs, etc. across the board.
- Added
Performanceslug generation. - Attempting to fix
set_namebackfill.
Notification System
- Status: Not started yet. Pending completion of data fixes.
Current State
- Database:
slugcolumn added toPerformanceand verified populated for 100% of records (Shows, Venues, Songs, Tours, Performances).- Migration
65c515b4722a_add_slugsapplied successfully.
- Data:
fix_db_data.pycompleted slug generation.set_namebackfill failed due to API mapping issues (missing external IDs to link setlists). Existingset_namefields remain mostly NULL.
- Frontend: Links are using slugs. API supports slug lookup.
Next Steps
- Fix Set Names: Investigate
fix_db_data.pymapping logic. Needs a way to reliably link APIsetlistsresponse to DBshows. Maybe fuzzy match date + venue? - Notification System: Implement Discord/Telegram notifications.
- Create
backend/services/notification_service.py. - Setup Webhooks/Bots.
- Create
- Frontend Verification: Click testing to ensure slug routes load correctly.