Yes, it does get complicated if all of these activities are considered as taxable income. You list does make sense, and probably that's how IRS would expect them calculated.
It is possible to automate this process. It would be easier to get all the numbers and create a final report using HiveSQL, since everything is stored in a database. It might be a little bit more complicated for tribes transactions though since they are stored in custom_json.
Perhaps I should look into HiveSQL. I need a way to export all transactions so that crypto tax software can sort it out.