There are two obvious possibilities here.
First, you have to keep in mind that
cron runs its commands with an environment that is normally quite different from what you get in an interactive shell launched from a logged in session. You seem to have accounted for this by adding a
PATH assignment, but it's important to remember. As an addenum to this, cron runs the commands with the current working directory set to the owner user's home directory, so if that's not what you want you have to adjust accordingly.
Second, commands with the same time specifier are executed in an indeterminate order. When you write
*/1 * * * * module add something
*/1 * * * * module list >> croninfo.txt
*/1 * * * * module available >> croninfo.txt
you might think that they are going to be executed sequentially, one after the other, but in fact, cron is free to execute them in whichever order it happens to like at the spur of the moment. Depending on how long each command takes to start and execute, it's perfectly possible to have multiple different commands executing simultaneously.
If you want to execute a set of commands sequentially, often the best approach is to make a simple script that runs the commands in the correct order, and only execute that script from within cron.
Doing that will also allow you to use something like
#!/bin/bash -x to get more details about the execution of the script, which can help pinpoint problems.
By the way, you don't need the
*/1 are equivalent on any sane cron implementation. The
/n specifier is more useful when you want
n to be something other than 1; for example, to execute a command every three minutes (
*/3 in the first time specifier field).