Hi @seanobryant65.
I recommend using a scheduled site workflow unless you need to immediately archive.
Could you please show the configuration of the query-list, for-each, and copy-items actions.
Also, from what i can see, each time it runs it will copy all of the items, even the ones that were already archived, creating duplicates in the archive list.
@seanobryant65 if you want to do this in batch then you need site workflow and if you want to do one by one then you need list workflow.
I would recommend you to create a list template (without content) of your source list and create your archive list. This will make sure both lists matches each and every columns. Also if there are any workflows in your source list then after creating the list and before you create any items in it, go to workflow settings and remove all the workflow instances. Workflows will only be visible in Workflow settings.
Now when you query your list get the IDs and nothing else and also apply filter i.e. Status = Complete.
Using the ID collection and For Loop, Copy your items. Also you need to make sure your users do have contribute permission to your Archive list or put your logic inside Action Set and Run the workflow as workflow owner. This will then use the credentials of the person who published the workflow. My suggestion will be to use a service account to publish workflows in production to make sure when the person lives the company and the account is de-activated, it won't create any problems.