Skip to content

feat: add interactive log viewer TUI with delegation tree#745

Merged
FL4TLiN3 merged 2 commits intomainfrom
feat/log-viewer-tui
Mar 11, 2026
Merged

feat: add interactive log viewer TUI with delegation tree#745
FL4TLiN3 merged 2 commits intomainfrom
feat/log-viewer-tui

Conversation

@FL4TLiN3
Copy link
Contributor

Summary

  • Add full-featured log viewer for perstack log with delegation tree builder that merges resume runs into logical nodes
  • Includes job list, run list, event list, checkpoint drill-down screens with keyboard navigation
  • Add flattenTreeAll utility and BottomPanel component
  • Comprehensive tests for tree building including failed delegate scenarios

Test plan

  • bun test packages/tui-components/src/log-viewer/build-run-tree.test.ts — 13 tests pass
  • Manual testing with real job data via perstack log

🤖 Generated with Claude Code

FL4TLiN3 and others added 2 commits March 12, 2026 06:28
Add a full-featured log viewer for `perstack log` with:
- Delegation tree builder that merges resume runs into logical nodes
- Job list, run list, event list, and checkpoint screens
- Drill-down navigation with keyboard shortcuts
- Bottom panel component for info display
- flattenTreeAll utility for unpruned tree traversal
- Comprehensive tests for tree building including failed delegates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add @perstack/log dependency to tui-components
- Add inputTokens, outputTokens, cachedInputTokens to DelegationTreeNode type
- Fix implicit any types in app.tsx
- Export log-viewer from package entry point to satisfy knip
- Fix lint: prefix unused parameter with underscore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@FL4TLiN3 FL4TLiN3 merged commit 568a2b8 into main Mar 11, 2026
11 checks passed
@FL4TLiN3 FL4TLiN3 deleted the feat/log-viewer-tui branch March 11, 2026 21:34
@FL4TLiN3 FL4TLiN3 mentioned this pull request Mar 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant