Tickets & support¶
/admin/tickets is the GM ticket queue surfaced from
characters.gm_tickets plus the LLM ticket-assist drafting flow.
Queue¶
- Filter by status (open / replied / closed), assignee, age, last player message age.
- Per-row badges for ticket category, character class, severity.
- Bulk close with a canned reason.
Per-ticket view¶
- Conversation thread (player messages + GM replies).
- Character context: gear, talents, recent location, recent loot, active auras — operator can decide on a stuck-character ticket without having to log in as the player.
- Action buttons: teleport character, restore quest progress, refund loot, restore mail, force unstuck.
LLM ticket-assist¶
When world.llm_assignment[use_case='ticket_assist'] is configured
(autonomous=false by default), the GM gets a "Suggest reply"
button. The ticket-agent (splintertree-common::ticket_agent)
drafts a polite, GM-persona reply using the system prompt the
operator set in world.llm_assignment.system_prompt. The GM
reviews and either edits, sends, or discards.
Setting autonomous=true lets the agent send the draft directly
without GM review — useful for low-severity templated answers but
operators usually keep the human-in-the-loop default.
Calendar of GM shifts¶
/admin/calendar surfaces the on-call GM schedule from
auth.gm_oncall. Useful for routing routing tickets to whoever's
covering the shift the player opened the ticket in.
Bug reports¶
Player-submitted bug reports (characters.bug_reports) feed into
the same queue with a separate filter.