After thinking about this some more… here’s a possible way to make this work so that it only opens the garage when she comes home in her car. It would involve writing a custom program though… not sure if you know how to code or not. But the concept would be this:
Setup your phone with the geofence thing, making sure that it’s far enough out that it will trigger before your presence sensor gets in range of the Hub. Now leave the presence sensor in the car… not on the keys (which she might take with her to unlock the house even if she isn’t drive), but in the car itself. Now you essentially have a presence detector for her and a separate one for her car.
Now, you’re program will be written so that it looks for both her phone and the car. The trigger will be when her phone comes into the geofence range. When the program sees this it will check the status of her car presence. If the car ISN’T home, then and only will it open the garage.
If she leaves for a walk and the car is still there when she comes back into geofence range the program will see it, check the car and see that it’s already there and not open the garage.
There are two obvious possible hiccups here:
If the geofence doesn’t get triggered fast enough or there’s a lag in the SmartApp running it’s possible that the car gets in range of the hub before the app fires and so the door doesn’t open. (Presumable you could have the program poll the status of the presence tag every 15 minutes and use that rather than current status of the car to minimize this possibility.)
If someone else has her car (for example, you drove it that day) and she comes home from her walk the program will think she’s coming home with the car and open the door.