{"nodes": [{"id": "$graphify-root$_backend_app_api_lab_py", "label": "lab.py", "file_type": "code", "source_file": "backend/app/api/lab.py", "source_location": "L1"}, {"id": "$graphify-root$_backend_app_api_lab_require_user", "label": "_require_user()", "file_type": "code", "source_file": "backend/app/api/lab.py", "source_location": "L108", "_callable": true}, {"id": "session", "label": "Session", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/lab.py"}, {"id": "$graphify-root$_backend_app_api_lab_pct", "label": "_pct()", "file_type": "code", "source_file": "backend/app/api/lab.py", "source_location": "L117", "_callable": true}, {"id": "$graphify-root$_backend_app_api_lab_shape", "label": "_shape()", "file_type": "code", "source_file": "backend/app/api/lab.py", "source_location": "L121", "_callable": true}, {"id": "get", "label": "get", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/lab.py"}, {"id": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "label": "jtly_cutoff()", "file_type": "code", "source_file": "backend/app/api/lab.py", "source_location": "L142", "_callable": true}, {"id": "$graphify-root$_backend_app_api_lab_rationale_1", "label": "Operations Lab \u2014 endpoint baca-saja buat uji coba skema cutoff. TERPISAH DARI\u2026", "file_type": "rationale", "source_file": "backend/app/api/lab.py", "source_location": "L1"}, {"id": "$graphify-root$_backend_app_api_lab_rationale_149", "label": "Perbandingan skema cutoff uji terhadap data historis. Read-only. Denominasi\u2026", "file_type": "rationale", "source_file": "backend/app/api/lab.py", "source_location": "L149"}], "edges": [{"source": "$graphify-root$_backend_app_api_lab_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L23", "weight": 1.0, "_python_import_module": "logging", "_python_import_bindings": [["logging", "logging"]], "_python_import_module_binding": true}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L24", "weight": 1.0, "_python_import_module": "datetime", "_python_import_bindings": [["date", "date"], ["timedelta", "timedelta"]]}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L26", "weight": 1.0, "_python_import_module": "fastapi", "_python_import_bindings": [["APIRouter", "APIRouter"], ["Cookie", "Cookie"], ["Depends", "Depends"], ["HTTPException", "HTTPException"], ["Query", "Query"]]}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L27", "weight": 1.0, "_python_import_module": "sqlalchemy", "_python_import_bindings": [["text", "text"]]}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L28", "weight": 1.0, "_python_import_module": "sqlalchemy.orm", "_python_import_bindings": [["Session", "Session"]]}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_db_session_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L30", "weight": 1.0, "_python_import_module": "app.db.session", "_python_import_bindings": [["get_db", "get_db"]], "target_file": "$graphify-root$/backend/app/db/session.py"}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_services_auth_service_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L31", "weight": 1.0, "_python_import_module": "app.services.auth_service", "_python_import_bindings": [["get_current_user", "get_current_user"]], "target_file": "$graphify-root$/backend/app/services/auth_service.py"}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_api_lab_require_user", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L108", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_require_user", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L108", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_api_lab_pct", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L117", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_api_lab_shape", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L121", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "target": "get", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L141", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_lab_py", "target": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L142", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L142", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_shape", "target": "$graphify-root$_backend_app_api_lab_pct", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L135", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "target": "$graphify-root$_backend_app_api_lab_require_user", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L154", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "target": "$graphify-root$_backend_app_api_lab_shape", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L202", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_rationale_1", "target": "$graphify-root$_backend_app_api_lab_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L1", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_lab_rationale_149", "target": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/lab.py", "source_location": "L149", "weight": 1.0}], "raw_calls": [{"caller_nid": "$graphify-root$_backend_app_api_lab_require_user", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L110", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_require_user", "callee": "get_current_user", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L111", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_require_user", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L113", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_shape", "callee": "append", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L126", "receiver": "out", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "scalar", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L157", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "execute", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L157", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "text", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L157", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "LAB_SCHEMA", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/lab.py", "source_location": "L159"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "fromisoformat", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L162", "receiver": "date", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L164", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "timedelta", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L166", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L168", "receiver": "start_d", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L169", "receiver": "end_d", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "all", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L173", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "execute", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L173", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "text", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L174", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "format", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L174", "receiver": "_AGG", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "all", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L181", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "execute", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L181", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "text", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L182", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "format", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L182", "receiver": "_AGG", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "all", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L189", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "execute", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L189", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "text", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L190", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "format", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L190", "receiver": "_AGG", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "one", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L197", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "execute", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L197", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "text", "is_member_call": false, "source_file": "backend/app/api/lab.py", "source_location": "L198", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "format", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L198", "receiver": "_AGG", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "LAB_SCHEMA", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/lab.py", "source_location": "L206"}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L207", "receiver": "start_d", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_lab_jtly_cutoff", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/lab.py", "source_location": "L207", "receiver": "end_d", "_python_receiver_shadowed": true}], "_cached_target_files": ["$graphify-root$/backend/app/db/session.py", "$graphify-root$/backend/app/services/auth_service.py"]}