feat(callgraph): Add local stdlib registry loader with resolution #338
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Implements PR #2: Local filesystem loader for Python stdlib registries with call graph resolution integration.
Depends on: #337 (PR #1 - Python generator)
What's Changed
Go Data Structures (
stdlib_registry.go)All structs use snake_case JSON tags to match Python-generated format.
Local Loader (
stdlib_registry_loader.go)Features:
Resolution Integration (
builder.go)Resolution improvements:
Comprehensive Tests (
stdlib_registry_loader_test.go)Test Results
Build & Tests
Integration Test (pre-commit codebase)
Before PR #2:
After PR #2:
Registry Status:
Known Limitations
Resolution improvement lower than expected (+90 vs expected +700-900)
Module aliases - Only os.path → posixpath mapped
Type inference required for method calls on typed variables
logger.warning()requires knowingloggeris a Loggerf.read()requires knowingfis a file objectNext Steps
Follow-up PR (already in progress):
import os.pathpatternPR #3 (after this PR):
Part of: Production stdlib registry system (4 PRs total)
🤖 Generated with Claude Code
Co-Authored-By: Claude [email protected]