tfrere HF Staff Cursor commited on
Commit
da6e393
·
1 Parent(s): b160a21

Fix: /api/config/model is now public, prevent 401 redirect loop in prod

Browse files
backend/routes/agent.py CHANGED
@@ -96,8 +96,8 @@ AVAILABLE_MODELS = [
96
 
97
 
98
  @router.get("/config/model")
99
- async def get_model(user: dict = Depends(get_current_user)) -> dict:
100
- """Get current model and available models."""
101
  return {
102
  "current": session_manager.config.model_name,
103
  "available": AVAILABLE_MODELS,
 
96
 
97
 
98
  @router.get("/config/model")
99
+ async def get_model() -> dict:
100
+ """Get current model and available models. No auth required."""
101
  return {
102
  "current": session_manager.config.model_name,
103
  "available": AVAILABLE_MODELS,
frontend/src/components/Layout/AppLayout.tsx CHANGED
@@ -55,17 +55,18 @@ export default function AppLayout() {
55
  const [availableModels, setAvailableModels] = useState<Array<{ id: string; label: string }>>([]);
56
 
57
  useEffect(() => {
58
- (async () => {
59
- try {
60
- const res = await apiFetch('/api/config/model');
61
- if (res.ok) {
62
- const data = await res.json();
 
63
  setCurrentModel(data.current);
64
  setAvailableModels(data.available);
65
  }
66
- } catch { /* ignore */ }
67
- })();
68
- }, []); // eslint-disable-line react-hooks/exhaustive-deps
69
 
70
  const handleModelChange = useCallback(async (modelId: string) => {
71
  try {
 
55
  const [availableModels, setAvailableModels] = useState<Array<{ id: string; label: string }>>([]);
56
 
57
  useEffect(() => {
58
+ // Use plain fetch (not apiFetch) this is a public endpoint,
59
+ // no auth needed, and we don't want 401 handling to trigger redirects.
60
+ fetch('/api/config/model')
61
+ .then((res) => (res.ok ? res.json() : null))
62
+ .then((data) => {
63
+ if (data) {
64
  setCurrentModel(data.current);
65
  setAvailableModels(data.available);
66
  }
67
+ })
68
+ .catch(() => { /* ignore */ });
69
+ }, []);
70
 
71
  const handleModelChange = useCallback(async (modelId: string) => {
72
  try {