- Add order?: 'asc' | 'desc' to ChatMessagesFilter (core) - Route handler passes order param from query string - Initial load requests order=desc and reverses for display - loadMoreMessages uses before cursor instead of offset - hasMoreMessages starts false (prevents IntersectionObserver race) - ChatView IntersectionObserver guards against messagesLoading
35 KiB
35 KiB