-
released this
2026-06-23 00:25:17 +00:00 | 1020 commits to main since this releaseMajor release. Introduces the campaign wiki / lore knowledge base — the largest feature system in Quest Board to date.
Lore extraction pipeline
- Async LLM lore-generation pipeline with inline proposal editing
- Lore types expanded from 6 to 13 categories
- Multi-pass chunked extraction (Option D): parallel per-chunk extract, LLM dedup, per-category matching, consolidation, with checkpointing
Wiki redesign
- Dedicated
/campaigns/:id/wikiwith Wikipedia-style category navigation - NPC tracker merged into lore as
entry_type=npc; standalonenpcstables dropped - GM notes fully invisible to players; per-entry AI summary; session-appearance join table
- Entry relationships (directed, labelled, optional inverse) with GM CRUD and bot auto-proposals
- Wikipedia-style article view with per-entry routing, three-column layout,
[[Entry Title]]inline links, infobox (image, type, pronouns, relationships, appearances)
Narrative
- Full campaign storyline built by concatenating session summaries into chapters (no LLM — reliable at any session count)
- Campaign journal auto-entry after transcript approval, with startup backfill and per-campaign toggle
- Re-post approved summary to Discord as a clean embed
- Lore entry image upload / URL import
Retroactive release tagged at
d32ec9f(2026-04-24). Second major: the read-oriented knowledge base.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v1.1.0 — Campaign management expansion
StableSome checks failedRelease / Create GitHub Release (push) Failing after 5sreleased this
2026-06-23 00:25:07 +00:00 | 1077 commits to main since this releaseBroad expansion of campaign and session management, plus the first lore/NPC foundations and frontend test coverage.
Campaign & session management
- Campaign archive mode with GM archive / admin restore and archived-state labeling
- GMs can add members directly without an invite code
- New
in_progresssession status with recording-console attendance roster - Session detail completion controls
- Recurring milestones and an NPC tracker
- GMs can set character names and pronouns for other campaign members
Recording & reminders
- GM can edit summary and transcript before approving
- Per-speaker timestamp alignment in attributed transcripts
- Replace countdown-based reminders with a polling beat task
- Bot-proposed lore additions/updates (early)
Quality
- Frontend page regression coverage (Dashboard, CampaignDetail, SessionDetail, Lore, Admin, Profile, Login, AuthGuard) with GM-vs-player permission tests
Retroactive release tagged at
35195ac(2026-04-22), just before the async lore pipeline.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v1.0.0 — Production-ready
StableSome checks failedRelease / Create GitHub Release (push) Failing after 4sreleased this
2026-06-23 00:25:02 +00:00 | 1105 commits to main since this releaseFirst production-grade release. Security hardening, observability, and a production-by-default deployment.
Security
- Production hardening pass: rate limits, structured logging, OIDC validation, encrypted secrets at rest
- Security remediation follow-up
- Allow trusted homelab AI service URLs
Operations & observability
- Audit trail with admin audit-log endpoint
- Prometheus metrics
- Production compose is now the default stack
Fixes
- Reminder scheduling and delivery de-duplication
- llama.cpp requests require a model name; removed
max_tokenscap - Session detail page bugs and in-progress GM controls
Retroactive release tagged at
ecf4435(2026-04-07). Marks the production-readiness line: prod deployment default + security/audit/metrics in place.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v0.12.0 — Recording pipeline reliability
StableSome checks failedRelease / Create GitHub Release (push) Failing after 5sreleased this
2026-06-23 00:24:57 +00:00 | 1113 commits to main since this releaseHardening of the voice-recording pipeline plus a new local LLM backend.
Recording / audio
- Enable members intent so voice-recv can resolve audio speakers
- Per-packet Opus decode in the sink to survive corrupted/DTX/silence frames; decoder reset on error to prevent cascade failures
- Pre-strip WebRTC extension headers (0xBEDE and non-0xBEDE prefixes) before Opus decode
- Preserve audio buffers after
stop_listening()so processing can read them - Adopt discord-ext-voice-recv PR #56 (DAVE fix), pinned to an exact commit
- WhisperX custom server endpoints for transcription
LLM
- llama.cpp support for summarisation and Q&A; raise on empty LLM summary and log
finish_reason
Infra
- NullPool engine in Celery tasks to avoid asyncpg event-loop conflicts
- Install git in the bot image for
pipgit+ dependencies
Retroactive release tagged at
c519ee5(2026-03-25).Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-03-22 04:19:37 +00:00 | 1135 commits to main since this releaseNew features:
- Start/stop recording from the webapp (bot joins most-populated voice channel)
- Recording & Transcript panel moved to top of session detail page
- Campaign data export — GM-only zip archive (sessions, wiki, milestones, members)
- Lore entry full-text search (client-side instant filter + backend ?search= param)
- /ask bot command now draws context from campaign wiki entries in addition to session summaries
- Attendance summary included in session-completed Discord notifications
Bug fixes:
- Discord account linking (/link) now redirects unauthenticated users to login
instead of returning a raw JSON 401, then returns them to complete the link - /auth/login accepts ?next= param (validated to /auth/* prefix) so post-login
redirects work correctly for bot-originated flows
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-03-20 22:15:26 +00:00 | 1176 commits to main since this releaseThe bot no longer uploads finished transcripts directly — it posts the
audio file path and the backend Celery task handles the full pipeline.
TranscriptRequest schema and bot_post_transcript handler deleted.Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
v0.9.1 Stable
released this
2026-03-16 00:15:17 +00:00 | 1295 commits to main since this releaseThe whisper service now requires --profile whisper to start, removing
the hard dependency that prevented the bot from launching without it.
Adds git clone step and Read Message History to README setup docs.Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
v0.9.0 Stable
released this
2026-03-15 23:31:39 +00:00 | 1298 commits to main since this releaseAll four session slash commands implemented bot-side. /next and /recap fetch
session data from new Quest Board endpoints. /note creates private SessionNotes
for linked users. /ask uses stored session summaries as LLM context to answer
natural-language questions about campaign history (bot/services/qa.py reuses
the existing Ollama/Anthropic/OpenAI backends with no new config).Commands return clear errors until the corresponding Quest Board backend
endpoints are deployed; the bot will not crash on 404s.Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
v0.8.0 Stable
released this
2026-03-15 22:56:19 +00:00 | 1299 commits to main since this releasesession_confirmed embeds now seed ✅ / ❌ reactions. Player reactions call
the existing put_attendance endpoint, writing directly to Quest Board's
attendance table. The message mapping gains a "type" field so the voting
cog can distinguish attendance messages from voting messages; old Redis
entries without the field default to "voting" for backwards-compatibility.Also adds Quest Board endpoint requirements for v0.9.0 and v0.10.0 to
docs/questboard-improvements.md.Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
v0.3.1 Stable
released this
2026-03-15 22:12:42 +00:00 | 1220 commits to main since this releasefeat: post-session recap emails, character sheet storage, enhancements doc (v0.3.1)
Post-session recap emails:
- send_recap_email Celery task fires after bot uploads a transcript; sends
AI summary to opted-in attendees via existing SMTP infrastructure - recap_email_opt_in boolean on User (Profile page toggle)
- recap_email_enabled boolean on Campaign (campaign settings checkbox)
- Both default false — no behaviour change for existing deployments
Character sheet storage:
- character_sheet_url + character_sheet_notes columns on campaign_members
- Inline editor in CampaignDetail expanded to include URL and notes fields
- "Sheet ↗" external link displayed next to character name when URL is set
Alembic migration a1b2c3d4e5f6 adds all four new columns.
docs/ENHANCEMENTS.md: backlog of deferred features with descriptions,
implementation notes, and priority scores (1–5)Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- send_recap_email Celery task fires after bot uploads a transcript; sends