My unit test originally failed because pb33f’s high-level validator isn’t flagging missing fields in application/x-www-form-urlencoded bodies. When I swapped the test to JSON, the validator caught the missing property immediately, so pb33f itself is working; it just doesn’t currently enforce “required” on form payloads.
Versions in my go.mod
github.com/pb33f/libopenapi v0.27.2
github.com/pb33f/libopenapi-validator v0.6.3