I don't think that the present location of XConfig is a barrier to a
good haddock documentation. Do I miss something?

Not technically, except that if XConfig is in Core.hs, the haddock documentation for XConfig will be buried at the end of a very long haddock page for Core.hs.  The general idea was to separate documentation for things that the casual user (doesn't know much Haskell but thinks xmonad is cool and just wants to get xmonad working as easily as possible) cares about, such as XConfig, from things that the power user (knows Haskell and wants to contribute their own extension modules, etc.) cares about, such as Core.  In general, I strongly believe that the presentation of information is just as important as the actual content.
 
(btw, I documented each record field of XConfig in a patch that has
been committed yesterday, and I've just discovered that the darcs
version of haddock[1] properly deals with newtype deriving, which
means that everyone may be generating the haddock documentation.)

oh, excellent, I didn't see that yet.


Did you see the work I'm doing with documenting all this stuff[2]?

I did!  I think it's great.  And I assume you saw the e-mail I just sent with my thoughts on the matter.

-Brent