Description
Currently, the tag resolving logic in kpt treats the semver tags with a syntax issue and the hashed version tags the same way. It gives a warning message whenever the tag field has syntax issue or the tag is a hash. From tag resolution perspective, the string initialized in the tag field will be added to the image name: https://github.com/kptdev/kpt/blob/main/pkg/fn/runtime/tag_resolution.go#L92-L93. It is beacuse the purpose of handling the hashed tags. However, in case of specifying semantic version directives in the tag field will end up with an image name of '<image_name>:<semver_constraint>'. That means, the funciton execution will continue and tries to find the image with that name. It would be nice to handle this and return with an error before any further execution procedures.
Description
Currently, the tag resolving logic in kpt treats the semver tags with a syntax issue and the hashed version tags the same way. It gives a warning message whenever the tag field has syntax issue or the tag is a hash. From tag resolution perspective, the string initialized in the tag field will be added to the image name: https://github.com/kptdev/kpt/blob/main/pkg/fn/runtime/tag_resolution.go#L92-L93. It is beacuse the purpose of handling the hashed tags. However, in case of specifying semantic version directives in the tag field will end up with an image name of '<image_name>:<semver_constraint>'. That means, the funciton execution will continue and tries to find the image with that name. It would be nice to handle this and return with an error before any further execution procedures.