I think, that this is not a bug, because every checkbox in the panel only writes a 1 to the file. The text: descriptor is always only the information text displayed.
Also, it would not be a useful behavior to store the value of the text descriptor, if the checkbox is activated, because the text can be different in different languages.
Yeah, but this is not about the stored value (1 or 0), which is perfectly alright, but the text that is being displayed next to the checkbox, if the text is “yes”. But then again, it would make more sense to be a bit more explicit in the text label.
It’s an issue with the way YAML is parsed. In YAML, yes is translated to a boolean => true => 1. You should be able to avoid that by wrapping it in quotes.
It’s something that’s coming directly from the YAML parser. There are places where this makes sense, though I actually doubt that “yes” should ever be translated to true/1. But if you use the default option for fields, it often makes sense being able to pass a boolean.