cognigy flow execution stopped: missing slot value
Fix Cognigy flows stopping on missing slot values: the flow reached a node that needs a slot nobody filled. Use when flow executions stop with a missing slot error, when a flow works for some users but stops for others, or when slot-dependent branches never trigger. Not for NLU intent mismatches, webhook failures inside flows, or API authentication errors.
TL;DR
Slots are the flow's memory: entities extracted from what the user said. 'Missing slot value' means a node asked for a slot that was never filled, so the flow has nothing to work with and stops. The fix is to guarantee the slot before the node that needs it: require it at an earlier step, or give the node a fallback for when it's empty. Flows should never assume a slot exists.
The query
cognigy flow execution stopped: missing slot valueUse this when
- Flow executions stop with a missing slot value error
- A flow works for some users but stops for others
- Slot-dependent branches never trigger
Not for
- Intents not matching user utterances
- Webhook failures inside flow nodes
- Cognigy API authentication errors
Steps
1. Find which slot is missing and where
Open the failed execution's trace and read which node stopped and which slot it wanted. Then check the slots filled earlier in the trace. The gap between 'slot needed' and 'slot filled' is the bug's location.
Expected output: the node, the slot name, and the point where filling should have happened.
2. Require the slot before it's needed
Add a slot-filling question upstream of the node that needs the value, with validation and reprompts. Don't let the flow reach a slot-dependent node with the slot possibly empty.
Expected output: the flow always arriving at the node with the slot filled.
3. Add a fallback for the empty case
Even with required slots, users dodge questions. Give the node a fallback: a default value, a graceful 'I need that to continue' reprompt, or a handoff. Belt and suspenders.
Expected output: a tested path for the user who never provides the value.
4. Check entity extraction for the slot
If the slot should have been filled from the user's message, the entity extraction is failing: the NLU didn't recognize the value. Add training examples for the phrasings users actually use.
Expected output: the slot filling correctly from real user phrasings.
Variant phrasings
cognigy slot not filled
Steps 1 and 4: trace the gap, then fix extraction.
cognigy flow stops unexpectedly
Step 2's upstream requirement prevents the whole class.
Why it happens
Flows are built happy-path first: the designer imagines the user answering every question, so every node assumes its inputs exist. Real users skip, dodge, and phrase things oddly. The missing slot is the flow discovering that its assumptions were optimistic, one stopped execution at a time.
Edge cases
- Slot lifetimes matter: a slot filled three turns ago may have expired. Check scope settings.
- Multi-language flows need slot validation per language. A regex that works in English fails elsewhere.
- Copied flows carry slot references that don't exist in the new flow. Audit after duplicating.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_wAFHZ5x-C6HOlMx5zVI1mA