Consistent node type behavior regarding property unset and child node unset
As shown here (by the new tests) https://github.com/neos/neos-development-collection/pull/4620 node property unset via ~ does not work but is silently ignored.
Some.NodeType:
superTypes:
Some.SuperNodeType: true
properties:
inheritedProperty: ~ # noop
instead its only possible to change the type or set it to hidden. A shortcut for this would be:
Some.NodeType:
superTypes:
Some.SuperNodeType: true
properties:
inheritedProperty: {}
see https://github.com/neos/neos-development-collection/pull/4620#discussion_r1360407119 we are not sure if we like that one can change the type of a property or disable it in the inspector but its possible.
in contraire, unsetting a child node is allowed:
Some.NodeType:
superTypes:
Some.SuperNodeType: true
childNodes:
main: ~
me and @kitsunet discussed in the weekly that unsetting to null should in both cases throw an error.
about changing property types: i guess it would be cool to only allow type narrowing but i guess this is out of scope.