Skip to main content

PATCH Omitted Fields Clobber

ItemDescription
Full Fuzzer NamePatchOmittedFieldsClobberFuzzer
Log KeyPOFCF
DescriptionSecond-phase fuzzer that verifies RFC 5789 partial-update semantics on PATCH endpoints by reading an owned resource created in the current run, sending a partial PATCH payload that omits a previously populated optional field, and reading the resource back via GET to ensure the omitted field was not wiped to null or removed.
Enabled by default?Yes (included in security, ci, and full profiles)
Expected result2XX on PATCH and subsequent GET, with the omitted optional field preserving its pre-PATCH value
Fuzzing logicSelects the latest successful PATCH on a resource created in the current run, captures a baseline GET snapshot, removes one non-volatile populated optional primitive field from the PATCH payload, sends the partial PATCH, and compares the subsequent GET snapshot.
Conditions when this fuzzer will be skippedWhen the path has no in-scope item GET, when no successful PATCH on an owned resource was observed, or when no omittable populated optional field exists.
HTTP methods that will be skippedGET, POST, PUT, DELETE, HEAD, TRACE
ReportingReports warn (PATCH wiped omitted optional fields) if the omitted optional field becomes null, blank, or missing on the subsequent GET, error on 5XX, and info when preserved.