Skip to content

feat(sessions): add sort options and message preview (#606)#610

Merged
Kewton merged 2 commits intodevelopfrom
feature/606-worktree
Apr 2, 2026
Merged

feat(sessions): add sort options and message preview (#606)#610
Kewton merged 2 commits intodevelopfrom
feature/606-worktree

Conversation

@Kewton
Copy link
Copy Markdown
Owner

@Kewton Kewton commented Apr 2, 2026

Summary

  • Sessions画面に最終送信時刻・メッセージプレビュー表示を追加
  • ソート基準に lastSent/status を追加、デフォルトを最終送信時刻(新しい順)に変更
  • メッセージ表示をレスポンシブ対応(PC:100文字, SP:20文字)

Closes #606

Test plan

  • lint / tsc / test:unit / build 全パス(5953 tests)

🤖 Generated with Claude Code

Kewton and others added 2 commits April 2, 2026 11:15
…#606)

- Add SORT_KEYS const array and derive SortKey type (including lastSent)
- Add isValidSortKey() and compareByTimestamp() utility functions
- Add lastSent + default case to sortBranches() switch
- Extract SortSelectorBase presentational component from SortSelector
- Refactor SortSelector as thin wrapper around SortSelectorBase
- Add localStorage validation for sortKey in SidebarContext
- Implement Sessions page sort (lastSent/repositoryName/status)
- Add message preview with sanitization and PC/SP truncation
- Add MESSAGE_PREVIEW_MAX_LENGTH_PC/SP constants
- All tests pass (5953 passed), coverage target met
- ESLint: 0 errors, TypeScript: 0 errors

Resolves #606

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move sanitizePreview from sessions/page.tsx to config/message-preview-config.ts
for better testability and reusability. Add comprehensive unit tests covering
control character removal, bidi mark stripping, zero-width char handling,
and whitespace normalization (28 test cases).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Kewton Kewton merged commit 3fe4d53 into develop Apr 2, 2026
5 checks passed
@Kewton Kewton deleted the feature/606-worktree branch April 2, 2026 02:31
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