{"nodes": [{"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "label": "local.py", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L1"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "label": "LocalFileStorage", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L28", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_init", "label": ".__init__()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L29", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/app/infrastructure/storage/local.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "label": ".save_file()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L32", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "label": ".open_range()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L40", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "label": ".stat()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L67", "_callable": true}, {"id": "objectstat", "label": "ObjectStat", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/app/infrastructure/storage/local.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_exists", "label": ".exists()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L75", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_delete", "label": ".delete()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L78", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "label": ".disk_usage()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L81", "_callable": true}, {"id": "diskusage", "label": "DiskUsage", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/app/infrastructure/storage/local.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path", "label": ".as_local_path()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L90", "_callable": true}, {"id": "abstractasynccontextmanager", "label": "AbstractAsyncContextManager", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "/Users/senko/Work/mcma-compose/mcma-backend/app/infrastructure/storage/local.py"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path_cm", "label": "._as_local_path_cm()", "file_type": "code", "source_file": "app/infrastructure/storage/local.py", "source_location": "L94", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_rationale_1", "label": "LocalFileStorage \u2014 stores files on the local filesystem.", "file_type": "rationale", "source_file": "app/infrastructure/storage/local.py", "source_location": "L1"}], "edges": [{"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "os", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L3", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "shutil", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L4", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "collections_abc", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L5", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "contextlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L6", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L7", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "anyio", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L9", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "app_domain_entities_storage", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L11", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "app_domain_errors", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L12", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "relation": "contains", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L28", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L29", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_init", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L29", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L32", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L32", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L40", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L67", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "target": "objectstat", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L67", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_exists", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L75", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_delete", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L78", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L81", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "target": "diskusage", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L81", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L90", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path", "target": "abstractasynccontextmanager", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L90", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path", "target": "path", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L90", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path_cm", "relation": "method", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L94", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path_cm", "target": "path", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L94", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L38", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L44", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L46", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L69", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "target": "objectstat", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L73", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L85", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "target": "diskusage", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L88", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_as_local_path_cm", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L91", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_rationale_1", "target": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "app/infrastructure/storage/local.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "callee": "mkdir", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L34", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "callee": "with_suffix", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L35", "receiver": "dest"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "callee": "copyfile", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L36", "receiver": "shutil"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_save_file", "callee": "replace", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L37", "receiver": "os"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "callee": "StorageError", "is_member_call": false, "source_file": "app/infrastructure/storage/local.py", "source_location": "L45", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_open_range", "callee": "_iter", "is_member_call": false, "source_file": "app/infrastructure/storage/local.py", "source_location": "L64", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "callee": "StorageError", "is_member_call": false, "source_file": "app/infrastructure/storage/local.py", "source_location": "L70", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "callee": "lstrip", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L72", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "callee": "lower", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L72", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_stat", "callee": "get", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L73", "receiver": "_EXT_CONTENT_TYPE"}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_delete", "callee": "unlink", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L79", "receiver": null}, {"caller_nid": "users_senko_work_mcma_compose_mcma_backend_app_infrastructure_storage_local_localfilestorage_disk_usage", "callee": "run_sync", "is_member_call": true, "source_file": "app/infrastructure/storage/local.py", "source_location": "L87", "receiver": null}]}