Skip to content

skillscript-runtime v0.26.3

Choose a tag to compare

@github-actions github-actions released this 06 Jul 14:38

Upgrade impact: none (additive). Completes the 0.26.2 #2 fix on the code path it missed; nothing that worked in 0.26.2 changes.

  • foreach over an empty/whitespace string now iterates zero times for the ${V} brace form too, not just $(REF). The 0.26.2 guard was added inside resolveListExpr's $(REF) branch, but the ${V} brace form (and any expression resolved via substitution) falls through to a different path that still wrapped an empty resolved value as [""] → one empty iteration. Since a caller-supplied-list skill typically writes foreach A in ${V} and passes V as a runtime input, the deployed bug was exactly the case 0.26.2 set out to fix (found by Perry re-verifying on the published runtime, 2db95446). The empty→zero guard now sits on both paths; foreach A in ${V} with V="" / V=" " iterates zero times, matching $(V), [], and an absent ref. Root cause was a test-coverage gap — the 0.26.2 tests all drove the paren form; new end-to-end tests now drive the brace form via execute-with-inputs (the real caller path).