From e3ea3ff2e64002967fd0894d37fe64aa1883a979 Mon Sep 17 00:00:00 2001 From: Bryan Helmkamp Date: Mon, 14 Sep 2026 09:41:05 -0600 Subject: [PATCH] Assert the graph name field in local_run_lifecycle `ps --json` reports the digraph name as `workflow_graph_name` and reserves `workflow_name` for an explicit `[workflow] name` (6a86ced77). That change updated the ps tests but not this ignored e2e test, which still expected the graph name under `workflow_name`. The test now asserts the contract the ps tests assert: `workflow_name` is null for a bare graph file and `workflow_graph_name` is the digraph name. Co-Authored-By: Claude Fable 5.1 --- lib/apps/fabro-cli/tests/it/scenario/lifecycle.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/apps/fabro-cli/tests/it/scenario/lifecycle.rs b/lib/apps/fabro-cli/tests/it/scenario/lifecycle.rs index 4d805e088..7f4c98d9d 100644 --- a/lib/apps/fabro-cli/tests/it/scenario/lifecycle.rs +++ b/lib/apps/fabro-cli/tests/it/scenario/lifecycle.rs @@ -49,10 +49,16 @@ fn local_run_lifecycle() { .as_str() .expect("run should have run_id") .to_string(); + // A bare `.fabro` file has no `[workflow] name`, so `ps --json` reports + // the digraph name only as `workflow_graph_name`. + assert!( + runs[0]["workflow_name"].is_null(), + "workflow_name should be null for a bare graph file: {ps_stdout}" + ); assert_eq!( - runs[0]["workflow_name"].as_str(), + runs[0]["workflow_graph_name"].as_str(), Some("CommandPipeline"), - "workflow_name should be CommandPipeline" + "workflow_graph_name should be CommandPipeline: {ps_stdout}" ); // 3. inspect — JSON array with run_spec and conclusion