Merge pull request #506 from buster-so/cursor/filter-out-records-without-titles-beb4

Filter out records without titles
This commit is contained in:
dal 2025-07-14 12:11:01 -07:00 committed by GitHub
commit d177df6468
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 2 deletions

View File

@ -54,7 +54,7 @@ pub struct ListChatsResponse {
struct ChatWithUser {
// Chat fields
pub id: Uuid,
pub name: String,
pub title: String,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
pub created_by: Uuid,
@ -105,6 +105,7 @@ pub async fn list_chats_handler(
let mut query = chats::table
.inner_join(users::table.on(chats::created_by.eq(users::id)))
.filter(chats::deleted_at.is_null())
.filter(chats::title.ne("")) // Filter out empty titles
.into_boxed();
// Add user filter if not admin view
@ -142,11 +143,12 @@ pub async fn list_chats_handler(
let has_more = results.len() > request.page_size as usize;
let items: Vec<ChatListItem> = results
.into_iter()
.filter(|chat| !chat.title.trim().is_empty()) // Filter out titles with only whitespace
.take(request.page_size as usize)
.map(|chat| {
ChatListItem {
id: chat.id.to_string(),
name: chat.name,
name: chat.title,
is_favorited: false, // TODO: Implement favorites feature
created_at: chat.created_at.to_rfc3339(),
updated_at: chat.updated_at.to_rfc3339(),

View File

@ -78,6 +78,8 @@ pub async fn list_logs_handler(
.inner_join(users::table.on(chats::created_by.eq(users::id)))
.filter(chats::deleted_at.is_null())
.filter(chats::organization_id.eq(organization_id))
.filter(chats::title.ne("")) // Filter out empty titles
.filter(chats::title.ne(" ")) // Filter out single space
.into_boxed();
// Calculate offset based on page number
@ -111,6 +113,7 @@ pub async fn list_logs_handler(
let has_more = results.len() > request.page_size as usize;
let items: Vec<LogListItem> = results
.into_iter()
.filter(|chat| !chat.title.trim().is_empty()) // Filter out titles with only whitespace
.take(request.page_size as usize)
.map(|chat| {
LogListItem {