🔍 Duplicate Code Detected: Response Building Pattern
Analysis of recent commits — 2026-06-17
Assignee: @copilot
Summary
Los tres métodos de SecurityDependencyDemoController repiten el mismo bloque de construcción de respuesta (LinkedHashMap<String, Object>) con las claves mode y dependency. Este patrón se repite 3 veces y supera el umbral de >10 líneas duplicadas.
Duplication Details
Pattern: Identical response-map construction across 3 controller methods
- Severity: Medium
- Occurrences: 3
- Locations:
src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java (lines 24-29)
src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java (lines 37-43)
src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java (lines 47-53)
- Code Sample:
// Repeated in all 3 methods:
Map<String, Object> response = new LinkedHashMap<>();
response.put("mode", "...");
response.put("dependency", "...");
// ... additional entries
return response;
Impact Analysis
- Maintainability: Añadir o renombrar una clave en la respuesta requiere modificar 3 métodos.
- Bug Risk: Un cambio inconsistente en uno de los métodos puede generar respuestas JSON con estructura diferente.
- Code Bloat: ~12 líneas de código estructural duplicado que pueden centralizarse.
Refactoring Recommendations
-
Extraer un método privado buildResponse
- Crear
private Map<String, Object> buildResponse(String mode, String dependency, Map<String, Object> extras) en el mismo controlador.
- Estimated effort: 30 min
- Benefits: Estructura de respuesta consistente, un único punto de cambio.
-
Usar un record/DTO de respuesta
- Crear
DemoResponse como record Java con campos mode, dependency, y data.
- Estimated effort: 1h
- Benefits: Tipado fuerte, serialización uniforme.
Implementation Checklist
Analysis Metadata
- Analyzed Files: 7 (src/main/java/com/example/demo/**)
- Detection Method: Semantic code analysis
- Analysis Date: 2026-06-17
Generated by Duplicate Code Detector · sonnet46 779.3K · ◷
Add this agentic workflows to your repo
To install this agentic workflow, run
gh aw add githubnext/agentics/workflows/duplicate-code-detector.md@298f992955146a6731d380a9de808e17861708e5
🔍 Duplicate Code Detected: Response Building Pattern
Analysis of recent commits — 2026-06-17
Assignee:
@copilotSummary
Los tres métodos de
SecurityDependencyDemoControllerrepiten el mismo bloque de construcción de respuesta (LinkedHashMap<String, Object>) con las clavesmodeydependency. Este patrón se repite 3 veces y supera el umbral de >10 líneas duplicadas.Duplication Details
Pattern: Identical response-map construction across 3 controller methods
src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java(lines 24-29)src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java(lines 37-43)src/main/java/com/example/demo/controller/SecurityDependencyDemoController.java(lines 47-53)Impact Analysis
Refactoring Recommendations
Extraer un método privado
buildResponseprivate Map<String, Object> buildResponse(String mode, String dependency, Map<String, Object> extras)en el mismo controlador.Usar un record/DTO de respuesta
DemoResponsecomo record Java con camposmode,dependency, ydata.Implementation Checklist
buildResponseo crear DTOAnalysis Metadata
Add this agentic workflows to your repo
To install this agentic workflow, run