Add initial project structure, including README, CONTRIBUTING, and documentation files
- Created .gitignore to exclude unnecessary files - Added README.md with project description and core features - Introduced CONTRIBUTING.md for development guidelines - Established documentation files for architecture, quality requirements, and technical risks
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# Runtime View
|
||||
|
||||
## Scenario: User Signs Up for Open Mic
|
||||
|
||||
1. User runs `/sign-up` in voice channel
|
||||
2. Command Layer validates user has `@ComedyFan` role
|
||||
3. Event Manager adds user to FIFO queue
|
||||
4. When previous speaker leaves stage (voice state change), Event Manager pops queue
|
||||
5. Bot grants temporary speaker permission via voice channel API
|
||||
6. Announcement sent to `#stage-door` channel
|
||||
7. Mileage Engine awards +50 miles for participation
|
||||
|
||||
## Scenario: Content Auto-Post
|
||||
|
||||
1. CRON job triggers Content Syndicator every 15 min
|
||||
2. Syndicator polls YouTube Data API for new uploads on channel
|
||||
3. New video detected → fetches metadata + thumbnail
|
||||
4. Syndicator builds rich embed (title, description, thumbnail, link)
|
||||
5. Embed posted to `#screenings` channel via Discord webhook
|
||||
6. Mileage Engine awards +10 miles to channel subscribers
|
||||
|
||||
## Scenario: Admin Updates Bot Restart
|
||||
|
||||
1. Bot receives SIGTERM from hosting platform
|
||||
2. Graceful shutdown initiated: close Gateway connection, flush pending DB writes
|
||||
3. Bot process restarts
|
||||
4. On startup: reconnect to Discord Gateway, rehydrate in-memory state from DB
|
||||
5. Mileage state is consistent — no data loss
|
||||
Reference in New Issue
Block a user