When a node has a ui schema, and when it has none
The ui schema is what turns a flat config form into grouped sections. Whether there is one at all is decided by a single question about the final schema.
The rule
- The ui schema is generated from the final config schema, after every reserved property has been injected.
- It is null exactly when no property carries a registered group: a property tagged with an unregistered group falls into the default bucket, so a schema tagged only with unregistered groups also yields null, and the form stays on its flat path.
- Groups are collapsed by default; a group is opened for a node instance where that instance sets one of the fields in it.
What it means
A group name the site does not recognise does not get its own section — it falls into the same default bucket as an untagged property. When that is the only tagged property a schema has, the form has nothing grouped at all, and the whole ui schema comes back null rather than a group of one.
The per-instance open state is not "this field has a value" — it is "this field differs from its own default." A field explicitly set to the value the schema already defaults it to does not open its group.
Example
A config schema property is tagged with a group name the site does not register.
{ "a": { "type": "string", "x-group": "not-a-real-group" } }nullSeparately, an executable node's maxRetries field defaults to 0.
falsetrueAn empty string or a missing value behave the same as the default: neither opens its group.