What happened

An LLM node’s prompts were fixed strings. The only dynamism available was the node’s inputs list, whose members were serialized into the user turn as context — so “make the prompt be the newest camera frame” or “be the payload the webhook just received” was not expressible, and users approximated it by wiring nodes into inputs and hoping the model made the connection. krill-sdk 0.0.59 added LLMMetaData.promptDataSource / systemPromptDataSource for exactly this, and nothing in the server read them.

Two bugs surfaced while wiring them up, both from the same root: a camera prompt source resolves to an image and an empty string, and empty-string is not null.

Fix

Prevention