Skip to content

0.0.4 - Persistent Chat History

Choose a tag to compare

@jwcarman jwcarman released this 28 Nov 13:59
· 14 commits to main since this release

Release 0.0.4

New Features

  • Conversation Persistence in Example App: Conversations now persist across page refreshes using localStorage
  • Infinite Scroll: Load older messages automatically when scrolling up in the chat UI
  • History API Endpoint: New GET /chat/history endpoint for paginated message retrieval
  • Scroll-to-Bottom Button: Floating button appears when scrolled up for quick navigation back to latest messages

Improvements

  • Repository Layer Refactoring: Separated ChatJournalEntryRepository (general-purpose) from ChatJournalCheckpointRepository (ChatMemory-specific)
  • New Components:
    • ChatJournalEntryMapper for bidirectional Message ↔ Entry conversion
    • ChatJournalCheckpointFactory for creating checkpoint summaries
  • Simplified Checkpointer: ChatJournalCheckpointer now exposes cleaner requiresCheckpoint() and checkpoint() methods
  • Better Exception Handling: Added ConversationLimitExceededException with detailed context
  • Naming Clarity: Renamed maxEntries to maxConversationLength
  • JDBC Improvements: Added column name constants and extracted mapRow helper methods
  • TaskExecutor: Now uses Spring Boot's default TaskExecutor

Testing

  • Added comprehensive tests for ChatJournalCheckpointFactory and ChatJournalCheckpointer
  • Added tests for history endpoint in ChatController
  • Fixed duplicate test implementation

Documentation

  • Updated README with complete configuration reference and table documentation