The responder forgets about it after sending the answer, it can't be certain. But the requestor is required to track the transaction, timeout and re-send the request if necessary.
This is where duplicate detection becomes important. The responder should detect if he receives a duplicate request, and application logic should ensure that the action is not performed twice (if it causes harm like double billing). Diameter protocol itself has a Duplicate bit , but I think applications (say OCS) may need ability to detect duplication at application level too - say identifying duplicate CDRs.