|
|
|
|
@ -1963,6 +1963,7 @@ def build_trajectories_tab(db_path: str, window_size: str) -> None: |
|
|
|
|
|
|
|
|
|
fig = go.Figure() |
|
|
|
|
trace_count = 0 |
|
|
|
|
helper_succeeded = False |
|
|
|
|
# New: delegate plotting selection to helper for testability |
|
|
|
|
# Note: select_trajectory_plot_data returns (fig, trace_count, banner_text) |
|
|
|
|
try: |
|
|
|
|
@ -1973,6 +1974,7 @@ def build_trajectories_tab(db_path: str, window_size: str) -> None: |
|
|
|
|
if fig2 is not None: |
|
|
|
|
fig = fig2 |
|
|
|
|
trace_count = trace_count2 |
|
|
|
|
helper_succeeded = True |
|
|
|
|
if banner_text: |
|
|
|
|
try: |
|
|
|
|
st.caption(banner_text) |
|
|
|
|
@ -2002,6 +2004,8 @@ def build_trajectories_tab(db_path: str, window_size: str) -> None: |
|
|
|
|
st.text_area("select_trajectory_plot_data traceback", tb, height=240) |
|
|
|
|
except Exception: |
|
|
|
|
pass |
|
|
|
|
print(f"[TRAJ DEBUG] helper_succeeded={helper_succeeded}") |
|
|
|
|
if not helper_succeeded: |
|
|
|
|
for party in selected_parties: |
|
|
|
|
if party not in centroids: |
|
|
|
|
continue |
|
|
|
|
|