{"nodes": [{"id": "backend_alembic_versions_0007_seed_recipes_py", "label": "0007_seed_recipes.py", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L1"}, {"id": "0007_seed_recipes_upsert_ingredients", "label": "_upsert_ingredients()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L82"}, {"id": "0007_seed_recipes_insert_recipes", "label": "_insert_recipes()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L767"}, {"id": "0007_seed_recipes_delete_recipes", "label": "_delete_recipes()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L823"}, {"id": "0007_seed_recipes_delete_ingredients", "label": "_delete_ingredients()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L832"}, {"id": "0007_seed_recipes_upgrade", "label": "upgrade()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L846"}, {"id": "0007_seed_recipes_downgrade", "label": "downgrade()", "file_type": "code", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L851"}, {"id": "0007_seed_recipes_rationale_1", "label": "seed canonical ingredients (and 30 starter recipes in P4-14) Revision ID: 0007", "file_type": "rationale", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L1"}, {"id": "0007_seed_recipes_rationale_833", "label": "Best-effort: only remove rows whose name_lower matches one of our seeds. Pre", "file_type": "rationale", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L833"}], "edges": [{"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "json", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L7", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "decimal", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L8", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "alembic", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L10", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "sqlalchemy", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L11", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_upsert_ingredients", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L82", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_insert_recipes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L767", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_delete_recipes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L823", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_delete_ingredients", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L832", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_upgrade", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L846", "weight": 1.0}, {"source": "backend_alembic_versions_0007_seed_recipes_py", "target": "0007_seed_recipes_downgrade", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L851", "weight": 1.0}, {"source": "0007_seed_recipes_upgrade", "target": "0007_seed_recipes_upsert_ingredients", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L847", "weight": 1.0}, {"source": "0007_seed_recipes_upgrade", "target": "0007_seed_recipes_insert_recipes", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L848", "weight": 1.0}, {"source": "0007_seed_recipes_downgrade", "target": "0007_seed_recipes_delete_recipes", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L852", "weight": 1.0}, {"source": "0007_seed_recipes_downgrade", "target": "0007_seed_recipes_delete_ingredients", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L853", "weight": 1.0}, {"source": "0007_seed_recipes_rationale_1", "target": "backend_alembic_versions_0007_seed_recipes_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L1", "weight": 1.0}, {"source": "0007_seed_recipes_rationale_833", "target": "0007_seed_recipes_delete_ingredients", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L833", "weight": 1.0}], "raw_calls": [{"caller_nid": "0007_seed_recipes_upsert_ingredients", "callee": "get_bind", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L83"}, {"caller_nid": "0007_seed_recipes_upsert_ingredients", "callee": "execute", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L85"}, {"caller_nid": "0007_seed_recipes_upsert_ingredients", "callee": "text", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L86"}, {"caller_nid": "0007_seed_recipes_upsert_ingredients", "callee": "lower", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L101"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "get_bind", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L768"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "fetchall", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L771"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "execute", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L771"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "text", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L771"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "str", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L772"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "get", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L780"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "lower", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L780"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "RuntimeError", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L782"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "append", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L786"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "float", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L788"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "execute", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L792"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "text", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L793"}, {"caller_nid": "0007_seed_recipes_insert_recipes", "callee": "dumps", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L817"}, {"caller_nid": "0007_seed_recipes_delete_recipes", "callee": "get_bind", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L824"}, {"caller_nid": "0007_seed_recipes_delete_recipes", "callee": "execute", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L826"}, {"caller_nid": "0007_seed_recipes_delete_recipes", "callee": "text", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L827"}, {"caller_nid": "0007_seed_recipes_delete_ingredients", "callee": "get_bind", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L838"}, {"caller_nid": "0007_seed_recipes_delete_ingredients", "callee": "lower", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L839"}, {"caller_nid": "0007_seed_recipes_delete_ingredients", "callee": "execute", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L840"}, {"caller_nid": "0007_seed_recipes_delete_ingredients", "callee": "text", "source_file": "backend/alembic/versions/0007_seed_recipes.py", "source_location": "L841"}]}