Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

CBM Lens renders a .tsx file as its .css sibling (extension-less qn collision) + File-node snippets silently capped at 51 lines

Abierto
#2,791 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 2 días

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
css, typescript

Línea de trabajo

Start at the reader fallback that derives a qualified name from a File node and the snippet retrieval path that returns its source; inspect the corresponding tests for qualified-name lookup and file snippets. Reproduce with same-stem .tsx and .css files and a file longer than 51 lines. Done when each extension returns its own content and long file snippets have complete source or truthful pagination metadata.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug parsing/quality ux/behavior

Two independent reader bugs on v0.12.1 (latest, macOS arm64), large TS monorepo (26k nodes), healthy index (parse_unusable: 0).

1) A .tsx file renders as its .css sibling

Data layer is fine when the qn keeps its extension (...index.tsx.__file__ vs ...index.css.__file__ return the correct source for each).

The breakage is the reader's fallback path:

  • The indexer creates only ONE Module node per same-stem group, assigned to the CSS file, with the extension stripped:
    • MATCH (n:Module) WHERE n.file_path = ".../LogoTitleView/index.css" -> 1 row, qn = P.cake.src.component.LogoTitleView.index
    • MATCH (n:Module) WHERE n.file_path = ".../LogoTitleView/index.tsx" -> 0 rows
  • On a miss, the reader falls back to the File node and derives the qn by stripping .__file__ and then the last dotted segment:
    ...LogoTitleView.index.tsx.__file__ -> ...LogoTitleView.index.tsx -> ...LogoTitleView.index
  • That equals the CSS Module qn, so the fetch returns the wrong node:
$ cli get_code_snippet --qualified-name "P.cake.src.component.LogoTitleView.index" --source-mode full
label: Module
file_path: .../LogoTitleView/index.css   # requested index.tsx

Result: clicking index.tsx shows CSS; clicking index.css shows CSS; both panes look identical.

Scale here: 1036 .tsx File nodes, only 250 have their own Module node; 783 .tsx files share a stem with a CSS Module node and render the wrong content.

Expected: fallback should keep the extension (strip only .__file__), and/or don't collapse different-language files into one extension-less Module qn.

2) File-node snippets silently cap at 51 lines

  • ...BtnFood/index.css.__file__ (215 lines) -> 51 lines returned, end_line: 51, next_start_line: null, source_truncated: null
  • ...ratings/src/index.tsx.__file__ (466 lines) -> 51 lines, same
  • ...LogoTitleView/index.css.__file__ (19 lines) -> full content but end_line: 51 (wrong metadata)

File nodes store start_line/end_line = 0/0, so 51 looks like a server-side default window. With no continuation marker the reader cannot page and shows no truncation notice.

Expected: return full source, or set next_start_line / source_truncated + truthful original_end_line.

Workaround: use symbol-level nodes (they keep the real qn) and read whole files from disk beyond 51 lines.

Lenguaje dominante
C
Estrellas
45.8k
Forks
3.8k
Merge medio
3 d 4 h
PR fusionados (30 d)
208

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

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de DeusData/codebase-memory-mcp

Todos los issues de DeusData/codebase-memory-mcp

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.