Compare commits

..

2 Commits

Author SHA1 Message Date
Gjermund Høsøien Wiggen
2501bcbad1 chore: add .codegraph to .gitignore, untrack daemon files
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:51:43 +02:00
Gjermund Høsøien Wiggen
aa808f1d3f feat: return scrip results on ticket create, update frontend types
- POST /tickets now returns { ticket, scrip_results } matching PATCH pattern
- createTicket API function returns UpdateResult instead of Ticket
- Update call site to use data.ticket.id

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:51:14 +02:00
4 changed files with 8 additions and 5 deletions

3
.gitignore vendored
View File

@@ -33,3 +33,6 @@ bun.lock
# Finder (MacOS) folder config
.DS_Store
# Codegraph index (MCP tool)
.codegraph

View File

@@ -231,9 +231,9 @@ export function createTicketsRouter(db: Db): Hono {
const createdTransactions = await db.insert(transactions).values(txList as any).returning();
const prepared = await scripEngine.prepare(ticket.id, createdTransactions as any);
await scripEngine.commit(prepared);
const results = await scripEngine.commit(prepared);
return c.json(ticket, 201);
return c.json({ ticket, scrip_results: results }, 201);
});
// GET /:id — get ticket with custom field values

View File

@@ -428,7 +428,7 @@ function TicketWorkbenchContent() {
setNewSubject("");
setNewDescription("");
setNewCustomFieldValues({});
if (data) router.push(`/tickets/${data.id}`);
if (data) router.push(`/tickets/${data.ticket.id}`);
};
if (loading) return <SkeletonWorkbench />;

View File

@@ -63,8 +63,8 @@ export async function createTicket(data: {
queue_id: string;
description?: string;
custom_fields?: Record<string, string>;
}): Promise<{ data: Ticket | null; error: string | null }> {
return request<Ticket>("/tickets", { method: "POST", body: JSON.stringify(data) });
}): Promise<{ data: UpdateResult | null; error: string | null }> {
return request<UpdateResult>("/tickets", { method: "POST", body: JSON.stringify(data) });
}
export async function updateTicket(id: number, data: { subject?: string; status?: string; owner_id?: string | null }): Promise<{ data: UpdateResult | null; error: string | null }> {