- 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
36 lines
1.6 KiB
Markdown
36 lines
1.6 KiB
Markdown
# Handoff - 2025-12-22
|
|
|
|
## Work Completed
|
|
|
|
### Database & Migrations
|
|
|
|
- **Performance Slug**: Identified and resolved missing `slug` column on `Performance` table.
|
|
- Fixed migration `65c515b4722a_add_slugs.py` to include `server_default` for NOT NULL columns (User table), allowing SQLite migration to succeed.
|
|
- Applied migration `65c515b4722a` successfully.
|
|
- **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 `Performance` slug generation.
|
|
- Attempting to fix `set_name` backfill.
|
|
|
|
### Notification System
|
|
|
|
- **Status**: Not started yet. Pending completion of data fixes.
|
|
|
|
## Current State
|
|
|
|
- **Database**:
|
|
- `slug` column added to `Performance` and verified populated for 100% of records (Shows, Venues, Songs, Tours, Performances).
|
|
- Migration `65c515b4722a_add_slugs` applied successfully.
|
|
- **Data**:
|
|
- `fix_db_data.py` completed slug generation.
|
|
- `set_name` backfill failed due to API mapping issues (missing external IDs to link setlists). Existing `set_name` fields remain mostly NULL.
|
|
- **Frontend**: Links are using slugs. API supports slug lookup.
|
|
|
|
## Next Steps
|
|
|
|
1. **Fix Set Names**: Investigate `fix_db_data.py` mapping logic. Needs a way to reliably link API `setlists` response to DB `shows`. Maybe fuzzy match date + venue?
|
|
2. **Notification System**: Implement Discord/Telegram notifications.
|
|
- Create `backend/services/notification_service.py`.
|
|
- Setup Webhooks/Bots.
|
|
3. **Frontend Verification**: Click testing to ensure slug routes load correctly.
|