code: def _build_resolution_dag(
      manifest_lookup: SemanticManifestLookup,
      queried_metrics: Sequence[MetricReference],
      where_filter_intersection: Optional[
          WhereFilterIntersection
      ] = None,
  ) -> GroupByItemResolutionDag:
      resolution_dag_builder = GroupByItemResolutionDagBuilder(
          manifest_lookup=manifest_lookup,
      )
  
      return resolution_dag_builder.build(
          metric_references=queried_metrics,
          where_filter_intersection=where_filter_intersection,
      )
  
file_path: metricflow/metricflow/test/query/group_by_item/conftest.py
imports: from __future__ import annotations
  from typing import Dict, Optional, Sequence
  import pytest
  from dbt_semantic_interfaces.implementations.filters.where_filter import PydanticWhereFilter, PydanticWhereFilterIntersection
  from dbt_semantic_interfaces.naming.keywords import METRIC_TIME_ELEMENT_NAME
  from dbt_semantic_interfaces.protocols import WhereFilterIntersection
  from dbt_semantic_interfaces.references import MetricReference
  from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
  from metricflow.naming.naming_scheme import QueryItemNamingScheme
  from metricflow.naming.object_builder_scheme import ObjectBuilderNamingScheme
  from metricflow.query.group_by_item.resolution_dag.dag import GroupByItemResolutionDag
  from metricflow.query.group_by_item.resolution_dag.dag_builder import GroupByItemResolutionDagBuilder
  from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
  from metricflow.test.query.group_by_item.ambiguous_resolution_query_id import AmbiguousResolutionQueryId
label_desc: Use image node_id 1 for calling a global function with example usage: _build_resolution_dag(manifest_lookup, queried_metrics, where_filter_intersection) and returns: resolution_dag_builder