HomeElementl

when checking if inputs are connected, account for mapped input hooked with…

Description

when checking if inputs are connected, account for mapped input hooked with outer graph

Summary:
fix bugs introduced in D8365
user impact:

  1. incorrect definition error https://dagster.slack.com/archives/C01U954MEER/p1624642083152400 : covered in test_inner_inputs_connected_to_outer_dependency
  2. incorrect runtime error https://github.com/dagster-io/dagster/issues/3656 : covered in test_inner_inputs_connected_to_outer_dependency_with_root_input_manager

details

  1. when checking dependency_structure.has_deps in pipeline def, we should also check if the input handle is a mapped input (inside a composite solid) that is connected to the outer dependency structure. otherwise, the pipeline definition validation will mistakely think the inputs aren't connected.
  2. when checking whether it's a FromRootInputManager, we should also exclude inputs that are connected to outer dependency structure. otherwise, when there's root_manager_key, the inner solids will always connect to the root manager as opposed to the upstream output

Test Plan: unit

Reviewers: sandyryza, alangenfeld

Reviewed By: alangenfeld

Differential Revision: https://dagster.phacility.com/D8583