So from my understanding, given a grouping key specified in the url and a metric m1 that exists in the data with the grouping key but /is not/ in the payload. Under put, that metric would be deleted since put overrides all the data for the grouping key. Push on the other hand will leave m1 alone, thats whats meant be "but only metrics with the same name as the newly pushed metrics are replaced"
Another way to see this clearly is this line from the docs "A PUT request with an empty body effectively deletes all metrics with the specified grouping key."