From 118f6d0d513e884731cd3188ff4ea0ff99ff19aa Mon Sep 17 00:00:00 2001 From: Lukas May Date: Tue, 10 Feb 2026 10:18:47 +0100 Subject: [PATCH] fix(task): Filter out decompose container tasks from phase and initiative task lists Decompose tasks are parent containers whose children inherit the same phaseId, causing both the container and its children to appear in task listings. --- src/trpc/routers/task.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/trpc/routers/task.ts b/src/trpc/routers/task.ts index 6c3c4a1..a52eeb8 100644 --- a/src/trpc/routers/task.ts +++ b/src/trpc/routers/task.ts @@ -131,14 +131,16 @@ export function taskProcedures(publicProcedure: ProcedureBuilder) { .input(z.object({ initiativeId: z.string().min(1) })) .query(async ({ ctx, input }) => { const taskRepository = requireTaskRepository(ctx); - return taskRepository.findByInitiativeId(input.initiativeId); + const tasks = await taskRepository.findByInitiativeId(input.initiativeId); + return tasks.filter((t) => t.category !== 'decompose'); }), listPhaseTasks: publicProcedure .input(z.object({ phaseId: z.string().min(1) })) .query(async ({ ctx, input }) => { const taskRepository = requireTaskRepository(ctx); - return taskRepository.findByPhaseId(input.phaseId); + const tasks = await taskRepository.findByPhaseId(input.phaseId); + return tasks.filter((t) => t.category !== 'decompose'); }), approveTask: publicProcedure