feat: add early module import validation for Java#1758
feat: add early module import validation for Java#1758aseembits93 wants to merge 3 commits intomainfrom
Conversation
Prevent wasted API calls by validating Java module structure (source root, build config, package declaration) before optimization. Adds JavaFunctionOptimizer with auto-correction of misconfigured module roots, matching the pattern from Python and JavaScript implementations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Claude finished @aseembits93's task in 3m 52s —— View job PR Review Summary
Prek ChecksFixed: Removed a duplicate Code ReviewCritical — Test suite fails: methods tested don't exist 4 of the 5 optimizer integration tests fail because The PR description says "Create Medium — Duplicate project-root-walk logic
Minor —
Duplicate DetectionHIGH confidence duplicate: MEDIUM confidence duplicate: Test Coverage
Summary: The main blocker is that the PR's own integration tests fail because |
The property was already defined at line 172; this PR accidentally added a second identical definition at line 643, causing an F811 ruff error. Co-authored-by: Aseem Saxena <undefined@users.noreply.github.com>
Summary
can_be_optimized()check for Java that validates module structure (source root, build config, package declaration) before making expensive API callsJavaFunctionOptimizersubclass with auto-correction of misconfigured module roots viatry_correct_module_root()function_optimizer_classdispatch inoptimizer.pyinstead of hardcodedFunctionOptimizer, matching the Python and JavaScript patternChanges
codeflash/code_utils/config_java_validation.pyvalidate_java_module_resolution()andinfer_java_module_root()codeflash/languages/java/function_optimizer.pyJavaFunctionOptimizerwith validation, context extraction, and method overridescodeflash/languages/java/support.pyfunction_optimizer_classpropertycodeflash/optimization/optimizer.pyfunction_optimizer_classdispatchtests/code_utils/test_config_java_validation.pytests/test_languages/test_java/test_java_function_optimizer_validation.pyTest plan
test_config_java_validation.py)test_java_function_optimizer_validation.py)🤖 Generated with Claude Code