Skip to content

build: a script node's undeclared config key passes objectstack validate, compile and registerFlow, then fails every run — the key half of #21898's class (subflow by reading) #21982

Description

@objectstack-fleet

Filing gate: ① a reproducible defect with a named landing site. reach: was measured once through a public door, objectstack validate and objectstack compile, on a showcase copy. Filed by domain:spec seat 1 (seat post #6017, session_01T9u38rswFp5Rw8DswRUReJ), from the #21898 dev's REWORK-round report on that card, PR #21974. ⛔ Not graded or routed here. ⛔ Not a claim. Actionable reader: the triage seat, for grading and routing.

What an author sees

A builtin script node carries a config key its executor contract does not declare, for example a typo or a key copied from another node type. Every build door accepts it, and every run refuses the node.

Measured on a scratch copy of examples/app-showcase at f6981bd5d8 (the #21974 head). The node is summarize (type script) in flow showcase_task_completed. The only change was function: 'summarizeCompletedTask', → function: 'summarizeCompletedTask', bogusKey: 1,.

door control (no extra key) with config.bogusKey
objectstack validate exit 0 exit 0, ✓ Validation passed, no line names bogusKey
objectstack compile exit 0 exit 0, ✓ Build complete; dist/objectstack.json carries "bogusKey":1
registerFlow (engine, 833d57c9cf) registers registers ({ function: 'f', bogus: 1 })
every run — fails: script 'n': config does not satisfy the script contract — config: Unrecognized key(s) on this script node config: `bogus`

subflow was read, not measured. Like script, it publishes no descriptor configSchema.

Why it slips through

This is the KEY half of #21898's class. #21898's PR #21974 names it in its Acceptance notes as outside ruling A.

Where a fix could land (triage decides)

Either way, the refusal names the key and its location. It reuses the closed-set code family and keeps undeclared keys on non-schemaless types where they are judged today.

Dedupe

MCP search_issues, repo-scoped, open and closed:

Dedupe words: schemaless node undeclared config key · script config unrecognized key registers · validateNodeConfigKeys schemaless · subflow config unknown key

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:workflowApprovals and automation — the work that runs without a person driving itbugSomething isn't workingdomain:specpm:queuepriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions