I suggest another approach. Create a separate test database and apply event trigger on it. wait_for_catchup() and others use 'postgres' database and wouldn't touch our test database. I also added check for successful clearance of the flag on both primary and standby. One issue spotted there: in-place heap update doesn't issue a WAL flush. But I think that's minor, WAL could be flushed by any subsequent operation.
I agree the approach you are suggesting is better.