Files
TextNLPClassifierApp/graphify-out/cache/ast/v0.9.47-s2/acf74e38373f16e923350dbcf514b2958215391024c8abed3b8a621b0e69bd61.json
andreferraro 6a45368cb0 feat(extractor): implement multi-engine article content extractor
- Added scripts/extract_article_contents.py for batch scraping with stealth Foxcape and triple extraction (Trafilatura, Newspaper4k, Readability)
- Created unit, integration, and E2E test suite in tests/test_extract_article_contents.py (90/90 passing)
- Updated specs/003-article-content-extractor and README.md with usage documentation and CLI contracts
- Passed ruff linting/formatting and mypy type checking cleanly
2026-08-20 19:22:20 -03:00

1 line
6.2 KiB
JSON

{"nodes": [{"id": "$graphify-root$_src_adapters_embeddings_py", "label": "embeddings.py", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L1"}, {"id": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "label": "LocalEmbeddingsAdapter", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L13", "_callable": true, "_callable_class": true}, {"id": "basenlpadapter", "label": "BaseNLPAdapter", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/src/adapters/embeddings.py"}, {"id": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_init", "label": ".__init__()", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L16", "_callable": true}, {"id": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_is_available", "label": ".is_available()", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L23", "_callable": true}, {"id": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_evaluate_similarity", "label": ".evaluate_similarity()", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L31", "_callable": true}, {"id": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_disambiguate", "label": ".disambiguate()", "file_type": "code", "source_file": "src/adapters/embeddings.py", "source_location": "L37", "_callable": true}, {"id": "ecpsnapshot", "label": "ECPSnapshot", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/src/adapters/embeddings.py"}, {"id": "classificationresult", "label": "ClassificationResult", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/src/adapters/embeddings.py"}, {"id": "$graphify-root$_src_adapters_embeddings_rationale_1", "label": "Optional local vector embeddings adapter (Tier 2). Disabled by default.\u2026", "file_type": "rationale", "source_file": "src/adapters/embeddings.py", "source_location": "L1"}, {"id": "$graphify-root$_src_adapters_embeddings_rationale_14", "label": "Optional adapter for local multilingual semantic vector embeddings.", "file_type": "rationale", "source_file": "src/adapters/embeddings.py", "source_location": "L14"}], "edges": [{"source": "$graphify-root$_src_adapters_embeddings_py", "target": "src_adapters_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L9", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_py", "target": "src_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L10", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_py", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "target": "basenlpadapter", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L16", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_is_available", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L23", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_evaluate_similarity", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L31", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_disambiguate", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_disambiguate", "target": "ecpsnapshot", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_disambiguate", "target": "classificationresult", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_disambiguate", "target": "classificationresult", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_evaluate_similarity", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter_is_available", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_rationale_1", "target": "$graphify-root$_src_adapters_embeddings_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L1", "weight": 1.0}, {"source": "$graphify-root$_src_adapters_embeddings_rationale_14", "target": "$graphify-root$_src_adapters_embeddings_localembeddingsadapter", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/adapters/embeddings.py", "source_location": "L14", "weight": 1.0}], "raw_calls": []}