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.
This commit is contained in:
Lukas May
2026-02-10 10:18:47 +01:00
parent a98c2d0f6b
commit 118f6d0d51

View File

@@ -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