Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/how-it-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ graphify processes your files in three passes:
**Pass 1 — Code structure (free, no API calls)**
Tree-sitter parses your code files and extracts classes, functions, imports, call graphs, and inline comments. This runs locally with no LLM involved. 25 languages supported. SQL files get special treatment: tables, views, foreign keys, and JOIN relationships are extracted deterministically.

Code files are not sent to the LLM semantic extractor in the normal pipeline. If a corpus contains only code files, Pass 3 is skipped entirely; semantic extraction is reserved for docs, papers, images, and transcripts.

**Pass 2 — Video and audio (local, no API calls)**
Video and audio files are transcribed with faster-whisper. To focus the transcript on your domain, the transcription prompt is seeded with your top god nodes (the most-connected concepts in your code graph so far). Transcripts are cached — re-runs skip already-processed files.

Expand Down
8 changes: 8 additions & 0 deletions tests/test_install_strings.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
"""
from __future__ import annotations
import json
from pathlib import Path

from graphify.__main__ import (
_SETTINGS_HOOK,
Expand Down Expand Up @@ -115,3 +116,10 @@ def test_report_is_still_referenced_as_fallback():
f"The fix should demote the report, not delete the reference — users need to know "
f"it's available for broad-architecture queries."
)


def test_how_it_works_clarifies_code_only_semantic_extraction():
doc = Path("docs/how-it-works.md").read_text(encoding="utf-8")
assert "Code files are not sent to the LLM semantic extractor" in doc
assert "code files, Pass 3 is skipped entirely" in doc
assert "docs, papers, images, and transcripts" in doc