1 line
61 KiB
JSON
1 line
61 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": "L30", "_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": "L37", "_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": "L43", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_images_stripped_while_links_preserved", "label": "test_normalize_text_markdown_images_stripped_while_links_preserved()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L49", "_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": "L79", "_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": "L105", "_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": "L113", "_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": "L121", "_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": "L130", "_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": "L146", "_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": "L163", "_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": "L184", "_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": "L199", "_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": "L215", "_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": "L230", "_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": "L242", "_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": "L254", "_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": "L271", "_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": "L289", "_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": "L302", "_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": "L334", "_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": "L353", "_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": "L370", "_callable": true}, {"id": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "label": "test_article_1_regression_technical_tie_markdown_images()", "file_type": "code", "source_file": "tests/test_select_article_extractor.py", "source_location": "L401", "_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": "L435", "_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": "L493", "_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": "L530", "_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": "L567", "_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": "L595", "_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": "L608", "_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_50", "label": "Garante que marca\u00e7\u00e3o de imagem Markdown  seja descartada e link\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L50"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_131", "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": "L131"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_147", "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": "L147"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_164", "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": "L164"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_185", "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": "L185"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_200", "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": "L200"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_216", "label": "CT-006: Somente um candidato utiliz\u00e1vel -> Selecionar esse candidato.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L216"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_231", "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": "L231"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_243", "label": "CT-008: Todos os candidatos indispon\u00edveis -> Selecionar newspaper4k.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L243"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_255", "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": "L255"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_272", "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": "L272"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_290", "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": "L290"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_303", "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": "L303"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_335", "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": "L335"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_354", "label": "CT-014: JSON inv\u00e1lido -> N\u00e3o gerar sa\u00edda.", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L354"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_371", "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": "L371"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_402", "label": "Teste de regress\u00e3o para o Artigo 1 (Los puntajes de River vs. Independiente\u2026", "file_type": "rationale", "source_file": "tests/test_select_article_extractor.py", "source_location": "L402"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_436", "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": "L436"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_494", "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": "L494"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_531", "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": "L531"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_568", "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": "L568"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_596", "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": "L596"}, {"id": "$graphify-root$_tests_test_select_article_extractor_rationale_609", "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": "L609"}], "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": "subprocess", "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": "sys", "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": "pathlib", "relation": "imports_from", "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": "pytest", "relation": "imports", "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": "scripts_select_article_extractor", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L17", "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": "L30", "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": "L37", "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": "L43", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_images_stripped_while_links_preserved", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L49", "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": "L79", "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": "L105", "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": "L113", "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": "L121", "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": "L130", "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": "L146", "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": "L163", "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": "L184", "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": "L199", "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": "L215", "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": "L230", "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": "L242", "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": "L254", "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": "L271", "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": "L289", "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": "L302", "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": "L302", "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": "L334", "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": "L334", "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": "L353", "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": "L353", "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": "L370", "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": "L370", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_py", "target": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L401", "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": "L435", "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": "L435", "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": "L493", "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": "L493", "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": "L530", "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": "L530", "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": "L567", "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": "L567", "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": "L595", "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": "L595", "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": "L608", "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": "L325", "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": "L341", "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": "L372", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L408", "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": "L499", "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": "L532", "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": "L583", "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": "L600", "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": "L610", "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_50", "target": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_images_stripped_while_links_preserved", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L50", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_131", "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": "L131", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_147", "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": "L147", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_164", "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": "L164", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_185", "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": "L185", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_200", "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": "L200", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_216", "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": "L216", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_231", "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": "L231", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_243", "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": "L243", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_255", "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": "L255", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_272", "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": "L272", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_290", "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": "L290", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_303", "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": "L303", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_335", "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": "L335", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_354", "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": "L354", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_371", "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": "L371", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_402", "target": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_select_article_extractor.py", "source_location": "L402", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_436", "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": "L436", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_494", "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": "L494", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_531", "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": "L531", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_568", "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": "L568", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_596", "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": "L596", "weight": 1.0}, {"source": "$graphify-root$_tests_test_select_article_extractor_rationale_609", "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": "L609", "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": "L31", "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": "L32", "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": "L33", "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": "L34", "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": "L39", "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": "L45", "receiver": null}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_normalize_text_markdown_images_stripped_while_links_preserved", "callee": "normalize_text", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L57", "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": "L82", "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": "L107", "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": "L116", "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": "L122", "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": "L141", "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": "L159", "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": "L171", "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": "L180", "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": "L194", "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": "L210", "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": "L225", "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": "L238", "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": "L249", "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": "L266", "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": "L285", "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": "L298", "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": "L322", "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": "L322", "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": "L324", "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": "L326", "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": "L329", "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": "L329"}, {"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": "L338", "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": "L338", "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": "L340", "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": "L342", "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": "L345", "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": "L345"}, {"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": "L356", "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": "L359", "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": "L359"}, {"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": "L360", "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": "L362", "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": "L373", "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": "L374", "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": "L379", "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": "L383", "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": "L386", "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": "L386"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "callee": "exists", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L409", "receiver": "ref_file"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "callee": "skip", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L410", "receiver": "pytest"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "callee": "load", "is_member_call": true, "source_file": "tests/test_select_article_extractor.py", "source_location": "L413", "receiver": "json"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_select_article_extractor.py", "source_location": "L413"}, {"caller_nid": "$graphify-root$_tests_test_select_article_extractor_test_article_1_regression_technical_tie_markdown_images", "callee": "select_article_extractor", "is_member_call": false, "source_file": "tests/test_select_article_extractor.py", "source_location": "L416", "receiver": null}, {"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": "L472", "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": "L476", "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": "L476", "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": "L481", "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": "L482", "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": "L500", "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": "L501", "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": "L504", "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": "L507", "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": "L507"}, {"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": "L521"}, {"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": "L522", "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": "L533", "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": "L534", "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": "L537", "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": "L542", "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": "L550", "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": "L553", "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": "L556", "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": "L580", "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": "L580", "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": "L583", "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": "L586", "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": "L588", "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": "L591", "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": "L591"}, {"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": "L598", "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": "L600", "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": "L603", "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": "L610", "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": "L613", "receiver": "subprocess"}]} |