feat: two-step issue resolution (resolve then delete)

- New PATCH /issues/{id} endpoint to toggle resolved flag
- Add resolved:false to new issues
- Frontend: click "✓ Resolve" marks issue green with strikethrough
- Resolved issues show "↺ Reopen" and "🗑 Delete" buttons
- Delete requires confirmation
- Sort: unresolved first, then resolved
- Issues persist until explicitly deleted

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Erik 2026-04-10 09:48:20 +02:00
parent f2b43fce0b
commit 604d4376b4
3 changed files with 120 additions and 16 deletions

View file

@ -2664,12 +2664,35 @@ table.ts-allegiance td:first-child {
.issue-row {
padding: 6px 8px;
border-bottom: 1px solid #333;
border-left: 3px solid transparent;
color: #ddd;
}
.issue-row:hover {
background: #1a1a2a;
}
.issue-row .issue-description {
color: #aaa;
font-size: 0.75rem;
margin-top: 2px;
padding-left: 4px;
}
.issue-row.issue-resolved {
background: rgba(74, 170, 74, 0.12);
border-left-color: #4a4;
}
.issue-row.issue-resolved strong {
text-decoration: line-through;
color: #888;
}
.issue-row.issue-resolved .issue-description {
color: #666;
}
.issue-category {
display: inline-block;
padding: 1px 6px;
@ -2680,15 +2703,20 @@ table.ts-allegiance td:first-child {
text-transform: uppercase;
}
.issue-resolve-btn {
.issue-resolve-btn,
.issue-reopen-btn,
.issue-delete-btn {
padding: 1px 6px;
font-size: 0.65rem;
background: transparent;
color: #4a4;
border: 1px solid #4a4;
cursor: pointer;
border-radius: 3px;
margin-left: 8px;
margin-left: 4px;
}
.issue-resolve-btn {
color: #4a4;
border: 1px solid #4a4;
}
.issue-resolve-btn:hover {
@ -2696,6 +2724,26 @@ table.ts-allegiance td:first-child {
color: #fff;
}
.issue-reopen-btn {
color: #88a;
border: 1px solid #88a;
}
.issue-reopen-btn:hover {
background: #88a;
color: #fff;
}
.issue-delete-btn {
color: #c44;
border: 1px solid #c44;
}
.issue-delete-btn:hover {
background: #c44;
color: #fff;
}
.issues-form {
padding: 6px 8px;
border-top: 1px solid #444;