Add artifact generation