Please submit a pull request for the change you want and we can review it to part of the working branch.
Bulk loaders are only available in the professional edition.
Routing controls the data gaps so as data is routed it will adjust the gaps. Is routing running to completion without failure? There is a parameter that controls data gap expiration as well if you want to be adjusted. It will default to 1 day. purge.expired.data.gap.retention.minutes=1440
Sym data captures an event type when the change is made.
There is a DB Compare tool in the pro version. Otherewise you need to make sure there are not any outstanding batches, no data to route, and no batches in error.
You can achieve this with one central node(engine). Each site property file would have a property to identify its database on the central. For example : central.db.name Then in the site to central router put the target catalog name to the variable $(central.db.name).
The transform pk settings are used in a where clause so it would be applied to updates and deletes but not inserts. So if the database does not prevent duplicates (via a composite key) you would need to check for duplicates before every insert of data. This could be done with a transform or load filter but would slow down inserts as they would need to perform the additional check before deciding to insert.
David we work with ISV vendors all the time and to be sure you are not in violation of the GPL the open source has in place you should review. Here is a link with some more details. https://www.jumpmind.com/products/symmetricds/isv