Are there specific game mechanics that have a high correlation with addictions or with the characteristics of addictive behavior?
Should such mechanics be avoided or can they be used with other checks in place?
This article identifies the key gameplay elements (of Candy Crush Saga) that keep players engaged and excited for the next level. A few key quotes are:
Players experience Beginner’s Luck when they start the early levels, which allow them to easily get three stars for matching candies and crushing them.
This is essentially enticing a user with a quick reward (e.g. an easy to earn badge) to quickly get them hooked on the idea of earning more.
This is the Free Lunch that makes them feel like they are getting bonuses due in part to their performance.
These could be rewards unlocked as they progress (e.g access to moderator tools on SE).
a Leaderboard which includes where you rank amongst your friends.
Relatively self-explanatory, but being compared to other users (particularly friends) can be a major motivator to maintain bragging rights.
Last Mile Drive where the player keeps on playing because they're so close to the goal and they've already invested too much time and energy in the game to quit.
This is an important one in terms of addiction; once you've drawn a user in with other methods, it can get to the point where they have to keep going or else feel they have wasted their time. Of course, with gamification there isn't an end level; you want your application to be used indefinitely.
With all the above said, I think the important thing is not what you implement, but rather, how you implement it. Try to avoid badges such as 200 consecutive logins, and use analytics to watch out for any addictive behaviour.