1
0
Fork 0

feat(helpdesk): add ticket event log wiring

Add ticket:create/reply/status-change/assign event types, extend the emit targetCollection union, and register tickets in GameEventLogs target collections.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
Jason Fraley 2026-08-16 18:12:19 -04:00
parent 9dd3226c0a
commit 6419c9676f
3 changed files with 8 additions and 1 deletions

View file

@ -23,6 +23,7 @@ const TARGET_COLLECTIONS = [
{ label: "Loadouts", value: "loadouts" }, { label: "Loadouts", value: "loadouts" },
{ label: "Market Listings", value: "market-listings" }, { label: "Market Listings", value: "market-listings" },
{ label: "Market Negotiations", value: "market-negotiations" }, { label: "Market Negotiations", value: "market-negotiations" },
{ label: "Tickets", value: "tickets" },
] as const; ] as const;
export const GameEventLogs: CollectionConfig = { export const GameEventLogs: CollectionConfig = {

View file

@ -5,7 +5,7 @@ interface GameEventInput {
message: string; message: string;
actor?: number; actor?: number;
structure?: number; structure?: number;
targetCollection?: "users" | "missions" | "maps" | "campaigns" | "factions" | "technologies" | "assets" | "resources" | "structures" | "vehicles" | "game-structures" | "game-vehicles" | "game-npcs" | "shipments" | "bank-accounts" | "bank-transactions" | "ledger-entries" | "locker-storages" | "loadouts" | "market-listings" | "market-negotiations"; targetCollection?: "users" | "missions" | "maps" | "campaigns" | "factions" | "technologies" | "assets" | "resources" | "structures" | "vehicles" | "game-structures" | "game-vehicles" | "game-npcs" | "shipments" | "bank-accounts" | "bank-transactions" | "ledger-entries" | "locker-storages" | "loadouts" | "market-listings" | "market-negotiations" | "tickets";
targetId?: number; targetId?: number;
data?: Record<string, unknown>; data?: Record<string, unknown>;
} }

View file

@ -84,6 +84,12 @@ export const EventTypes = {
// Attendance // Attendance
MissionAttendanceChange: "mission:attendance-change", MissionAttendanceChange: "mission:attendance-change",
// Helpdesk
TicketCreate: "ticket:create",
TicketReply: "ticket:reply",
TicketStatusChange: "ticket:status-change",
TicketAssign: "ticket:assign",
} as const; } as const;
export type EventType = (typeof EventTypes)[keyof typeof EventTypes]; export type EventType = (typeof EventTypes)[keyof typeof EventTypes];