From 01fbf12fc5ec5b4198f9ae6a5c055d4e2318a6e6 Mon Sep 17 00:00:00 2001 From: Levi Neely Date: Thu, 30 Jul 2026 00:20:26 +0200 Subject: [PATCH] fix /agents reporting Length=0 in stat (FUSE never reads) makeStat had explicit Length computation for /backends, /models, /help but not /agents. Replace the specific cases with a generic default that reads any root-level file via rootStore. /help keeps its os.Stat path since the rootStore readFn reads the whole file (expensive for large help). --- server/server.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/server/server.go b/server/server.go index 64d762e..26d5e6e 100644 --- a/server/server.go +++ b/server/server.go @@ -1266,12 +1266,6 @@ func (s *Server) makeStat(path string) plan9.Dir { if content, err := readFile(s.sessionTree, base); err == nil { dir.Length = uint64(len(content)) } - case path == "/backends": - dir.Length = uint64(len(strings.Join(backend.Backends(), "\n") + "\n")) - case path == "/models": - if content, err := readFile(s.rootStore, "models"); err == nil { - dir.Length = uint64(len(content)) - } case path == "/help": if info, err := os.Stat(s.helpPath()); err == nil { dir.Length = uint64(info.Size()) @@ -1284,6 +1278,11 @@ func (s *Server) makeStat(path string) plan9.Dir { dir.Length = uint64(len(data)) } } + default: + // Root-level files (agents, backends, models, etc.) + if content, err := readFile(s.rootStore, base); err == nil { + dir.Length = uint64(len(content)) + } } }