protected void statusCheck() throws IOException, CredentialException
    {
        // @revised 0.18 was assertions(), put some more stuff in here

        // perform various status checks every 100 or so edits
        if (statuscounter > statusinterval)
        {
            // purge user rights in case of desysop or loss of other priviliges
            if (user != null)
                user.getUserInfo();
            // check for new messages
            if ((assertion & ASSERT_NO_MESSAGES) == ASSERT_NO_MESSAGES)
                assert !(hasNewMessages()) : "User has new messages";

            statuscounter = 0;
        }
        else
            statuscounter++;

        // do some more assertions
        if ((assertion & ASSERT_LOGGED_IN) == ASSERT_LOGGED_IN)
            assert (user != null) : "Not logged in"; // Does this ever happen?
        if ((assertion & ASSERT_BOT) == ASSERT_BOT)
            assert user.isA("bot") : "Not a bot";
    }