From 2794e9de67781614edc17336b284266d3e4a740c Mon Sep 17 00:00:00 2001
From: nsfisis <nsfisis@gmail.com>
Date: Sat, 28 Feb 2026 15:04:21 +0900
Subject: feat(admin): allow admin users to view and submit code before game
 starts

Admin users can now access the gaming UI (problem description, code
editor, submit button) even when a game has not started yet. Regular
users still see the waiting screen as before.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---
 frontend/app/components/GolfPlayApp.tsx | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

(limited to 'frontend/app/components/GolfPlayApp.tsx')

diff --git a/frontend/app/components/GolfPlayApp.tsx b/frontend/app/components/GolfPlayApp.tsx
index 6c77f8c..1c1e7ae 100644
--- a/frontend/app/components/GolfPlayApp.tsx
+++ b/frontend/app/components/GolfPlayApp.tsx
@@ -121,6 +121,22 @@ export default function GolfPlayApp({ game, player, initialGameState }: Props) {
 	if (gameStateKind === "loading") {
 		return <GolfPlayAppLoading />;
 	} else if (gameStateKind === "waiting") {
+		if (player.is_admin) {
+			return (
+				<GolfPlayAppGaming
+					gameDisplayName={game.display_name}
+					playerProfile={playerProfile}
+					problemTitle={game.problem.title}
+					problemDescription={game.problem.description}
+					problemLanguage={game.problem.language}
+					sampleCode={game.problem.sample_code}
+					initialCode={initialGameState.code}
+					onCodeChange={onCodeChange}
+					onCodeSubmit={onCodeSubmit}
+					isFinished={false}
+				/>
+			);
+		}
 		return (
 			<GolfPlayAppWaiting
 				gameDisplayName={game.display_name}
-- 
cgit v1.3.1

