Votre déclencheur se déclenche lors de la mise à jour ou de l'insertion de CONTRACTS, puis tente de mettre à jour CONTRACTS, ce qui déclenche le déclencheur... Vous voyez le problème ?
Vous devez déterminer la date de fin, puis effectuer l'insertion/la mise à jour.