Hi Andrew,
I don't know anything about Happstack, but it may be easier to
hack on gitit2[0], wherein I think you would add something like
(untested)
instance YesodAuth Gitit where
type AuthId Gitit = GititUser
loginDest _ = HomeR
logoutDest _ = HomeR
getAuthId creds = GititUser (credsIdent creds) (credsIdent creds)
authPlugins _ = [authBrowserId]
authHttpManager = httpManager
and then add an AuthR route and do something about requireUser.
[0]
https://github.com/jgm/gitit2