Common Lisp support, rebased onto v8 and moved into extractors/ - #2274
Common Lisp support, rebased onto v8 and moved into extractors/#2274fade wants to merge 12 commits into
Graphify — looks good
Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).
Details
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 adds Common Lisp as a supported language. It introduces a new graphify/extractors/commonlisp.py extractor (backed by tree-sitter-commonlisp), registers it in the extractor dispatch tables and language registry, and wires the .lisp/.cl/.lsp/.asd extensions into detect.py's code-extension set. Documentation in the README is updated (grammar count 36→37, new optional dependency entry, extension list) and a corresponding set of language tests is added or modified. Reviewer surface area: the new extractor module, the dispatch/registry hookups in extract.py and extractors/__init__.py, the extension additions in detect.py, README updates, and the test suite changes.
No blocking issues surfaced.
Analysis details — impact, health, verification
Impact & health
Graphify review
Impact — 1867 functions depend on the 785 functions this change touches.
Health — this change adds coupling hotspots:
- new:
extract_commonlisp()— 25 callers, 1 callees - new:
_process_form()— 1 callers, 10 callees - new:
_handle_def_form()— 1 callers, 6 callees - new:
_handle_defpackage()— 1 callers, 6 callees
Verification — 1867 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: 1702 function(s) in the blast radius were not formally verified this run