// 步骤1: 定义标签条件列表
WITH ['Label1', 'Label2'] AS targetLabels  // 替换为实际标签条件

// 步骤2: 匹配标签条件节点
MATCH (tag:LabelCondition)
WHERE tag.name IN targetLabels
WITH collect(tag) AS startNodes

// 步骤3: 使用APOC扩展遍历（带双终止条件）
CALL apoc.path.expandConfig(
  startNodes,
  {
    minLevel: 1,           // 至少1步关系（排除起始节点）
    maxLevel: 10,          // 最大路径深度10
    relationshipFilter: 'ALL',  // 所有关系类型和方向
    labelFilter: '>',       // 允许所有标签节点
    terminatorNodes: [      // 动态检测终止节点
      node WHERE 'Talent' IN labels(node)
    ],
    uniqueness: 'NODE_GLOBAL'  // 高性能遍历模式
  }
) YIELD path

// 步骤4: 提取并返回去重节点
WITH last(nodes(path)) AS node  // 获取路径终点
RETURN DISTINCT node