v0.9.25
The pre-check used resolve() before the Promise was created, so it was undefined — the handler returned undefined and the script never ran. Restructured so pre-check failures return directly from the async handler, and only the script execution uses Promise/resolve. All error paths now include full diagnostics: Python path, script path, course dir existence, package import check results. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>