From 36101b78d37d7b7823eb981dacad76f17e807d1f Mon Sep 17 00:00:00 2001 From: root Date: Wed, 24 Jun 2026 02:33:06 -0400 Subject: [PATCH] fix: guard Auth::guard('sanctum') call with try-catch in TeacherPortalAuthenticate The TeacherPortalAuthenticate middleware called Auth::guard('sanctum') without a try-catch, unlike MultiAuth and EnsurePrintRequestsAdminAccess which already handle the InvalidArgumentException gracefully when the sanctum guard driver is not yet registered. This caused 'Auth guard [sanctum] is not defined' errors in tests when the SanctumServiceProvider's driver registration hadn't completed before middleware execution. --- app/Http/Middleware/TeacherPortalAuthenticate.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/Http/Middleware/TeacherPortalAuthenticate.php b/app/Http/Middleware/TeacherPortalAuthenticate.php index 193cf064..8974f9a0 100644 --- a/app/Http/Middleware/TeacherPortalAuthenticate.php +++ b/app/Http/Middleware/TeacherPortalAuthenticate.php @@ -22,7 +22,11 @@ class TeacherPortalAuthenticate return $next($request); } - $sanctumUser = Auth::guard('sanctum')->user(); + try { + $sanctumUser = Auth::guard('sanctum')->user(); + } catch (\InvalidArgumentException) { + $sanctumUser = null; + } if ($sanctumUser) { Auth::setUser($sanctumUser);