"Are there any Canadian rules she can appeal to at least get them to provide a hotel?"
The answer is no. This is considered an uncontrollable delay. Therefore, hotels are not provided by the airline. If the passenger purchased travel insurance or has travel insurance with their credit card this may assist in covering a hotel stay. But at the end of the day, they answer is no. I have a feeling that airlines, like Air Canada, are just as upset with the delays at YYZ as the passengers are. Not that this helps, but the delays are hurting their operational planning and impacting their brand for first time/infrequent flyers like yours who have limited AC flights to think of how well they went.