I am going through liberator put-all-together example and I am puzzled as of why json parsing occurs so early in the decision tree (:malformed? node). The content header is checked in the later stage (:known-content-type?). So, if content is not json, I am parsing it for nothing.
It looks to me that either malfromed? should occur later in the decision tree, or the tutorial's json parsing should occur in processable? node.