Symptom
The source comments on TaskCompletedRestPingFlow and ShowcaseDeclarativeConnectorPingFlow claim that "the call and its {status:'ok'} response are captured on the flow run".
They are not. Both flows dispatch correctly, but run.output is empty — neither flow declares an isOutput variable, so nothing from the connector call is ever surfaced on the run.
The comment is the damaging part. A reader — human or agent — takes it as a statement of platform behaviour and concludes that connector responses are captured automatically. When run.output then comes back empty, the natural reading is "the engine dropped the response", and the next step is to go hunting in the connector dispatch path for a bug that does not exist. The engine is fine; the fixture simply never asked for the value. A comment that describes behaviour the code does not implement is worse than no comment, because it redirects debugging away from the real cause.
This is an authoring gap, not an engine one, and the sibling fixture proves it: the MCP connector flow does declare an isOutput variable and its run output is captured correctly (upper=OBJECTSTACK). Same engine, same dispatch path, different fixture — one asks for the output, two do not.
Root cause
TaskCompletedRestPingFlow and ShowcaseDeclarativeConnectorPingFlow declare no isOutput variable. run.output is therefore legitimately empty, and the source comments describe an outcome the flows do not arrange for.
Fix — either direction, but do both halves of whichever you pick:
- Add the
isOutput variable to both flows, matching what the MCP connector flow already does. This makes the comments true and makes the response genuinely inspectable on the run. Preferred: it is what the fixtures were evidently meant to demonstrate.
- Or correct the comments to say the response is not captured — and in that case also fix the checklist clause that asserts capture, since it is written against the comment's claim rather than the code's behaviour. Correcting the comment while leaving the clause asserting capture just relocates the same contradiction.
Reproduction
- Boot the showcase on an isolated file DB and port. (Note the connectors' hard-wired
baseUrl will need working around on a non-3000 port — see the companion finding on StatusApi/StatusOpenApi.)
- Trigger
TaskCompletedRestPingFlow; repeat for ShowcaseDeclarativeConnectorPingFlow.
- Read the resulting run → dispatch succeeded, but
run.output is empty.
- Trigger the MCP connector flow for contrast →
run.output carries upper=OBJECTSTACK.
- Compare the three flow definitions: only the MCP one declares an
isOutput variable.
Re-check the fixtures:
rg -rn "TaskCompletedRestPingFlow|ShowcaseDeclarativeConnectorPingFlow" examples
rg -rn "isOutput" examples
Source
Extracted from the QA run #7516 (framework a86db17). Listed there as item 3 under "Fixture / authoring issues to fix"; it is what held connector-dispatch-matrix to PARTIAL.
Symptom
The source comments on
TaskCompletedRestPingFlowandShowcaseDeclarativeConnectorPingFlowclaim that "the call and its{status:'ok'}response are captured on the flow run".They are not. Both flows dispatch correctly, but
run.outputis empty — neither flow declares anisOutputvariable, so nothing from the connector call is ever surfaced on the run.The comment is the damaging part. A reader — human or agent — takes it as a statement of platform behaviour and concludes that connector responses are captured automatically. When
run.outputthen comes back empty, the natural reading is "the engine dropped the response", and the next step is to go hunting in the connector dispatch path for a bug that does not exist. The engine is fine; the fixture simply never asked for the value. A comment that describes behaviour the code does not implement is worse than no comment, because it redirects debugging away from the real cause.This is an authoring gap, not an engine one, and the sibling fixture proves it: the MCP connector flow does declare an
isOutputvariable and its run output is captured correctly (upper=OBJECTSTACK). Same engine, same dispatch path, different fixture — one asks for the output, two do not.Root cause
TaskCompletedRestPingFlowandShowcaseDeclarativeConnectorPingFlowdeclare noisOutputvariable.run.outputis therefore legitimately empty, and the source comments describe an outcome the flows do not arrange for.Fix — either direction, but do both halves of whichever you pick:
isOutputvariable to both flows, matching what the MCP connector flow already does. This makes the comments true and makes the response genuinely inspectable on the run. Preferred: it is what the fixtures were evidently meant to demonstrate.Reproduction
baseUrlwill need working around on a non-3000 port — see the companion finding onStatusApi/StatusOpenApi.)TaskCompletedRestPingFlow; repeat forShowcaseDeclarativeConnectorPingFlow.run.outputis empty.run.outputcarriesupper=OBJECTSTACK.isOutputvariable.Re-check the fixtures:
Source
Extracted from the QA run #7516 (framework a86db17). Listed there as item 3 under "Fixture / authoring issues to fix"; it is what held
connector-dispatch-matrixto PARTIAL.