{ "_comment_signal": "Use SIGTERM (which the app already handles) instead of nodemon's default SIGUSR2. This ensures every restart triggers the graceful shutdown() path in index.js, which calls framework.stop() and webex.internal.device.unregister(). Without this, each save would leak a WDM device registration and you'd eventually hit Cisco's per-bot device cap with 'Forbidden: User has excessive device registrations' on startup.", "_comment_delay": "Wait 1s after a file change before restarting — collapses bursts of saves (e.g. format-on-save touching multiple files) into a single restart.", "_comment_signal_timeout_workaround": "nodemon's `kill` setting controls how long it waits between sending the configured signal and SIGKILL'ing the app. 5s gives framework.stop()'s DELETE /wdm/api/v1/devices call enough time to complete on a typical RTT to Cisco.", "signal": "SIGTERM", "delay": 1000, "kill": 5000, "watch": [ "index.js", "commands/", "integrations/", "utils/" ], "ext": "js,json", "ignore": [ "node_modules/", "public/", "logs/", "tokens/", "*.test.js" ] }