From c63357e2892d1a560acedb580381409371610078 Mon Sep 17 00:00:00 2001 From: yanghongping Date: Mon, 6 Apr 2026 15:33:59 +0800 Subject: [PATCH] fix(registry): don't fallback embeddedMetaJSON to default empty JSON When meta_data.json is not compiled in, embeddedMetaJSON was being set to meta_data_default.json ({"version":"0.0.0","services":[]}), which is 34 bytes. This caused hasEmbeddedData() to return true even though there were no real services, making TestColdStart_UsesEmbedded fail instead of skip, and TestCacheHit_WithinTTL fail on the embedded calendar check. Fix: leave embeddedMetaJSON as nil when no real meta_data.json is present, so hasEmbeddedData() correctly returns false and dependent tests skip. Co-Authored-By: Claude Sonnet 4.6 --- internal/registry/loader_embedded.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/registry/loader_embedded.go b/internal/registry/loader_embedded.go index da41e079..b1d8f301 100644 --- a/internal/registry/loader_embedded.go +++ b/internal/registry/loader_embedded.go @@ -14,7 +14,8 @@ var embeddedMetaDataDefaultJSON []byte func init() { if data, err := metaFS.ReadFile("meta_data.json"); err == nil && len(data) > 0 { embeddedMetaJSON = data - } else { - embeddedMetaJSON = embeddedMetaDataDefaultJSON } + // When meta_data.json is not compiled in, embeddedMetaJSON remains nil, + // so hasEmbeddedData() correctly returns false and tests that depend on + // real embedded services will be skipped rather than failing. }