skills/objectstack-automation/SKILL.md:351 carries the same measurably-false completeness claim that PR #15519 has just corrected in the formula skill, one skill over:
- Conditions are bare CEL — only the stdlib is callable.
now(), today(), ... plus CEL built-ins (has, size, int, string, …) — see objectstack-formula for the full table.
Two claims in that sentence are wrong in the same direction as the one just fixed:
- "only the stdlib is callable" — the CEL environment also resolves receiver-only methods called on a value (
s.split(','), list.map(...), ts.getFullYear()), and four bare primitives (bytes, dyn, type, uint) that are withheld from the catalogue by an authoring decision rather than being unavailable. packages/formula/src/validate.ts states the real membership rule as load-bearing: CEL_STDLIB_FUNCTIONS is the bare-callable public subset, not the set of everything callable.
- "the full table" — the referenced table is that same advertised subset, so pointing at it as "full" repeats the completeness claim by reference.
Both are false in the safe direction: they under-promise, so no author is broken by them today. That is why this is filed rather than hot-fixed.
Why it was not fixed in the same PR
The card PR #15519 implements is scoped by its ruling and its claim to skills/objectstack-formula/SKILL.md alone, with an explicit stop on editing any other skill. skills/objectstack-automation/SKILL.md is a separate published skill with its own token ceiling — worth noting for whoever takes this: it measures 12269 tokens against a 12768 ceiling, so there are 499 tokens of headroom and the correction has to fit inside them or buy the room by cutting content.
Suggested shape
The same treatment, in that skill's voice and much shorter, since the formula skill now carries the full explanation: say that conditions are bare CEL and that the table names the bare-callable subset, and drop the word "full". No engine change; no edit to CEL_STDLIB_FUNCTIONS.
Found while correcting the formula skill's copy of the claim. Not assigned — for triage.
skills/objectstack-automation/SKILL.md:351carries the same measurably-false completeness claim that PR #15519 has just corrected in the formula skill, one skill over:Two claims in that sentence are wrong in the same direction as the one just fixed:
s.split(','),list.map(...),ts.getFullYear()), and four bare primitives (bytes,dyn,type,uint) that are withheld from the catalogue by an authoring decision rather than being unavailable.packages/formula/src/validate.tsstates the real membership rule as load-bearing:CEL_STDLIB_FUNCTIONSis the bare-callable public subset, not the set of everything callable.Both are false in the safe direction: they under-promise, so no author is broken by them today. That is why this is filed rather than hot-fixed.
Why it was not fixed in the same PR
The card PR #15519 implements is scoped by its ruling and its claim to
skills/objectstack-formula/SKILL.mdalone, with an explicit stop on editing any other skill.skills/objectstack-automation/SKILL.mdis a separate published skill with its own token ceiling — worth noting for whoever takes this: it measures 12269 tokens against a 12768 ceiling, so there are 499 tokens of headroom and the correction has to fit inside them or buy the room by cutting content.Suggested shape
The same treatment, in that skill's voice and much shorter, since the formula skill now carries the full explanation: say that conditions are bare CEL and that the table names the bare-callable subset, and drop the word "full". No engine change; no edit to
CEL_STDLIB_FUNCTIONS.Found while correcting the formula skill's copy of the claim. Not assigned — for triage.