Over time, Kubernetes continues to add new fields within the PodTemplateSpec. If a convention is compiled against an older version of the Kubernetes API types, then it is possible that a field will be dropped as it comes back from the convention. For example, K8s 1.23 added support for GRPC based probe handlers. If a PodIntent used that new feature and a convention was compiled against K8s 1.22, then the intended probe handler would be lost in the round trip.
The PodConventionContextStatus current has a PodTemplateSpec that is the template as returned from the convention. Instead, we should encourage conventions to return a diff representing the change to the PodTemplateSpec.
While the full PodTemplateSpec response should be deprecated, for backwards compatibility the convention controller must continue to allow conventions to return a full PodTemplateSpec or a diff.