Actually, if there was no ticketing deadline restriction on the I-class fare, then I think GA was wrong to make you buy a D-class.
Although the fare is not guaranteed until purchase, if you specifically held an I-class reservation, they should not change it without your consent after any stipulated ticketing deadline (either from reservations or by fare rules) has passed.
Think about this logically - you had a confirmed I-class reservation. Ticketing deadline not yet passed. So someone had to make an active decision not to honor your I-class booking, because PNRs don't cancel themselves unless ticketing deadline is passed!