Incidentally, I think for crossings StreetComplete now only asks about the actual crossing nodes, so no more duplicate quests.
It can be confusing for roads where both sides are separated or where there is a traffic island in the middle. There you have two crossing nodes (and sometimes even the footway leading over the road). But in general, I think it is very hard to actually cause trouble with StreetComplete. Furthermore, not every single quest has to be answered, although they typically only exist if there is an obvious correct answer the vast majority of the time (to not annoy users).
I've mostly stuck to using Organic Maps to add individual businesses, that's a very easy thing to do. Drop a pin, name, phone number/website/hours/whatever, submit.
There is the path across the road, usually from one sidewalk to the opposite, which is meant for pedestrians, and there is the node where this path touches the road, which is meant for car drivers.
Yes, the system could be improved by grouping these somehow, maybe using relations (https://wiki.openstreetmap.org/wiki/Relation ), but that would add complexity to any navigation or rendering application using OSM data that wants to process information about crossings.
This is the case for the majority of users. The rules are complex and not always obvious or clearly defined. The world is complex, unfortunately, and so is describing it accurately.
One of OSM killer features for me is finding drinking water along the route when I'm hiking/biking/exploring. Unfortunately, there isn't a single, consistent label used for all sources of drinking water. So I have to check amenity=drinking_water, man_made=water_tap, amenity=fountain, one after the other.
I think StreetComplete has missions to add the label drinking_water=yes to all of those, so the situation might improve in the future.