Sync, which imports files from S3, is Append, and CodeRepository processing using that data set is incremental build.
It is possible to have a situation where the file to be linked does not exist at the first execution and the dataset is not built, but even in this case, we would like to output (build) an empty dataset so that it can be read as an input dataset in the @transform function of a subsequent job.
I believe that the issue here is that the input dataset has no transactions. You should be able to commit an initial empty transaction with the Create Transaction and Commit Transaction API endpoints. This will allow downstream transforms to run without encountering the “Failed to resolve dataset properties for input datasets” error.