mirror of
https://github.com/clusterio/clusterio.git
synced 2026-11-12 07:04:52 +09:00
The fieldChanged handler in the Instance constructor ran updateFactorioSettings and updateFactorioWhitelist with only a finally attached. A rejection from either went unhandled, and the host exits on unhandled rejections, taking every instance on it down. Two ways to hit it against a real host: - Start an instance and immediately toggle factorio.enable_whitelist. updateFactorioWhitelist calls sendRcon while the server state is still "new" and it throws "Expected state running,stopping but state is new". - Set factorio.settings tags to [1] on a running instance. applyAsConfig called tag.replace outside its try block and threw "tag.replace is not a function". Catch and log both on the instance logger before invoking the hook, and convert tags with String() so non-string entries no longer throw. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>