From 1288a557e3e23b19a138f5fe1dddf04e91e84506 Mon Sep 17 00:00:00 2001 From: safishamsi Date: Sun, 5 Jul 2026 10:33:07 +0100 Subject: [PATCH 1/7] fix(extract): don't cache zero-node results; warn on empty source files (#1666) krishnateja7 reported that on a full-repo run a stable subset of Ruby files yields zero nodes (not even a file node), each fine in isolation, drop set byte-stable across runs. Root cause is a transient batch/parallel extraction that produces an empty result, which then gets cached and persists. Every extractable file yields at least a file node, so a zero-node result is anomalous. Both extraction paths (parallel worker and sequential fallback) now skip the cache write when a non-error result has no nodes, so a rerun re-extracts and self-heals instead of loading the stale empty. extract() also warns, listing the files that landed in the graph with zero nodes, so the previously-silent blindness in affected/explain is visible. This addresses the persistence and the silent blindness. The underlying trigger (why a valid file occasionally extracts empty when co-processed with certain others) was not reproducible with synthetic corpora; the warning now surfaces it for a concrete report if it recurs. Full suite: 2912 passed, 3 skipped. Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 1 + graphify/extract.py | 31 ++++++++++++++++-- tests/test_zero_node_no_cache.py | 54 ++++++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 tests/test_zero_node_no_cache.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 0006c4f46..ce253d700 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Full release notes with details on each version: [GitHub Releases](https://githu ## Unreleased +- Fix: an extractable source file that produces zero nodes is no longer cached, and is surfaced with a warning (#1666, thanks @krishnateja7). Every supported file yields at least a file node, so a zero-node result is anomalous (a transient batch/parallel hiccup). Caching it made the empty byte-stable across runs and silently blinded `affected`/`explain` to and through the file. The cache write is now skipped for a zero-node result so a rerun self-heals, and `extract` warns when an accepted source file lands in the graph with no nodes. This addresses the persistence and the silent blindness; if the underlying zero-node extraction still reproduces on a specific corpus, the warning now makes it visible to report. - Fix: the Windows skill variant now declares `name: graphify` instead of `name: graphify-windows` (#1635, thanks @ray8875). `graphify install --platform windows` writes the variant to `~/.claude/skills/graphify/SKILL.md`, but Claude Code requires the skill folder name to equal the frontmatter `name`, so the `-windows` suffix broke discovery/validation. The variant suffix is a packaging detail, not part of the skill's identity. - Fix: the OpenCode plugin joins its reminder to the user's command with `;` instead of `&&` (#1646, thanks @gonaik). Windows PowerShell 5.1 rejects `&&` as a statement separator (`not a valid statement separator`), so the first bash command of every OpenCode session on Windows failed. `;` works in PowerShell 5.1, Bash, and POSIX shells. (Both the OpenCode and Kilo plugin templates are fixed.) - Fix: the `GRAPH_REPORT.md` "Import Cycles" section is now emitted only when the graph contains code (#1657, thanks @Ns2384-star). On a documents-only corpus there are no imports, so the section was pure noise ("None detected") on every run; it is now conditioned on code nodes or import edges being present. (The same report also confirms the mojibake and stdout-encoding items in that issue are already addressed on the current branch: manifest.json and `GRAPH_REPORT.md` are written UTF-8, and the CLI reconfigures stdout/stderr to UTF-8 with `errors="replace"`.) diff --git a/graphify/extract.py b/graphify/extract.py index ab671543c..0f2c17cc9 100644 --- a/graphify/extract.py +++ b/graphify/extract.py @@ -15904,7 +15904,12 @@ def _extract_single_file(args: tuple) -> tuple[int, dict]: return idx, {"nodes": [], "edges": []} result = _safe_extract_with_xaml_root(extractor, path, cache_root) - if not bypass_cache and "error" not in result: + # Never cache a zero-node result for an extractable file. Every supported + # source produces at least a file node, so an empty node list is anomalous + # (e.g. a transient batch/parallel hiccup). Caching it makes the empty + # byte-stable across runs and silently blinds affected/explain to and + # through the file (#1666); skipping the write lets a rerun self-heal. + if not bypass_cache and "error" not in result and result.get("nodes"): save_cached(path, result, cache_root) return idx, result @@ -16028,7 +16033,8 @@ def _extract_sequential( continue bypass_cache = path.suffix in _JS_CACHE_BYPASS_SUFFIXES result = _safe_extract_with_xaml_root(extractor, path, effective_root) - if not bypass_cache and "error" not in result: + # See _extract_single_file: don't cache an anomalous zero-node result (#1666). + if not bypass_cache and "error" not in result and result.get("nodes"): save_cached(path, result, effective_root) per_file[idx] = result if total_files >= _PROGRESS_INTERVAL: @@ -16124,6 +16130,27 @@ def extract( if per_file[i] is None: per_file[i] = {"nodes": [], "edges": []} + # #1666: surface any source file an extractor accepted but that produced zero + # nodes (not even a file node). Such a file is silently absent from the graph, + # so affected/explain are blind to and through it with no other signal. + _empty_sources: list[str] = [] + for i, _p in enumerate(paths): + _res = per_file[i] or {} + if _res.get("nodes") or _res.get("error"): + continue + if _get_extractor(_p) is not None: + _empty_sources.append(str(_p)) + if _empty_sources: + _shown = ", ".join(Path(x).name for x in _empty_sources[:5]) + _more = f" (+{len(_empty_sources) - 5} more)" if len(_empty_sources) > 5 else "" + print( + f" warning: {len(_empty_sources)} source file(s) produced zero nodes and " + f"are absent from the graph: {_shown}{_more}. A re-run will retry them " + f"(empties are no longer cached); if it persists, please report the " + f"file(s) (#1666).", + file=sys.stderr, flush=True, + ) + all_nodes: list[dict] = [] all_edges: list[dict] = [] all_raw_calls: list[dict] = [] diff --git a/tests/test_zero_node_no_cache.py b/tests/test_zero_node_no_cache.py new file mode 100644 index 000000000..5e62547ba --- /dev/null +++ b/tests/test_zero_node_no_cache.py @@ -0,0 +1,54 @@ +"""#1666 — an extractable source file that yields zero nodes must not be cached, +and must be surfaced. + +Every supported file produces at least a file node, so a zero-node result is +anomalous (a transient batch/parallel hiccup). Caching it made the empty +byte-stable across runs and silently blinded affected/explain to the file. We +now skip the cache write for a zero-node result (so a rerun self-heals) and warn. +""" +from __future__ import annotations + +from pathlib import Path + +import graphify.extract as ex + + +def test_zero_node_result_not_cached_then_self_heals(tmp_path, capsys, monkeypatch): + f = tmp_path / "thing.rb" + f.write_text("class Foo\n def bar; end\nend\n") + + real = ex._safe_extract_with_xaml_root + + def _empty(extractor, path, root): + return {"nodes": [], "edges": []} + + # First run: force a zero-node extraction for this file. + monkeypatch.setattr(ex, "_safe_extract_with_xaml_root", _empty) + ex.extract([f], cache_root=tmp_path / "out", parallel=False) + + err = capsys.readouterr().err + assert "zero nodes" in err and "thing.rb" in err, err + + # Second run with the real extractor: because the empty was NOT cached, the + # file re-extracts and lands in the graph (self-heal). + monkeypatch.setattr(ex, "_safe_extract_with_xaml_root", real) + r2 = ex.extract([f], cache_root=tmp_path / "out", parallel=False) + assert any(str(n.get("source_file", "")).endswith("thing.rb") for n in r2["nodes"]) + + +def test_normal_file_still_cached(tmp_path): + # Guard against over-correction: a normal (non-empty) result must still cache. + f = tmp_path / "ok.rb" + f.write_text("class Bar\n def baz; end\nend\n") + r1 = ex.extract([f], cache_root=tmp_path / "out", parallel=False) + assert r1["nodes"] + from graphify.cache import load_cached + assert load_cached(f, tmp_path / "out") is not None, "non-empty result should be cached" + + +def test_no_warning_when_all_files_produce_nodes(tmp_path, capsys): + f = tmp_path / "fine.rb" + f.write_text("module M\n def self.go; end\nend\n") + ex.extract([f], cache_root=tmp_path / "out", parallel=False) + err = capsys.readouterr().err + assert "zero nodes" not in err From 5ffa921e2764bb194c6f5496e12b2db23ca89409 Mon Sep 17 00:00:00 2001 From: raman118 Date: Sun, 5 Jul 2026 03:13:06 +0530 Subject: [PATCH 2/7] Fix invalid virtual postgres source_file URI backslashes on Windows (#1672) --- graphify/pg_introspect.py | 4 ++-- tests/test_pg_introspect.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/graphify/pg_introspect.py b/graphify/pg_introspect.py index 9182ffeae..24567fa18 100644 --- a/graphify/pg_introspect.py +++ b/graphify/pg_introspect.py @@ -1,5 +1,5 @@ from __future__ import annotations -from pathlib import Path +from pathlib import Path, PurePosixPath from graphify.extract import extract_sql @@ -135,7 +135,7 @@ def introspect_postgres(dsn: str | None = None) -> dict: info = psycopg.conninfo.conninfo_to_dict(dsn or "") host = info.get("host", "localhost") dbname = info.get("dbname", "db") - virtual_path = Path(f"postgresql://{host}/{dbname}") + virtual_path = PurePosixPath(f"postgresql://{host}/{dbname}") # Pass virtual path and in-memory DDL content to extract_sql result = extract_sql(virtual_path, content=ddl_string) diff --git a/tests/test_pg_introspect.py b/tests/test_pg_introspect.py index 42ddb9893..a133cdad3 100644 --- a/tests/test_pg_introspect.py +++ b/tests/test_pg_introspect.py @@ -276,3 +276,17 @@ def test_pg_introspect_import_error(): with patch.dict("sys.modules", {"psycopg": None}): with pytest.raises(ImportError, match="psycopg is required"): introspect_postgres("postgresql://localhost/db") + + +def test_pg_introspect_uri_forward_slashes(): + """Assert that the virtual path in postgresql introspection output uses forward slashes on all platforms.""" + mock_psycopg = _make_mock_psycopg([], [], [], [], host="some-host", dbname="some-db") + with patch.dict("sys.modules", {"psycopg": mock_psycopg}): + res = introspect_postgres("postgresql://some-host/some-db") + + # We should have at least the file node + assert len(res["nodes"]) > 0 + for node in res["nodes"]: + assert "\\" not in node["source_file"] + assert "postgresql:/some-host/some-db" in node["source_file"] + From 94392de6405aabfc08b660ef8bc8cfdbfb0eda3b Mon Sep 17 00:00:00 2001 From: Synvoya <16019863+Synvoya@users.noreply.github.com> Date: Sun, 5 Jul 2026 13:40:01 +1000 Subject: [PATCH 3/7] fix(extract): don't report deferred import() as a file cycle (#1241) `_dynamic_import_js` emitted a deferred `import('./x')` as a plain `imports_from` edge, so `find_import_cycles` counted it as a static import. A file that statically imports another which dynamically imports it back was reported as a phantom circular dependency. Keep the edge as `imports_from` (the dependency stays visible in the graph) but mark it `deferred`, and skip deferred edges in `find_import_cycles`. Closes #1241 --- graphify/analyze.py | 5 ++++ graphify/extract.py | 5 ++++ tests/test_js_import_resolution.py | 46 ++++++++++++++++++++++++++++++ 3 files changed, 56 insertions(+) diff --git a/graphify/analyze.py b/graphify/analyze.py index 4be1a401c..0d4bbe4c9 100644 --- a/graphify/analyze.py +++ b/graphify/analyze.py @@ -663,6 +663,11 @@ def _endpoint_source_file(node_id: str) -> str: if rel not in ("imports_from", "re_exports"): continue + # Deferred `import(...)` edges are real dependencies but do not form a + # hard file-level cycle, so they are excluded from cycle detection (#1241). + if data.get("deferred"): + continue + src_file_attr = data.get("source_file", "") if not isinstance(src_file_attr, str) or not src_file_attr: continue diff --git a/graphify/extract.py b/graphify/extract.py index 0f2c17cc9..085462fe9 100644 --- a/graphify/extract.py +++ b/graphify/extract.py @@ -1932,8 +1932,13 @@ def _dynamic_import_js(node, source: bytes, caller_nid: str, str_path: str, edge edges.append({ "source": caller_nid, "target": tgt_nid, + # A deferred `import(...)` is a real dependency, so keep it as an + # `imports_from` edge (visible in the graph) but mark it `deferred` + # so find_import_cycles does not treat it as a static import and + # report a phantom file cycle (#1241). "relation": "imports_from", "context": "import", + "deferred": True, "confidence": "EXTRACTED", "source_file": str_path, "source_location": f"L{node.start_point[0] + 1}", diff --git a/tests/test_js_import_resolution.py b/tests/test_js_import_resolution.py index f5f892c6f..b8314a971 100644 --- a/tests/test_js_import_resolution.py +++ b/tests/test_js_import_resolution.py @@ -404,6 +404,52 @@ def test_svelte_rune_import_resolves_svelte_ts_file(tmp_path: Path): assert _has_edge(result, "src/routes/page.ts", "src/lib/hooks/is-mobile.svelte.ts") +def test_ts_dynamic_import_does_not_create_phantom_cycle(tmp_path: Path): + # A deferred `import('./x')` is not a static import: it must be emitted as a + # `dynamic_import` edge (like the Svelte/Astro/Vue emitters), not + # `imports_from`. Otherwise two files that reference each other via one static + # import + one dynamic import are reported as a phantom circular dependency. + # Regression test for #1241. + import networkx as nx + + from graphify.analyze import find_import_cycles + + actions = _write( + tmp_path / "actions.ts", + 'export function doThing() {}\n' + 'export async function lazy() {\n' + ' const m = await import("./modal");\n' + ' return m.openModal();\n' + '}\n', + ) + modal = _write( + tmp_path / "modal.ts", + 'import { doThing } from "./actions";\n' + 'export function openModal() { doThing(); }\n', + ) + + result = _extract_for([actions, modal], tmp_path) + + # The deferred import() edge stays in the graph as an `imports_from` edge + # marked `deferred` (the dependency remains visible); the real static import + # (modal.ts -> actions.ts) is unaffected. + deferred = [edge for edge in result["edges"] if edge.get("deferred")] + assert deferred and all(edge["relation"] == "imports_from" for edge in deferred) + assert _has_edge(result, "modal.ts", "actions.ts", "imports_from") + + # End to end: the deferred import must not manufacture a file cycle. + graph = nx.DiGraph() + for node in result["nodes"]: + graph.add_node(node["id"], **{k: v for k, v in node.items() if k != "id"}) + for edge in result["edges"]: + graph.add_edge( + edge["source"], + edge["target"], + **{k: v for k, v in edge.items() if k not in ("source", "target")}, + ) + assert find_import_cycles(graph) == [] + + def test_tsconfig_alias_import_resolves_existing_ts_file(tmp_path: Path): _write( tmp_path / "tsconfig.json", From aa1bbdab237d0c7c0504020fbd2b1f87bcec1480 Mon Sep 17 00:00:00 2001 From: raman118 Date: Sun, 5 Jul 2026 02:57:17 +0530 Subject: [PATCH 4/7] Fix case-sensitive file suffix filtering silently skipping capitalized/mixed-case extensions (#1671) --- graphify/extract.py | 15 ++++++++++----- tests/test_extract.py | 28 +++++++++++++++++++++++++++- 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/graphify/extract.py b/graphify/extract.py index 085462fe9..08edd3232 100644 --- a/graphify/extract.py +++ b/graphify/extract.py @@ -15844,7 +15844,7 @@ def _is_cpp_header(path: Path) -> bool: def _get_extractor(path: Path) -> Any | None: """Return the correct extractor function for a file, or None if unsupported.""" - if path.name.endswith(".blade.php"): + if path.name.lower().endswith(".blade.php"): return extract_blade # MCP config files (.mcp.json, claude_desktop_config.json, ...) are routed # by filename before generic .json dispatch so they get MCP-aware nodes @@ -15860,14 +15860,17 @@ def _get_extractor(path: Path) -> Any | None: # (the suffix map sends `.h` to extract_c, which can't read @interface etc.). # ObjC sniffing has priority over the C++ sniff: an Objective-C++ header can # contain both `@interface` and inline C++ (`::`), and it must parse as ObjC. - if path.suffix == ".h": + suffix = path.suffix + if suffix not in _DISPATCH and suffix.lower() in _DISPATCH: + suffix = suffix.lower() + if suffix == ".h": if _is_objc_header(path): return extract_objc # A C++ class header routed to extract_c loses the class entirely (the C # grammar has no class_specifier). Reroute to extract_cpp (#1547). if _is_cpp_header(path): return extract_cpp - return _DISPATCH.get(path.suffix) + return _DISPATCH.get(suffix) def _safe_extract_with_xaml_root(extractor, path: Path, root: Path) -> dict: @@ -16646,7 +16649,8 @@ def _ignored(p: Path) -> bool: ] for fname in filenames: p = dp / fname - if p.suffix in _EXTENSIONS and not _ignored(p) and _resolves_under_root(p, containment_root): + suffix = p.suffix + if (suffix in _EXTENSIONS or suffix.lower() in _EXTENSIONS) and not _ignored(p) and _resolves_under_root(p, containment_root): results.append(p) return sorted(results) # Walk with symlink following + cycle detection @@ -16666,7 +16670,8 @@ def _ignored(p: Path) -> bool: ] for fname in filenames: p = dp / fname - if p.suffix in _EXTENSIONS and not _ignored(p) and _resolves_under_root(p, containment_root): + suffix = p.suffix + if (suffix in _EXTENSIONS or suffix.lower() in _EXTENSIONS) and not _ignored(p) and _resolves_under_root(p, containment_root): results.append(p) return sorted(results) diff --git a/tests/test_extract.py b/tests/test_extract.py index 38be9f679..ae88e364b 100644 --- a/tests/test_extract.py +++ b/tests/test_extract.py @@ -408,7 +408,8 @@ def _legacy_collect_files(target, *, root=None): for ext in sorted(extensions): results.extend( p for p in target.rglob(f"*{ext}") - if not any(_is_noise_dir(part) for part in p.parts) + if p.suffix == ext + and not any(_is_noise_dir(part) for part in p.parts) and not (patterns and _is_ignored(p, ignore_root, patterns)) ) return sorted(results) @@ -1693,3 +1694,28 @@ def test_non_colliding_path_id_is_not_salted(tmp_path): result = extract([p], cache_root=tmp_path) file_id = next(n["id"] for n in result["nodes"] if n.get("source_location") == "L1") assert file_id == make_id(_file_stem(Path("src/auth/session.py"))) == "src_auth_session" + + +def test_case_insensitive_suffix_filtering(tmp_path): + py_file = tmp_path / "app.PY" + js_file = tmp_path / "script.JS" + ts_file = tmp_path / "lib.Ts" + + py_file.write_text("class MyPythonClass:\n pass\n") + js_file.write_text("function myJSFunction() {}\n") + ts_file.write_text("export class MyTSClass {}\n") + + collected = collect_files(tmp_path) + collected_names = {f.name for f in collected} + assert "app.PY" in collected_names + assert "script.JS" in collected_names + assert "lib.Ts" in collected_names + + result = extract(collected, cache_root=tmp_path) + nodes = result["nodes"] + labels = {n.get("label") for n in nodes if "label" in n} + + assert "MyPythonClass" in labels + assert "myJSFunction()" in labels + assert "MyTSClass" in labels + From d9f97b9c015791bc0517ade3d5e7a0027b9500ae Mon Sep 17 00:00:00 2001 From: safishamsi Date: Sun, 5 Jul 2026 10:48:42 +0100 Subject: [PATCH 5/7] docs: changelog credit for #1671, #1672, #1241 Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce253d700..7d612215e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,9 @@ Full release notes with details on each version: [GitHub Releases](https://githu ## Unreleased +- Fix: capitalized/mixed-case file extensions are no longer silently skipped (#1671, thanks @raman118). `collect_files` and `_get_extractor` matched suffixes case-sensitively, so `App.PY`, `script.JS`, `Lib.Ts`, etc. fell through and were never extracted. Suffix matching now falls back to the lowercased form for both file discovery and extractor dispatch (including `.blade.php`); an unsupported extension like `.xyz` is still skipped. +- Fix: the virtual PostgreSQL `source_file` URI no longer gets backslash-mangled on Windows (#1672, thanks @raman118). `introspect_postgres` built the synthetic `postgresql://host/db` path with `Path`, which rewrites `/` to `\` on Windows; it now uses `PurePosixPath` so the URI stays forward-slashed on every platform. +- Fix: a deferred `import(...)` no longer manufactures a phantom file cycle (#1241, thanks @Synvoya). Dynamic imports are real dependencies but not static ones, so two files that reference each other via one static import plus one dynamic import were reported as a circular dependency. The dynamic-import edge stays in the graph (marked `deferred`) but is excluded from `find_import_cycles`. - Fix: an extractable source file that produces zero nodes is no longer cached, and is surfaced with a warning (#1666, thanks @krishnateja7). Every supported file yields at least a file node, so a zero-node result is anomalous (a transient batch/parallel hiccup). Caching it made the empty byte-stable across runs and silently blinded `affected`/`explain` to and through the file. The cache write is now skipped for a zero-node result so a rerun self-heals, and `extract` warns when an accepted source file lands in the graph with no nodes. This addresses the persistence and the silent blindness; if the underlying zero-node extraction still reproduces on a specific corpus, the warning now makes it visible to report. - Fix: the Windows skill variant now declares `name: graphify` instead of `name: graphify-windows` (#1635, thanks @ray8875). `graphify install --platform windows` writes the variant to `~/.claude/skills/graphify/SKILL.md`, but Claude Code requires the skill folder name to equal the frontmatter `name`, so the `-windows` suffix broke discovery/validation. The variant suffix is a packaging detail, not part of the skill's identity. - Fix: the OpenCode plugin joins its reminder to the user's command with `;` instead of `&&` (#1646, thanks @gonaik). Windows PowerShell 5.1 rejects `&&` as a statement separator (`not a valid statement separator`), so the first bash command of every OpenCode session on Windows failed. `;` works in PowerShell 5.1, Bash, and POSIX shells. (Both the OpenCode and Kilo plugin templates are fixed.) From 6631af7936cdd27103b6db6df856a1ecfab5c01a Mon Sep 17 00:00:00 2001 From: safishamsi Date: Sun, 5 Jul 2026 11:41:18 +0100 Subject: [PATCH 6/7] feat(ruby/affected): mixes_in edges for include/extend/prepend + method-bound callers in affected (#1668, #1669) #1668: Ruby `include`/`extend`/`prepend ` in a class/module body now emits a `mixes_in` edge to the module. The mixin is captured during the node walk and resolved cross-file by resolve_ruby_member_calls (single-owner guard, reusing the #1640 module nodes as targets). The shared call pass skips these markers so they are not mislabeled as `calls`. `extend self` and non-constant args are skipped; ambiguous/undefined modules produce no edge. Rails concern composition is now visible to affected/explain. #1669: affected seeds the reverse walk with the root's own member nodes (one method/contains hop) so callers that bind at method granularity (e.g. Service.call -> the def self.call node, #1634) are reachable from the class. method/contains stay out of the general relation-filtered walk (no forward noise), and the seeded member nodes are not reported as hits. Full suite: 2924 passed, 3 skipped. Verified end-to-end (Rails-shaped repros) plus edge cases: extend self / undefined / ambiguous mixins emit nothing, mixins are not emitted as calls, member methods aren't reported, class-level callers still resolve, and one-hop seeding does not pull in downstream classes' methods. Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 2 + graphify/affected.py | 21 ++++++++++ graphify/extract.py | 44 +++++++++++++++++++++ graphify/ruby_resolution.py | 22 +++++++++-- tests/test_affected_member_seed.py | 61 ++++++++++++++++++++++++++++++ tests/test_ruby_resolution.py | 58 ++++++++++++++++++++++++++++ 6 files changed, 205 insertions(+), 3 deletions(-) create mode 100644 tests/test_affected_member_seed.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d612215e..70170db56 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Full release notes with details on each version: [GitHub Releases](https://githu ## Unreleased +- Feat: Ruby `include`/`extend`/`prepend ` now emits a `mixes_in` edge to the module (#1668, thanks @krishnateja7). Concerns/mixins are the composition mechanism in Rails, but they produced no edges, so the blast radius of editing a shared concern was invisible to `affected`. A constant-argument mixin inside a class or module body now resolves to the module node (reusing the #1634 candidate logic and the #1640 module nodes, under the single-owner guard) and emits `Class --mixes_in--> Module`, which `affected` already traverses. `extend self` and non-constant arguments are skipped; an ambiguous or undefined module produces no edge. +- Feat: `affected ` now reaches callers that bind to the class's method nodes (#1669, thanks @krishnateja7). Since #1634 binds `Service.call` precisely to the `def self.call` method node, a class-level `affected` query missed those callers because `method`/`contains` are (correctly) not general-traversal relations. The reverse walk now seeds from the root's own member nodes (one `method`/`contains` hop outward) so method-bound callers are reachable from the class, with no change to the general traversal (no forward noise) and the member nodes themselves are not reported as hits. - Fix: capitalized/mixed-case file extensions are no longer silently skipped (#1671, thanks @raman118). `collect_files` and `_get_extractor` matched suffixes case-sensitively, so `App.PY`, `script.JS`, `Lib.Ts`, etc. fell through and were never extracted. Suffix matching now falls back to the lowercased form for both file discovery and extractor dispatch (including `.blade.php`); an unsupported extension like `.xyz` is still skipped. - Fix: the virtual PostgreSQL `source_file` URI no longer gets backslash-mangled on Windows (#1672, thanks @raman118). `introspect_postgres` built the synthetic `postgresql://host/db` path with `Path`, which rewrites `/` to `\` on Windows; it now uses `PurePosixPath` so the URI stays forward-slashed on every platform. - Fix: a deferred `import(...)` no longer manufactures a phantom file cycle (#1241, thanks @Synvoya). Dynamic imports are real dependencies but not static ones, so two files that reference each other via one static import plus one dynamic import were reported as a circular dependency. The dynamic-import edge stays in the graph (marked `deferred`) but is excluded from `find_import_cycles`. diff --git a/graphify/affected.py b/graphify/affected.py index dbb532b42..deacc39c8 100644 --- a/graphify/affected.py +++ b/graphify/affected.py @@ -149,6 +149,27 @@ def affected_nodes( queue: deque[tuple[str, int]] = deque([(seed, 0)]) hits: list[AffectedHit] = [] + # #1669: seed the reverse walk with the root's own member nodes (one outward + # `method`/`contains` hop). A caller can bind to a class's method node rather + # than the class node itself (e.g. `Service.call` resolves to the `def + # self.call` node, #1634), so those callers are unreachable from the class + # otherwise. The member nodes are seeds only (not reported as hits), and + # `method`/`contains` stay out of the general relation-filtered walk, so this + # adds no forward noise anywhere else. + if hasattr(graph, "out_edges"): + member_edges = graph.out_edges(seed, data=True) + else: + member_edges = ( + (s, t, d) for s, t, d in graph.edges(data=True) if s == seed + ) + for _s, member, data in member_edges: + if str(data.get("relation", "")) not in ("method", "contains"): + continue + member = str(member) + if member not in seen: + seen.add(member) + queue.append((member, 0)) + while queue: current, current_depth = queue.popleft() if current_depth >= depth: diff --git a/graphify/extract.py b/graphify/extract.py index 08edd3232..f14f4638d 100644 --- a/graphify/extract.py +++ b/graphify/extract.py @@ -3450,6 +3450,10 @@ def _extract_generic( # `let vm = VM()`) live outside function bodies, so the call-walk never # reaches them. Collect (owner_nid, call_node) here and walk them too. initializer_nodes: list[tuple[str, object]] = [] + # Ruby include/extend/prepend mixins collected during the node walk (#1668), + # merged into raw_calls after the call-walk populates it (raw_calls does not + # exist yet while walk() runs). Resolved cross-file by the Ruby resolver. + _ruby_mixin_calls: list[dict] = [] # #1356: per-file map of local name -> declared type (properties + params), # threaded out as `swift_type_table` so member calls (`vm.update()`) can be # resolved to the receiver's real definition in _resolve_swift_member_calls. @@ -3819,6 +3823,36 @@ def _php_emit_base(base_name: str, rel: str, at_line: int) -> None: seen_ids.add(base_nid) add_edge(class_nid, base_nid, "inherits", line) + # `include`/`extend`/`prepend ` in the class/module body -> + # a `mixes_in` edge to the module (#1668). The module usually lives + # in another file, so defer resolution to the cross-file Ruby + # resolver (reusing the #1634 candidate logic and the #1640 module + # nodes as targets). Only bare/namespaced constant arguments count; + # `extend self`, `include some_var`, etc. are skipped. + _rb_body = _find_body(node, config) + if _rb_body is not None: + for _stmt in _rb_body.children: + if _stmt.type != "call" or _stmt.child_by_field_name("receiver") is not None: + continue + _m = _stmt.child_by_field_name("method") + if _m is None or _read_text(_m, source) not in ("include", "extend", "prepend"): + continue + _args = _stmt.child_by_field_name("arguments") + if _args is None: + continue + for _arg in _args.children: + if _arg.type not in ("constant", "scope_resolution"): + continue + _mod = _ruby_const_last_name(_arg, source) + if _mod: + _ruby_mixin_calls.append({ + "caller_nid": class_nid, + "callee": _mod, + "is_mixin": True, + "source_file": str_path, + "source_location": f"L{_stmt.start_point[0] + 1}", + }) + # C#-specific: inheritance / interface implementation via base_list if config.ts_module == "tree_sitter_c_sharp": csharp_type_params = _csharp_type_parameters_in_scope(node, source) @@ -5576,6 +5610,10 @@ def _scan_js_module_dispatch(n) -> None: if src in valid_ids and (tgt in valid_ids or edge["relation"] in ("imports", "imports_from", "re_exports")): clean_edges.append(edge) + # Ruby mixins were collected during the node walk (before raw_calls existed); + # fold them in so the cross-file resolver sees them (#1668). + if _ruby_mixin_calls: + raw_calls.extend(_ruby_mixin_calls) result = {"nodes": nodes, "edges": clean_edges, "raw_calls": raw_calls} if callable_def_nids: # Mark function / method / class defs with a `_callable` attribute so the @@ -16438,6 +16476,12 @@ def extract( # and collides with any top-level function named "log" in the corpus. if rc.get("is_member_call"): continue + # Skip Ruby include/extend/prepend mixin markers: they carry a module + # name as `callee` but are not calls — the Ruby resolver turns them into + # `mixes_in` edges. Letting the shared pass emit a `calls` edge here would + # both mislabel the relation and block the mixes_in emit as a dup (#1668). + if rc.get("is_mixin"): + continue # Exact-case match first (case is semantic). Fold only when the CALLING # file's language is case-insensitive, and only against the folded index of # case-insensitive-language definitions — so a Python `Path()` call can never diff --git a/graphify/ruby_resolution.py b/graphify/ruby_resolution.py index 5823ecf38..e344175e1 100644 --- a/graphify/ruby_resolution.py +++ b/graphify/ruby_resolution.py @@ -94,7 +94,8 @@ def _unique_class(name: str) -> str | None: nids = class_def_nids.get(_key(name), []) return nids[0] if len(nids) == 1 else None - def _emit(caller: str, target: str, rc: dict[str, Any]) -> None: + def _emit(caller: str, target: str, rc: dict[str, Any], + relation: str = "calls", context: str = "call") -> None: if not caller or not target or caller == target: return if (caller, target) in existing_pairs: @@ -103,8 +104,8 @@ def _emit(caller: str, target: str, rc: dict[str, Any]) -> None: all_edges.append({ "source": caller, "target": target, - "relation": "calls", - "context": "call", + "relation": relation, + "context": context, "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": rc.get("source_file", ""), @@ -112,6 +113,21 @@ def _emit(caller: str, target: str, rc: dict[str, Any]) -> None: "weight": 1.0, }) + # `include`/`extend`/`prepend ` mixins (#1668): resolve the module by + # its constant name to the single owning module/class node and emit a + # `mixes_in` edge, under the same single-definition god-node guard. An + # ambiguous or unresolved constant produces no edge. + for rc in _ruby_raw_calls(per_file): + if not rc.get("is_mixin"): + continue + caller = str(rc.get("caller_nid", "")) + module_name = rc.get("callee") + if not caller or not module_name: + continue + target = _unique_class(str(module_name)) + if target is not None: + _emit(caller, target, rc, relation="mixes_in", context="mixin") + for rc in _ruby_raw_calls(per_file): if not rc.get("is_member_call"): continue diff --git a/tests/test_affected_member_seed.py b/tests/test_affected_member_seed.py new file mode 100644 index 000000000..d1f6b3ae7 --- /dev/null +++ b/tests/test_affected_member_seed.py @@ -0,0 +1,61 @@ +"""#1669 — affected must reach callers that bind to the class's method +nodes (post-#1634 method-granularity resolution), by seeding the reverse walk +with the root's member nodes (one method/contains hop). method/contains stay out +of the general relation-filtered walk, so no forward noise is added elsewhere. +""" +from __future__ import annotations + +import networkx as nx + +from graphify.affected import affected_nodes + + +def _g(): + g = nx.DiGraph() + for nid, label in [ + ("proc", "Processor"), ("proc_call", ".call()"), + ("runner", "Runner"), ("runner_run", ".run()"), + ]: + g.add_node(nid, label=label) + g.add_edge("proc", "proc_call", relation="method") # class owns method + g.add_edge("runner", "runner_run", relation="method") + g.add_edge("runner_run", "proc_call", relation="calls") # caller binds to method node (#1634) + return g + + +def test_class_affected_reaches_method_bound_caller(): + g = _g() + hits = {h.node_id for h in affected_nodes(g, "proc", depth=2)} + assert "runner_run" in hits, "caller of Processor.call must be reachable from Processor" + + +def test_member_method_node_not_reported_as_hit(): + g = _g() + hits = {h.node_id for h in affected_nodes(g, "proc", depth=2)} + # the class's own method node is a seed, not an affected node + assert "proc_call" not in hits + + +def test_method_contains_still_excluded_from_general_walk(): + # A node two method-hops away (method of a DIFFERENT class discovered during + # the walk) must NOT be pulled in: only the root's own members are seeded. + g = nx.DiGraph() + for nid, label in [("a", "A"), ("a_m", ".m()"), ("b", "B"), ("b_m", ".n()")]: + g.add_node(nid, label=label) + g.add_edge("a", "a_m", relation="method") + g.add_edge("a_m", "b", relation="calls") # A.m calls class B + g.add_edge("b", "b_m", relation="method") # B's own method + hits = {h.node_id for h in affected_nodes(g, "a", depth=3)} + # We seeded A's members and walk reverse; B and B's method are downstream of A + # (A.m -> B), not reverse-callers of A, so they must not appear. + assert hits == set() or "b_m" not in hits + + +def test_class_level_caller_still_works(): + # A caller bound to the class node itself (not a method) is unaffected. + g = nx.DiGraph() + g.add_node("svc", label="Svc") + g.add_node("caller", label=".use()") + g.add_edge("caller", "svc", relation="references") + hits = {h.node_id for h in affected_nodes(g, "svc", depth=2)} + assert "caller" in hits diff --git a/tests/test_ruby_resolution.py b/tests/test_ruby_resolution.py index adc77577b..5cd1b1150 100644 --- a/tests/test_ruby_resolution.py +++ b/tests/test_ruby_resolution.py @@ -290,3 +290,61 @@ def test_ambiguous_constant_receiver_emits_no_edge(tmp_path: Path) -> None: "class Runner\n def run\n Processor.call\n end\nend\n") graph = extract([caller, tmp_path / "a.rb", tmp_path / "b.rb"], cache_root=tmp_path, parallel=False) assert _has_call_edge(graph, "run", "call") is None + + +# ── #1668 include/extend/prepend -> mixes_in ───────────────────────────────── + + +def _mixes_in(graph: dict) -> set[tuple[str, str]]: + labels = _labels(graph["nodes"]) + return { + (labels.get(e["source"], ""), labels.get(e["target"], "")) + for e in graph["edges"] if e.get("relation") == "mixes_in" + } + + +def test_include_emits_mixes_in_edge(tmp_path: Path) -> None: + _write(tmp_path, "concern.rb", "module SealedProtection\n def sealed?; true; end\nend\n") + _write(tmp_path, "model.rb", + "class Roster < ApplicationRecord\n include SealedProtection\nend\n") + g = extract([tmp_path / "model.rb", tmp_path / "concern.rb"], cache_root=tmp_path, parallel=False) + assert ("Roster", "SealedProtection") in _mixes_in(g) + + +def test_extend_and_prepend_emit_mixes_in(tmp_path: Path) -> None: + _write(tmp_path, "helpers.rb", "module Helpers\n def h; end\nend\n") + _write(tmp_path, "audit.rb", "module Audit\n def a; end\nend\n") + _write(tmp_path, "svc.rb", + "class Svc\n extend Helpers\n prepend Audit\nend\n") + mix = _mixes_in(extract(sorted(tmp_path.glob("*.rb")), cache_root=tmp_path, parallel=False)) + assert ("Svc", "Helpers") in mix + assert ("Svc", "Audit") in mix + + +def test_extend_self_and_nonconstant_args_emit_no_mixin(tmp_path: Path) -> None: + # `extend self` and `include some_var` are not constant module references. + _write(tmp_path, "m.rb", + "module M\n extend self\n def go; end\nend\n") + mix = _mixes_in(extract([tmp_path / "m.rb"], cache_root=tmp_path, parallel=False)) + assert not any(t == "self" for _s, t in mix) + assert not mix + + +def test_include_of_undefined_or_ambiguous_module_emits_no_edge(tmp_path: Path) -> None: + # Undefined module (no node) -> no edge, under the single-owner guard. + _write(tmp_path, "x.rb", "class X\n include NotDefinedAnywhere\nend\n") + mix = _mixes_in(extract([tmp_path / "x.rb"], cache_root=tmp_path, parallel=False)) + assert not any(t == "NotDefinedAnywhere" for _s, t in mix) + + +def test_mixin_is_not_emitted_as_calls_edge(tmp_path: Path) -> None: + # Regression: the shared cross-file call pass must not turn a mixin into a + # `calls` edge (which would mislabel it and block the mixes_in emit). + _write(tmp_path, "concern.rb", "module C\n def m; end\nend\n") + _write(tmp_path, "k.rb", "class K\n include C\nend\n") + g = extract([tmp_path / "k.rb", tmp_path / "concern.rb"], cache_root=tmp_path, parallel=False) + labels = _labels(g["nodes"]) + calls = {(labels.get(e["source"], ""), labels.get(e["target"], "")) + for e in g["edges"] if e.get("relation") == "calls"} + assert ("K", "C") not in calls + assert ("K", "C") in _mixes_in(g) From 21b52e195d3735e0267c00c9ceca63ff17c61cb9 Mon Sep 17 00:00:00 2001 From: safishamsi Date: Sun, 5 Jul 2026 12:36:54 +0100 Subject: [PATCH 7/7] docs(readme): new Graphify logo (cropped icon + wordmark) Replaces the old v4-hosted SVG wordmark with the new brand logo (graph-cube icon + "Graphify" on the green brand gradient), tightly cropped from the source export (1384x645, ~2.15:1, even ~90px padding). Served from docs/logo.png on v8. Co-Authored-By: Claude Opus 4.8 (1M context) --- README.md | 2 +- docs/logo.png | Bin 0 -> 146843 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/logo.png diff --git a/README.md b/README.md index ac8ce34f9..febe20e9b 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

- Graphify + Graphify

diff --git a/docs/logo.png b/docs/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..95ad01b3b4414d06c4537671397f4e2d4d9150f2 GIT binary patch literal 146843 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 IhSSUc19Dpx!vFvP literal 0 HcmV?d00001