{"nodes": [{"id": "$graphify-root$_backend_app_api_jobs_py", "label": "jobs.py", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L1"}, {"id": "$graphify-root$_backend_app_api_jobs_jobtriggerresponse", "label": "JobTriggerResponse", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L19", "_callable": true, "_callable_class": true}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "$graphify-root$_backend_app_api_jobs_jobchainresponse", "label": "JobChainResponse", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L24", "_callable": true, "_callable_class": true}, {"id": "$graphify-root$_backend_app_api_jobs_create_job", "label": "_create_job()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L30", "_callable": true}, {"id": "session", "label": "Session", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "jobhistory", "label": "JobHistory", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "label": "_dispatch_and_audit()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L56", "_callable": true}, {"id": "user", "label": "User", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "post", "label": "post", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_tms", "label": "trigger_tms()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L71", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "label": "trigger_attendance()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L78", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "label": "trigger_tms_return()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L85", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "label": "trigger_linehaul()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L92", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "label": "trigger_refresh_all()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L99", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "label": "trigger_tms_all_alias()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L156", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "label": "trigger_sync_master()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L162", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_retry_job", "label": "retry_job()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L187", "_callable": true}, {"id": "get", "label": "get", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/backend/app/api/jobs.py"}, {"id": "$graphify-root$_backend_app_api_jobs_job_status", "label": "job_status()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L219", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_list_jobs", "label": "list_jobs()", "file_type": "code", "source_file": "backend/app/api/jobs.py", "source_location": "L238", "_callable": true}, {"id": "$graphify-root$_backend_app_api_jobs_rationale_100", "label": "Trigger TMS \u2192 TMS-Return \u2192 Linehaul \u2192 Attendance sequentially. Each task is\u2026", "file_type": "rationale", "source_file": "backend/app/api/jobs.py", "source_location": "L100"}, {"id": "$graphify-root$_backend_app_api_jobs_rationale_157", "label": "Deprecated: use POST /api/jobs/refresh-all instead.", "file_type": "rationale", "source_file": "backend/app/api/jobs.py", "source_location": "L157"}, {"id": "$graphify-root$_backend_app_api_jobs_rationale_163", "label": "Sync master data (drivers/sellers) dari TMS API ke DB.", "file_type": "rationale", "source_file": "backend/app/api/jobs.py", "source_location": "L163"}, {"id": "$graphify-root$_backend_app_api_jobs_rationale_188", "label": "Retry job yang gagal (F-JOB-05). Buat job baru dengan job_type sama.", "file_type": "rationale", "source_file": "backend/app/api/jobs.py", "source_location": "L188"}], "edges": [{"source": "$graphify-root$_backend_app_api_jobs_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L1", "weight": 1.0, "_python_import_module": "fastapi", "_python_import_bindings": [["APIRouter", "APIRouter"], ["Depends", "Depends"], ["HTTPException", "HTTPException"], ["Cookie", "Cookie"]]}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L2", "weight": 1.0, "_python_import_module": "sqlalchemy.orm", "_python_import_bindings": [["Session", "Session"]]}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "pydantic", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L3", "weight": 1.0, "_python_import_module": "pydantic", "_python_import_bindings": [["BaseModel", "BaseModel"]]}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L4", "weight": 1.0, "_python_import_module": "datetime", "_python_import_bindings": [["datetime", "datetime"]]}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L5", "weight": 1.0, "_python_import_module": "uuid", "_python_import_bindings": [["uuid", "uuid"]], "_python_import_module_binding": true}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L6", "weight": 1.0, "_python_import_module": "logging", "_python_import_bindings": [["logging", "logging"]], "_python_import_module_binding": true}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_db_session_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L7", "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_jobs_py", "target": "$graphify-root$_backend_app_db_models_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L8", "weight": 1.0, "_python_import_module": "app.db.models", "_python_import_bindings": [["JobHistory", "JobHistory"], ["User", "User"]], "target_file": "$graphify-root$/backend/app/db/models.py"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_services_auth_service_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L9", "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_jobs_py", "target": "$graphify-root$_backend_app_services_observability_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L11", "weight": 1.0, "_python_import_module": "app.services.observability", "_python_import_bindings": [["activity_logger", "activity_logger"]], "target_file": "$graphify-root$/backend/app/services/observability.py"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_celery_app_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L12", "weight": 1.0, "_python_import_module": "app.celery_app", "_python_import_bindings": [["celery_app", "celery_app"]], "target_file": "$graphify-root$/backend/app/celery_app.py"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_deps_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L13", "weight": 1.0, "_python_import_module": "app.api.deps", "_python_import_bindings": [["require_can_trigger", "require_can_trigger"], ["get_current_user_dep", "get_current_user_dep"]], "target_file": "$graphify-root$/backend/app/api/deps.py"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_jobtriggerresponse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L19", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_jobtriggerresponse", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L19", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_jobchainresponse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L24", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_jobchainresponse", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L24", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_create_job", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_create_job", "target": "jobhistory", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L56", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L56", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L56", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "target": "jobhistory", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L56", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L70", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_tms", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L71", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L71", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L71", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L77", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L78", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L78", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L78", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L84", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L85", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L85", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L85", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L91", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L92", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L92", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L92", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L98", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L99", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L99", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L99", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L155", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L156", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L156", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L161", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L162", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L162", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L162", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_retry_job", "target": "post", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L186", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_retry_job", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L187", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_retry_job", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L187", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_retry_job", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L187", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_job_status", "target": "get", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L218", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_job_status", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L219", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_job_status", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L219", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_job_status", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L219", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_list_jobs", "target": "get", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L236", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_list_jobs", "target": "get", "relation": "references", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L237", "weight": 1.0, "context": "decorator"}, {"source": "$graphify-root$_backend_app_api_jobs_py", "target": "$graphify-root$_backend_app_api_jobs_list_jobs", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L238", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_list_jobs", "target": "session", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L238", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_list_jobs", "target": "user", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L238", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "target": "$graphify-root$_backend_app_api_jobs_jobtriggerresponse", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L67", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L72", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L74", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L79", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L81", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L86", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L88", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L93", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L95", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L130", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "target": "$graphify-root$_backend_app_api_jobs_jobchainresponse", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L151", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "target": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L158", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L164", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "target": "$graphify-root$_backend_app_api_jobs_jobtriggerresponse", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L183", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_retry_job", "target": "$graphify-root$_backend_app_api_jobs_create_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L203", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_retry_job", "target": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L215", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_rationale_100", "target": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L100", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_rationale_157", "target": "$graphify-root$_backend_app_api_jobs_trigger_tms_all_alias", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L157", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_rationale_163", "target": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L163", "weight": 1.0}, {"source": "$graphify-root$_backend_app_api_jobs_rationale_188", "target": "$graphify-root$_backend_app_api_jobs_retry_job", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/app/api/jobs.py", "source_location": "L188", "weight": 1.0}], "raw_calls": [{"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "first", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L32", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L32", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "query", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L32", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "JobHistory", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L32"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "in_", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L34", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L37", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "JobHistory", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L42", "receiver": null, "via_stub": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "uuid4", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L43", "receiver": "uuid", "_python_receiver_shadowed": false}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "add", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L50", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "commit", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L51", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_create_job", "callee": "refresh", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L52", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "callee": "delay", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L57", "receiver": "task", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "callee": "log", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L58", "receiver": "audit_service", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_dispatch_and_audit", "callee": "activity_logger", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L59", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_tms", "callee": "tms_refresh_task", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L74"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_attendance", "callee": "attendance_refresh_task", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L81"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_tms_return", "callee": "tms_return_refresh_task", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L88"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_linehaul", "callee": "linehaul_refresh_task", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L95"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "tms_refresh_task", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/jobs.py", "source_location": "L109"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "tms_return_refresh_task", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/jobs.py", "source_location": "L110"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "linehaul_refresh_task", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/jobs.py", "source_location": "L111"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "attendance_refresh_task", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "backend/app/api/jobs.py", "source_location": "L112"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "first", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L117", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L117", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "query", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L117", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "JobHistory", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L117"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "in_", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L119", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L122", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "append", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L131", "receiver": "job_ids", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "log", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L132", "receiver": "audit_service", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "apply_async", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L136", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "chain", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L136", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "si", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L137", "receiver": "tms_refresh_task", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "si", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L138", "receiver": "tms_return_refresh_task", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "si", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L139", "receiver": "linehaul_refresh_task", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "si", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L140", "receiver": "attendance_refresh_task", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_refresh_all", "callee": "activity_logger", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L143", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "sync_master_data", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L166", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "utcnow", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L169", "receiver": "datetime", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "get", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L170", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "commit", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L171", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "log", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L172", "receiver": "audit_service", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "activity_logger", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L173", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "get", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L179", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "get", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L180", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_trigger_sync_master", "callee": "get", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L181", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "first", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L189", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L189", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "query", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L189", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "JobHistory", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L189"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L191", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "get", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L199", "receiver": "TASK_MAP", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L201", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "tms_jobs", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L205"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "log", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L206", "receiver": "audit_service", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_retry_job", "callee": "activity_logger", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L207", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "first", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L220", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L220", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "query", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L220", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "JobHistory", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L220"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "HTTPException", "is_member_call": false, "source_file": "backend/app/api/jobs.py", "source_location": "L222", "receiver": null}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L228", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_job_status", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L229", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "query", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L245", "receiver": "db", "_python_receiver_shadowed": true, "receiver_type": "Session"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "JobHistory", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "backend/app/api/jobs.py", "source_location": "L245"}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L247", "receiver": "query", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "filter", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L249", "receiver": "query", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "all", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L251", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "limit", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L251", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "order_by", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L251", "receiver": "query", "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "desc", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L251", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L258", "receiver": null, "_python_receiver_shadowed": true}, {"caller_nid": "$graphify-root$_backend_app_api_jobs_list_jobs", "callee": "isoformat", "is_member_call": true, "source_file": "backend/app/api/jobs.py", "source_location": "L259", "receiver": null, "_python_receiver_shadowed": true}], "_cached_target_files": ["$graphify-root$/backend/app/api/deps.py", "$graphify-root$/backend/app/celery_app.py", "$graphify-root$/backend/app/db/models.py", "$graphify-root$/backend/app/db/session.py", "$graphify-root$/backend/app/services/auth_service.py", "$graphify-root$/backend/app/services/observability.py"]}