{"nodes": [{"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "label": "test_import_service.py", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L1"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo", "label": "FakeArtistRepo", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L16", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_init", "label": ".__init__()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L17", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "label": ".get_or_create()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L20", "_callable": true}, {"id": "artist", "label": "Artist", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "label": "FakeTrackRepo", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L34", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_init", "label": ".__init__()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L35", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_get_by_source", "label": ".get_by_source()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L40", "_callable": true}, {"id": "track", "label": "Track", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "label": ".add()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L43", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "label": "FakeStorage", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L74", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_init", "label": ".__init__()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L75", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_save_file", "label": ".save_file()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L79", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_delete", "label": ".delete()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L83", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "label": "FakeSource", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L87", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_init", "label": ".__init__()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L90", "_callable": true}, {"id": "sourcefile", "label": "SourceFile", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_info", "label": ".info()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L93", "_callable": true}, {"id": "sourceinfo", "label": "SourceInfo", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_is_available", "label": ".is_available()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L96", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_scan", "label": ".scan()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L99", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "label": "_file()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L103", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "label": "_service()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L113", "_callable": true}, {"id": "libraryimportservice", "label": "LibraryImportService", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/tests/test_import_service.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "label": "test_imports_new_files()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L117", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "label": "test_dedup_skips_already_imported()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L130", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "label": "test_per_file_failure_is_isolated_and_rolls_back_storage()", "file_type": "code", "source_file": "tests/test_import_service.py", "source_location": "L162", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_rationale_1", "label": "Unit tests for LibraryImportService \u2014 DB-free, in-memory fakes.", "file_type": "rationale", "source_file": "tests/test_import_service.py", "source_location": "L1"}], "edges": [{"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "datetime", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L3", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L4", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "collections_abc", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L5", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L6", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "pytest", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L8", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "app_application_import_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L9", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "app_domain_entities", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L10", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "app_domain_sources", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L11", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L16", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L17", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L20", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "target": "artist", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L20", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L34", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L35", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_get_by_source", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L40", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_get_by_source", "target": "track", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L40", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L43", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "target": "track", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L43", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L74", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L75", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_save_file", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L79", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_save_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L79", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_delete", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L83", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L87", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L90", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_init", "target": "sourcefile", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L90", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_info", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L93", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_info", "target": "sourceinfo", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L93", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_is_available", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L96", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_scan", "relation": "method", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L99", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_scan", "target": "sourcefile", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L99", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L103", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "target": "sourcefile", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L103", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L113", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L113", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L113", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "target": "libraryimportservice", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L113", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L117", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L130", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L162", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "target": "artist", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L23", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "target": "track", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L48", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource_info", "target": "sourceinfo", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L94", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "target": "sourcefile", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L104", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L106", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "target": "libraryimportservice", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L114", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L114", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L118", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L118", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L119", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L119", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L121", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L131", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L131", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "track", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L133", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L154", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L154", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L156", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L163", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L164", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakesource", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L165", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_file", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L165", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_service", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L167", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_rationale_1", "target": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_import_service.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "callee": "now", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L22", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakeartistrepo_get_or_create", "callee": "uuid4", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L24", "receiver": "uuid"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_get_by_source", "callee": "get", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L41", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "callee": "RuntimeError", "is_member_call": false, "source_file": "tests/test_import_service.py", "source_location": "L46", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "callee": "now", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L47", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "callee": "UUID", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L49", "receiver": "uuid"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_faketrackrepo_add", "callee": "append", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L70", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_fakestorage_delete", "callee": "append", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L84", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_imports_new_files", "callee": "scan_and_import", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L121", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "callee": "now", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L132", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "callee": "uuid4", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L134", "receiver": "uuid"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "callee": "uuid4", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L136", "receiver": "uuid"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_dedup_skips_already_imported", "callee": "scan_and_import", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L156", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_tests_test_import_service_test_per_file_failure_is_isolated_and_rolls_back_storage", "callee": "scan_and_import", "is_member_call": true, "source_file": "tests/test_import_service.py", "source_location": "L167", "receiver": null}]}