{
  "generated_at": "2026-07-10T09:30:41.852Z",
  "nodes": [
    {
      "id": "ASSET_CHR001",
      "type": "asset",
      "title": "CHR001 Nova Striker",
      "status": "production_ready",
      "owner": "character-production",
      "lifecycle": "implemented",
      "tags": [
        "asset",
        "hero"
      ],
      "relations": [
        "WO_0001",
        "DOC_CHR001_IDENTITY"
      ],
      "file": "graph/nodes/assets/assets.yaml"
    },
    {
      "id": "ASSET_ENM001",
      "type": "asset",
      "title": "ENM001 Syndicate Enforcer",
      "status": "planned",
      "owner": "gameplay-production",
      "lifecycle": "draft",
      "tags": [
        "asset",
        "enemy"
      ],
      "relations": [
        "WO_0002",
        "DOC_GDD_ENEMIES"
      ],
      "file": "graph/nodes/assets/assets.yaml"
    },
    {
      "id": "ASSET_ENV001",
      "type": "asset",
      "title": "ENV001 Waterfront Street",
      "status": "planned",
      "owner": "environment-production",
      "lifecycle": "draft",
      "tags": [
        "asset",
        "environment"
      ],
      "relations": [
        "WO_0003",
        "PROJECT_VS001"
      ],
      "file": "graph/nodes/assets/assets.yaml"
    },
    {
      "id": "DPS_001_MOVEMENT_FOUNDATION",
      "type": "system",
      "title": "DPS-001 Movement Foundation",
      "status": "approved",
      "owner": "Design Office",
      "lifecycle": "validated",
      "tags": [
        "movement",
        "foundation"
      ],
      "relations": [
        "DPS_002_COMBAT_FOUNDATION"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_COMBAT_FOUNDATION",
      "type": "system",
      "title": "DPS-002 Combat Foundation",
      "status": "implemented",
      "owner": "Design Office",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "vertical_slice"
      ],
      "relations": [
        "DPS_001_MOVEMENT_FOUNDATION",
        "DPS_002_COMBAT_STATE_MACHINE",
        "DPS_002_COMBAT_REVIEW"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_COMBAT_STATE_MACHINE",
      "type": "architecture",
      "title": "Combat State Machine",
      "status": "implemented",
      "owner": "Engineering",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "state_machine"
      ],
      "relations": [
        "DPS_002_COMBAT_FOUNDATION",
        "DPS_002_ATTACK_CHAIN"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_ATTACK_CHAIN",
      "type": "system",
      "title": "Light Attack Chain",
      "status": "implemented",
      "owner": "Design",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "combo"
      ],
      "relations": [
        "DPS_002_INPUT_BUFFER",
        "DPS_002_HITBOX_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_HEAVY_ATTACK",
      "type": "system",
      "title": "Heavy Attack",
      "status": "implemented",
      "owner": "Design",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "attack"
      ],
      "relations": [
        "DPS_002_HITBOX_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_AIR_ATTACK",
      "type": "system",
      "title": "Air Attack",
      "status": "implemented",
      "owner": "Engineering",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "movement"
      ],
      "relations": [
        "DPS_002_COMBAT_STATE_MACHINE"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_DASH_ATTACK",
      "type": "system",
      "title": "Dash Attack",
      "status": "implemented",
      "owner": "Engineering",
      "lifecycle": "implemented",
      "tags": [
        "combat",
        "movement"
      ],
      "relations": [
        "DPS_002_COMBAT_STATE_MACHINE"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_INPUT_BUFFER",
      "type": "system",
      "title": "Combat Input Buffer",
      "status": "implemented",
      "owner": "Engineering",
      "lifecycle": "implemented",
      "tags": [
        "input",
        "combat"
      ],
      "relations": [
        "DPS_002_COMBAT_STATE_MACHINE"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_HITBOX_SYSTEM",
      "type": "architecture",
      "title": "Combat Hitbox System",
      "status": "implemented",
      "owner": "Engineering",
      "lifecycle": "implemented",
      "tags": [
        "hitbox",
        "combat"
      ],
      "relations": [
        "DPS_002_TRAINING_DUMMY",
        "DPS_002_BASIC_ENEMY"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_HITSTOP_SYSTEM",
      "type": "system",
      "title": "Hitstop and Impact Feedback",
      "status": "implemented",
      "owner": "Design",
      "lifecycle": "implemented",
      "tags": [
        "impact",
        "feedback"
      ],
      "relations": [
        "DPS_002_HITBOX_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_TRAINING_DUMMY",
      "type": "qa",
      "title": "Combat Training Dummy",
      "status": "implemented",
      "owner": "QA",
      "lifecycle": "implemented",
      "tags": [
        "qa",
        "target"
      ],
      "relations": [
        "DPS_002_HITBOX_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_BASIC_ENEMY",
      "type": "qa",
      "title": "Basic Melee Enemy Placeholder",
      "status": "implemented",
      "owner": "QA",
      "lifecycle": "implemented",
      "tags": [
        "qa",
        "enemy"
      ],
      "relations": [
        "DPS_002_HITBOX_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_COMBAT_TELEMETRY",
      "type": "validator",
      "title": "Combat Telemetry",
      "status": "implemented",
      "owner": "QA",
      "lifecycle": "implemented",
      "tags": [
        "telemetry",
        "combat"
      ],
      "relations": [
        "DPS_002_COMBAT_REVIEW"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_COMBAT_REVIEW",
      "type": "qa",
      "title": "Combat Review Workflow",
      "status": "implemented",
      "owner": "QA",
      "lifecycle": "implemented",
      "tags": [
        "review",
        "combat"
      ],
      "relations": [
        "DPS_002_COMBAT_TELEMETRY",
        "DPS_002_DASHBOARD_STATUS"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DPS_002_DASHBOARD_STATUS",
      "type": "dashboard",
      "title": "Combat Dashboard Status",
      "status": "implemented",
      "owner": "Production",
      "lifecycle": "implemented",
      "tags": [
        "dashboard",
        "combat"
      ],
      "relations": [
        "DPS_002_COMBAT_FOUNDATION"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "EXPERIENCE_FLOW",
      "type": "qa",
      "title": "Flow Experience Target",
      "status": "review",
      "owner": "Design Office",
      "lifecycle": "review",
      "tags": [
        "experience",
        "flow"
      ],
      "relations": [
        "DPS_002_COMBAT_FOUNDATION"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "EXPERIENCE_IMPACT",
      "type": "qa",
      "title": "Impact Experience Target",
      "status": "review",
      "owner": "Design Office",
      "lifecycle": "review",
      "tags": [
        "experience",
        "impact"
      ],
      "relations": [
        "DPS_002_HITSTOP_SYSTEM"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "EXPERIENCE_MASTERY",
      "type": "qa",
      "title": "Mastery Experience Target",
      "status": "review",
      "owner": "Design Office",
      "lifecycle": "review",
      "tags": [
        "experience",
        "mastery"
      ],
      "relations": [
        "DPS_002_ATTACK_CHAIN"
      ],
      "file": "graph/nodes/combat/dps-002.yaml"
    },
    {
      "id": "DOC_STUDIO_BIBLE_INDEX",
      "type": "document",
      "title": "Studio Bible Index",
      "status": "active",
      "owner": "game-director",
      "lifecycle": "implemented",
      "tags": [
        "documentation",
        "studio-bible"
      ],
      "relations": [
        "GOV_SOURCE_OF_TRUTH",
        "DOC_VS001_PRD"
      ],
      "file": "graph/nodes/documentation/documentation.yaml"
    },
    {
      "id": "DOC_VS001_PRD",
      "type": "document",
      "title": "VS-001 PRD",
      "status": "active",
      "owner": "product-owner",
      "lifecycle": "implemented",
      "tags": [
        "documentation",
        "prd"
      ],
      "relations": [
        "PROJECT_VS001",
        "WO_0003"
      ],
      "file": "graph/nodes/documentation/documentation.yaml"
    },
    {
      "id": "DOC_CHR001_IDENTITY",
      "type": "document",
      "title": "CHR001 Hero Identity",
      "status": "active",
      "owner": "game-director",
      "lifecycle": "implemented",
      "tags": [
        "documentation",
        "character"
      ],
      "relations": [
        "WO_0001",
        "ASSET_CHR001"
      ],
      "file": "graph/nodes/documentation/documentation.yaml"
    },
    {
      "id": "DOC_GDD_ENEMIES",
      "type": "document",
      "title": "GDD Enemies",
      "status": "active",
      "owner": "gameplay-designer",
      "lifecycle": "implemented",
      "tags": [
        "documentation",
        "gdd"
      ],
      "relations": [
        "WO_0002",
        "ASSET_ENM001"
      ],
      "file": "graph/nodes/documentation/documentation.yaml"
    },
    {
      "id": "GOV_SOURCE_OF_TRUTH",
      "type": "governance",
      "title": "Source of Truth",
      "status": "active",
      "owner": "game-director",
      "lifecycle": "approved",
      "tags": [
        "governance",
        "studio-bible"
      ],
      "relations": [
        "DOC_STUDIO_BIBLE_INDEX",
        "PROJECT_STREETLINE_HEROES"
      ],
      "file": "graph/nodes/governance/governance.yaml"
    },
    {
      "id": "MEMORY_REV_0002",
      "type": "memory",
      "title": "Movement review MOVE-20260710080338",
      "status": "active",
      "owner": "Design Office",
      "lifecycle": "approved",
      "tags": [
        "memory",
        "movement",
        "DPS-001",
        "review"
      ],
      "relations": [
        "PROJECT_STREETLINE_HEROES",
        "MEMORY_DEC_0002",
        "MEMORY_LES_0002",
        "MEMORY_FND_0002"
      ],
      "file": "graph/nodes/memory/memory.yaml"
    },
    {
      "id": "MEMORY_DEC_0002",
      "type": "memory",
      "title": "Movement baseline decision candidate",
      "status": "active",
      "owner": "Design Office",
      "lifecycle": "approved",
      "tags": [
        "memory",
        "movement",
        "DPS-001",
        "decision"
      ],
      "relations": [
        "MEMORY_REV_0002",
        "MEMORY_FND_0002",
        "PROJECT_STREETLINE_HEROES"
      ],
      "file": "graph/nodes/memory/memory.yaml"
    },
    {
      "id": "MEMORY_LES_0002",
      "type": "memory",
      "title": "Movement presets expose feel tradeoffs",
      "status": "active",
      "owner": "Design Office",
      "lifecycle": "approved",
      "tags": [
        "memory",
        "movement",
        "DPS-001",
        "lesson"
      ],
      "relations": [
        "MEMORY_REV_0002",
        "PROJECT_STREETLINE_HEROES"
      ],
      "file": "graph/nodes/memory/memory.yaml"
    },
    {
      "id": "MEMORY_FND_0002",
      "type": "memory",
      "title": "Fast preset scored highest in movement review",
      "status": "active",
      "owner": "Design Office",
      "lifecycle": "approved",
      "tags": [
        "memory",
        "movement",
        "DPS-001",
        "finding"
      ],
      "relations": [
        "MEMORY_REV_0002",
        "MEMORY_DEC_0002"
      ],
      "file": "graph/nodes/memory/memory.yaml"
    },
    {
      "id": "PROJECT_STREETLINE_HEROES",
      "type": "project",
      "title": "Streetline Heroes",
      "status": "active",
      "owner": "producer",
      "lifecycle": "implemented",
      "tags": [
        "project",
        "game"
      ],
      "relations": [
        "PROJECT_VS001",
        "GOV_SOURCE_OF_TRUTH"
      ],
      "file": "graph/nodes/projects/projects.yaml"
    },
    {
      "id": "PROJECT_VS001",
      "type": "project",
      "title": "VS-001 Vertical Slice",
      "status": "active",
      "owner": "product-owner",
      "lifecycle": "approved",
      "tags": [
        "project",
        "vertical-slice"
      ],
      "relations": [
        "DOC_VS001_PRD",
        "WO_0003"
      ],
      "file": "graph/nodes/projects/projects.yaml"
    },
    {
      "id": "QA_CENTRAL",
      "type": "qa",
      "title": "Central QA Runner",
      "status": "active",
      "owner": "qa-lead",
      "lifecycle": "implemented",
      "tags": [
        "qa",
        "validation"
      ],
      "relations": [
        "VALIDATOR_GRAPH",
        "SYSTEM_STUDIO_DASHBOARD"
      ],
      "file": "graph/nodes/qa/qa.yaml"
    },
    {
      "id": "QA_PLAYTEST",
      "type": "qa",
      "title": "VS-001 Playtest QA",
      "status": "active",
      "owner": "qa-lead",
      "lifecycle": "approved",
      "tags": [
        "qa",
        "playtest"
      ],
      "relations": [
        "PROJECT_VS001",
        "WO_0003"
      ],
      "file": "graph/nodes/qa/qa.yaml"
    },
    {
      "id": "RECIPE_HERO_V1",
      "type": "recipe",
      "title": "Hero Recipe v1",
      "status": "active",
      "owner": "game-director",
      "lifecycle": "implemented",
      "tags": [
        "recipe",
        "production-factory"
      ],
      "relations": [
        "WO_0001",
        "SYSTEM_PRODUCTION_FACTORY"
      ],
      "file": "graph/nodes/recipes/recipes.yaml"
    },
    {
      "id": "RECIPE_ENEMY_V1",
      "type": "recipe",
      "title": "Enemy Recipe v1",
      "status": "active",
      "owner": "gameplay-designer",
      "lifecycle": "implemented",
      "tags": [
        "recipe",
        "production-factory"
      ],
      "relations": [
        "WO_0002",
        "SYSTEM_PRODUCTION_FACTORY"
      ],
      "file": "graph/nodes/recipes/recipes.yaml"
    },
    {
      "id": "RECIPE_LEVEL_V1",
      "type": "recipe",
      "title": "Level Recipe v1",
      "status": "active",
      "owner": "level-designer",
      "lifecycle": "implemented",
      "tags": [
        "recipe",
        "production-factory"
      ],
      "relations": [
        "WO_0003",
        "SYSTEM_PRODUCTION_FACTORY"
      ],
      "file": "graph/nodes/recipes/recipes.yaml"
    },
    {
      "id": "SYSTEM_STUDIO_DASHBOARD",
      "type": "dashboard",
      "title": "Studio Dashboard",
      "status": "active",
      "owner": "producer",
      "lifecycle": "implemented",
      "tags": [
        "dashboard",
        "status"
      ],
      "relations": [
        "SYSTEM_PRODUCTION_FACTORY",
        "VALIDATOR_GRAPH"
      ],
      "file": "graph/nodes/systems/systems.yaml"
    },
    {
      "id": "SYSTEM_PRODUCTION_FACTORY",
      "type": "system",
      "title": "Production Factory",
      "status": "active",
      "owner": "producer",
      "lifecycle": "implemented",
      "tags": [
        "production-factory",
        "studioos"
      ],
      "relations": [
        "RECIPE_HERO_V1",
        "WO_0001",
        "SYSTEM_STUDIO_DASHBOARD"
      ],
      "file": "graph/nodes/systems/systems.yaml"
    },
    {
      "id": "ARCH_MONOREPO",
      "type": "architecture",
      "title": "Streetline Heroes Monorepo Architecture",
      "status": "active",
      "owner": "tech-lead",
      "lifecycle": "approved",
      "tags": [
        "architecture",
        "monorepo"
      ],
      "relations": [
        "PROJECT_STREETLINE_HEROES",
        "SYSTEM_STUDIO_DASHBOARD"
      ],
      "file": "graph/nodes/systems/systems.yaml"
    },
    {
      "id": "VALIDATOR_GRAPH",
      "type": "validator",
      "title": "Graph Validator",
      "status": "active",
      "owner": "tools",
      "lifecycle": "implemented",
      "tags": [
        "validator",
        "graph"
      ],
      "relations": [
        "SYSTEM_STUDIO_DASHBOARD",
        "QA_CENTRAL"
      ],
      "file": "graph/nodes/systems/systems.yaml"
    },
    {
      "id": "WO_0001",
      "type": "workorder",
      "title": "Nova Striker Hero Production Order",
      "status": "in_progress",
      "owner": "character-production",
      "lifecycle": "implemented",
      "tags": [
        "workorder",
        "hero"
      ],
      "relations": [
        "RECIPE_HERO_V1",
        "ASSET_CHR001",
        "DOC_CHR001_IDENTITY"
      ],
      "file": "graph/nodes/workorders/workorders.yaml"
    },
    {
      "id": "WO_0002",
      "type": "workorder",
      "title": "Syndicate Runner Enemy Production Order",
      "status": "ready",
      "owner": "gameplay-production",
      "lifecycle": "implemented",
      "tags": [
        "workorder",
        "enemy"
      ],
      "relations": [
        "RECIPE_ENEMY_V1",
        "ASSET_ENM001",
        "DOC_GDD_ENEMIES"
      ],
      "file": "graph/nodes/workorders/workorders.yaml"
    },
    {
      "id": "WO_0003",
      "type": "workorder",
      "title": "Harbor District Level Production Order",
      "status": "blocked",
      "owner": "level-production",
      "lifecycle": "implemented",
      "tags": [
        "workorder",
        "level",
        "blocked"
      ],
      "relations": [
        "RECIPE_LEVEL_V1",
        "PROJECT_VS001",
        "QA_PLAYTEST"
      ],
      "file": "graph/nodes/workorders/workorders.yaml"
    }
  ],
  "edges": [
    {
      "id": "EDGE_WO0001_AFFECTS_ASSET_CHR001",
      "type": "affects",
      "from": "WO_0001",
      "to": "ASSET_CHR001",
      "description": "Nova Striker work order affects CHR001 production asset state.",
      "file": "graph/edges/affects.yaml"
    },
    {
      "id": "EDGE_WO0002_AFFECTS_ASSET_ENM001",
      "type": "affects",
      "from": "WO_0002",
      "to": "ASSET_ENM001",
      "description": "Enemy work order affects ENM001 production asset state.",
      "file": "graph/edges/affects.yaml"
    },
    {
      "id": "EDGE_WO0003_AFFECTS_ASSET_ENV001",
      "type": "affects",
      "from": "WO_0003",
      "to": "ASSET_ENV001",
      "description": "Harbor level work order affects ENV001 production asset state.",
      "file": "graph/edges/affects.yaml"
    },
    {
      "id": "EDGE_SOURCE_APPROVED_BY_GOVERNANCE",
      "type": "approved_by",
      "from": "GOV_SOURCE_OF_TRUTH",
      "to": "PROJECT_STREETLINE_HEROES",
      "description": "Source-of-truth governance is approved within the project.",
      "file": "graph/edges/approved_by.yaml"
    },
    {
      "id": "EDGE_PLAYTEST_APPROVED_BY_QA",
      "type": "approved_by",
      "from": "QA_PLAYTEST",
      "to": "QA_CENTRAL",
      "description": "Playtest QA is approved by the central QA process.",
      "file": "graph/edges/approved_by.yaml"
    },
    {
      "id": "EDGE_WO0003_BLOCKED_BY_VS001_SCOPE",
      "type": "blocked_by",
      "from": "WO_0003",
      "to": "PROJECT_VS001",
      "description": "Harbor level work order is blocked by unresolved VS-001 arena dimensions.",
      "file": "graph/edges/blocked_by.yaml"
    },
    {
      "id": "EDGE_DPS002_DEPENDS_DPS001",
      "type": "depends_on",
      "from": "DPS_002_COMBAT_FOUNDATION",
      "to": "DPS_001_MOVEMENT_FOUNDATION",
      "description": "Combat foundation depends on approved movement feel.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_IMPLEMENTS_STATE_MACHINE",
      "type": "implements",
      "from": "DPS_002_COMBAT_STATE_MACHINE",
      "to": "DPS_002_COMBAT_FOUNDATION",
      "description": "State machine implements the core combat loop.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_IMPLEMENTS_ATTACK_CHAIN",
      "type": "implements",
      "from": "DPS_002_ATTACK_CHAIN",
      "to": "DPS_002_COMBAT_STATE_MACHINE",
      "description": "Light combo chain is driven by the combat state machine.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_IMPLEMENTS_HEAVY",
      "type": "implements",
      "from": "DPS_002_HEAVY_ATTACK",
      "to": "DPS_002_COMBAT_STATE_MACHINE",
      "description": "Heavy attack is a supported combat action.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_IMPLEMENTS_AIR",
      "type": "implements",
      "from": "DPS_002_AIR_ATTACK",
      "to": "DPS_002_COMBAT_STATE_MACHINE",
      "description": "Air attack integrates combat and movement.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_IMPLEMENTS_DASH",
      "type": "implements",
      "from": "DPS_002_DASH_ATTACK",
      "to": "DPS_002_COMBAT_STATE_MACHINE",
      "description": "Dash attack integrates combat and movement.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_INPUT_TO_STATE",
      "type": "affects",
      "from": "DPS_002_INPUT_BUFFER",
      "to": "DPS_002_COMBAT_STATE_MACHINE",
      "description": "Buffered input affects attack start and combo chains.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_HITBOX_TO_ATTACKS",
      "type": "validates",
      "from": "DPS_002_HITBOX_SYSTEM",
      "to": "DPS_002_ATTACK_CHAIN",
      "description": "Hitboxes validate attack timing and reach.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_HITSTOP_TO_HITBOX",
      "type": "affects",
      "from": "DPS_002_HITSTOP_SYSTEM",
      "to": "DPS_002_HITBOX_SYSTEM",
      "description": "Hitstop is triggered by hitbox confirmation.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_DUMMY_TESTS_HITBOX",
      "type": "tested_by",
      "from": "DPS_002_HITBOX_SYSTEM",
      "to": "DPS_002_TRAINING_DUMMY",
      "description": "Training dummy tests hit confirmation.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_ENEMY_TESTS_FLOW",
      "type": "tested_by",
      "from": "DPS_002_COMBAT_FOUNDATION",
      "to": "DPS_002_BASIC_ENEMY",
      "description": "Basic enemy tests combat readability under pressure.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_TELEMETRY_PRODUCED",
      "type": "produces",
      "from": "DPS_002_COMBAT_STATE_MACHINE",
      "to": "DPS_002_COMBAT_TELEMETRY",
      "description": "Runtime combat produces telemetry summary data.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_REVIEW_VALIDATES",
      "type": "validates",
      "from": "DPS_002_COMBAT_REVIEW",
      "to": "DPS_002_COMBAT_FOUNDATION",
      "description": "Combat review validates the foundation before approval.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_DASHBOARD_REFERENCES",
      "type": "references",
      "from": "DPS_002_DASHBOARD_STATUS",
      "to": "DPS_002_COMBAT_REVIEW",
      "description": "Dashboard references combat review and telemetry status.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_SUPPORTS_FLOW",
      "type": "supports",
      "from": "DPS_002_COMBAT_FOUNDATION",
      "to": "EXPERIENCE_FLOW",
      "description": "Combat must support flow.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_SUPPORTS_IMPACT",
      "type": "supports",
      "from": "DPS_002_HITSTOP_SYSTEM",
      "to": "EXPERIENCE_IMPACT",
      "description": "Hit feedback supports impact.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_DPS002_SUPPORTS_MASTERY",
      "type": "supports",
      "from": "DPS_002_ATTACK_CHAIN",
      "to": "EXPERIENCE_MASTERY",
      "description": "Combo structure supports mastery.",
      "file": "graph/edges/combat.yaml"
    },
    {
      "id": "EDGE_WO0001_DEPENDS_RECIPE_HERO",
      "type": "depends_on",
      "from": "WO_0001",
      "to": "RECIPE_HERO_V1",
      "description": "Nova Striker work order depends on the hero recipe.",
      "file": "graph/edges/depends_on.yaml"
    },
    {
      "id": "EDGE_WO0002_DEPENDS_RECIPE_ENEMY",
      "type": "depends_on",
      "from": "WO_0002",
      "to": "RECIPE_ENEMY_V1",
      "description": "Enemy work order depends on the enemy recipe.",
      "file": "graph/edges/depends_on.yaml"
    },
    {
      "id": "EDGE_WO0003_DEPENDS_RECIPE_LEVEL",
      "type": "depends_on",
      "from": "WO_0003",
      "to": "RECIPE_LEVEL_V1",
      "description": "Harbor level work order depends on the level recipe.",
      "file": "graph/edges/depends_on.yaml"
    },
    {
      "id": "EDGE_FACTORY_DEPENDS_RECIPES",
      "type": "depends_on",
      "from": "SYSTEM_PRODUCTION_FACTORY",
      "to": "RECIPE_HERO_V1",
      "description": "Production Factory depends on recipe definitions.",
      "file": "graph/edges/depends_on.yaml"
    },
    {
      "id": "EDGE_FACTORY_STATUS_GENERATED_BY_FACTORY",
      "type": "generated_by",
      "from": "SYSTEM_STUDIO_DASHBOARD",
      "to": "SYSTEM_PRODUCTION_FACTORY",
      "description": "Dashboard factory section is generated from production factory status.",
      "file": "graph/edges/generated_by.yaml"
    },
    {
      "id": "EDGE_GRAPH_STATUS_GENERATED_BY_VALIDATOR",
      "type": "generated_by",
      "from": "VALIDATOR_GRAPH",
      "to": "QA_CENTRAL",
      "description": "Graph status is generated by graph tooling and reviewed through QA.",
      "file": "graph/edges/generated_by.yaml"
    },
    {
      "id": "EDGE_DASHBOARD_IMPLEMENTS_FACTORY",
      "type": "implements",
      "from": "SYSTEM_STUDIO_DASHBOARD",
      "to": "SYSTEM_PRODUCTION_FACTORY",
      "description": "Studio Dashboard implements the visible production factory view.",
      "file": "graph/edges/implements.yaml"
    },
    {
      "id": "EDGE_VALIDATOR_IMPLEMENTS_GRAPH_QA",
      "type": "implements",
      "from": "VALIDATOR_GRAPH",
      "to": "QA_CENTRAL",
      "description": "Graph validator implements SKG validation checks.",
      "file": "graph/edges/implements.yaml"
    },
    {
      "id": "EDGE_MEMORY_DEC0002_DERIVED_FROM_REV0002",
      "type": "derived_from",
      "from": "MEMORY_DEC_0002",
      "to": "MEMORY_REV_0002",
      "description": "Movement decision memory was derived from the approved movement review memory.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_MEMORY_LES0002_DERIVED_FROM_REV0002",
      "type": "derived_from",
      "from": "MEMORY_LES_0002",
      "to": "MEMORY_REV_0002",
      "description": "Movement lesson memory was derived from the approved movement review memory.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_MEMORY_FND0002_DERIVED_FROM_REV0002",
      "type": "derived_from",
      "from": "MEMORY_FND_0002",
      "to": "MEMORY_REV_0002",
      "description": "Movement finding memory was derived from the approved movement review memory.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_MEMORY_DEC0002_SUPPORTED_BY_FND0002",
      "type": "supported_by",
      "from": "MEMORY_DEC_0002",
      "to": "MEMORY_FND_0002",
      "description": "Movement decision is supported by the fast preset scoring finding.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_MEMORY_DEC0002_AFFECTS_PROJECT",
      "type": "affects",
      "from": "MEMORY_DEC_0002",
      "to": "PROJECT_STREETLINE_HEROES",
      "description": "Movement decision affects the Streetline Heroes project baseline.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_MEMORY_REV0002_REFERENCES_PROJECT",
      "type": "references",
      "from": "MEMORY_REV_0002",
      "to": "PROJECT_STREETLINE_HEROES",
      "description": "Movement review memory references the Streetline Heroes project.",
      "file": "graph/edges/memory.yaml"
    },
    {
      "id": "EDGE_PROJECT_OWNS_VS001",
      "type": "owns",
      "from": "PROJECT_STREETLINE_HEROES",
      "to": "PROJECT_VS001",
      "description": "Streetline Heroes owns the VS-001 vertical slice project.",
      "file": "graph/edges/owns.yaml"
    },
    {
      "id": "EDGE_PROJECT_OWNS_ASSET_CHR001",
      "type": "owns",
      "from": "PROJECT_STREETLINE_HEROES",
      "to": "ASSET_CHR001",
      "description": "Streetline Heroes owns CHR001.",
      "file": "graph/edges/owns.yaml"
    },
    {
      "id": "EDGE_PROJECT_OWNS_ASSET_ENM001",
      "type": "owns",
      "from": "PROJECT_STREETLINE_HEROES",
      "to": "ASSET_ENM001",
      "description": "Streetline Heroes owns ENM001.",
      "file": "graph/edges/owns.yaml"
    },
    {
      "id": "EDGE_PROJECT_OWNS_ASSET_ENV001",
      "type": "owns",
      "from": "PROJECT_STREETLINE_HEROES",
      "to": "ASSET_ENV001",
      "description": "Streetline Heroes owns ENV001.",
      "file": "graph/edges/owns.yaml"
    },
    {
      "id": "EDGE_RECIPE_HERO_PRODUCES_WO0001",
      "type": "produces",
      "from": "RECIPE_HERO_V1",
      "to": "WO_0001",
      "description": "Hero recipe produces Nova Striker work order instances.",
      "file": "graph/edges/produces.yaml"
    },
    {
      "id": "EDGE_RECIPE_ENEMY_PRODUCES_WO0002",
      "type": "produces",
      "from": "RECIPE_ENEMY_V1",
      "to": "WO_0002",
      "description": "Enemy recipe produces enemy work order instances.",
      "file": "graph/edges/produces.yaml"
    },
    {
      "id": "EDGE_RECIPE_LEVEL_PRODUCES_WO0003",
      "type": "produces",
      "from": "RECIPE_LEVEL_V1",
      "to": "WO_0003",
      "description": "Level recipe produces level work order instances.",
      "file": "graph/edges/produces.yaml"
    },
    {
      "id": "EDGE_FACTORY_PRODUCES_STATUS",
      "type": "produces",
      "from": "SYSTEM_PRODUCTION_FACTORY",
      "to": "SYSTEM_STUDIO_DASHBOARD",
      "description": "Production Factory produces status data for the dashboard.",
      "file": "graph/edges/produces.yaml"
    },
    {
      "id": "EDGE_DOC_INDEX_REFERENCES_SOURCE",
      "type": "references",
      "from": "DOC_STUDIO_BIBLE_INDEX",
      "to": "GOV_SOURCE_OF_TRUTH",
      "description": "Studio Bible index references source-of-truth governance.",
      "file": "graph/edges/references.yaml"
    },
    {
      "id": "EDGE_WO0001_REFERENCES_IDENTITY",
      "type": "references",
      "from": "WO_0001",
      "to": "DOC_CHR001_IDENTITY",
      "description": "Nova Striker work order references the hero identity document.",
      "file": "graph/edges/references.yaml"
    },
    {
      "id": "EDGE_WO0002_REFERENCES_ENEMY_GDD",
      "type": "references",
      "from": "WO_0002",
      "to": "DOC_GDD_ENEMIES",
      "description": "Enemy work order references the enemies GDD.",
      "file": "graph/edges/references.yaml"
    },
    {
      "id": "EDGE_WO0003_REFERENCES_PRD",
      "type": "references",
      "from": "WO_0003",
      "to": "DOC_VS001_PRD",
      "description": "Harbor level work order references the VS-001 PRD.",
      "file": "graph/edges/references.yaml"
    },
    {
      "id": "EDGE_ARCH_REFERENCES_PROJECT",
      "type": "references",
      "from": "ARCH_MONOREPO",
      "to": "PROJECT_STREETLINE_HEROES",
      "description": "Monorepo architecture references the owning game project.",
      "file": "graph/edges/references.yaml"
    },
    {
      "id": "EDGE_QA_VALIDATES_FACTORY",
      "type": "validates",
      "from": "QA_CENTRAL",
      "to": "SYSTEM_PRODUCTION_FACTORY",
      "description": "Central QA validates factory status through reports and builds.",
      "file": "graph/edges/validates.yaml"
    },
    {
      "id": "EDGE_VALIDATOR_VALIDATES_GRAPH",
      "type": "validates",
      "from": "VALIDATOR_GRAPH",
      "to": "SYSTEM_STUDIO_DASHBOARD",
      "description": "Graph validator prepares dashboard graph health.",
      "file": "graph/edges/validates.yaml"
    }
  ]
}
