Use the Rest Operator with Function Parameters var or const?

When i use var to declare ‘args’ the exercise passes, however if i use let or const it gives me an error.
I feel like i must be missing something from this lesson.

const sum = (function() {
    "use strict";
    return function sum(...args) {
      var args = [...args];
      return args.reduce((a, b) => a + b, 0);
    };
  })();
  console.log(sum(1, 2, 3, 4)); // 6

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36.

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/es6/use-the-rest-operator-with-function-parameters