Los tres puntos al final de t.task[index + 1:]… (operador ellipsis) es porque el segundo parámetro del append no es un slice y la función append recibe un item, con este operador lo que hacemos es decirle a go que tome ese slice y lo “desempaquete” para que sean muchos parámetros de 1 solo item y no un slice.
Ejemplo:
t.tasks = append(t.tasks, task1, task2, task3)
Lo que haría el operador de ellipsis seria pasar un slice a este formato de muchos parámetros.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?