Skip to content

Commit 16ebd2e

Browse files
committed
Fix skill deletion not persisting to database
The DELETE /api/skills/:id endpoint was removing the skill from the in-memory object but saveSkills() only upserts — it never issues a SQL DELETE. Use deleteCollectionItem() like agents, sessions, tasks, and schedules already do. Fixes #29
1 parent ffcb66e commit 16ebd2e

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

src/app/api/skills/[id]/route.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { NextResponse } from 'next/server'
2-
import { loadSkills, saveSkills } from '@/lib/server/storage'
2+
import { loadSkills, saveSkills, deleteSkill } from '@/lib/server/storage'
33
import { normalizeSkillPayload } from '@/lib/server/skills-normalize'
44

55
export async function GET(_req: Request, { params }: { params: Promise<{ id: string }> }) {
@@ -35,7 +35,6 @@ export async function DELETE(_req: Request, { params }: { params: Promise<{ id:
3535
const { id } = await params
3636
const skills = loadSkills()
3737
if (!skills[id]) return new NextResponse(null, { status: 404 })
38-
delete skills[id]
39-
saveSkills(skills)
40-
return NextResponse.json({ ok: true })
38+
deleteSkill(id)
39+
return NextResponse.json({ deleted: id })
4140
}

src/lib/server/storage.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -464,6 +464,7 @@ export function deleteTask(id: string) { deleteCollectionItem('tasks', id) }
464464
export function deleteSession(id: string) { deleteCollectionItem('sessions', id) }
465465
export function deleteAgent(id: string) { deleteCollectionItem('agents', id) }
466466
export function deleteSchedule(id: string) { deleteCollectionItem('schedules', id) }
467+
export function deleteSkill(id: string) { deleteCollectionItem('skills', id) }
467468

468469
// --- Queue ---
469470
export function loadQueue(): string[] {

0 commit comments

Comments
 (0)