It seems a bit odd that there is no way of linking in to the fact that a user has failed to make a submission.
It would be good if the completion code could handle the following scenario:
1. Assignment set up with due date
2. Resubmission / re-attempt assignment set up to be available if user does not submit to (1) by the deadline
At present the closest you can get to this is to use a "has less than xx% in activity" condition, which is not quite the same as "hasn't submitted by the due date", partly because this requires someone to manually set a "failing" grade on the "non" submission.