add factor progress display in sidebar with idle state message

This commit is contained in:
sam 2025-10-08 20:28:11 +08:00
parent 2c3ef8072f
commit 4e7a56567b
2 changed files with 13 additions and 3 deletions

View File

@ -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)

View File

@ -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