v4.3.0 follow-ups: small findings from the build, bundled #534

Open
opened 2026-09-06 09:54:18 +00:00 by claude-bot · 0 comments
Contributor

Five small findings surfaced while building v4.3.0 (#514), none of which belonged in the issue that found it. Bundled here rather than filed as five issues; split any that grows.

  • Beat Planner is now redundant (#374 / #305). The Session Prep panel carries the same notes editor; the standalone Beat Planner survives as the roomier version. Decide whether to keep it as a leaf under Session Prep or remove it. Deleting a GM's known workspace was out of scope for #374.
  • audio_processing_started_at column (#381). The processing timer anchors on sessions.updated_at because the pipeline records no start time; an unrelated edit resets it, so it can under-report. A dedicated column set when process_audio takes the job would make the timer exact. One migration.
  • One entry-type taxonomy (#396). TYPE_LABELS for wiki entry types exists in four copies (WikiArticle, CampaignStoryline, WikiProposals, and as LORE_TYPE_LABELS in CampaignDetail). Extract to vocabulary.js or a sibling module so the search results and the next rename touch one file.
  • Campaign invite link versus the instance registration gate (#387). An instance with INVITE_CODE set still refuses a brand-new player who follows a campaign /join/<code> link, because the campaign code and the instance code are different secrets and the login return path carries only the former. The GM guide names this; a fix would let a valid campaign invite satisfy the registration gate for that sign-up.
  • The recording panel's SSE stream on every GM session-page view (#386). The panel opens the live stream (one Redis pub/sub connection for its lifetime) whenever a GM views any session page. Gating it by status reintroduced the visibility holes #386 removed, so it is ungated. Negligible at self-hosted scale; revisit (lazy open on scroll-into-view, or a shared per-tab stream) if a deployment grows.
Five small findings surfaced while building v4.3.0 (#514), none of which belonged in the issue that found it. Bundled here rather than filed as five issues; split any that grows. - [ ] **Beat Planner is now redundant** (#374 / #305). The Session Prep panel carries the same notes editor; the standalone Beat Planner survives as the roomier version. Decide whether to keep it as a leaf under Session Prep or remove it. Deleting a GM's known workspace was out of scope for #374. - [ ] **`audio_processing_started_at` column** (#381). The processing timer anchors on `sessions.updated_at` because the pipeline records no start time; an unrelated edit resets it, so it can under-report. A dedicated column set when `process_audio` takes the job would make the timer exact. One migration. - [ ] **One entry-type taxonomy** (#396). `TYPE_LABELS` for wiki entry types exists in four copies (`WikiArticle`, `CampaignStoryline`, `WikiProposals`, and as `LORE_TYPE_LABELS` in `CampaignDetail`). Extract to `vocabulary.js` or a sibling module so the search results and the next rename touch one file. - [ ] **Campaign invite link versus the instance registration gate** (#387). An instance with `INVITE_CODE` set still refuses a brand-new player who follows a campaign `/join/<code>` link, because the campaign code and the instance code are different secrets and the login return path carries only the former. The GM guide names this; a fix would let a valid campaign invite satisfy the registration gate for that sign-up. - [ ] **The recording panel's SSE stream on every GM session-page view** (#386). The panel opens the live stream (one Redis pub/sub connection for its lifetime) whenever a GM views any session page. Gating it by status reintroduced the visibility holes #386 removed, so it is ungated. Negligible at self-hosted scale; revisit (lazy open on scroll-into-view, or a shared per-tab stream) if a deployment grows.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
rbrooks/Quest-Board#534
No description provided.