MCP lsfusion_find_elements: a relatedElements seed outside the modules filter is silently dropped and the filtered modules are returned whole
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 54/100
Línea de trabajo
Start by locating the lsfusion_find_elements implementation and its tests for relatedElements, classes, and the modules filter; the issue does not name file paths. Check how seed lookup is limited by the filter and how unresolved seeds are handled. Done means seeds resolve across the project and its libraries, unresolved seeds appear in errors, and a related filter with no resolved seeds returns an empty result.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
lsfusion_find_elements with relatedElements and a modules filter is the way to ask which elements of modules B and C a module A (or one of its elements) actually uses, for example when trimming a REQUIRE list. When the seed element is declared outside the filtered modules, the tool returns every element of the filtered modules, as if no relatedElements filter had been given, and reports neither an error nor a meta entry.
Reproducer on a project whose module Catalog requires only System (nothing of Time or Utils is referenced from it):
relatedElements='module:Catalog', relatedDirection='uses', modules='Time, Utils', requiredModules=false, minSymbols=0returns theTimeandUtilsmodule declarations with their classes (DOW,Month,YesNo, ...) and properties (fileName[INTEGER],zipped[], ...).relatedElements='property:Catalog.nameCategory[Catalog.Item]', relatedDirection='uses', modules='Time', requiredModules=false, minSymbols=0returns the content ofTime, althoughnameCategoryuses onlycategory[Item]andname[Category].- The same module seed with its own module added to the filter (
modules='Time, Utils, Catalog') works as intended: the result isCatalogand theSystemmodule it requires, and nothing fromTimeorUtils.
Fix
A seed of relatedElements (and a class of the classes filter) is looked up in the whole project and its libraries, whatever the modules filter, and the filter restricts only the result. A seed that cannot be resolved is reported in errors, and when a related filter was given but none of its seeds resolved, the result is empty instead of the whole filtered modules.
Reason
The usage traversal from a seed in one module into the elements of other modules is the main use of relatedElements together with modules; today that exact combination silently answers a different question, so a dependency check done with it is wrong without any sign of it.
- Lenguaje dominante
- Java
- Estrellas
- 9
- Forks
- 3
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de lsfusion/plugin-idea
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
lsfusion/plugin-idea#84 ·
-
DX
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
lsfusion/plugin-idea#48 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
lsfusion/plugin-idea#34 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
lsfusion/plugin-idea#23 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
lsfusion/plugin-idea#21 ·
Todos los issues de lsfusion/plugin-idea
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
apache/rocketmq-dashboard#6872 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
ADORSYS-GIS/token-status-link#168 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
ADORSYS-GIS/keycloak-oid4vp-plugin#232 ·
Los mantenedores suelen responder en 2 días
-
Wrong link to test resultsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 2 días
-
docs(site): Mermaid edge-label contrast on Architecture and a table header on How it comparesAbiertodocumentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
devops-thiago/ThrillhouseBot#1132 ·
Los mantenedores suelen responder en 1 día