Animation Channel's "Node" Member Isn't Required
Per https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#animations:
When node isn’t defined, channel SHOULD be ignored. Valid path names are "translation", "rotation", "scale", and "weights".
Blockbench in particular seems pretty happy at spitting out non-targetted channels. This causes a json parsing error, as the gltf crate expects there to be a node, but one isn't present.
This is another case where the core spec has changed such that what was previously required is now optional. https://github.com/KhronosGroup/glTF/commit/f1f0bbe96033105a6e1cc3b3c0621cf9c27bde6e
Previously we avoided a breaking semver-change by setting the Index to a sentinel value and failed validation when the required extension was missing. I think we'll have to do the same for this case. https://github.com/gltf-rs/gltf/pull/418/files#diff-fdac6266808885f64881a39cdf6f916916fbf6b82b7f3319eb383a92c83d1ac7