Merge pull request 'Serialize empty store lists as JSON arrays and advance the core pin' (#2) from fix/empty-list-json into main
This commit was merged in pull request #2.
This commit is contained in:
Vendored
+1
-1
Submodule deps/agent-system-core updated: 019617e302...4ee1979535
@@ -61,7 +61,7 @@ func (s *Store) ListUsers() ([]User, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []User
|
||||
out := []User{}
|
||||
for rows.Next() {
|
||||
var u User
|
||||
var ca string
|
||||
@@ -111,7 +111,7 @@ func (s *Store) ListAPIKeys(owner string) ([]APIKeyInfo, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []APIKeyInfo
|
||||
out := []APIKeyInfo{}
|
||||
for rows.Next() {
|
||||
var k APIKeyInfo
|
||||
var ca string
|
||||
|
||||
@@ -23,7 +23,7 @@ func (s *Store) ListProfiles(owner string) ([]core.AgentProfile, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.AgentProfile
|
||||
out := []core.AgentProfile{}
|
||||
for rows.Next() {
|
||||
var payload string
|
||||
if err := rows.Scan(&payload); err != nil {
|
||||
@@ -132,7 +132,7 @@ func (s *Store) ListPlugins() ([]core.PluginManifest, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.PluginManifest
|
||||
out := []core.PluginManifest{}
|
||||
for rows.Next() {
|
||||
var payload string
|
||||
if err := rows.Scan(&payload); err != nil {
|
||||
|
||||
@@ -100,7 +100,7 @@ func (s *Store) ListArtifacts(owner, projectID string) ([]core.Artifact, error)
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.Artifact
|
||||
out := []core.Artifact{}
|
||||
for rows.Next() {
|
||||
a, err := scanArtifact(rows.Scan)
|
||||
if err != nil {
|
||||
@@ -178,7 +178,7 @@ func (s *Store) ActiveHITLCards(owner, conversationID string) ([]core.HITLCard,
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.HITLCard
|
||||
out := []core.HITLCard{}
|
||||
for rows.Next() {
|
||||
var payload string
|
||||
if err := rows.Scan(&payload); err != nil {
|
||||
@@ -287,7 +287,7 @@ func (s *Store) searchKnowledgeSQLite(owner string, q core.RetrievalQuery) ([]co
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.RetrievalHit
|
||||
out := []core.RetrievalHit{}
|
||||
for rows.Next() {
|
||||
h, err := scanKnowledgeHit(rows)
|
||||
if err != nil {
|
||||
@@ -318,7 +318,7 @@ func (s *Store) searchKnowledgeLike(owner string, q core.RetrievalQuery, topK in
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.RetrievalHit
|
||||
out := []core.RetrievalHit{}
|
||||
for rows.Next() {
|
||||
var d core.KnowledgeDoc
|
||||
var own, ca string
|
||||
@@ -380,7 +380,7 @@ func ftsQuery(text string) string {
|
||||
}
|
||||
|
||||
func splitWords(s string) []string {
|
||||
var out []string
|
||||
out := []string{}
|
||||
cur := []rune{}
|
||||
for _, r := range s {
|
||||
if r == ' ' || r == '\t' || r == '\n' {
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package store
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// 回归:空列表必须序列化为 [] 而非 null(前端 .map 白屏根因)。
|
||||
func TestEmptyListsSerializeAsEmptyArrays(t *testing.T) {
|
||||
s := openTestStore(t)
|
||||
cs, err := s.ListConversations("owner_none", "prj_none")
|
||||
if err != nil {
|
||||
t.Fatalf("ListConversations: %v", err)
|
||||
}
|
||||
if cs == nil {
|
||||
t.Fatal("ListConversations returned nil slice")
|
||||
}
|
||||
if b, _ := json.Marshal(cs); string(b) != "[]" {
|
||||
t.Fatalf("expected [], got %s", b)
|
||||
}
|
||||
ps, _ := s.ListProjects("owner_none")
|
||||
if ps == nil {
|
||||
t.Fatal("ListProjects returned nil slice")
|
||||
}
|
||||
if b, _ := json.Marshal(ps); string(b) != "[]" {
|
||||
t.Fatalf("expected [], got %s", b)
|
||||
}
|
||||
}
|
||||
@@ -55,7 +55,7 @@ func (s *Store) ListMessages(conversationID string) ([]core.Message, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.Message
|
||||
out := []core.Message{}
|
||||
for rows.Next() {
|
||||
var m core.Message
|
||||
var parts, ca string
|
||||
@@ -172,7 +172,7 @@ func (s *Store) ListRunsByConversation(conversationID string) ([]core.Run, error
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.Run
|
||||
out := []core.Run{}
|
||||
for rows.Next() {
|
||||
r, err := scanRun(rows.Scan)
|
||||
if err != nil {
|
||||
@@ -190,7 +190,7 @@ func (s *Store) ChildRuns(runID string) ([]core.Run, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.Run
|
||||
out := []core.Run{}
|
||||
for rows.Next() {
|
||||
r, err := scanRun(rows.Scan)
|
||||
if err != nil {
|
||||
@@ -255,7 +255,7 @@ func (s *Store) EventsAfter(conversationID string, since int64, limit int) ([]co
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.StreamEvent
|
||||
out := []core.StreamEvent{}
|
||||
for rows.Next() {
|
||||
var e core.StreamEvent
|
||||
var typ string
|
||||
|
||||
@@ -266,7 +266,7 @@ func (s *Store) MigrationStatus() ([]int, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []int
|
||||
out := []int{}
|
||||
for rows.Next() {
|
||||
var v int
|
||||
if err := rows.Scan(&v); err != nil {
|
||||
|
||||
@@ -99,7 +99,7 @@ func (s *Store) updateProjectRow(owner, id, query string, args ...any) error {
|
||||
}
|
||||
|
||||
func scanProjects(rows *sql.Rows) ([]core.Project, error) {
|
||||
var out []core.Project
|
||||
out := []core.Project{}
|
||||
for rows.Next() {
|
||||
var p core.Project
|
||||
var settings string
|
||||
@@ -141,7 +141,7 @@ func (s *Store) ListConversations(owner, projectID string) ([]core.Conversation,
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.Conversation
|
||||
out := []core.Conversation{}
|
||||
for rows.Next() {
|
||||
var c core.Conversation
|
||||
var ca, ua string
|
||||
|
||||
@@ -25,7 +25,7 @@ func (s *Store) searchKnowledgePG(owner string, q core.RetrievalQuery) ([]core.R
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var out []core.RetrievalHit
|
||||
out := []core.RetrievalHit{}
|
||||
for rows.Next() {
|
||||
var d core.KnowledgeDoc
|
||||
var own, ca string
|
||||
|
||||
Reference in New Issue
Block a user