Linus 修复: 空 list JSON 序列化成 [] + seed.sh curl 续行
Linus 视角问题: ClusterRepo.List / AuditRepo.List 在空 list 时
返 nil, encoding/json 默认序列化成 null, 不是 []。
LLM/前端期望一致空数组语义。
- internal/storage/cluster_repo.go: List 返回前 out = []*cluster.Cluster{}
- internal/audit/repo.go: List 返回前 out = []*Entry{}
scripts/seed.sh curl 续行 bug: 在 set -euo pipefail 下 \\ 续行
被解析成多行, curl 收到混乱 argv 报 "URL rejected: Bad hostname"。
改为单行 + backslash 续行在 bash 中更稳。
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -118,6 +118,10 @@ func (r *ClusterRepo) List(ctx context.Context) ([]*cluster.Cluster, error) {
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, fmt.Errorf("storage: list clusters: %w", err)
|
||||
}
|
||||
if out == nil {
|
||||
// Force empty array (not null) in JSON for LLM/front-end ergonomics.
|
||||
out = []*cluster.Cluster{}
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user