Oh I thought everyone knew our story...

Well here it is in timeline format to make it all easier to understand:
Sometime in mid-90's: Javier is a teenager and does a few experimentations with cocaine
Sometime in 2000: Javier comes illegally to the US
October 1, 2002: I meet Javier at work while at college
April 1, 2003: Javier is arrested because of raid on restaurant
May 1, 2003: Javier is deported to Mexico with a 10 year ban
February 14, 2005: We get engaged
July xx, 2005: I file I-129F for Javier
August 8, 2005: Javier finds some men attempting to bring a powdered substance onto the farm property where he lives and works. Having seen police officers identify substances by tasting, he tastes the substance and recognizes it as cocaine. He makes the men leave so they won't attempt to sell to any of his 3 younger siblings or the various younger children who also live on the property.
November, 2005: Thanksgiving week-Javier's medical. He admits to the experimentations as a teenager, as well as the tasting incident. The following Monday is his interview. We were prepared to file the I-601 and I-212 waivers. Javier is denied due to "drug addiction." There is no waiver available. He must remain "drug free" for 3 years.
December, 2005: We file Advisory Opinion with the Department of State to allow them the opportunity to fix their mistake.
May, 2006: We find out they have not received our Advisory Opinion, we re-send.
August 16, 2006: Javier and I get married.
August 31, 2006: DOS requests another copy of the Advisory Opinion.
September 1, 2006: One day later, they deny the Advisory Opinion.
September 11, 2006: NOA1 for I-130.
So his interview has to be after August 8, 2008. We decided to file the I-130 so that when he does get a Visa, it will be IR-1. We decided not to pursue anymore action against DOS for their mistake. In the meantime he has to do "re-hab" for a drug problem that he doesn't have. If Comprehensive Immigration Reform is passed with the Family Unity section, we'll be able to file his I-212 early (before the interview) and then just go to the interview and pay the $2,000 or whatever and get his visa. If it is not passed, we have to file the I-601 and I-212 waivers in August, 2008 and wait for them to be approved before he can get a Visa (currently taking like 10 months in Juarez).