Private
Public Access
0
0
Files
manual_slop/conductor/fix_test_suite_failures_20260516.md

2.7 KiB

Plan: Fix Test Suite Regressions

Objective

Restore the full test suite to a passing state after the gui_2.py refactoring (Phase 2 & Phase 3 of Context Composition Redesign).

Key Files & Context

  • src/gui_2.py: The main GUI entry point where methods were moved to module level.
  • src/hot_reloader.py: Handles module registration, currently causing collisions in tests.
  • tests/*.py: Multiple test files referencing deleted/moved methods.

Implementation Steps

Phase 1: Fix HotReloader Collisions

  • Modify src/gui_2.py to check if src.gui_2 is already registered before calling HotReloader.register. This allows multiple App() instances (common in tests) without triggering ValueError.
  • Revert src/hot_reloader.py to its original state (raising ValueError on duplicate registration) to satisfy existing tests for that logic.

Phase 2: Fix Method Migration Regressions (Batch)

  • Identify all test files calling app._render_* or checking hasattr(App, '_render_*').
  • Use Tier 3 workers to surgically update these tests:
    • Change app._render_XYZ() to gui_2.render_XYZ(app).
    • Change hasattr(App, '_render_XYZ') to hasattr(gui_2, 'render_XYZ') (and import gui_2).
    • Note: Some internal helpers might still be prefixed with _ at the module level.
  • Target the following specific files:
    • tests/test_ast_inspector_extended.py
    • tests/test_discussion_takes_gui.py
    • tests/test_gui_discussion_tabs.py
    • tests/test_gui_fast_render.py
    • tests/test_gui_phase4.py
    • tests/test_gui_progress.py
    • tests/test_gui_symbol_navigation.py
    • tests/test_gui_synthesis.py
    • tests/test_log_management_ui.py
    • tests/test_mma_approval_indicators.py
    • tests/test_mma_dashboard_streams.py
    • tests/test_project_settings_rename.py
    • tests/test_rag_gui_presence.py
    • tests/test_selectable_ui.py
    • tests/test_session_hub_merge.py
    • tests/test_shader_live_editor.py
    • tests/test_takes_panel.py
    • tests/test_thinking_gui.py
    • tests/test_token_viz.py
    • tests/test_ui_summary_only_removal.py

Phase 3: Address Specific Logic Failures

  • tests/test_py_struct_tools.py: Investigate and fix why definitions are not found.
  • tests/test_rag_phase4_final_verify.py: Investigate why RAG context is missing in history.
  • tests/test_rag_phase4_stress.py: Investigate timing issues (incremental indexing duration).
  • tests/test_gui_kill_button.py: Investigate missing "Actions" column in ticket queue.

Verification & Testing

  • Run the full test suite using the batch script: uv run python scripts/run_tests_batched.py.
  • Ensure all 243 test files pass.