https://gitlab.synchro.net/main/sbbs/-/commit/3ba093fdc760fab893f04e11
Modified Files:
.claude/skills/jsexec/SKILL.md src/sbbs3/jsexec.cpp
Log Message:
jsexec: exit 0 when a script is stopped or recycled by a signal
A SIGTERM/SIGINT/SIGQUIT (or Windows console control event) or a SIGHUP
recycle aborts the running script from the operation callback, so JS_ExecuteScript() fails and jsexec reported EXIT_FAILURE. Every routine "systemctl stop" or restart of a jsexec-hosted service (e.g. the
chat_llm IRC bot) was therefore logged by systemd as status=1/FAILURE.
Don't treat an abort caused by a local stop or recycle as a failure; an exit_code set by the script still takes precedence, and an abort for any
other reason still exits 1.
Also restore the "-> Terminated Locally" notice for Ctrl-C on Windows.
Since aba1e3e94f (hosts-11-access, 2026-09-29) moved that notice out of
the signal handler, it was gated on terminate_signal being non-zero, but CTRL_C_EVENT is 0. terminate_signal now starts at -1.
Document both behaviors in the jsexec skill, along with the status
stream being discarded when stdin is not a tty (use -S to see it).
Co-Authored-By: Claude Opus 5.5 <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net