Handle failed sessions and improve pending timeline item management#18
Merged
Handle failed sessions and improve pending timeline item management#18
Conversation
When a session completes without producing the expected artifact (commit
or note), the timeline now shows a failed state with an AlertCircle icon
and descriptive text ('Session finished — no commit created') instead of
leaving the spinner running indefinitely.
Changes:
- Add 'failed-commit' and 'failed-note' timeline item types with danger-
colored icon and muted italic title styling
- Show delete button on all pending/failed items (removes the !isPending
guard) so users can immediately dismiss stuck or failed artifacts
- Delete for pending/failed commits cancels the session and removes the
DB record without touching git (new delete_pending_commit backend cmd)
- Delete for generating/failed notes cancels the session before deleting
- Add id field to CommitTimelineItem so pending commits can be referenced
by their DB id for deletion
Switch from AlertCircle to AlertTriangle for failed session items and replace danger-colored styling with muted theme defaults: - Icon: AlertCircle → AlertTriangle - Icon color: var(--ui-danger) → var(--text-muted) - Icon border: var(--ui-danger) → var(--border-muted) - Secondary meta text: var(--ui-danger) → var(--text-muted)
loganj
added a commit
that referenced
this pull request
Feb 26, 2026
Add source-level selection and bulk actions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Handle sessions that finish without producing a commit (failed/abandoned sessions) and allow users to clean up pending timeline items.
Changes
Backend (Rust)
delete_pending_commitcommand to remove pending/failed commits by DB id (safety-checks that the commit has no SHA)idfield onCommitTimelineItemso the frontend can reference pending commits by their DB idFrontend (Svelte)
failed-commitandfailed-notetimeline item types for sessions that finished without producing artifactsAlertTriangleicon)CI
just installandjust check-allin CI workflow (removes Rust-only workaround)Minor
NewSessionModaltextarea focus logic