diff --git a/app/ui/progress_state.py b/app/ui/progress_state.py index fafcedd..ff61ac6 100644 --- a/app/ui/progress_state.py +++ b/app/ui/progress_state.py @@ -124,13 +124,15 @@ def render_factor_progress() -> None: """渲染因子计算进度组件""" progress_info = factor_progress.get_progress_info() - if progress_info['status'] == 'idle': - return - # 创建进度显示区域 with st.container(): st.subheader("📊 因子计算进度") + # 空闲状态显示提示信息 + if progress_info['status'] == 'idle': + st.info("当前没有因子计算任务。执行因子计算时,进度将在此显示。") + return + # 进度条 if progress_info['status'] == 'running': st.progress(progress_info['percentage'] / 100.0) diff --git a/app/ui/views/dashboard.py b/app/ui/views/dashboard.py index 0d54398..8ba6466 100644 --- a/app/ui/views/dashboard.py +++ b/app/ui/views/dashboard.py @@ -139,6 +139,9 @@ def render_global_dashboard() -> None: badge = f" ({len(warnings)})" if warnings else "" st.sidebar.header(f"系统监控{badge}") + # 因子计算进度显示区域 + factor_progress_container = st.sidebar.container() + metrics_container = st.sidebar.container() decisions_container = st.sidebar.container() st.sidebar.container() # legacy placeholder for layout spacing @@ -148,6 +151,11 @@ def render_global_dashboard() -> None: _DASHBOARD_ELEMENTS = _ensure_dashboard_elements(metrics_container, decisions_container) _WARNINGS_PLACEHOLDER = warn_placeholder + # 在侧边栏中显示因子计算进度 + with factor_progress_container: + from app.ui.progress_state import render_factor_progress + render_factor_progress() + if not _SIDEBAR_LISTENER_ATTACHED: register_llm_metrics_listener(_sidebar_metrics_listener) _SIDEBAR_LISTENER_ATTACHED = True