I have retested the code with my snapshot build. Here is the output of ls -l on the child job (ignore the "hudson" user - I've had hudson before jenkins came out):
Started by upstream project "test-zip-step1" build number 18
Building remotely on pink
[test-zip-step2] $ /bin/sh -xe /tmp/hudson3057288463521800811.sh
+ ls -l
total 8
-rwxr-xr-x 1 hudson hudson 11 Sep 27 12:09 executable
rw-rr- 1 hudson hudson 8 Sep 27 12:09 regular
Finished: SUCCESS
Here is the "build script" of test-zip-step1:
#!/bin/sh
rm -f $WORKSPACE/*
echo "regular" > $WORKSPACE/regular
echo "executable" > $WORKSPACE/executable
chmod 644 $WORKSPACE/regular
chmod 755 $WORKSPACE/executable
I'm using the Clone Workspace SCM 0.3 to move the workspace between test-zip-step1 and test-zip-step2.
Put in a pull request for a proposed fix: https://github.com/jenkinsci/jenkins-clone-workspace-scm-plugin/pull/1
The TarArchiver and ZipArchiver are not being used by this plugin (though I guess they could be).