I’ll inspect the PowerShell and config together, find where per-extension timestamp selection is being ignored or misread, then provide a corrected script or targeted patch. I found the first likely failure mode: this script only looks for a JSON sidecar with the exact same basename as the .ps1. Your uploaded files are (2).ps1 and (1).json, so the config would not be loaded in-place. No, the (1) and (2) is a ChatGPT artifact. Got it — I’ll ignore the upload suffixes as artifacts and focus on the script logic/config behavior itself. The JSON does declare .zip=true and .html=false, so the fix should be in how the script applies that gate. Thought for 3m 3s Got it — not the (1)/(2) suffix issue. I patched the actual TimestampByExtension behavior: with your JSON declaring .zip=true and .html=false, .html now has trailing generated timestamps removed instead of merely “not adding another one.” .zip still gets the timestamp when needed. I also added a config-path printout so you can see exactly which JSON sidecar was loaded. Files: Download fixed PS1 Download fix ZIP README The ZIP validates successfully. I couldn’t execute PowerShell in this sandbox, so this is a static/debug patch rather than a live pwsh run.