Taking into consideration some more research and also points made in [this post][1]this post, the end solution will be:
- (use code to) switch off the workflow enforcement on relevant schemas whilst a content port is in progress
- perform the import
- (use code to) switch the enforcement back on after the content port
We've had to introduce processes/checks to ensure that no-one sneaks in and adds/updates content whilst a content port is in progress and the enforcement is not being enacted - and we're still looking at the best combination here.
We did try, during the import, to intercept the various processes and prior to Save > Initiate > Finsh but it seems that the check against enfrocement in the schema is undertaken and enacted on before anything we can hook into in Content Porter. [1]: Updating approval status of a item | On Save | Event System