Files
TextNLPClassifierApp/graphify-out/cache/ast/v0.9.47-s2/bc7efac197e04013ed37c20c66affa150d39296c6712f97d4095ad6075352e15.json

1 line
58 KiB
JSON

{"nodes": [{"id": "$graphify-root$_tests_test_select_article_extractor_py", "label": "test_select_article_extractor.py", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L1"}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "label": "test_normalize_text_empty_and_invalid()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L40", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_html_entities_and_tags", "label": "test_normalize_text_html_entities_and_tags()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L47", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_links", "label": "test_normalize_text_markdown_links()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L53", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_nfkc_unicode_and_punctuation", "label": "test_normalize_text_nfkc_unicode_and_punctuation()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L59", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_sliding_window", "label": "test_generate_shingles_sliding_window()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L71", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_short_text", "label": "test_generate_shingles_short_text()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L79", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_empty", "label": "test_generate_shingles_empty()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L87", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_001_three_candidates_clear_winner", "label": "test_ct_001_three_candidates_clear_winner()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L96", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_002_technical_tie_smallest_shingles", "label": "test_ct_002_technical_tie_smallest_shingles()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L109", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_003_technical_tie_priority_fallback", "label": "test_ct_003_technical_tie_priority_fallback()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L121", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_004_three_candidates_no_consensus", "label": "test_ct_004_three_candidates_no_consensus()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L142", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_005_two_candidates_no_consensus", "label": "test_ct_005_two_candidates_no_consensus()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L157", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_006_single_usable_candidate", "label": "test_ct_006_single_usable_candidate()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L171", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_007_degraded_candidates_only", "label": "test_ct_007_degraded_candidates_only()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L183", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_008_all_candidates_unavailable", "label": "test_ct_008_all_candidates_unavailable()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L195", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_009_small_fragment_loses_due_to_low_coverage", "label": "test_ct_009_small_fragment_loses_due_to_low_coverage()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L207", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_010_excessive_boilerplate_loses_due_to_low_support", "label": "test_ct_010_excessive_boilerplate_loses_due_to_low_support()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L224", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_011_partial_content_loses_due_to_low_coverage", "label": "test_ct_011_partial_content_loses_due_to_low_coverage()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L240", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "label": "test_ct_012_recalculate_existing_selected_extractor()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L253", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/tests/test_select_article_extractor.py"}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "label": "test_ct_013_empty_articles_list()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L279", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "label": "test_ct_014_invalid_json_fails_atomically()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L298", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "label": "test_integration_reference_file()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L315", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "label": "test_integration_large_batch_determinism()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L337", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "label": "test_integration_pipeline_downstream_consumer()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L386", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "label": "test_e2e_cli_subprocess_real_execution()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L423", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "label": "test_e2e_cli_subprocess_default_naming()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L460", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "label": "test_e2e_cli_subprocess_invalid_input()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L488", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "label": "test_e2e_cli_subprocess_missing_file()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L501", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_1", "label": "Su\u00edte de Testes Automatizados para o Seletor Determin\u00edstico de Extrator. Cobre\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L1"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_97", "label": "CT-001: Tr\u00eas candidatos com consenso e um vencedor claro -> Selecionar o maior\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L97"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_110", "label": "CT-002: Dois ou mais candidatos dentro de 0,03 do maior score -> Selecionar o\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L110"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_122", "label": "CT-003: Empate t\u00e9cnico e mesma quantidade de shingles -> Aplicar prioridade\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L122"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_143", "label": "CT-004: Tr\u00eas candidatos sem consenso -> Selecionar a quantidade mediana de\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L143"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_158", "label": "CT-005: Dois candidatos sem consenso -> Selecionar a maior quantidade de\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L158"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_172", "label": "CT-006: Somente um candidato utiliz\u00e1vel -> Selecionar esse candidato.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L172"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_184", "label": "CT-007: Nenhum utiliz\u00e1vel, mas existe candidato degradado -> Executar o\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L184"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_196", "label": "CT-008: Todos os candidatos indispon\u00edveis -> Selecionar newspaper4k.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L196"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_208", "label": "CT-009: Readability retorna apenas um fragmento pequeno enquanto os outros\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L208"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_225", "label": "CT-010: Um candidato cont\u00e9m o conte\u00fado comum e muito conte\u00fado excedente ->\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L225"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_241", "label": "CT-011: Um candidato cont\u00e9m somente parte do conte\u00fado comum -> Perde cobertura\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L241"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_254", "label": "CT-012: A entrada j\u00e1 cont\u00e9m selected_extractor -> Recalcular e substituir\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L254"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_280", "label": "CT-013: articles est\u00e1 vazio -> Gerar sa\u00edda v\u00e1lida com articles vazio.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L280"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_299", "label": "CT-014: JSON inv\u00e1lido -> N\u00e3o gerar sa\u00edda.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L299"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_316", "label": "Testa o processamento em lote completo sobre o arquivo real\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L316"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_338", "label": "Gera um lote de 100 artigos sint\u00e9ticos e verifica 100% de repetibilidade\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L338"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_387", "label": "Testa a integra\u00e7\u00e3o end-to-end do pipeline downstream: L\u00ea o JSON enriquecido com\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L387"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_424", "label": "E2E: Executa scripts/select_article_extractor.py como subprocesso real na linha\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L424"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_461", "label": "E2E: Executa CLI sem a flag -o e valida cria\u00e7\u00e3o autom\u00e1tica de\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L461"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_489", "label": "E2E: Executa CLI com JSON inv\u00e1lido e valida c\u00f3digo de sa\u00edda e erro no stderr.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L489"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_502", "label": "E2E: Executa CLI com arquivo inexistente e valida c\u00f3digo 1 e mensagem no stderr.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L502"}], "edges": [{"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L10", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "os", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L11", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "subprocess", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L12", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "sys", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "tempfile", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L14", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L15", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L16", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "pytest", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L18", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "scripts_select_article_extractor", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L20", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L40", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_html_entities_and_tags", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L47", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_links", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L53", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_nfkc_unicode_and_punctuation", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L59", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_sliding_window", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L71", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_short_text", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L79", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_empty", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L87", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_001_three_candidates_clear_winner", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L96", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_002_technical_tie_smallest_shingles", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L109", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_003_technical_tie_priority_fallback", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L121", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_004_three_candidates_no_consensus", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L142", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_005_two_candidates_no_consensus", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L157", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_006_single_usable_candidate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L171", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_007_degraded_candidates_only", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L183", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_008_all_candidates_unavailable", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L195", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_009_small_fragment_loses_due_to_low_coverage", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L207", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_010_excessive_boilerplate_loses_due_to_low_support", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L224", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_011_partial_content_loses_due_to_low_coverage", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L240", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L253", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L253", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L279", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L279", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L298", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L298", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L315", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L315", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L337", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L337", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L386", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L386", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L423", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L423", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L460", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L460", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L488", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L488", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L501", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L270", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L286", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L317", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L392", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L425", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L476", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L493", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L503", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_1", "target": "$graphify-root$_tests_test_select_article_extractor_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L1", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_97", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_001_three_candidates_clear_winner", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L97", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_110", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_002_technical_tie_smallest_shingles", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L110", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_122", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_003_technical_tie_priority_fallback", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L122", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_143", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_004_three_candidates_no_consensus", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L143", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_158", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_005_two_candidates_no_consensus", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L158", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_172", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_006_single_usable_candidate", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L172", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_184", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_007_degraded_candidates_only", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L184", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_196", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_008_all_candidates_unavailable", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L196", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_208", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_009_small_fragment_loses_due_to_low_coverage", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L208", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_225", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_010_excessive_boilerplate_loses_due_to_low_support", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L225", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_241", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_011_partial_content_loses_due_to_low_coverage", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L241", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_254", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L254", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_280", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L280", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_299", "target": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L299", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_316", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L316", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_338", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L338", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_387", "target": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L387", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_424", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L424", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_461", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L461", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_489", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L489", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_502", "target": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L502", "weight": 1.0}], "raw_calls": [{"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L41", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L42", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L43", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_empty_and_invalid", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L44", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_html_entities_and_tags", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L49", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_links", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L55", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_nfkc_unicode_and_punctuation", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L62", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_sliding_window", "callee": "generate_shingles", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L73", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_short_text", "callee": "generate_shingles", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L82", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_generate_shingles_empty", "callee": "generate_shingles", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L88", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_001_three_candidates_clear_winner", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L104", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_002_technical_tie_smallest_shingles", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L117", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_003_technical_tie_priority_fallback", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L129", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_003_technical_tie_priority_fallback", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L138", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_004_three_candidates_no_consensus", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L152", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_005_two_candidates_no_consensus", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L166", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_006_single_usable_candidate", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L178", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_007_degraded_candidates_only", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L191", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_008_all_candidates_unavailable", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L202", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_009_small_fragment_loses_due_to_low_coverage", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L219", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_010_excessive_boilerplate_loses_due_to_low_support", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L236", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_011_partial_content_loses_due_to_low_coverage", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L249", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L267", "receiver": "in_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "dumps", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L267", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L269", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L271", "receiver": "out_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L274", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_012_recalculate_existing_selected_extractor", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L274"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L283", "receiver": "in_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "dumps", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L283", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L285", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L287", "receiver": "out_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L290", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_013_empty_articles_list", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L290"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L301", "receiver": "in_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "callee": "raises", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L304", "receiver": "pytest"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "callee": "ValueError", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L304"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L305", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_ct_014_invalid_json_fails_atomically", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L307", "receiver": "expected_out"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L318", "receiver": "ref_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "skip", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L319", "receiver": "pytest"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L322", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L326", "receiver": "out_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L329", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_reference_file", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L329"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "callee": "append", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L365", "receiver": "articles"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L369", "receiver": "in_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "callee": "dumps", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L369", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L374", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_large_batch_determinism", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L375", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L393", "receiver": "ref_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "skip", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L394", "receiver": "pytest"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "process_batch", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L397", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L400", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L400"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "str", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L414"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_integration_pipeline_downstream_consumer", "callee": "strip", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L415", "receiver": "chosen_text"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L426", "receiver": "ref_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "skip", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L427", "receiver": "pytest"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L430", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L435", "receiver": "ref_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "run", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L443", "receiver": "subprocess"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L446", "receiver": "out_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_real_execution", "callee": "loads", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L449", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L473", "receiver": "in_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "dumps", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L473", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L476", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "run", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L479", "receiver": "subprocess"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L481", "receiver": "expected_out"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L484", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_default_naming", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L484"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L491", "receiver": "invalid_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L493", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_invalid_input", "callee": "run", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L496", "receiver": "subprocess"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L503", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_e2e_cli_subprocess_missing_file", "callee": "run", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L506", "receiver": "subprocess"}]}