James Edmunds Claude Opus 4.6 commited on
Commit
5ccf3cf
·
1 Parent(s): 49f188e

Fix startup: show errors visibly, skip premature env tests

Browse files

The test_environment check was failing because it tried to verify
ChromaDB files before the generator had a chance to download them
from the HF dataset. Now errors are displayed with st.stop() so
the page doesn't silently show nothing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Files changed (1) hide show
  1. app.py +13 -18
app.py CHANGED
@@ -4,7 +4,6 @@ import streamlit as st
4
  from src.generator.generator import LyricGenerator
5
  from config.settings import Settings
6
  from pathlib import Path
7
- from scripts.test_environment import test_environment
8
  from datetime import datetime
9
 
10
  # Set Hugging Face cache directory to persistent storage
@@ -76,28 +75,24 @@ def main():
76
  # Only run startup once per session
77
  if 'initialized' not in st.session_state:
78
  print("===== Application Startup at", datetime.now().strftime("%Y-%m-%d %H:%M:%S"), "=====\n")
79
-
80
- # Run environment tests if in HuggingFace
81
- if Settings.is_huggingface():
82
- print("\n=== Running Environment Tests ===")
83
- tests_passed = test_environment()
84
- if not tests_passed:
85
- st.error("⚠️ Environment tests failed. Check the logs for details.")
86
- return
87
- print("✓ Environment tests passed")
88
-
89
  # Initialize generator
90
  try:
91
- print("\n=== Initializing Generator ===")
92
- generator = LyricGenerator()
93
- st.session_state.generator = generator
94
- st.session_state.chat_history = []
95
- st.session_state.current_lyrics = None
96
- st.session_state.initialized = True
 
 
 
97
  except Exception as e:
98
  st.error(f"Error initializing generator: {str(e)}")
99
  print(f"Error: {str(e)}")
100
- return
 
 
101
 
102
  # Check OpenAI API key at startup
103
  if Settings.is_huggingface():
 
4
  from src.generator.generator import LyricGenerator
5
  from config.settings import Settings
6
  from pathlib import Path
 
7
  from datetime import datetime
8
 
9
  # Set Hugging Face cache directory to persistent storage
 
75
  # Only run startup once per session
76
  if 'initialized' not in st.session_state:
77
  print("===== Application Startup at", datetime.now().strftime("%Y-%m-%d %H:%M:%S"), "=====\n")
78
+
 
 
 
 
 
 
 
 
 
79
  # Initialize generator
80
  try:
81
+ with st.status("Initializing generator...", expanded=True) as status:
82
+ st.write("Setting up LyricGenerator...")
83
+ print("\n=== Initializing Generator ===")
84
+ generator = LyricGenerator()
85
+ st.session_state.generator = generator
86
+ st.session_state.chat_history = []
87
+ st.session_state.current_lyrics = None
88
+ st.session_state.initialized = True
89
+ status.update(label="Generator ready!", state="complete")
90
  except Exception as e:
91
  st.error(f"Error initializing generator: {str(e)}")
92
  print(f"Error: {str(e)}")
93
+ import traceback
94
+ traceback.print_exc()
95
+ st.stop()
96
 
97
  # Check OpenAI API key at startup
98
  if Settings.is_huggingface():