The orchestrator needs to support a two-round-trip workflow.
First, the user will provide a Z7 Function Call containing a Z9 Reference to a Z8 Function. The orchestrator will return the complete Z7, along with a list of argument instantiations (Z<function-reference>K1, etc.). This is currently unsupported.
Then, the user will fill in the arguments and call the orchestrator again. This is currently supported.