I got the solution right but the "Check My Solution" button says it's wrong.
The web button calls an agent in the VM which runs the ~/agent/check.sh script. This script returns "NO" or "OK" and the web page shows the result as incorrect or correct accordingly.
The result is also logged in the ~/agent/sadagent.txt. So if you want to troubleshoot this disparity, you can 1) look at the result of this log, you can 2) run the check.sh script directly and you can also 3) inspect the script to see how it works.
In almost all scenarios you can also look at the Clues (which include one possible solution).
Note that changing the existing check.sh script in any way will make the solution fail automatically.
It is possible that your solution is right but the check.sh script doesn't capture it properly (please let me know if this happens).
In scenarios that ask for a solution in a file, the file is expected to end in newline, e.g. echo "mysolution" > solution.txt and not echo -n
A scenario may be a bit time-dependent. For example, the scenario "Saint John": what is writing to this log file? currently needs six seconds after the writing process is killed to be found correct.
If you open several scenarios (several servers are created), the "Check My Solution" button should go to the latest session (latest VM normally) created. Session management is difficult and it's possible with multiple scenarios running and page navigation to have a situation where the "Check My Solution" button is not running in the server from that page. This can also be checked as before: looking into the sadserver.txt log and running the check.sh script.
I'm only capturing the IP address the users are coming from (and geolocation derived from it).
Users may opt-in to the email newsletter in the contact form or in the user registration form. Opt-out is one click away in the newsletter email. I'm not tracking anything from this email. Historically, I've been sending the newsletter email about every two months.
I'm also tracking web visitors with self-hosted and privacy-friendly Plausible.
What about cookies?
There are no third-party cookies set in SadServers (like "tracking cookies"). The only cookies are: 1) "sessionid", to figure out who does what for users not logged in and 2) "csrftoken" , a token used in forms to prevent Cross Site Request Forgery (CSRF) attacks.