More explanation and steps to reproduce provided in codesandbox
This is not related to errors object being not reactive, the alias works fine because the value is being sourced from the input itself.
However the color input is being set programatically, so it doesn't emit any events that vee-validate can use to trigger validation.
You can fix this by using v-model
https://codesandbox.io/s/j4pmj0kn15
Another approach is that you can dispatch the input event yourself whenever the value changes.
I can't use v-model in my particular scenario, so should I create a custom component for my color input, that emits input event?
Yep that would be better since you can reuse the component in other places as well.
Because of reusability and other uses cases I created this component to pick colors
https://github.com/saintplay/vue-swatches