feat: add standalone server topology view

This commit is contained in:
Mikhail Chusavitin
2026-09-14 10:29:36 +03:00
parent 5b8be0e464
commit 9ac38c2914
28 changed files with 1287 additions and 31 deletions
+17
View File
@@ -30,6 +30,23 @@ func TestDetectBeeSupportArchive(t *testing.T) {
}
}
func TestCollectTopologyEvidenceSupportsCategorizedBundleAndPrefersFresh(t *testing.T) {
files := []parser.ExtractedFile{
{Path: "bundle/export/memory/dmidecode-type17.txt", Content: []byte("memory")},
{Path: "bundle/export/storage/storage-controllers.txt", Content: []byte("storage")},
{Path: "bundle/export/gpu/nvidia-smi-query.csv", Content: []byte("query")},
{Path: "bundle/export/gpu/nvidia-smi-topo.txt", Content: []byte("old")},
{Path: "bundle/export/gpu/nvidia-smi-topo-fresh.txt", Content: []byte("fresh")},
}
got := collectTopologyEvidence(files)
if got == nil {
t.Fatal("expected topology evidence")
}
if got.DIMMType17 != "memory" || got.StorageMap != "storage" || got.NVIDIAQueryCSV != "query" || got.NVIDIATopology != "fresh" {
t.Fatalf("unexpected topology evidence: %+v", got)
}
}
// TestDetectBeeSupportArchiveV12Layout covers the real bundle layout produced
// by bee-support v12.x, where bee-audit.json lives under tasks/_state/ and
// runtime-health.json under status/, not export/. See CLAUDE.md memory on