Why are some of my strings in quotes?
Because a YAML reader would otherwise take them for something else. YAML 1.1, which PyYAML, Ansible and many Kubernetes tools follow, reads NO, off and y as booleans, 2024-01-01 as a date and 012 as an octal number. Quoted, they stay the strings your JSON had.
Is JSON already valid YAML?
Nearly always: YAML 1.2 was designed so that a JSON file is also a YAML file. Converting gives the indented form people read and edit, and quotes the values an older YAML 1.1 reader would misread.
What happens to null and empty strings?
A null is written as null, the spelling every YAML version agrees on. An empty string stays "" in quotes, since a key with nothing after it would read as null.
Can I turn the YAML back into JSON?
Yes. Swap puts the YAML in the box and converts it the other way, with the same numbers and strings. Comments you add on the YAML side are reported, because JSON has nowhere to put them.