FlowDrop Workflow Specification 1.0-draft

Published config defaults cover configurable parameters only

The rule

Normative: this is the rule
  1. A node type's published metadata carries a config default for a parameter only where the parameter is configurable and its effective default (CFG-3) is non-null.
  2. No entry is published for a parameter that is not configurable, or whose effective default is null.

What it means

Carrying a default is not enough on its own for a parameter to publish a config default: it must also be configurable. A parameter that only accepts wired values can still carry a default for the runtime cascade to fall back on, but that default never appears in configDefaults, because that bag seeds an authoring surface for a parameter with no such surface at all. The two gates — configurable, and an effective default that is not null — are independent: failing either one, on its own, is enough to keep the entry out.

Example

Two configurable parameters whose schema declares defaults of schema_loses and schema_wins: one overrides its schema default with a declared default of its own, the other relies on the schema's alone.

Two configurable parameters, one overriding its schema defaultdeclared
{ "entity_wins": { "configurable": true, "default": "entity_wins" }, "schema_only": { "configurable": true } }
What configDefaults publishes for bothpublished
{ "entity_wins": "entity_wins", "schema_only": "schema_wins" }

A parameter that is only connectable, never configurable, is left out even when it carries a default of its own:

A connectable parameter with a default, but not configurabledeclared
{ "wire_only": { "connectable": true, "default": "entity_default" } }
What configDefaults publishesempty
[]
Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · CFG-18 · changed in spec 1.0