From 6baa111fed30962b5cc1454bfe5fb55c2150c727 Mon Sep 17 00:00:00 2001 From: Sacha Al Himdani Date: Tue, 31 Mar 2026 16:02:24 +0200 Subject: [PATCH] Fix chi middleware panic in trust API mux The session-transfer route was registered before the session and member provisioning middlewares, causing chi to panic with "all middlewares must be defined before routes on a mux". Scope the middlewares to the graphql route using r.Group so session-transfer remains unauthenticated. Signed-off-by: Sacha Al Himdani --- pkg/server/api/trust/v1/resolver.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkg/server/api/trust/v1/resolver.go b/pkg/server/api/trust/v1/resolver.go index 8a59d1ae7..b276b6355 100644 --- a/pkg/server/api/trust/v1/resolver.go +++ b/pkg/server/api/trust/v1/resolver.go @@ -96,11 +96,14 @@ func NewMux( ) r.Method(http.MethodGet, "/session-transfer", sessionTransferHandler) - r.Use(authn.NewSessionMiddleware(iamSvc, cookieConfig)) - r.Use(compliancepage.NewMemberProvisioningMiddleware(trustSvc, logger)) - graphqlHandler := NewGraphQLHandler(iamSvc, trustSvc, esignSvc, mailmanSvc, logger, baseURL, cookieConfig, tokenSecret) - r.Handle("/graphql", graphqlHandler) + r.Group( + func(r chi.Router) { + r.Use(authn.NewSessionMiddleware(iamSvc, cookieConfig)) + r.Use(compliancepage.NewMemberProvisioningMiddleware(trustSvc, logger)) + r.Handle("/graphql", graphqlHandler) + }, + ) return r }