fix(api): use TRUSTED_ORIGINS for socket.io gateway CORS (#628)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful

Co-authored-by: Jason Woltje <jason@diversecanvas.com>
Co-committed-by: Jason Woltje <jason@diversecanvas.com>
This commit was merged in pull request #628.
This commit is contained in:
2026-03-01 20:13:13 +00:00
committed by jason.woltje
parent c5253e9d62
commit c23c33b0c5
3 changed files with 24 additions and 2 deletions

View File

@@ -66,7 +66,9 @@ interface StartTranscriptionPayload {
@WSGateway({ @WSGateway({
namespace: "/speech", namespace: "/speech",
cors: { cors: {
origin: process.env.WEB_URL ?? "http://localhost:3000", origin: (process.env.TRUSTED_ORIGINS ?? process.env.WEB_URL ?? "http://localhost:3000")
.split(",")
.map((s) => s.trim()),
credentials: true, credentials: true,
}, },
}) })

View File

@@ -63,7 +63,9 @@ interface AuthenticatedSocket extends Socket {
@WSGateway({ @WSGateway({
namespace: "/terminal", namespace: "/terminal",
cors: { cors: {
origin: process.env.WEB_URL ?? "http://localhost:3000", origin: (process.env.TRUSTED_ORIGINS ?? process.env.WEB_URL ?? "http://localhost:3000")
.split(",")
.map((s) => s.trim()),
credentials: true, credentials: true,
}, },
}) })

View File

@@ -46,3 +46,21 @@ export async function updateTask(
const res = await apiPatch<ApiResponse<Task>>(`/api/tasks/${id}`, data, workspaceId); const res = await apiPatch<ApiResponse<Task>>(`/api/tasks/${id}`, data, workspaceId);
return res.data; return res.data;
} }
export interface CreateTaskInput {
title: string;
description?: string;
status?: TaskStatus;
priority?: TaskPriority;
dueDate?: string;
projectId?: string;
}
/**
* Create a new task
*/
export async function createTask(data: CreateTaskInput, workspaceId?: string): Promise<Task> {
const { apiPost } = await import("./client");
const res = await apiPost<ApiResponse<Task>>("/api/tasks", data, workspaceId);
return res.data;
}