diff --git a/src/app/api/tasks/route.ts b/src/app/api/tasks/route.ts index 2a18acb..b540a51 100644 --- a/src/app/api/tasks/route.ts +++ b/src/app/api/tasks/route.ts @@ -184,12 +184,9 @@ export async function POST(request: NextRequest) { metadata = {} } = body; const normalizedStatus = normalizeTaskCreateStatus(status, assigned_to) - - // Check for duplicate title - const existingTask = db.prepare('SELECT id FROM tasks WHERE title = ? AND workspace_id = ?').get(title, workspaceId); - if (existingTask) { - return NextResponse.json({ error: 'Task with this title already exists' }, { status: 409 }); - } + + // Resolve project_id for the task + const resolvedProjectId = resolveProjectId(db, workspaceId, project_id) const now = Math.floor(Date.now() / 1000); const mentionResolution = resolveMentionRecipients(description || '', db, workspaceId); @@ -203,7 +200,6 @@ export async function POST(request: NextRequest) { const resolvedCompletedAt = completed_at ?? (normalizedStatus === 'done' ? now : null) const createTaskTx = db.transaction(() => { - const resolvedProjectId = resolveProjectId(db, workspaceId, project_id) db.prepare(` UPDATE projects SET ticket_counter = ticket_counter + 1, updated_at = unixepoch() diff --git a/src/components/panels/task-board-panel.tsx b/src/components/panels/task-board-panel.tsx index d7a276f..ed601ae 100644 --- a/src/components/panels/task-board-panel.tsx +++ b/src/components/panels/task-board-panel.tsx @@ -794,7 +794,7 @@ export function TaskBoardPanel() { {/* Column Body */} -