From b2239b518ad30beeed8ad7d9a142570320940597 Mon Sep 17 00:00:00 2001 From: Matt Toohey Date: Thu, 7 May 2026 17:37:17 +1000 Subject: [PATCH] fix: show suggested actions in note modal regardless of recency Remove the "active sessions" guard and the "is latest item" timestamp check from computeNoteNextSteps so that suggested action buttons appear in the note modal even when the note isn't the most recent timeline item or sessions are already running. New sessions will simply be queued, so hiding the buttons was unnecessarily restrictive. Co-Authored-By: Claude Opus 4.6 (1M context) Signed-off-by: Matt Toohey --- .../lib/features/branches/BranchCard.svelte | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/apps/staged/src/lib/features/branches/BranchCard.svelte b/apps/staged/src/lib/features/branches/BranchCard.svelte index 5aa672b2..a0e0c440 100644 --- a/apps/staged/src/lib/features/branches/BranchCard.svelte +++ b/apps/staged/src/lib/features/branches/BranchCard.svelte @@ -384,24 +384,6 @@ if (!note) return null; if (!note.suggestedNextCommitStep && !note.suggestedNextNoteStep) return null; - if (hasActiveSessions(timeline)) return null; - - // Check this note is the latest completed item using the same approach - // as suggestedPrefill: collect all timestamps and compare. - const noteTs = Math.floor((note.completedAt ?? note.createdAt) / 1000); - const timestamps: number[] = []; - for (const c of timeline.commits) { - if (c.sha) timestamps.push(c.timestamp); - } - for (const n of timeline.notes) { - if (n.id !== note.id) timestamps.push(Math.floor((n.completedAt ?? n.createdAt) / 1000)); - } - for (const r of timeline.reviews) { - if (r.isAuto) continue; - timestamps.push(Math.floor((r.completedAt ?? r.createdAt) / 1000)); - } - if (timestamps.some((ts) => ts > noteTs)) return null; - return { commitStep: note.suggestedNextCommitStep, noteStep: note.suggestedNextNoteStep,