Hi Nithin, I agree it is initially somewhat confusing for the combination of -koe and -Wsandbox=PRIVATE to result in the .o and .e files being deleted, but and it does make sense and I don't see a compelling reason to change it with this RFE.
With or without -koe, a private sandbox job creates the .o and .e files in the sandbox while the job is running (rather than in $PBS_HOME/spool).
If -koe is not used with a private sandbox job .o and .e files are staged to the Error_Path and Output_Path when the job finishes.
When -koe is used with a private sandbox job I believe the "keep" is taken to mean "keep the files in the sandbox where they were while the job was running", which of course gets removed once the job is finished. "qsub -koe -Roe -Wsandbox=PRIVATE" would just do the same thing as though -Roe had not been specified, though of course the files will be removed whether the job was successful or not. If that's not what you wanted, don't use -koe If we changed this behavior then the meaning of "keep" will have been changed (we'll now stage the files even though -k says not to) with no real benefit since the user can already have it either way they want it.
P.S., as I was thinking about this I was worried that the current Interface 1 proposal using -k violates the existing definition of "keep_files", but I think I talked myself out of it, here's how. We currently define "keep_files" as "Determines whether output and/or error files remain on execution host". The current EDD interface 1 using -koed to enable direct write adheres to this definition in spirit if not actual language since we are using it to say not to stage the files as a separate step, even though the location they were directly written to may not actually be a local filesystem.