{"nodes": [{"id": "$graphify-root$_scripts_build_homelab_ai_index", "label": "build-homelab-ai-index", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L1"}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_tokenise", "label": "tokenise()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L28", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "label": "load_patterns()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L32", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "$graphify-root$/scripts/build-homelab-ai-index"}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_path_is_secret", "label": "path_is_secret()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L42", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_path_matches_any", "label": "path_matches_any()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L59", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "label": "candidate_files()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L63", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "label": "read_text()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L86", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "label": "chunk_file()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L95", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "label": "build_index()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L134", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_main", "label": "main()", "file_type": "code", "source_file": "scripts/build-homelab-ai-index", "source_location": "L166", "_callable": true}, {"id": "$graphify-root$_scripts_build_homelab_ai_index_rationale_2", "label": "Build a small local retrieval index from non-secret homelab repo files.", "file_type": "rationale", "source_file": "scripts/build-homelab-ai-index", "source_location": "L2"}], "edges": [{"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "argparse", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L6", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "fnmatch", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L7", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L8", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L9", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "os", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L10", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "pathlib", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L11", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "re", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L12", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "sys", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "time", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L14", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "collections", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L15", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_tokenise", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L28", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_path_is_secret", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L42", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_path_is_secret", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L42", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_path_matches_any", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L59", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L63", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "target": "path", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L63", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L86", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L86", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L95", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L95", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L134", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "target": "path", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L134", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L166", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "target": "$graphify-root$_scripts_build_homelab_ai_index_path_is_secret", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L81", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "target": "$graphify-root$_scripts_build_homelab_ai_index_path_matches_any", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L82", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "target": "$graphify-root$_scripts_build_homelab_ai_index_tokenise", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L112", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L139", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "target": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L142", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_main", "target": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L177", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_main", "target": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L179", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_main", "target": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L180", "weight": 1.0}, {"source": "$graphify-root$_scripts_build_homelab_ai_index_rationale_2", "target": "$graphify-root$_scripts_build_homelab_ai_index", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "scripts/build-homelab-ai-index", "source_location": "L2", "weight": 1.0}], "raw_calls": [{"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_tokenise", "callee": "lower", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L29", "receiver": "token"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_tokenise", "callee": "findall", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L29", "receiver": "TOKEN_RE"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "callee": "splitlines", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L34", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "callee": "read_text", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L34", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "callee": "strip", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L35", "receiver": "raw_line"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "callee": "startswith", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L36", "receiver": "line"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_load_patterns", "callee": "append", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L38", "receiver": "patterns"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_path_is_secret", "callee": "lower", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L43", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_path_matches_any", "callee": "fnmatch", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L60", "receiver": "fnmatch"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "rglob", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L65", "receiver": "REPO_ROOT"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "is_file", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L65", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "as_posix", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L70", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L70", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L70"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "fnmatch", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L71", "receiver": "fnmatch"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "add", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L72", "receiver": "files"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "is_file", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L75", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "add", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L76", "receiver": "files"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "as_posix", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L82", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L82", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_candidate_files", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L82"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "callee": "stat", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L88", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_read_text", "callee": "read_text", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L90", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "as_posix", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L96", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L96", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L96"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "splitlines", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L97", "receiver": "text"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "strip", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L103", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "join", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L103", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "append", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L105", "receiver": "chunks"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "strip", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L119", "receiver": "text"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "append", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L120", "receiver": "chunks"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_chunk_file", "callee": "strip", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L126", "receiver": "text"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "Counter", "is_member_call": false, "source_file": "scripts/build-homelab-ai-index", "source_location": "L136", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "list", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L144"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "append", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L146", "receiver": "chunks"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "update", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L147", "receiver": "document_frequency"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "log", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L152", "receiver": "math"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "items", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L153", "receiver": "document_frequency"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_build_index", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L158"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "ArgumentParser", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L167", "receiver": "argparse"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "__doc__", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L167"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "add_argument", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L168", "receiver": "parser"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "DEFAULT_SOURCES_FILE", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L168"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "add_argument", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L169", "receiver": "parser"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "DEFAULT_EXCLUDES_FILE", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L169"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "add_argument", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L170", "receiver": "parser"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "DEFAULT_INDEX_DIR", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L170"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "parse_args", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L171", "receiver": "parser"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "is_file", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L173", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "is_file", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L178", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "mkdir", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L182", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "write_text", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L185", "receiver": "index_path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "dumps", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L185", "receiver": "json"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "write_text", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L186", "receiver": "manifest_path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "dumps", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L187", "receiver": "json"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "time", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L189", "receiver": "time"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L190", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L190"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L191", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L191"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "is_file", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L191", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L194"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "as_posix", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L196", "receiver": null}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "relative_to", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L196", "receiver": "path"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "REPO_ROOT", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "scripts/build-homelab-ai-index", "source_location": "L196"}, {"caller_nid": "$graphify-root$_scripts_build_homelab_ai_index_main", "callee": "stat", "is_member_call": true, "source_file": "scripts/build-homelab-ai-index", "source_location": "L196", "receiver": "path"}]}