Have you considered using the salesforce.push_allowed event (previously hook_salesforce_push_entity_allowed)? This allows you to write an event listener with custom code to determine the conditions when a record should or should not be pushed. Or did you find some other solution to your problem?