Dead code removal requires cascade check — init.py re-exports break silently.
Dead code removal requires cascade check — init.py re-exports break silently. Removed register_tools_with_metrics from tool_wrapper.py (99 lines). Server rebuilt — only 6 tools registered instead of 777. Zero error in startup, just silent failure. Root cause: tools/init.py still imported and re-exported the removed function in both import statement and all list. Rule: Before removing ANY function/class, grep -rn function_name across entire src/ directory. Check init.py imports AND all lists. Remove ALL references in same operation. Verify tool count after rebuild: docker logs container 2>&1 | grep tools_registered.