So we have a cluster of about a dozen build nodes and we let p4 plugin manage the client specs. A recent p4 plugin upgrade brought a change in the way those client specs are named. After upgrade, p4 plugin created new clients using the new naming convention (this part is fine), but it appeared that it did not delete the local workspace areas before creating new clients. The workspaces already contained files from the p4 clients as they were previously named. The new client got overlayed on top. Bad things started to happpen at this point as there were stray files in the workspace that were no longer tracked by p4 under the client that was in use.
What I think is missing from p4 plugin is a bit of logic that wipes the local workspace if the plugin just created a p4 client. I don't think there are any conditions under which the existing contents of that directory are relevant if the p4 plugin just created a new client and mapped it to it.