You're misreading RFC 3986. It states in the start of section 2:
"If data for a URI component would conflict with a reserved character's purpose as a delimiter, then the conflicting data must be percent-encoded before the URI is formed."
Section 2.4 continues this statement with the following clarification:
"Under normal circumstances, the only time when octets within a URI are percent-encoded is during the process of producing the URI from its component parts. This is when an implementation determines which of the reserved characters are to be used as subcomponent delimiters and which can be safely used as data. "
Section 3.3 on paths details what characters are allowed as data (the set includes the slash, among other delimiters). As such, no clarification is necessary in psr-7; rfc 3896 states what must be encoded, albeit obliquely.
Feel free to reference this thread on your github issue.