The ultimate RAG for your monorepo. Query, understand, and edit multi-language codebases with the power of AI and knowledge graphs
This report summarizes scanner evidence for vitali87/code-graph-rag, a Python project with 5,242 GitHub stars. SynthScan examined 706,198 lines of code across 1877 source files, recording 19256 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 31.0 (High pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 16410 finding(s).
Are imports declared and package/API names verified? 2382 finding(s).
Are wrappers, guards, and repeated structures necessary? 15608 finding(s).
Which changes need focused human review? 19256 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 19256 distinct pattern matches across 20 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | realtime_updater.py | 355 | def _schedule_immediate_processing(self, relative_path_str: str) -> None: | CODE |
| LOW | realtime_updater.py | 365 | def _process_debounced_change(self, relative_path_str: str) -> None: | CODE |
| LOW | realtime_updater.py | 555 | def _validate_non_negative_float(value: float) -> float: | CODE |
| LOW | CONTRIBUTING.md | 853 | def validate_default_in_options(self): | CODE |
| LOW | evals/cgr_graph.py | 64 | def ensure_relationship_batch( | CODE |
| LOW | evals/cgr_graph.py | 286 | def _shadowed_by_longer_owner( | CODE |
| LOW | evals/cgr_graph.py | 344 | def ensure_relationship_batch( | CODE |
| LOW | evals/cgr_graph.py | 926 | def _same_named_csharp_type_rows(self, params: PropertyDict) -> list[ResultRow]: | CODE |
| LOW | evals/cgr_graph.py | 1871 | def _definition_location_rows( | CODE |
| LOW | evals/cgr_graph.py | 2118 | def _delete_created_shared_nodes(self, params: PropertyDict) -> None: | CODE |
| LOW | evals/cgr_graph.py | 2287 | def _project_outside_file_keys(self, params: PropertyDict) -> list[ResultRow]: | CODE |
| LOW | evals/cgr_graph.py | 2457 | def _delete_project_dependencies(self, project_name: PropertyValue) -> None: | CODE |
| LOW | evals/cgr_graph.py | 2468 | def _delete_orphan_external_modules(self) -> None: | CODE |
| LOW | evals/l3.py | 419 | def ensure_relationship_batch( | STRING |
| LOW | evals/ast_oracle.py | 83 | def _extend_spans_over_trailing_comments( | CODE |
| LOW | evals/retrieval.py | 76 | def first_party_property_names(trees: list[tuple[str, ast.Module]]) -> set[str]: | CODE |
| LOW | evals/indexing_bench.py | 178 | def _measure_in_child_process(target: Path, project_name: str) -> IndexingStats: | CODE |
| LOW | evals/instantiation.py | 43 | def _externally_shadowed_names(tree: ast.Module, rel: str, project: str) -> set[str]: | CODE |
| LOW | evals/semantic_search.py | 204 | def reranked_semantic_ranking( | CODE |
| LOW | evals/incremental.py | 82 | def run_neutral_edit_scenario( | CODE |
| LOW | evals/inheritance.py | 475 | def csharp_oracle_inheritance(target: Path) -> OracleResult: | CODE |
| LOW | evals/oracles/csharp_oracle.py | 33 | def csharp_oracle_skip_reason() -> str | None: | CODE |
| LOW | evals/oracles/csharp_oracle.py | 150 | def _run_csharp_oracle_payload(target: Path) -> OraclePayload: | CODE |
| LOW | evals/oracles/scala_oracle.py | 24 | def _run_scala_oracle_payload(target: Path) -> OraclePayload: | CODE |
| LOW | evals/oracles/typescript_oracle.py | 54 | def run_typescript_call_oracle( | CODE |
| LOW | evals/oracles/typescript_oracle.py | 63 | def run_javascript_call_oracle( | CODE |
| LOW | codebase_rag/dead_code.py | 186 | def _rust_test_modules_from_nodes( | CODE |
| LOW | codebase_rag/dead_code.py | 335 | def _is_js_well_known_symbol_root(name: str, is_method: bool, path: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 391 | def _is_java_serialization_root(name: str, is_method: bool, path: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 404 | def _is_csharp_attribute_root(props: PropertyDict, path: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 424 | def _is_csharp_operator_or_finalizer_root(name: str, path: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 438 | def _is_csharp_entry_point_root( | CODE |
| LOW | codebase_rag/dead_code.py | 511 | def is_well_known_symbol_member(name: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 523 | def _has_non_route_root_decorator( | CODE |
| LOW | codebase_rag/dead_code.py | 868 | def _is_external_nest_options_factory(to_qn: str, project_prefix: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 973 | def _expand_factories_and_overrides( | CODE |
| LOW | codebase_rag/dead_code.py | 1049 | def _is_php_framework_test_base(qn: str) -> bool: | CODE |
| LOW | codebase_rag/dead_code.py | 1313 | def count_structural_tier_symbols(node_rows: list[ResultRow]) -> int: | CODE |
| LOW | codebase_rag/dead_code.py | 1356 | def collect_dead_code_with_coverage( | CODE |
| LOW | codebase_rag/duplicates.py | 58 | def default_duplicates_config( | CODE |
| LOW | codebase_rag/duplicates.py | 82 | def collect_duplicates_with_coverage( | CODE |
| LOW | codebase_rag/types_defs.py | 167 | def find_with_prefix_and_suffix( | CODE |
| LOW | codebase_rag/check_isolation.py | 67 | def ensure_relationship_batch( | CODE |
| LOW | codebase_rag/check_isolation.py | 330 | def _replace_survivor_properties(self) -> None: | CODE |
| LOW | codebase_rag/check_isolation.py | 366 | def _shared_nodes_the_scope_reaches( | CODE |
| LOW | codebase_rag/cypher_queries.py | 776 | def build_remove_node_keys_query(label: str, id_key: str, keys: Iterable[str]) -> str: | CODE |
| LOW | codebase_rag/cypher_queries.py | 792 | def build_merge_relationship_query( | CODE |
| LOW | codebase_rag/cypher_queries.py | 821 | def build_create_relationship_query( | CODE |
| LOW | codebase_rag/cypher_queries.py | 838 | def build_missing_rel_endpoints_query( | CODE |
| LOW | codebase_rag/config.py | 105 | def format_missing_api_key_errors( | CODE |
| LOW⚡ | codebase_rag/config.py | 610 | def _get_default_orchestrator_config(self) -> ModelConfig: | STRING |
| LOW⚡ | codebase_rag/config.py | 613 | def _get_default_cypher_config(self) -> ModelConfig: | STRING |
| LOW⚡ | codebase_rag/config.py | 617 | def active_orchestrator_config(self) -> ModelConfig: | STRING |
| LOW | codebase_rag/config.py | 777 | def _read_cgr_instructions_file(path: Path) -> str | None: | STRING |
| LOW⚡ | codebase_rag/graph_updater.py | 6673 | def _clear_state_before_reparse(self, filepath: Path, is_new: bool) -> None: | CODE |
| LOW | codebase_rag/graph_updater.py | 966 | def _is_placeholder_hash_cache(cache_path: Path) -> bool: | CODE |
| LOW | codebase_rag/graph_updater.py | 990 | def _project_root_for_single_file(target: Path) -> Path: | CODE |
| LOW | codebase_rag/graph_updater.py | 1250 | def _added_and_modified_entries( | CODE |
| LOW | codebase_rag/graph_updater.py | 1920 | def _tightest_containing_span( | CODE |
| LOW | codebase_rag/graph_updater.py | 1935 | def _resolve_hybrid_macro_calls(self) -> None: | CODE |
| 15075 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | codebase_rag/gloss.py | 415 | # A None here unsets the property (Cypher SET with null), so a gloss on a | COMMENT |
| HIGH | codebase_rag/cypher_queries.py | 950 | g.project = $project_name, g.moved_from = null, g.candidate_qns = null | CODE |
| HIGH | codebase_rag/cypher_queries.py | 1077 | g.target_qn = t.qualified_name, g.candidate_qns = null, | CODE |
| HIGH | codebase_rag/parsers/call_processor.py | 7542 | # `const bound = handler.bind(null)` stores the bound | COMMENT |
| HIGH | codebase_rag/parsers/call_processor.py | 7778 | # handler values (onDrop={cond ? this.handleDrop : undefined}, | COMMENT |
| HIGH | codebase_rag/parsers/call_processor.py | 8853 | # unwrap to a FIXPOINT: `(handler as any).bind(null)` interleaves a | COMMENT |
| HIGH | codebase_rag/parsers/utils.py | 277 | * a null node, or a node whose `text` is null, yields `None` rather than | STRING |
| HIGH⚡ | codebase_rag/parsers/stdlib_extractor.py | 303 | console.log(JSON.stringify({hasEntity: false, entityType: null})); | CODE |
| HIGH⚡ | codebase_rag/parsers/stdlib_extractor.py | 310 | const entityType = hasEntity ? typeof module[entityName] : null; | CODE |
| HIGH⚡ | codebase_rag/parsers/stdlib_extractor.py | 313 | console.log(JSON.stringify({hasEntity: false, entityType: null})); | CODE |
| HIGH | codebase_rag/parsers/js_ts/type_inference.py | 1019 | # block the name reads the function or undefined, never the class. | COMMENT |
| HIGH | codebase_rag/parsers/lua/type_inference.py | 210 | # dot-defined (`function T.push(self, v)`) qualifies too. | COMMENT |
| HIGH | codebase_rag/tests/test_rust_advanced_types.py | 575 | if x < W && y < H { | CODE |
| HIGH | codebase_rag/tests/test_rust_advanced_types.py | 583 | if x < W && y < H { | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 882 | groups = _parse_command("echo 'a && b || c'") | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 882 | groups = _parse_command("echo 'a && b || c'") | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 884 | assert groups[0].commands == ["echo 'a && b || c'"] | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 884 | assert groups[0].commands == ["echo 'a && b || c'"] | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 1034 | "ls nonexistent_12345 && echo 'should not run'" | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 1041 | "ls nonexistent_12345 || echo 'fallback'" | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 1049 | result = await shell_commander.execute("ls || echo 'should not run'") | CODE |
| HIGH⚡ | codebase_rag/tests/test_shell_command.py | 1342 | result = await shell_commander.execute("ls && rm -rf /") | CODE |
| HIGH | codebase_rag/tests/test_shell_command.py | 1010 | result = await shell_commander.execute("ls && pwd") | CODE |
| HIGH | codebase_rag/tests/test_stdlib_extractor.py | 697 | mock_result.stdout = '{"hasEntity": false, "entityType": null}' | CODE |
| HIGH | codebase_rag/tests/test_class_ingest.py | 86 | this.permissions.push(permission); | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_streams_functional.py | 225 | .filter(name -> name.length() > 5) | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_streams_functional.py | 230 | .allMatch(name -> name.length() > 0); | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_streams_functional.py | 240 | .filter(name -> name.length() > 4) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 63 | .filter(name -> name.length() > 4) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 119 | .filter(name -> name.length() > 3) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 189 | .collect(Collectors.partitioningBy(name -> name.length() > 4)); | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 304 | .filter(name -> name.length() > 3) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 313 | .filter(name -> name.length() > 4) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 365 | if (n % 2 == 0 || n % 3 == 0) return false; | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 368 | if (n % i == 0 || n % (i + 2) == 0) { | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 460 | Predicate<String> isLong = s -> s.length() > 10; | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 496 | s1.length() > s2.length() ? s1 : s2; | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 634 | Predicate<String> longEnough = s -> s.length() > 3; | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 768 | String nullableValue = null; | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 841 | Optional<String> longString = optional.filter(s -> s.length() > 3); | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 846 | .filter(s -> s.length() > 2) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 911 | if (value != null) { | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 956 | if (userId == null || userId.isEmpty()) { | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 960 | if (userId.equals("1")) { | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 975 | .filter(input -> input.length() <= 100) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 1295 | .filter(s -> s.length() > 4) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 1332 | .filter(s -> s.length() > 3) | CODE |
| HIGH | codebase_rag/tests/test_java_streams_functional.py | 1339 | if (text == null || text.isEmpty()) { | CODE |
| HIGH | …e_rag/tests/test_comprehensive_stdlib_introspection.py | 363 | use std::ptr::{null, null_mut, NonNull}; | CODE |
| HIGH | …e_rag/tests/test_comprehensive_stdlib_introspection.py | 602 | Predicate<String> predicate = s -> s.length() > 0; | CODE |
| HIGH | codebase_rag/tests/test_cpp_move_semantics.py | 45 | MoveableResource(const std::string& data) : size_(data.length()) { | CODE |
| HIGH | codebase_rag/tests/test_cpp_move_semantics.py | 253 | bool empty() const { return data_ == nullptr || length_ == 0; } | CODE |
| HIGH | codebase_rag/tests/test_java_reflection_annotations.py | 313 | if (superclass != null) { | CODE |
| HIGH | codebase_rag/tests/test_java_reflection_annotations.py | 739 | if (obj == null) { | CODE |
| HIGH | codebase_rag/tests/test_java_reflection_annotations.py | 763 | if (value == null) { | CODE |
| HIGH | codebase_rag/tests/test_java_reflection_annotations.py | 770 | if (field.isAnnotationPresent(Size.class) && value != null) { | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_reflection_annotations.py | 814 | if (value == null) { | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_reflection_annotations.py | 818 | } else if (annotation instanceof Size && value != null) { | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_reflection_annotations.py | 818 | } else if (annotation instanceof Size && value != null) { | CODE |
| HIGH⚡ | codebase_rag/tests/test_java_reflection_annotations.py | 824 | } else if (annotation instanceof Pattern && value instanceof String) { | CODE |
| 781 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | evals/polyglot.py | 17 | CODE | |
| LOW | evals/l1_eval.py | 10 | CODE | |
| LOW | evals/retrieval_eval.py | 13 | CODE | |
| LOW | evals/__init__.py | 1 | CODE | |
| LOW | evals/__init__.py | 2 | CODE | |
| LOW | evals/__init__.py | 3 | CODE | |
| LOW | evals/flow_ground_truth.py | 24 | CODE | |
| LOW | evals/agentic_qa.py | 35 | CODE | |
| LOW | evals/agentic_qa.py | 38 | CODE | |
| LOW | evals/inheritance.py | 27 | CODE | |
| LOW | evals/oracles/lua_oracle.py | 1 | CODE | |
| LOW | evals/oracles/php_oracle.py | 1 | CODE | |
| LOW | evals/oracles/rust_oracle.py | 1 | CODE | |
| LOW | evals/oracles/csharp_oracle.py | 1 | CODE | |
| LOW | evals/oracles/_common.py | 1 | CODE | |
| LOW | evals/oracles/__init__.py | 1 | CODE | |
| LOW | evals/oracles/__init__.py | 2 | CODE | |
| LOW | evals/oracles/__init__.py | 2 | CODE | |
| LOW | evals/oracles/__init__.py | 2 | CODE | |
| LOW | evals/oracles/__init__.py | 2 | CODE | |
| LOW | evals/oracles/__init__.py | 8 | CODE | |
| LOW | evals/oracles/__init__.py | 8 | CODE | |
| LOW | evals/oracles/__init__.py | 8 | CODE | |
| LOW | evals/oracles/__init__.py | 8 | CODE | |
| LOW | evals/oracles/__init__.py | 14 | CODE | |
| LOW | evals/oracles/__init__.py | 14 | CODE | |
| LOW | evals/oracles/__init__.py | 14 | CODE | |
| LOW | evals/oracles/__init__.py | 15 | CODE | |
| LOW | evals/oracles/__init__.py | 15 | CODE | |
| LOW | evals/oracles/__init__.py | 15 | CODE | |
| LOW | evals/oracles/__init__.py | 16 | CODE | |
| LOW | evals/oracles/__init__.py | 16 | CODE | |
| LOW | evals/oracles/__init__.py | 16 | CODE | |
| LOW | evals/oracles/__init__.py | 16 | CODE | |
| LOW | evals/oracles/__init__.py | 22 | CODE | |
| LOW | evals/oracles/__init__.py | 22 | CODE | |
| LOW | evals/oracles/__init__.py | 22 | CODE | |
| LOW | evals/oracles/__init__.py | 22 | CODE | |
| LOW | evals/oracles/__init__.py | 28 | CODE | |
| LOW | evals/oracles/__init__.py | 28 | CODE | |
| LOW | evals/oracles/__init__.py | 28 | CODE | |
| LOW | evals/oracles/__init__.py | 28 | CODE | |
| LOW | evals/oracles/__init__.py | 34 | CODE | |
| LOW | evals/oracles/__init__.py | 34 | CODE | |
| LOW | evals/oracles/__init__.py | 34 | CODE | |
| LOW | evals/oracles/__init__.py | 35 | CODE | |
| LOW | evals/oracles/__init__.py | 35 | CODE | |
| LOW | evals/oracles/__init__.py | 35 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/__init__.py | 36 | CODE | |
| LOW | evals/oracles/ruby_oracle.py | 1 | CODE | |
| LOW | evals/oracles/go_oracle.py | 1 | CODE | |
| LOW | evals/oracles/scala_oracle.py | 1 | CODE | |
| LOW | evals/oracles/java_oracle.py | 1 | CODE | |
| LOW | evals/oracles/typescript_oracle.py | 1 | CODE | |
| LOW | evals/oracles/cpp_oracle.py | 1 | CODE | |
| 1398 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL⚡ | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 246 | ext = "proj.src.N.Ext.Ext.Poke(Widget)" | CODE |
| CRITICAL⚡ | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 257 | "proj.src.Zeta.Zext.Zext.Poke(Zeta.Widget)", | CODE |
| CRITICAL⚡ | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 261 | "proj.src.Zeta.Widget.Alpha.AlphaExt.Poke(Alpha.Widget)", | CODE |
| CRITICAL⚡ | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 271 | ctor = "proj.src.Serilog.Events.LogEventProperty.LogEventProperty.LogEventProperty(string, object)" | CODE |
| CRITICAL | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 727 | "proj.src.App.Use.Use.Plain(Zeta.Widget)", | CODE |
| CRITICAL | …ase_rag/tests/test_csharp_namespace_qualified_names.py | 731 | "proj.src.App.Use.Use.Generic(Zeta.Widget)", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_java_static_import_calls.py | 531 | caller = f"{PROJECT}.app.src.main.java.com.app.Main.Main.run()" | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_static_import_calls.py | 533 | f"{PROJECT}.lib.src.main.java.com.lib.Checks.Checks.require(boolean)" | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_static_import_calls.py | 733 | assert _callees(edges, f"{PROJECT}.app.com.app.Main.Main.run()") == { | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_static_import_calls.py | 734 | f"{PROJECT}.lib.com.foo.Foo.Foo.m()" | STRING |
| CRITICAL | …base_rag/tests/test_dynamic_trace_resolution_dotnet.py | 33 | f"{_P}.Services.GreetingService.MyApp.Services.GreetingService.Greet(string)", | CODE |
| CRITICAL | codebase_rag/tests/test_delombok_overlay.py | 223 | assert "proj.src.main.java.com.app.Widget.Widget.getName()" in _method_qns(mock) | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 32 | f"{_P}.src.main.java.com.example.Foo.Foo.bar()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 39 | f"{_P}.src.main.java.com.example.Foo.Foo.bar(String)", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 46 | f"{_P}.src.main.java.com.example.Foo.Foo.Foo(String)", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 53 | f"{_P}.src.main.java.com.example.Outer.Outer.Inner.value()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 60 | f"{_P}.src.main.java.com.example.Client.Client.start()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 201 | f"{_P}.moduleA.com.example.Dup.Dup.run()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 208 | f"{_P}.moduleB.com.example.Dup.Dup.run()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 229 | f"{_P}.moduleA.com.example.Dup.Dup.run()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 236 | f"{_P}.moduleB.com.example.Dup.Dup.run()", | CODE |
| CRITICAL | codebase_rag/tests/test_dynamic_trace_resolution_jvm.py | 249 | assert resolved.qualified_name.endswith("moduleA.com.example.Dup.Dup.run()") | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_implements_overrides.py | 60 | "proj.com.example.Other.OtherNamer.translateName(String)", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_implements_overrides.py | 61 | "proj.com.example.Namer.Namer.translateName(String)", | CODE |
| CRITICAL | codebase_rag/tests/test_implements_overrides.py | 89 | interface_qn = "proj.com.example.Namer.Namer.translateName(String)" | CODE |
| CRITICAL | codebase_rag/tests/test_implements_overrides.py | 90 | enum_prefix = "proj.com.example.NamerPolicy.NamerPolicy.translateName(String)" | CODE |
| CRITICAL | codebase_rag/tests/test_rename_unplanned_occurrences.py | 275 | f"{PROJECT}.src.main.java.a.Greeter.Greeter.greet(String)", | CODE |
| CRITICAL | codebase_rag/tests/test_rename_unplanned_occurrences.py | 1461 | f"{PROJECT}.src.main.java.a.Greeter.Greeter.greet(String)", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_ingest.py | 336 | f"{_PROJECT}.src.main.java.com.example.Foo.Foo.bar()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dynamic_trace_ingest.py | 343 | f"{_PROJECT}.src.main.java.com.example.Foo.Foo.run()", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 151 | f"{project_name}.src.main.java.com.example.BasicClasses.BasicClass.BasicClass(String)", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 152 | f"{project_name}.src.main.java.com.example.BasicClasses.BasicClass.getName()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 153 | f"{project_name}.src.main.java.com.example.BasicClasses.ExtendedClass.ExtendedClass(String,boolean)", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 154 | f"{project_name}.src.main.java.com.example.BasicClasses.ExtendedClass.getName()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 155 | f"{project_name}.src.main.java.com.example.BasicClasses.Drawable.draw()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 156 | f"{project_name}.src.main.java.com.example.BasicClasses.Drawable.clear()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 157 | f"{project_name}.src.main.java.com.example.BasicClasses.Circle.Circle(double)", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 158 | f"{project_name}.src.main.java.com.example.BasicClasses.Circle.draw()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 159 | f"{project_name}.src.main.java.com.example.BasicClasses.Shape.Shape(String)", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 160 | f"{project_name}.src.main.java.com.example.BasicClasses.Shape.area()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_java_comprehensive.py | 161 | f"{project_name}.src.main.java.com.example.BasicClasses.Shape.getColor()", | STRING |
| CRITICAL⚡ | codebase_rag/tests/test_dead_code_csharp_main_entry.py | 205 | "proj.app.Program.App.Program.Main(System.String[])", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dead_code_csharp_main_entry.py | 211 | "proj.app.Program.App.Program.Main(global::System.String[])", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_dead_code_csharp_main_entry.py | 217 | "proj.app.Program.App.Program.Main(params System.String[])", | CODE |
| CRITICAL | …rag/tests/test_parameter_nodes_languages_end_to_end.py | 181 | "proj.cs.App.App.App.Build(string, Widget, int[])": [ | CODE |
| CRITICAL⚡ | …rag/tests/test_parameter_nodes_languages_end_to_end.py | 240 | ("proj.cs.App.App.App.App(Widget).0", "proj.cs.App.App.Widget"), | CODE |
| CRITICAL⚡ | …rag/tests/test_parameter_nodes_languages_end_to_end.py | 242 | "proj.cs.App.App.App.Build(string, Widget, int[]).1", | CODE |
| CRITICAL⚡ | codebase_rag/tests/test_csharp_untyped_member_reads.py | 234 | assert "proj.src.Lib.Lib.Helper.Run(string)" not in targets, sorted(targets) | CODE |
| CRITICAL⚡ | …ebase_rag/tests/test_interface_dispatch_single_impl.py | 127 | "proj.com.example.Factory.Factory.getFieldName(String)", | CODE |
| CRITICAL⚡ | …ebase_rag/tests/test_interface_dispatch_single_impl.py | 128 | "proj.com.example.Namer.Namer.translateName(String)", | CODE |
| CRITICAL⚡ | …ebase_rag/tests/test_interface_dispatch_single_impl.py | 131 | "proj.com.example.Factory.Factory.getFieldName(String)", | CODE |
| CRITICAL⚡ | …ebase_rag/tests/test_interface_dispatch_single_impl.py | 132 | "proj.com.example.NamerPolicy.NamerPolicy.translateName(String)", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 221 | # on whether tracing had started by then, never on whether anything is tested. | COMMENT |
| LOW | realtime_updater.py | 201 | # │ Real-Time Graph Update Steps │ | COMMENT |
| LOW | .coderabbit.yaml | 1 | # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json | COMMENT |
| LOW | .coderabbit.yaml | 21 | errors, security vulnerabilities, race conditions, data loss or | COMMENT |
| LOW | evals/first_tool.py | 1 | # First-tool eval (issue #2359): for a structural question the interactive | COMMENT |
| LOW | evals/cgr_graph.py | 141 | cs.NodeLabel.CLASS.value, | COMMENT |
| LOW | evals/cgr_graph.py | 1841 | return self._definition_location_rows( | COMMENT |
| LOW | evals/polyglot.py | 1 | # Polyglot (cross-language) ingestion eval. Every other eval indexes a | COMMENT |
| LOW | evals/constants.py | 401 | "package feed will do this); skipping rather than blocking the run" | COMMENT |
| LOW | evals/constants.py | 421 | NODE_SKIP_NO_BINARY = "{binary} is not on PATH" | COMMENT |
| LOW | evals/agentic_qa.py | 1 | # Agentic A/B benchmark (issue #1374): same model, same agent loop, only the | COMMENT |
| LOW | evals/indexing_bench.py | 1 | # Indexing-time benchmark over pinned real-world corpora (issue #1374, phase 1). | COMMENT |
| LOW | evals/inheritance.py | 321 | db = ci.CompilationDatabase.fromDirectory(str(target.resolve())) | COMMENT |
| LOW | evals/inheritance.py | 341 | index = ci.Index.create() | COMMENT |
| LOW | evals/inheritance.py | 361 | if not source.exists(): | COMMENT |
| LOW | evals/inheritance.py | 401 | # cwd-dependence fixed in `run_cpp_oracle`'s walk). | COMMENT |
| LOW | evals/inheritance.py | 521 | # last segment to compare like with like. | COMMENT |
| LOW | evals/oracles/go_ast.go | 1 | // Authoritative Go structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/php_oracle/php_ast.js | 1 | // Authoritative PHP structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/php_oracle/php_ast.js | 21 | // Containment edges (matching how cgr models PHP containment): | COMMENT |
| LOW | evals/oracles/rs_oracle/src/main.rs | 1 | // Authoritative Rust structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/rs_oracle/src/main.rs | 21 | // DEFINES_METHOD : the method's owner type (or trait) -> Method | COMMENT |
| LOW | evals/oracles/lua_oracle/lua_ast.js | 1 | // Authoritative Lua structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/csharp_oracle/Program.cs | 1 | // Authoritative C# structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/csharp_oracle/Program.cs | 21 | // | COMMENT |
| LOW | evals/oracles/csharp_oracle/Program.cs | 101 | COMMENT | |
| LOW | evals/oracles/java_oracle/Oracle.java | 1 | // Authoritative Java structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/ruby_oracle/ruby_ast.js | 1 | // Authoritative Ruby structure oracle for the cgr eval harness (issue #1190). | COMMENT |
| LOW | evals/oracles/ruby_oracle/ruby_ast.js | 21 | // real cgr limitation. Its BODY is still walked, because methods and classes | COMMENT |
| LOW | evals/oracles/ruby_oracle/ruby_ast.js | 61 | // is indexed in UTF-16 code units, so for any source containing a character | COMMENT |
| LOW | evals/oracles/ts_oracle/ts_ast.js | 1 | // Authoritative TypeScript structure oracle for the cgr eval harness. | COMMENT |
| LOW | evals/oracles/ts_oracle/ts_ast.js | 21 | // | COMMENT |
| LOW | codebase_rag/dead_code.py | 301 | name: str, is_method: bool, path: str, qn: str, project_prefix: str | COMMENT |
| LOW | codebase_rag/dead_code.py | 341 | # computed-name brackets, so the `[Symbol.` prefix on a JS/TS file | COMMENT |
| LOW | codebase_rag/dead_code.py | 561 | method_to_class: dict[str, str], | COMMENT |
| LOW | codebase_rag/dead_code.py | 981 | # override's callee still needs its class rooted, and vice versa). | COMMENT |
| LOW | codebase_rag/duplicates.py | 1 | # Structural duplicate (clone) detection engine. Grouping and overlap | COMMENT |
| LOW | codebase_rag/docker-compose.yaml | 1 | # Ports publish on loopback by default: Memgraph Bolt, Memgraph Lab, and | COMMENT |
| LOW | codebase_rag/gloss_anchor.py | 61 | # in a NON-literal type: `template` alone also matched C++'s | COMMENT |
| LOW | codebase_rag/types_defs.py | 741 | # with the exact copies, the only member pairs that are duplicates. Empty | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 141 | # the process that earned it. | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 161 | # (a reingest's prologue, the embedding purge before an index or delete) and | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 201 | CYPHER_CLEAR_STOPPED_CLI_SYNC_MARKER = ( | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 221 | # fail-closed here too. | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 261 | COMMENT | |
| LOW | codebase_rag/cypher_queries.py | 501 | sorted( | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 901 | # Gloss nodes (issue #1808). The node, its ANNOTATES edge and every MENTIONS | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 961 | WITH g, mentioned | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1001 | g.target_hash AS target_hash, g.anchor_state AS anchor_state, | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1041 | CYPHER_DEFINITION_SPANS = f"""MATCH (t:{_QUOTE_SPAN_LABELS}) | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1081 | SET g.anchor_state = $anchor_state, g.candidate_qns = $candidate_qns""" | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1141 | # The same, for a definition and its `name@<line>` variants: a note filed | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1501 | # capture did not see were written by the check itself. Project-scoped for | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1521 | # not "newly created": a pre-existing node another project imports | COMMENT |
| LOW | codebase_rag/cypher_queries.py | 1541 | # beyond what the capture holds (bot review, #1718). A typed pattern with | COMMENT |
| LOW | codebase_rag/config.py | 161 | if not stripped or stripped == cs.DEFAULT_API_KEY: | COMMENT |
| LOW | codebase_rag/config.py | 241 | # A blank value means "not set": `MEMGRAPH_HOST=` copied from | COMMENT |
| LOW | codebase_rag/config.py | 461 | # The model's OUTPUT budget per request. Without it pydantic-ai falls back | COMMENT |
| LOW | codebase_rag/graph_updater.py | 661 | f.flush() | COMMENT |
| LOW | codebase_rag/graph_updater.py | 681 | # unusable, and the following `fstat` then raised | COMMENT |
| 506 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | realtime_updater.py | 137 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | realtime_updater.py | 425 | except Exception as exc: # noqa: BLE001 | CODE |
| MEDIUM | CONTRIBUTING.md | 540 | print(f"Error: {e}", file=sys.stderr) | CODE |
| LOW | CONTRIBUTING.md | 596 | except Exception as e: | CODE |
| LOW | evals/polyglot.py | 255 | except Exception: | CODE |
| LOW | evals/agentic_qa.py | 435 | except Exception as exc: # one bad question must not sink the run | CODE |
| LOW | evals/inheritance.py | 322 | except Exception: | CODE |
| LOW | evals/oracles/cpp_oracle.py | 78 | except Exception: | CODE |
| LOW | evals/oracles/cpp_oracle.py | 86 | except Exception: # noqa: S112 | CODE |
| LOW | evals/oracles/cpp_oracle.py | 100 | except Exception: | CODE |
| LOW⚡ | codebase_rag/graph_updater.py | 6662 | except Exception as exc: | CODE |
| LOW⚡ | codebase_rag/graph_updater.py | 6668 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 254 | except Exception as e: | CODE |
| LOW | codebase_rag/graph_updater.py | 1539 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 2531 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 2806 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 2891 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 2963 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3011 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3051 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3132 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 3204 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3277 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3353 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3375 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3780 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3816 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3877 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 3957 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4007 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4072 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4104 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4188 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4247 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4290 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4320 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4381 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4451 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4483 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4511 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4550 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4576 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 4600 | except Exception as error: # noqa: BLE001 -- see docstring | CODE |
| LOW | codebase_rag/graph_updater.py | 5311 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 5464 | except Exception as e: | CODE |
| LOW | codebase_rag/graph_updater.py | 5494 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 5585 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 6096 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 7469 | except Exception: # noqa: BLE001 -- an unreadable store is not a verdict | CODE |
| LOW | codebase_rag/graph_updater.py | 7633 | except Exception: # noqa: BLE001 -- the caller decides what to do | CODE |
| LOW | codebase_rag/graph_updater.py | 8102 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 8113 | except Exception as exc: | CODE |
| LOW | codebase_rag/graph_updater.py | 8293 | except Exception as error: # noqa: BLE001 -- see docstring | CODE |
| LOW | codebase_rag/graph_updater.py | 8419 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 8661 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 8702 | except Exception: | CODE |
| LOW | codebase_rag/graph_updater.py | 8819 | except Exception as e: | CODE |
| LOW | codebase_rag/graph_updater.py | 8861 | except Exception as e: | CODE |
| MEDIUM | codebase_rag/vector_store.py | 132 | def _selected_backend() -> VectorStoreBackend | None: | CODE |
| LOW | codebase_rag/vector_store.py | 181 | except Exception as e: | CODE |
| 257 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | evals/dead_code.py | 3 | # codebase_rag.dead_code. The in-memory harness cannot query a database, so it | COMMENT |
| MEDIUM | evals/duplicates.py | 3 | # the database. The in-memory harness cannot query a database, so a small | COMMENT |
| MEDIUM | evals/agentic_qa.py | 5 | # (mean/p50/p95), and model tokens per question. One harness therefore fills | COMMENT |
| MEDIUM | evals/agentic_qa.py | 709 | # this harness must too, or every generated query runs against an | COMMENT |
| MEDIUM | evals/oracles/csharp_oracle/Program.cs | 1 | // Authoritative C# structure oracle for the cgr eval harness. | COMMENT |
| MEDIUM | codebase_rag/logs.py | 716 | # not a pass failure, and must not borrow the message above: the test harness | COMMENT |
| LOW | codebase_rag/parser_fingerprint.py | 335 | # Reading a distribution's metadata can raise, not just return None: a | COMMENT |
| MEDIUM | codebase_rag/parsers/type_inference.py | 750 | # no recorded file (a mock harness, or an unchanged file on an | COMMENT |
| MEDIUM | codebase_rag/parsers/call_resolver.py | 5028 | # Naming convention (XxxProtocol -> Xxx) is robust when it applies; | COMMENT |
| MEDIUM | codebase_rag/parsers/flow_access/processor.py | 4234 | # Definitely tainted arg: emit the caller->callee arg edge now. | COMMENT |
| MEDIUM | codebase_rag/parsers/io_access/extract.py | 1079 | # least two: robust even when the `name` field is absent under parser error | COMMENT |
| MEDIUM | codebase_rag/tools/shell_command.py | 2131 | # but both signal intent the harness must not honor; a repo-local | COMMENT |
| MEDIUM | codebase_rag/constants/deadcode_roots.py | 70 | # Rust test attributes: the harness invokes these functions with no call site. | COMMENT |
| MEDIUM | codebase_rag/tests/test_relative_import_package_init.py | 1 | # L2 residual from the evals/ harness: relative imports inside an __init__.py | COMMENT |
| MEDIUM | codebase_rag/tests/test_protocol_operator_dispatch.py | 1 | # L3 finding from the evals/ harness: an operator on a Protocol-typed attribute | COMMENT |
| MEDIUM | codebase_rag/tests/test_typescript_structure_oracle.py | 1 | # Covers the TypeScript structure oracle harness (evals/oracles/ts_oracle + | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_cpp_move_semantics.py | 12 | """Create a comprehensive C++ project with move semantics patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_cpp_stl_usage.py | 11 | """Create a comprehensive C++ project with STL usage.""" | STRING |
| MEDIUM | codebase_rag/tests/test_cpp_namespaces.py | 11 | """Create a comprehensive C++ project with namespace patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_python_inheritance.py | 12 | """Create a temporary project with comprehensive inheritance patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_javascript_destructuring.py | 11 | """Create a comprehensive JavaScript project with all destructuring patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_cpp_casting_operators.py | 11 | """Create a comprehensive C++ project with casting operator patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/conftest.py | 188 | # The probe is the harness's, not the run's: what the walk logs (each | COMMENT |
| MEDIUM | codebase_rag/tests/test_protocol_impl_resolution.py | 1 | # L3 finding from the evals/ harness: a call on a parameter typed as a Protocol | COMMENT |
| MEDIUM | codebase_rag/tests/test_cpp_modules.py | 11 | """Create a comprehensive C++ project with modules patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_relative_import_root_level.py | 1 | # L2 finding from the evals/ harness: `from . import <submodule>` at the | COMMENT |
| MEDIUM | codebase_rag/tests/test_cpp_coroutines.py | 11 | """Create a comprehensive C++ project with coroutines patterns.""" | STRING |
| MEDIUM | …rag/tests/test_incremental_cross_language_collision.py | 9 | # needs the query-capable _StatefulIngestor: the mock harness never | COMMENT |
| MEDIUM | codebase_rag/tests/test_callable_field_calls.py | 1 | # L3 finding from the evals/ harness: fqn_config.get_name(node) invokes a | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_fuzz_harnesses.py | 192 | # Seeds that are reproducers for an OPEN defect: the harness is expected to | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_fuzz_harnesses.py | 195 | # any other, and the harness re-detects a regression. | COMMENT |
| MEDIUM | codebase_rag/tests/test_fuzz_harnesses.py | 328 | # The harness picks the language from the provider, so drive | COMMENT |
| MEDIUM | codebase_rag/tests/test_fuzz_harnesses.py | 445 | # these: each needs the guard the harness calls explicitly, because | COMMENT |
| MEDIUM | …ebase_rag/tests/test_col_keyed_location_rehydration.py | 6 | # like the Phase-1 C# harness. | COMMENT |
| MEDIUM | codebase_rag/tests/test_scala_definitions.py | 13 | # measurement was of my harness, not of Scala support. Recorded because a | COMMENT |
| MEDIUM | codebase_rag/tests/test_javascript_structure_oracle.py | 1 | # Covers the JavaScript structure oracle harness (evals/oracles/ts_oracle over | COMMENT |
| MEDIUM | codebase_rag/tests/test_io_handle_edges.py | 1255 | # field on its own harness type must not pick up the production | COMMENT |
| MEDIUM | codebase_rag/tests/test_lua_comprehensive.py | 1802 | """Final comprehensive test to ensure we've covered major Lua features.""" | STRING |
| MEDIUM | codebase_rag/tests/test_javascript_imports.py | 11 | """Create a comprehensive JavaScript project with all import patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_typescript_advanced_types.py | 12 | """Create a comprehensive TypeScript project with advanced type patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_protocol_dispatch_resolution.py | 1 | # L3 finding from the evals/ harness: DefinitionProcessor._extract_decorators calls | COMMENT |
| MEDIUM | codebase_rag/tests/test_ruby_structure_oracle.py | 1 | # Covers the Ruby structure oracle harness (evals/oracles/ruby_oracle): | COMMENT |
| MEDIUM | codebase_rag/tests/test_dynamic_trace_sourcemap.py | 311 | # generated location, so the robust invariant is: at least one project frame | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_imports.py | 11 | """Create a comprehensive Python project with all import patterns.""" | STRING |
| MEDIUM | …debase_rag/tests/test_typescript_namespaces_modules.py | 13 | """Create a comprehensive TypeScript project with namespace/module patterns.""" | STRING |
| MEDIUM | …base_rag/tests/test_external_package_name_collision.py | 1 | # L2 residual from the evals/ harness: when cgr is pointed at a directory that | COMMENT |
| MEDIUM | codebase_rag/tests/test_cpp_concepts.py | 12 | """Create a comprehensive C++ project with concepts patterns.""" | STRING |
| MEDIUM | …ebase_rag/tests/test_truthiness_dispatch_resolution.py | 1 | # L3 finding from the evals/ harness: `if self.function_registry:` tests an object | COMMENT |
| MEDIUM | codebase_rag/tests/test_getattr_dispatch.py | 1 | # L3 finding from the evals/ harness: JavaTypeResolverMixin._find_registry_entries_under | COMMENT |
| MEDIUM | codebase_rag/tests/test_java_structure_oracle.py | 1 | # Covers the Java structure oracle harness (evals/oracles/java_oracle + | COMMENT |
| MEDIUM | codebase_rag/tests/test_l3_decorator_normalization.py | 1 | # Covers the L3 eval harness (evals/calls_trace.py): a call to a functools.wraps | COMMENT |
| MEDIUM | codebase_rag/tests/test_local_alias_calls.py | 1 | # L3 finding from the evals/ harness: a function bound to a local variable and | COMMENT |
| MEDIUM | codebase_rag/tests/test_javascript_object_patterns.py | 17 | """Create a comprehensive JavaScript project with object patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_cpp_ranges_views.py | 11 | """Create a comprehensive C++ project with ranges and views patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_rust_structure_oracle.py | 1 | # Covers the Rust structure oracle harness (evals/oracles/rs_oracle + | COMMENT |
| MEDIUM | codebase_rag/tests/test_typescript_declaration_files.py | 13 | """Create a comprehensive TypeScript project with declaration file patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_javascript_error_handling.py | 17 | """Create a comprehensive JavaScript project with error handling patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_java_collections_frameworks.py | 1038 | """Test comprehensive map operations and key-value handling.""" | STRING |
| MEDIUM | codebase_rag/tests/test_cpp_constructor_destructor.py | 11 | """Create a comprehensive C++ project with constructor/destructor patterns.""" | STRING |
| MEDIUM | codebase_rag/tests/test_inherits_attribute_base.py | 1 | # L2 finding from the evals/ harness: cgr captured INHERITS for direct-name | COMMENT |
| 76 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | evals/polyglot.py | 117 | "def helper(x):\n return x + 1\n\n\ndef run():\n return helper(1)\n" | STRING |
| LOW | evals/polyglot.py | 155 | " def helper(): Int = 1\n" | STRING |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 194 | (repo / "pkg" / "util.py").write_text("def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 753 | worker, outcome = _commit_in_background(repo, "def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 769 | first.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 773 | worker, outcome = _commit_in_background(repo, "def helper():\n return 3\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 788 | worker, outcome = _commit_in_background(repo, "def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 810 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 822 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 836 | repo, "def helper():\n return 2\n" | CODE |
| LOW⚡ | codebase_rag/tests/test_checkout_state.py | 1367 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 64 | "pkg/util.py": "def helper():\n return 1\n", | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 155 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 310 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 849 | _UTIL_BY_AN_OLDER_CGR = "def helper():\n return 7\n" | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 971 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 998 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 1019 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 1296 | tx.stage("pkg/util.py", f"def helper():\n {text}\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 1402 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 1431 | tx.stage("pkg/util.py", f"def helper():\n {text}\n") | CODE |
| LOW | codebase_rag/tests/test_checkout_state.py | 1707 | tx.stage("pkg/util.py", "def helper():\n return 2\n") | CODE |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 1087 | "\n\ndef helper():\n global overload\n return overload\n", | CODE |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 1127 | "\n\ndef helper():\n overload = identity\n return overload\n", | CODE |
| LOW⚡ | codebase_rag/tests/test_py_typing_overload_stubs.py | 1339 | text = "def helper(x):\n return x\n\n\ndef use():\n return helper(1)\n" | STRING |
| LOW⚡ | codebase_rag/tests/test_py_typing_overload_stubs.py | 1342 | "@overload\ndef helper(x: int) -> int: ...\n" | STRING |
| LOW⚡ | codebase_rag/tests/test_py_typing_overload_stubs.py | 1343 | "@overload\ndef helper(x: str) -> str: ...\n" | STRING |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 741 | " overload = something\n\n\ndef helper():\n" | STRING |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 761 | "from typing import overload\n\n\ndef helper():\n" | STRING |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 829 | "def helper():\n global overload\n return overload" | STRING |
| LOW | codebase_rag/tests/test_py_typing_overload_stubs.py | 838 | "from typing import overload\n\n\ndef helper():\n" | STRING |
| LOW | codebase_rag/tests/test_reingest_package_flip.py | 36 | UTIL = "def helper():\n return 1\n" | CODE |
| LOW | codebase_rag/tests/test_reingest_package_flip.py | 165 | (root / "pkg" / "util.py").write_text("def helper():\n return 2\n", "utf-8") | CODE |
| LOW | codebase_rag/tests/test_reingest_package_flip.py | 211 | (root / "pkg" / "util.py").write_text("def helper():\n return 2\n", "utf-8") | CODE |
| LOW | codebase_rag/tests/test_javascript_destructuring.py | 273 | async function processData() { | CODE |
| LOW | codebase_rag/tests/test_javascript_destructuring.py | 380 | function handleRequest({ | CODE |
| LOW | codebase_rag/tests/test_javascript_destructuring.py | 390 | function processData({ | CODE |
| LOW | codebase_rag/tests/test_index_full_snapshot.py | 47 | (root / "pkg" / "util.py").write_text("def helper():\n return 1\n") | CODE |
| LOW | codebase_rag/tests/test_indexing_bench.py | 9 | def helper(): | CODE |
| LOW | …_rag/tests/test_python_cross_file_advanced_patterns.py | 150 | def process_data(data): | CODE |
| LOW | …_rag/tests/test_python_cross_file_advanced_patterns.py | 166 | def handle_request(self, user_input): | CODE |
| LOW | codebase_rag/tests/test_jupyter_notebooks.py | 590 | "util.py": "def helper():\n return 1\n", | CODE |
| LOW | codebase_rag/tests/test_crash_correlation.py | 746 | def helper(): | STRING |
| LOW | codebase_rag/tests/test_class_only_capture_call_walk.py | 35 | "pkg/util.py": "def helper():\n return 1\n", | CODE |
| LOW⚡ | codebase_rag/tests/test_flow_edges.py | 484 | "def helper(v):\n pass\n\n" | CODE |
| LOW⚡ | codebase_rag/tests/test_flow_edges.py | 496 | "def helper(v):\n pass\n\n" | CODE |
| LOW⚡ | codebase_rag/tests/test_flow_edges.py | 605 | "def helper(v):\n pass\n\n" | CODE |
| LOW⚡ | codebase_rag/tests/test_decorators.py | 66 | def my_method(self) -> None: | CODE |
| LOW | codebase_rag/tests/test_function_ingest.py | 73 | code = "def my_function(): pass" | CODE |
| LOW | codebase_rag/tests/test_function_ingest.py | 199 | def my_method(self): | CODE |
| LOW | codebase_rag/tests/test_function_ingest.py | 221 | def my_method(self): | CODE |
| LOW | codebase_rag/tests/test_function_ingest.py | 426 | def my_method(self): | CODE |
| LOW | codebase_rag/tests/test_function_ingest.py | 271 | code = "def my_function(): pass" | STRING |
| LOW | codebase_rag/tests/test_function_ingest.py | 307 | code = "def my_function(): pass" | STRING |
| LOW | codebase_rag/tests/test_function_ingest.py | 450 | code = "def my_function(): pass" | STRING |
| LOW | codebase_rag/tests/test_edit_contract.py | 564 | "pkg/util.py": "def helper(a):\n return a + 1\n", | CODE |
| LOW | codebase_rag/tests/test_edit_contract.py | 778 | "pkg/util.py": "def helper(a):\n" + body + "\n\ndef twin(a):\n" + body, | CODE |
| LOW | codebase_rag/tests/test_edit_contract.py | 803 | "pkg/util.py": "def helper(a):\n return a\n\n\ndef other(a):\n return a\n", | CODE |
| LOW | codebase_rag/tests/test_edit_contract.py | 828 | "pkg/util.py": "def helper(a):\n return a\n", | CODE |
| LOW | codebase_rag/tests/test_edit_contract.py | 861 | "pkg/util.py": "def helper(a):\n return a\n", | CODE |
| 219 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | evals/cgr_graph.py | 2584 | CODE | |
| LOW | evals/cgr_graph.py | 2803 | CODE | |
| LOW | evals/cgr_graph.py | 536 | CODE | |
| LOW | evals/cgr_graph.py | 784 | CODE | |
| LOW | evals/cgr_graph.py | 964 | CODE | |
| LOW | evals/cgr_graph.py | 1054 | CODE | |
| LOW | evals/cgr_graph.py | 2188 | CODE | |
| LOW | evals/cgr_graph.py | 2367 | CODE | |
| LOW | evals/ast_oracle.py | 56 | CODE | |
| LOW | evals/ast_oracle.py | 83 | CODE | |
| LOW | evals/ast_oracle.py | 161 | CODE | |
| LOW | evals/ast_oracle.py | 235 | CODE | |
| LOW | evals/ast_oracle.py | 248 | CODE | |
| LOW | evals/static_calls.py | 66 | CODE | |
| LOW | evals/agentic_qa.py | 165 | CODE | |
| LOW | evals/retrieval.py | 92 | CODE | |
| LOW | evals/import_resolution.py | 36 | CODE | |
| LOW | evals/instantiation.py | 43 | CODE | |
| LOW | evals/instantiation.py | 64 | CODE | |
| LOW | evals/inheritance.py | 188 | CODE | |
| LOW | codebase_rag/dead_code.py | 489 | CODE | |
| LOW | codebase_rag/dead_code.py | 631 | CODE | |
| LOW | codebase_rag/dead_code.py | 874 | CODE | |
| LOW | codebase_rag/duplicates.py | 251 | CODE | |
| LOW | codebase_rag/config.py | 716 | CODE | |
| LOW | codebase_rag/graph_updater.py | 4121 | CODE | |
| LOW | codebase_rag/graph_updater.py | 4305 | CODE | |
| LOW | codebase_rag/graph_updater.py | 5908 | CODE | |
| LOW | codebase_rag/graph_updater.py | 8590 | CODE | |
| LOW | codebase_rag/structural_delta.py | 1085 | CODE | |
| LOW | codebase_rag/vector_store.py | 164 | CODE | |
| LOW | codebase_rag/readme_sections.py | 398 | CODE | |
| LOW | codebase_rag/parser_loader.py | 66 | CODE | |
| LOW | codebase_rag/cli.py | 2712 | CODE | |
| LOW | codebase_rag/language_spec.py | 184 | CODE | |
| LOW | codebase_rag/language_spec.py | 206 | CODE | |
| LOW | codebase_rag/language_spec.py | 338 | CODE | |
| LOW | codebase_rag/flow_verdict.py | 210 | CODE | |
| LOW | codebase_rag/context_slice.py | 394 | CODE | |
| LOW | codebase_rag/graph_query.py | 1120 | CODE | |
| LOW | codebase_rag/parsers/positional_params.py | 158 | CODE | |
| LOW | codebase_rag/parsers/positional_params.py | 225 | CODE | |
| LOW | codebase_rag/parsers/positional_params.py | 257 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 1462 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 2431 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 4622 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 7836 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 7999 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 8742 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 9097 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 9931 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 10642 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 10981 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11176 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11459 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11492 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11589 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11789 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11804 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 11818 | CODE | |
| 203 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | realtime_updater.py | 200 | # ┌─────────────────────────────────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | realtime_updater.py | 202 | # ├─────────────────────────────────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | realtime_updater.py | 212 | # └─────────────────────────────────────────────────────────────────────┘ | COMMENT |
| MEDIUM | codebase_rag/parsers/positional_params.py | 254 | # --- C# ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | codebase_rag/parsers/parameter_nodes.py | 429 | # --- C# ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/parsers/field_nodes.py | 610 | # --- C# ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 177 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 179 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 311 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 313 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 445 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 447 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 1204 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_python_class_body_aliases.py | 1206 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 702 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 704 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 945 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 947 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1022 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1024 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1116 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1118 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1302 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1304 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1390 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_python_class_body_aliases.py | 1392 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_js_object_member_calls.py | 295 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_js_object_member_calls.py | 297 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_object_member_calls.py | 96 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_object_member_calls.py | 98 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_js_call_binding_scope.py | 132 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | codebase_rag/tests/test_js_call_binding_scope.py | 134 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_call_binding_scope.py | 69 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_call_binding_scope.py | 71 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_call_binding_scope.py | 266 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_js_call_binding_scope.py | 268 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 226 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 228 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 656 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 658 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 72 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 74 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 399 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 401 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 559 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …ebase_rag/tests/test_js_ts_new_receiver_member_call.py | 561 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_same_stem_data_file_sync.py | 204 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_same_stem_data_file_sync.py | 206 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_same_stem_data_file_sync.py | 319 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_same_stem_data_file_sync.py | 321 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | codebase_rag/tests/test_parameter_nodes_languages.py | 257 | # --- C# ---------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | codebase_rag/graph_updater.py | 941 | except (OSError, ValueError): | CODE |
| HIGH | codebase_rag/graph_updater.py | 951 | except OSError: | CODE |
| HIGH | codebase_rag/graph_updater.py | 962 | except OSError: | CODE |
| HIGH | codebase_rag/graph_updater.py | 5891 | except OSError: | CODE |
| HIGH | codebase_rag/capture.py | 74 | except ValueError: | CODE |
| HIGH | codebase_rag/structural_check.py | 277 | except OSError: | CODE |
| HIGH | codebase_rag/main.py | 1390 | except (termios.error, OSError): | CODE |
| HIGH | codebase_rag/main.py | 1385 | except Exception: # noqa: S110 - best-effort; the terminal restore below must still run | CODE |
| HIGH | codebase_rag/graph_query.py | 296 | except (OSError, RuntimeError): | CODE |
| HIGH | codebase_rag/parsers/build_lock.py | 153 | except OSError: | CODE |
| HIGH | codebase_rag/parsers/import_processor.py | 1492 | except Exception: # noqa: S110 - a destructor must not raise | CODE |
| HIGH | codebase_rag/parsers/import_processor.py | 6294 | except OSError: | CODE |
| HIGH | codebase_rag/parsers/import_processor.py | 5148 | except OSError: | CODE |
| HIGH | codebase_rag/parsers/stdlib_extractor.py | 345 | except ( | CODE |
| HIGH | codebase_rag/parsers/stdlib_extractor.py | 485 | except ( | CODE |
| HIGH | codebase_rag/parsers/stdlib_extractor.py | 692 | except ( | CODE |
| HIGH | codebase_rag/parsers/document_tier.py | 1285 | except (OSError, RuntimeError, ValueError): | CODE |
| HIGH | codebase_rag/parsers/js_ts/utils.py | 186 | except Exception: # noqa: S110 - a failed query falls back to the walk below | CODE |
| HIGH | codebase_rag/parsers/py/ast_analyzer.py | 1071 | except Exception: # noqa: S110 - a failed query falls back to the walk below | CODE |
| HIGH | codebase_rag/parsers/py/ast_analyzer.py | 1747 | except Exception: # noqa: S110 - a failed query falls back to the walk below | CODE |
| HIGH | codebase_rag/parsers/py/variable_analyzer.py | 397 | except Exception: # noqa: S110 - a failed query falls back to the walk below | CODE |
| HIGH | codebase_rag/parsers/go_frontend/frontend.py | 341 | except OSError: | CODE |
| HIGH | codebase_rag/tools/health_checker.py | 80 | except ImportError: # pragma: no cover - depends on extras | CODE |
| HIGH | codebase_rag/tests/test_mcp_project_scoping.py | 3695 | except Exception: | CODE |
| HIGH | codebase_rag/tests/test_mcp_project_scoping.py | 3725 | except Exception: | CODE |
| HIGH | codebase_rag/tests/conftest.py | 879 | except Exception: | CODE |
| HIGH | codebase_rag/tests/conftest.py | 401 | except FileNotFoundError: | CODE |
| HIGH | codebase_rag/tests/test_incremental_unreadable_retry.py | 326 | except PermissionError: | CODE |
| HIGH | …_rag/tests/integration/test_pinned_qdrant_image_e2e.py | 52 | except (urllib.error.URLError, ConnectionError, OSError): | CODE |
| HIGH | codebase_rag/utils/token_utils.py | 94 | except Exception: # noqa: S110 | CODE |
| HIGH | codebase_rag/stack/health.py | 221 | except OSError: | CODE |
| HIGH | codebase_rag/services/graph_service.py | 552 | except Exception: # noqa: S110 - _execute_query logged it; DDL failure must not stop ingestion | CODE |
| HIGH | codebase_rag/services/graph_service.py | 608 | except Exception: # noqa: S110 - _execute_query logged it; DDL failure must not stop ingestion | CODE |
| HIGH | codebase_rag/services/graph_service.py | 616 | except Exception: # noqa: S110 - _execute_query logged it; DDL failure must not stop ingestion | CODE |
| HIGH | optimize/memory_profile.py | 225 | except Exception: | CODE |
| HIGH | benchmarks/bench_pathlib_vs_string.py | 68 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | evals/oracles/lua_oracle.py | 0 | why this oracle cannot run here, or none when it can (issue #1639). on a clean checkout this answers none because the de | STRING |
| HIGH | evals/oracles/php_oracle.py | 0 | why this oracle cannot run here, or none when it can (issue #1639). on a clean checkout this answers none because the de | STRING |
| HIGH | evals/oracles/ruby_oracle.py | 0 | why this oracle cannot run here, or none when it can (issue #1639). on a clean checkout this answers none because the de | STRING |
| HIGH | evals/oracles/typescript_oracle.py | 0 | why this oracle cannot run here, or none when it can (issue #1639). on a clean checkout this answers none because the de | STRING |
| HIGH | codebase_rag/tests/test_import_distance_calculation.py | 0 | create a graphupdater instance with mock dependencies for testing. | STRING |
| HIGH | …se_rag/tests/test_python_relative_import_resolution.py | 0 | create a graphupdater instance with mock dependencies for testing. | STRING |
| HIGH | …base_rag/tests/test_python_call_resolution_fallback.py | 0 | create a graphupdater instance with mock dependencies for testing. | STRING |
| HIGH | …se_rag/tests/test_python_wildcard_import_resolution.py | 0 | create a graphupdater instance with mock dependencies for testing. | STRING |
| HIGH | codebase_rag/tests/test_mcp_list_directory.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_mcp_read_file.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_mcp_query_and_index.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_mcp_get_code_snippet.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_mcp_surgical_replace.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_mcp_write_file.py | 0 | create an mcp tools registry with mocked dependencies. | STRING |
| HIGH | codebase_rag/tests/test_csharp_out_of_solution_facts.py | 0 | <project sdk="microsoft.net.sdk"> <propertygroup> <targetframework>net8.0</targetframework> <nullable>enable</nullable> | STRING |
| HIGH | codebase_rag/tests/test_csharp_semantic_facts.py | 0 | <project sdk="microsoft.net.sdk"> <propertygroup> <targetframework>net8.0</targetframework> <nullable>enable</nullable> | STRING |
| HIGH | codebase_rag/tests/test_csharp_frontend_wiring.py | 0 | <project sdk="microsoft.net.sdk"> <propertygroup> <targetframework>net8.0</targetframework> <nullable>enable</nullable> | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 43 | # Code-Graph-RAG | COMMENT |
| MEDIUM | CONTRIBUTING.md | 1 | # Contributing to Code Graph RAG | COMMENT |
| MEDIUM | PYPI_README.md | 1 | # Code-Graph-RAG | COMMENT |
| MEDIUM | evals/constants.py | 771 | # never exercise this, yet monorepo RAG is cgr's headline. Graded on synthetic | COMMENT |
| MEDIUM | evals/README.md | 1300 | ### Next step: agentic resolved-rate (out of scope here) | COMMENT |
| MEDIUM | codebase_rag/constants/duplicates.py | 153 | # find_duplicate_code agentic tool output. | COMMENT |
| MEDIUM | codebase_rag/constants/providers.py | 106 | # when the embedding model's output does not match it. | COMMENT |
| MEDIUM | codebase_rag/tests/test_duplicates_tool.py | 1 | # The find_duplicate_code agentic tool validates its inputs before touching | COMMENT |
| MEDIUM | codebase_rag/tests/test_vector_store.py | 772 | # An embedding model whose output size differs from the collection's used to | COMMENT |
| MEDIUM | codebase_rag/tests/test_gloss_repair.py | 669 | # Three non-blank lines follow `run`, the full context window, so growth | COMMENT |
| MEDIUM | docs/index.md | 5 | # Code-Graph-RAG | COMMENT |
| MEDIUM | docs/index.md | 23 | ## What is Code-Graph-RAG? | COMMENT |
| MEDIUM | docs/claude-code-setup.md | 1 | # Claude Code Setup for Code-Graph-RAG MCP Server | COMMENT |
| MEDIUM | docs/architecture/overview.md | 20 | ### 2. RAG System (`codebase_rag/`) | COMMENT |
| MEDIUM | .github/workflows/copilot-code-review.yml | 3 | # Copilot's agentic code review needs a runner to start before its timeout, and | COMMENT |
| MEDIUM | .github/workflows/copilot-code-review.yml | 5 | # review degrades to "Lite" with a "couldn't run its full agentic review" | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | evals/__init__.py | 5 | __all__ = ["extract_cgr_graph", "extract_oracle_graph", "score"] | CODE |
| LOW | evals/oracles/__init__.py | 45 | __all__ = [ | CODE |
| LOW | codebase_rag/graph_updater.py | 2829 | def _settle_prune_marker(self) -> None: | CODE |
| LOW | codebase_rag/console_marks.py | 20 | __all__ = ["status_mark"] | CODE |
| LOW | codebase_rag/cli.py | 144 | def update_model_settings(*args: Any, **kwargs: Any) -> None: | CODE |
| LOW | codebase_rag/cli.py | 249 | def _update_and_validate_models(orchestrator: str | None, cypher: str | None) -> None: | CODE |
| LOW | codebase_rag/main.py | 1738 | def _update_single_model_setting(role: cs.ModelRole, model_string: str) -> None: | CODE |
| LOW | codebase_rag/checkout_state.py | 497 | def _settle(directory: Path, ids: Iterable[str]) -> None: | CODE |
| LOW | codebase_rag/analyzers/__init__.py | 4 | __all__ = ["FindingAnalyzer", "load_finding_rules"] | CODE |
| LOW | codebase_rag/parsers/definition_docstring.py | 385 | __all__ = ["extract_definition_docstring", "libclang_docstring"] | CODE |
| LOW | codebase_rag/parsers/module_docstring.py | 672 | __all__ = ["MODULE_DOC_SPECS", "ModuleDocSpec", "extract_module_docstring"] | CODE |
| LOW | codebase_rag/parsers/__init__.py | 9 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/import_processor.py | 2064 | def set_java_generated_roots(self, roots: list[tuple[str, ...]]) -> None: | CODE |
| LOW | codebase_rag/parsers/field_nodes.py | 1077 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/flow_access/__init__.py | 6 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/js_ts/__init__.py | 7 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/py/__init__.py | 7 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/go/__init__.py | 15 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/class_ingest/__init__.py | 3 | __all__ = ["ClassIngestMixin"] | CODE |
| LOW | codebase_rag/parsers/cpp_frontend/__init__.py | 10 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/dart/__init__.py | 16 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/frontends/__init__.py | 44 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/java_frontend/__init__.py | 9 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/java/__init__.py | 6 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/rs/__init__.py | 3 | __all__ = ["RustTypeInferenceEngine"] | CODE |
| LOW | codebase_rag/parsers/php/__init__.py | 7 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/lua/__init__.py | 3 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/scala/__init__.py | 17 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/cpp/__init__.py | 3 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/io_access/__init__.py | 46 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/py_frontend/__init__.py | 7 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/go_frontend/__init__.py | 18 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/handlers/__init__.py | 5 | __all__ = [ | CODE |
| LOW | codebase_rag/parsers/csharp_frontend/__init__.py | 13 | __all__ = [ | CODE |
| LOW | codebase_rag/trace/tracer.py | 63 | def set_workload(self, workload: str | None) -> None: | CODE |
| LOW | …debase_rag/tests/test_tool_calling_local_model_gate.py | 21 | def _set_orchestrator(monkeypatch: pytest.MonkeyPatch, provider: str) -> None: | CODE |
| LOW | codebase_rag/utils/json_io.py | 20 | __all__ = ["load_json", "loads_json"] | CODE |
| LOW | codebase_rag/utils/interruptible_thread.py | 22 | def _set_async_exc(ident: int, exc: type[BaseException] | None) -> None: | CODE |
| LOW | codebase_rag/workspaces/__init__.py | 16 | __all__ = [ | CODE |
| LOW | codebase_rag/editing/__init__.py | 39 | __all__ = [ | CODE |
| LOW | codebase_rag/stack/__init__.py | 13 | __all__ = [ | CODE |
| LOW | codebase_rag/services/__init__.py | 46 | __all__ = [ | CODE |
| LOW | cgr/__init__.py | 7 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/claude-code-setup.md | 116 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| HIGH | docs/claude-code-setup.md | 123 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| HIGH | docs/guide/mcp-server.md | 19 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| HIGH | docs/guide/mcp-server.md | 33 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| HIGH | docs/guide/mcp-server.md | 174 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| HIGH | docs/guide/mcp-server.md | 181 | --env CYPHER_API_KEY=your-api-key \ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | codebase_rag/tests/test_javascript_destructuring.py | 53 | address: { street: "123 Main St", city: "Anytown" }, | CODE |
| LOW | codebase_rag/tests/test_javascript_destructuring.py | 66 | contact: { email: "john@example.com", phone: "555-1234" } | CODE |
| LOW | codebase_rag/tests/test_lua_oop_patterns.py | 458 | local user = User:new("John Doe", "john@example.com") | CODE |
| LOW | codebase_rag/tests/test_java_relationship_validation.py | 256 | userService.createUser("John Doe", "john@example.com"); // CALLS UserService.createUser() | CODE |
| LOW | codebase_rag/tests/test_java_relationship_validation.py | 389 | User admin = new User("Admin", "admin@example.com"); | CODE |
| LOW | …debase_rag/tests/test_typescript_namespaces_modules.py | 341 | const isValidEmail = DataProcessing.Validators.isEmail('user@example.com'); | CODE |
| LOW | …debase_rag/tests/test_typescript_namespaces_modules.py | 1146 | console.log(fullName); // 'John Doe' | CODE |
| LOW | …debase_rag/tests/test_typescript_namespaces_modules.py | 1152 | const result = emailValidator.validate('user@example.com'); | CODE |
| LOW | codebase_rag/tests/test_javascript_object_patterns.py | 151 | street: '123 Main St', | CODE |
| LOW | codebase_rag/tests/test_javascript_object_patterns.py | 1123 | const email = new Email('user@example.com'); | CODE |
| LOW | codebase_rag/tests/test_javascript_object_patterns.py | 1525 | userModel.set('name', 'John Doe'); | CODE |
| LOW | codebase_rag/tests/test_rust_macros_metaprogramming.py | 854 | author: "Jane Doe".to_string(), | CODE |
| LOW | codebase_rag/tests/test_rust_macros_metaprogramming.py | 1051 | INSERT INTO users (name, email, age) VALUES ("John Doe", "john@example.com", 25) | CODE |
| LOW | codebase_rag/tests/test_java_advanced_oop.py | 1398 | author = "John Doe", | CODE |
| LOW | codebase_rag/tests/test_typescript_decorators.py | 1441 | return { id, name: 'User', email: 'user@example.com' }; | CODE |
| LOW | codebase_rag/tests/test_typescript_decorators.py | 1472 | const user = userService.createUser('John Doe', 'john@example.com', 30, 'ADMIN'); | CODE |
| LOW | codebase_rag/tests/test_javascript_modules.py | 1184 | const isValid = defaultValidator('email', 'test@test.com'); | CODE |
| LOW | …debase_rag/tests/test_cpp_designated_init_consteval.py | 934 | email_validator("user@example.com"); | CODE |
| LOW | codebase_rag/tests/test_java_modern_features.py | 474 | "name": "John Doe", | CODE |
| LOW | codebase_rag/tests/test_java_modern_features.py | 477 | "street": "123 Main St", | CODE |
| LOW | codebase_rag/tests/test_typescript_types.py | 816 | street: "123 Main St", | CODE |
| LOW | codebase_rag/tests/test_rust_pattern_matching.py | 251 | street: "123 Main St".to_string(), | CODE |
| LOW | codebase_rag/tests/test_java_complex_relationships.py | 328 | EmailNotifier emailNotifier = new EmailNotifier("user@example.com"); // CALLS EmailNotifier constructor | CODE |
| LOW | codebase_rag/tests/test_java_complex_relationships.py | 989 | PaymentStrategy creditCard = new CreditCardPayment("1234567890123456", "John Doe"); // CALLS CreditCardPayment c | CODE |
| LOW | codebase_rag/tests/test_java_complex_relationships.py | 999 | PaymentStrategy paypal = new PayPalPayment("user@example.com"); // CALLS PayPalPayment constructor | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | codebase_rag/tests/test_cli_smoke.py | 387 | # This file is the one place that really does spawn it. | COMMENT |
| MEDIUM | .github/labels.yml | 2 | # This file defines all labels used in issue templates and workflows | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | evals/agentic_qa.py | 620 | CODE | |
| LOW | codebase_rag/cli.py | 1209 | CODE | |
| LOW | codebase_rag/cli.py | 1680 | CODE | |
| LOW | codebase_rag/cli.py | 2712 | CODE | |
| LOW | codebase_rag/cli.py | 3117 | CODE | |
| LOW | codebase_rag/parsers/call_processor.py | 1839 | CODE | |
| LOW | codebase_rag/parsers/type_inference.py | 98 | CODE | |
| LOW | codebase_rag/parsers/utils.py | 1539 | CODE | |
| LOW | codebase_rag/parsers/csharp/type_inference.py | 240 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/getting-started/quickstart.md | 9 | ## Step 1: Parse a Repository | COMMENT |
| LOW | docs/getting-started/quickstart.md | 52 | ## Step 2: Query the Codebase | COMMENT |
| LOW | docs/getting-started/quickstart.md | 85 | ## Step 3: Export Graph Data | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | codebase_rag/tests/test_rust_closures_functions.py | 207 | // For demonstration purposes only | COMMENT |