mirror of
https://github.com/langgenius/dify.git
synced 2026-10-04 13:47:55 +08:00
The task-5 change to handle_execution's run_test branch (gate only on needs_upload_inputs) had no test driving the file-declaring branch through the real Runner: the two nearest tests called handle_execution / handle_await_testdata directly and never connected into one flow, and no existing full-flow test's generated graph declares a file variable. Add test_full_build_flow_file_schema_routes_through_testdata_gate_via_fsm: builds a real session through runner.advance(), mutates the built graph's Start node to declare a file variable, then asserts run_test lands at BUILD_AWAIT_TESTDATA with a testdata form card actually emitted, and that submitting provide_testdata through the Runner (not a direct handler call) advances it to build.review. Together with the existing (task-5-updated) fileless full-flow tests, both branches of the conditional are now exercised through the state machine end to end. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>