1. || does *not* produce a en-dash but to kerned hyphens You're right, I looked it up in the sources. It just looked like an en-dash for me. But this is wrong. For hyphenation a hyphen is used. The font designer has created a dedicated glyph for this purpose. And two hyphens (or an en-dash) is too large. I've never seen the advice in a typography book to kern two hyphens. I don't know why this is implemented like this.
2. The correct method to get a *normal* hyphen is
\setuphyphenmark[sign=normal]
Yes, this is the correct method. It should be enabled by default. If somebody wants a larger hyphen (for some mysterious reasen), he/she can set it up with \setuphyphenmark[sign=wide]
If the output is not correct it's a bug.
Yes, it is a bug. Hans already confirmed and said, he'll fix it, but it is not yet done, that's why I wanted to remember him. You can try and run the example from my first post. With Thomas' workaround the output is OK, but it is only a workaround. I (and probably many other users) would like to have correct behaviour by default. Marco