This release fixes issues for SREs watching stability and regressions.
✓ No known CVEs patched in this version
Topics
Summary
AI summaryFixed parser bug where triple-quoted strings containing quoted phrases with commas caused malformed function-call argument parsing.
Full changelog
Parser bug fix. Triple-quote bodies containing a quoted phrase with
an inner comma broke the function-call kwarg parser. Empirical repro
from Perry's stop-rule-check skill (c497b479 finding 1):
emit(text="""
Test 3: phrase ending with "comma inside, here".
Test 4: "more native spelling pending," with the exact failing literal.
""")
→ [malformed-op-grammar] Malformed function-call arg 'here". Test 4: "more native spelling pending' in 'emit(...)' — expected name=value.
Root cause. splitTopLevelCommas in src/parser.ts tracked
single/double-quote state and bracket-nesting depth, but NOT
triple-quote state. When the triple-quote body contained an odd-count
of embedded " chars (which happens naturally with mid-body quoted
phrases), the inQuote toggle accumulated to an unbalanced state.
Top-level commas inside the body then split args mid-content; the
closing """ landed as malformed kwargs.
tokenizeKeywordArgs and extractParenBody had inTriple state
tracking discipline since the original triple-quote work;
splitTopLevelCommas was missing the same discipline.
Fix. Extended splitTopLevelCommas to mirror the inTriple
discipline from its sibling tokenizers. Inside a triple-quote body,
embedded single " chars are literal content; commas are content;
only the closing """ exits the state. Bounded change, no other
parser paths affected.
Internal
src/parser.ts—splitTopLevelCommasgainsinTriplestate +
the triple-quote OPEN/CLOSE branches (mirrorstokenizeKeywordArgs)- +6 tests in
tests/v0.16.7-triple-quote-tokenizer.test.tscovering
Perry's verbatim repro + 5 adjacent shapes (odd-count quotes, multi-
comma-inside-quoted, mid-body comma right before closing""",
multi-kwarg with triple-quote + post-"""top-level comma, nested
execute_skillkwarg with embedded triple-quote) - 1517 passing (was 1511)
Deferred to v0.16.8
The second finding from c497b479 (object-iteration-advisory
false-positive on bare-array-returning MCP tools) needs an adopter-
configurable suppression list + softened advisory wording. Per Perry's
sign-off on the substrate-neutrality concern, bundled defaults stay
empty (no AMP-specific names in the public runtime); Tradita bootstrap
configures its tool set.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Skillscript
All releases →Related context
Related tools
Earlier breaking changes
- v0.35.0 Editing `# Deadline:` on an approved skill drops it to Draft (signature invalidates).
Beta — feedback welcome: [email protected]