Say you want to forward mail from your machine to another for filtering and then have that mail come back to you. Postfix will bounce the filtered mail and put the following in your logs:
postfix/local: CEAC82B70054: to=<USER1@a.mx.haller.ws>, orig_to=<USER2@haller.ws>, relay=local, delay=0.25, delays=0.24/0/0/0.01, dsn=5.4.6, status=bounced (mail forwarding loop for USER1@a.mx.haller.ws)
As far as I can tell, there's no way to get postfix to just deliver the filtered email (disabling bounce in master.cf doesn't work, neither does enabling soft_bounce in main.cf). The only way I found to disable the bounce was to remove the Delivered-To: header from the email before forwarding it on. The received: header path apparently does not matter.
Using procmail, you can remove the Delivered-To header (disabling bounce detection) with the following rule:
:0Ef | formail -I Delivered-To: -I "To: USER@filter.domain.tld" | $SENDMAIL -t -oi
The formail option "-I" will destructively update the specified header, which is precisely what we want as that prevents postfix from determining that it has already delivered this email once.