From 0db7d2fb64374220a3a0bf5542399ed8a4ecdd82 Mon Sep 17 00:00:00 2001 From: Kagura Date: Tue, 21 Apr 2026 12:20:10 +0800 Subject: [PATCH] fix(issues): include description in list queries for board card display (#1375) (#1377) The ListIssues and ListOpenIssues SQL queries omitted the description column, so the API response never included description data. Board cards checked issue.description (always null) and never rendered it, even when the Description card property was enabled. Add description to both SQL queries, the generated Go structs/scan calls, and the response mapping functions. --- server/internal/handler/issue.go | 2 ++ server/pkg/db/generated/issue.sql.go | 8 ++++++-- server/pkg/db/queries/issue.sql | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/server/internal/handler/issue.go b/server/internal/handler/issue.go index 1d4e9d2f9c..cd67eb5184 100644 --- a/server/internal/handler/issue.go +++ b/server/internal/handler/issue.go @@ -77,6 +77,7 @@ func issueListRowToResponse(i db.ListIssuesRow, issuePrefix string) IssueRespons Number: i.Number, Identifier: identifier, Title: i.Title, + Description: textToPtr(i.Description), Status: i.Status, Priority: i.Priority, AssigneeType: textToPtr(i.AssigneeType), @@ -100,6 +101,7 @@ func openIssueRowToResponse(i db.ListOpenIssuesRow, issuePrefix string) IssueRes Number: i.Number, Identifier: identifier, Title: i.Title, + Description: textToPtr(i.Description), Status: i.Status, Priority: i.Priority, AssigneeType: textToPtr(i.AssigneeType), diff --git a/server/pkg/db/generated/issue.sql.go b/server/pkg/db/generated/issue.sql.go index 7c51c94732..891ca158a1 100644 --- a/server/pkg/db/generated/issue.sql.go +++ b/server/pkg/db/generated/issue.sql.go @@ -447,7 +447,7 @@ func (q *Queries) ListChildIssues(ctx context.Context, parentIssueID pgtype.UUID } const listIssues = `-- name: ListIssues :many -SELECT id, workspace_id, title, status, priority, +SELECT id, workspace_id, title, description, status, priority, assignee_type, assignee_id, creator_type, creator_id, parent_issue_id, position, due_date, created_at, updated_at, number, project_id FROM issue @@ -478,6 +478,7 @@ type ListIssuesRow struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` Title string `json:"title"` + Description pgtype.Text `json:"description"` Status string `json:"status"` Priority string `json:"priority"` AssigneeType pgtype.Text `json:"assignee_type"` @@ -516,6 +517,7 @@ func (q *Queries) ListIssues(ctx context.Context, arg ListIssuesParams) ([]ListI &i.ID, &i.WorkspaceID, &i.Title, + &i.Description, &i.Status, &i.Priority, &i.AssigneeType, @@ -541,7 +543,7 @@ func (q *Queries) ListIssues(ctx context.Context, arg ListIssuesParams) ([]ListI } const listOpenIssues = `-- name: ListOpenIssues :many -SELECT id, workspace_id, title, status, priority, +SELECT id, workspace_id, title, description, status, priority, assignee_type, assignee_id, creator_type, creator_id, parent_issue_id, position, due_date, created_at, updated_at, number, project_id FROM issue @@ -568,6 +570,7 @@ type ListOpenIssuesRow struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` Title string `json:"title"` + Description pgtype.Text `json:"description"` Status string `json:"status"` Priority string `json:"priority"` AssigneeType pgtype.Text `json:"assignee_type"` @@ -603,6 +606,7 @@ func (q *Queries) ListOpenIssues(ctx context.Context, arg ListOpenIssuesParams) &i.ID, &i.WorkspaceID, &i.Title, + &i.Description, &i.Status, &i.Priority, &i.AssigneeType, diff --git a/server/pkg/db/queries/issue.sql b/server/pkg/db/queries/issue.sql index 1df1a65bab..8125e8b770 100644 --- a/server/pkg/db/queries/issue.sql +++ b/server/pkg/db/queries/issue.sql @@ -1,5 +1,5 @@ -- name: ListIssues :many -SELECT id, workspace_id, title, status, priority, +SELECT id, workspace_id, title, description, status, priority, assignee_type, assignee_id, creator_type, creator_id, parent_issue_id, position, due_date, created_at, updated_at, number, project_id FROM issue @@ -72,7 +72,7 @@ INSERT INTO issue ( DELETE FROM issue WHERE id = $1; -- name: ListOpenIssues :many -SELECT id, workspace_id, title, status, priority, +SELECT id, workspace_id, title, description, status, priority, assignee_type, assignee_id, creator_type, creator_id, parent_issue_id, position, due_date, created_at, updated_at, number, project_id FROM issue