Skip to content

docs(architecture): point new language extractors at extractors/, not extract.py - #2289

Open
PathGao wants to merge 1 commit into
Graphify-Labs:v8from
PathGao:docs-extractor-guidance
Open

docs(architecture): point new language extractors at extractors/, not extract.py#2289
PathGao wants to merge 1 commit into
Graphify-Labs:v8from
PathGao:docs-extractor-guidance

Conversation

@PathGao

@PathGao PathGao commented Jul 29, 2026

Copy link
Copy Markdown

Summary

ARCHITECTURE.md's Adding a new language extractor section still directs contributors to add extract_<lang> to extract.py, while graphify/extractors/MIGRATION.md (issue #1212) is actively draining that monolith — seventeen languages already live in graphify/extractors/ behind facade re-exports. The two documents currently give contradictory instructions; a contributor following the architecture doc adds code to the exact file the migration is emptying.

This updates step 1 to point at the extractors/ package and the MIGRATION.md playbook, and folds the mandatory facade re-export (MIGRATION.md invariant 3) into step 2. Steps 3–5 (detect/watch suffixes, pyproject dependency, fixtures) still hold and are unchanged.

Docs-only; no code touched.

🤖 Generated with Claude Code

… extract.py

The 'Adding a new language extractor' steps still said to add the
function to extract.py, but extract.py is being split into
graphify/extractors/ (issue Graphify-Labs#1212) and seventeen languages already
live there behind facade re-exports. A contributor following the
architecture doc adds code to the exact file the migration is
draining. Point step 1 at the package and the MIGRATION.md playbook,
and fold the mandatory facade re-export into step 2.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@PathGao
PathGao force-pushed the docs-extractor-guidance branch from 1bf8e25 to 0e1b03c Compare July 29, 2026 04:39

@graphify-labs graphify-labs Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).

Graphify reviewed this change.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).


Graphify review — findings

This PR updates the "Adding a new language extractor" section of ARCHITECTURE.md. It revises the instructions to reflect a new structure where language extractors live in a graphify/extractors/<lang>.py package rather than directly in extract.py, and adds a step to re-export the function from extract.py while noting an ongoing migration away from the monolithic file. The change is documentation-only and touches the extractor onboarding steps.

No blocking issues surfaced.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 9 functions depend on the 9 node(s) this change touches.

Health — grade A; no new coupling hotspots.

Verification — 9 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 9 function(s) in the blast radius were not formally verified this run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant