From 5d910e8263ed5002b4f04c2c3fa3146dec4b6b78 Mon Sep 17 00:00:00 2001 From: Eugene Blikh Date: Sun, 26 Apr 2026 17:50:15 +0300 Subject: [PATCH] server/web: tag Config fields for snake_case JSON output (IF1 contract) --- internal/server/web/embed.go | 4 ++-- internal/server/web/embed_test.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/internal/server/web/embed.go b/internal/server/web/embed.go index bb687f4812126d9c1d8132839e7b694a2562795c..b3d6a1da16bda6789ec0343d288fe90d3e54aab6 100644 --- a/internal/server/web/embed.go +++ b/internal/server/web/embed.go @@ -23,8 +23,8 @@ var distFS embed.FS // Config holds the values injected into the SPA's index.html as // window.__LETHE_CONFIG__. It must not contain any tokens (IV4). type Config struct { - Issuer string - ClientID string + Issuer string `json:"issuer"` + ClientID string `json:"client_id"` } // DistFS returns the sub-filesystem rooted at "dist" within the embedded FS. diff --git a/internal/server/web/embed_test.go b/internal/server/web/embed_test.go index 54e194fe48ff09e08040cf19e8ef3d4bed1abdee..5f22e5445ffa3323e943c8da8f4d20389a5f62f4 100644 --- a/internal/server/web/embed_test.go +++ b/internal/server/web/embed_test.go @@ -31,7 +31,7 @@ func TestHandler_InjectsConfigIntoIndex(t *testing.T) { body, _ := io.ReadAll(resp.Body) bodyStr := string(body) - want := `window.__LETHE_CONFIG__={"Issuer":"http://stub","ClientID":"lethe"}` + want := `window.__LETHE_CONFIG__={"issuer":"http://stub","client_id":"lethe"}` if !strings.Contains(bodyStr, want) { t.Errorf("body does not contain %q\nbody (first 500 chars):\n%s", want, truncate(bodyStr, 500)) }