Does `result` lack the `:pending_fixed` key when `pending` method or metadata is involved in the example?  The logic here suggests that...but I generally dislike data structure schemas that have situationally optional keys.  It makes writing things that consume the metadata more complex (such as a formatter).  Would be nice if the metadata schema was consistent and didn't have result keys present only some times.  Maybe this could use `result[:pending_declared]` or something else to detect that pending is being used?

Regardless, I don't consider this a merge blocker; we can address this in a later PR if you prefer.