Problem
- A flow
script/action node that points to an unregistered callable (invoke_function → a function defined nowhere) builds fine and silently does nothing at runtime. - There is no template-level mechanism to register such a function/tool — no shipped template successfully wires
invoke_function.
Repro
- helpdesk
ai_triage_on_create → helpdesk.aiTriageStub (undefined); project daily_ai_risk_assessment → pm.aiRiskAssessmentStub (undefined); content publication_rollup aggregate node has actionType: undefined. All no-op at runtime, all pass build.
Expected
- Build/runtime validates that action/script nodes resolve to a real registered callable (or a supported built-in).
- Provide a first-class way for an authored package to register functions/tools for
invoke_function (e.g. *.tool.ts wired via defineStack). The content actions file notes this "stabilizes in spec 5.3" — make it real.
Affected
@objectstack/spec / @objectstack/cli (action binding) + @objectstack/automation.
Found while runtime-testing objectstack-ai/templates (all 9 templates via objectstack dev all) on @objectstack 9.5.1. Build + typecheck pass; these only surface at runtime.
Problem
script/action node that points to an unregistered callable (invoke_function→ a function defined nowhere) builds fine and silently does nothing at runtime.invoke_function.Repro
ai_triage_on_create→helpdesk.aiTriageStub(undefined); projectdaily_ai_risk_assessment→pm.aiRiskAssessmentStub(undefined); contentpublication_rollupaggregate node hasactionType: undefined. All no-op at runtime, all pass build.Expected
invoke_function(e.g.*.tool.tswired viadefineStack). The content actions file notes this "stabilizes in spec 5.3" — make it real.Affected
@objectstack/spec/@objectstack/cli(action binding) +@objectstack/automation.Found while runtime-testing
objectstack-ai/templates(all 9 templates viaobjectstack dev all) on@objectstack9.5.1. Build + typecheck pass; these only surface at runtime.