New upload workflow