diff --git a/dashboard/src/decisions.md b/dashboard/src/decisions.md index 77ad493..643ff6e 100644 --- a/dashboard/src/decisions.md +++ b/dashboard/src/decisions.md @@ -30,8 +30,16 @@ const decState = (async function*() { const rank = {escalated: 0, open: 1, resolved: 2, superseded: 3}; const dr = (rank[a.status] ?? 9) - (rank[b.status] ?? 9); if (dr !== 0) return dr; + // Resolved / superseded: most recently decided first + if (a.decided_at || b.decided_at) { + if (a.decided_at && b.decided_at) return b.decided_at.localeCompare(a.decided_at); + return a.decided_at ? -1 : 1; + } + // Open / escalated: soonest deadline first, then most recently created if (a.deadline && b.deadline) return a.deadline.localeCompare(b.deadline); - return a.deadline ? -1 : b.deadline ? 1 : 0; + if (a.deadline) return -1; + if (b.deadline) return 1; + return b.created_at.localeCompare(a.created_at); }); } } catch {}