From 1c6edbb498ee562573bd882bee40d92049f5b0c6 Mon Sep 17 00:00:00 2001 From: pedrofrxncx Date: Wed, 2 Sep 2026 10:26:40 -0300 Subject: [PATCH] fix(task-board): resolve the PR-open reaction's archive lane from the board --- .../src/tools/task-board/pr-open-board-reaction.ts | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/api/src/tools/task-board/pr-open-board-reaction.ts b/apps/api/src/tools/task-board/pr-open-board-reaction.ts index b8846a96d1..cf60df9b57 100644 --- a/apps/api/src/tools/task-board/pr-open-board-reaction.ts +++ b/apps/api/src/tools/task-board/pr-open-board-reaction.ts @@ -270,9 +270,18 @@ export async function reactToPrOpenedForBoard( const pr = extractPrFromValue(source); if (!pr) return; + // Resolved up front: an org-owned board's archive column isn't literally "archived". + const board = await boardFor(ctx, orgId); + const lanes = await board.lanes(); + const cards = await ctx.storage.taskBoard.list(orgId); const openCards = cards - .filter((t) => t.status !== "done" && t.status !== "archived") + .filter( + (t) => + t.status !== "done" && + t.status !== "archived" && + t.status !== lanes.archive, + ) .slice(0, MAX_OPEN_CARDS_FOR_DECISION); const thread = await ctx.storage.threads.get(threadId); @@ -285,9 +294,8 @@ export async function reactToPrOpenedForBoard( ); if (!decision) return; - const board = await boardFor(ctx, orgId); await applyBoardDecision(ctx.storage.taskBoard, { - lanes: await board.lanes(), + lanes, columns: await board.columns(), columnOwner: board.columnOwner(), orgId,