Files
manual_slop/docs/CULLING_CANDIDATES_PHASE5.md
T
2026-05-07 23:32:17 -04:00

2.4 KiB

Culling Candidates: Source-Wide Redundancy Audit

This document identifies specific code, modules, and data structures that are redundant or unused and should be removed during the "Heavy Curation" phase.

1. Redundant Modules (Legacy/Superseded)

Module Path Reason for Culling Successor / Context
src/theme.py DearPyGui-specific logic. Project has migrated to imgui-bundle. src/theme_2.py
src/native_orchestrator.py Legacy orchestration logic. Unused in core app. src/orchestrator_pm.py
src/beads_client.py Functional, but only used by specific "Beads" features. Review if still desired. MMA / Conductor

2. Redundant Data Structures (src/models.py)

  • Duplicate Class: TextEditorConfig: Defined twice in models.py. Remove the second instance.
  • Duplicate Class: ExternalEditorConfig: Defined twice in models.py. Remove the second instance.
  • Malformed Class: Metadata: Has three @dataclass decorators. Strip down to one.
  • Unused Constants: AGENT_TOOL_NAMES is largely redundant if MCP_TOOL_SPECS in mcp_client is the source of truth.

3. Unused Public Symbols (Audit Results)

The following symbols have 0 project-wide usages (excluding their own definition and tests):

3.1 Aggregation & AI

  • build_tier1_context (src/aggregate.py)
  • build_tier2_context (src/aggregate.py)
  • get_history_trunc_limit (src/ai_client.py)
  • set_history_trunc_limit (src/ai_client.py)
  • get_history_bleed_stats (src/ai_client.py)

3.2 UI & Viewers

  • parse_diff_header (src/diff_viewer.py)
  • format_diff_for_display (src/diff_viewer.py)
  • render_diff_text_immediate (src/diff_viewer.py)
  • create_backup / restore_from_backup / cleanup_backup (src/diff_viewer.py)
  • apply_faux_acrylic_glass (src/shaders.py)
  • ShaderManager (src/shader_manager.py)

3.3 Infrastructure & Cache

  • resolve_project_editor_override (src/external_editor.py)
  • content_block_type (src/file_cache.py)
  • evict / list_cached (src/file_cache.py)
  • get_git_log (src/project_manager.py)

4. Next Steps: Heavy Curation

  1. Surgical Deletion: Remove identified unused symbols and duplicate classes.
  2. Module Culling: Delete theme.py and native_orchestrator.py.
  3. Consolidation: Refactor aggregate.py to use a single param-driven context builder instead of tier-specific ones.