LuaSessionExecutionTask and OpenEval appear to be different in that LuaSessionExecutionTask runs your script in the context of an actual datamodel within a specified place; including a workspace, server/client environment, and all the instances existing within the place, whereas OpenEval simply executes the script within the Roblox environment. Both of these are likely used internally and externally for unit testing without needing to spin up a local environment to run the script in.