Reusing a variable with a structure is usually okay, but if the structure contains a list, the list is not cleared, and any ListAppends will end up with a growing list.
Setting aside a variable of the same structure and keeping it blank to use in an assign or using ListClear on each of the lists doesn't seem very elegant.
It would be nice if the structures had a CreateStructure action underneath them, either always or only if there are lists inside it.
I make my own, but they have warnings unless you busy-fiddle with the return variable :)