In studio
Open the Nodes tab and pick your node. The screen shows three things. The node, as everyone else will read it: name, category, description, and thewhenToUse you wrote. Any credential it needs is named here too, so a node asking for
something you have not set up says so before you run it.
The settings, rendered from your config.yaml. This is the same form canvas shows,
built from the same file, so a field that reads badly here reads badly everywhere.
The output, empty until you press Run.
Fill in the settings, press Run, and the node calls the real service. A streaming node
streams into the pane as it arrives.
This is the fastest way to see whether your node works, and it is also the honest preview of
your config.yaml. If the labels are unclear or the fields are in a strange order, fix it
now rather than after someone else meets it.
Load sample
If your node hastest.yaml, studio shows a Load sample button. It fills the form from
testData.config and the inputs from testData.inputs, so you are one click from a run
rather than typing settings each time.
That is most of why test.yaml earns its place.
test.yaml
Before you deploy
Check every node in the workspace, with nothing running:allowedHosts, a fixture that does not match the settings form:
each message names the rule it broke. unoverse deploy studio runs the same check before
it sends anything, so a tick here is a tick there.
Keys stay yours
A run needs a real key, and studio stores none. It reads your own.env, using the credential name and field in upper snake case with any
trailing Credential dropped. So openAICredential.apiKey is OPENAI_API_KEY. A missing
one is named before anything runs.
What expect is for
expect turns a run into a check. Each key is an output, and each value is an expression
over output that has to come back true.
output.text.length > 0 holds and output.text === "Hello" does not.
For a service node, name the method to call:
What a run cannot tell you
A node can pass here and still misbehave in a workflow, because the Nodes screen feeds ittestData.inputs while a workflow feeds it whatever the edges carry.
When that happens, the difference is almost always a Handlebars path: the node id or the
output name does not match the edge you drew. Troubleshooting
covers it.
Next steps
Packages
The envelope around a set of nodes, and publishing it.
test.yaml
Every field a fixture takes, generated from the schema.

