assets pipeline refactor