{"nodes": [{"id": "ads_backend_skills_levion_cms_levion_add_email_lib_flow_types", "label": "Levion Flow Types (email skill)", "file_type": "document", "source_file": "ads-backend/skills/levion-cms/levion-add-email/lib/flow-types.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "ads_backend_skills_levion_cms_levion_add_email_lib_flow_types_flow_trigger_types", "label": "Email flow trigger types (afterChange hook, form destination, server action/route, cron)", "file_type": "concept", "source_file": "ads-backend/skills/levion-cms/levion-add-email/lib/flow-types.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "afterChange sends are best-effort (errors caught) so send failure does not roll back row creation; form destinations need no code; cron is refused."}], "edges": [{"source": "ads_backend_skills_levion_cms_levion_add_email_lib_flow_types", "target": "ads_backend_skills_levion_cms_levion_add_email_lib_flow_types_flow_trigger_types", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "ads-backend/skills/levion-cms/levion-add-email/lib/flow-types.md", "source_location": null, "weight": 1.0}, {"source": "ads_backend_skills_levion_cms_levion_add_email_lib_flow_types_flow_trigger_types", "target": "ads_backend_skills_levion_cms_levion_add_email_lib_template_anatomy_sendloggedemail", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "ads-backend/skills/levion-cms/levion-add-email/lib/flow-types.md", "source_location": null, "weight": 1.0}], "hyperedges": []}