Will the value of `submission_uuid` ever be different than `workflow.submission_uuid`?  If so, I suspect some of the querying logic could be simplified (no need to check that the item's submission matches the workflow's submission)