Implements bin/runners-restart-safe.sh per internal#263/internal#262 spec.
Before restarting a runner container, waits for any active Gitea Actions
task to complete. After restart, verifies re-registration via
'declare successfully' log line.
Includes 4 unit tests (all passing, ShellCheck clean):
- all runners missing (pass)
- idle runner restarts ok (pass)
- missing declare log line (fail expected)
- busy runner skipped (pass)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>