_startup_login() ran garminconnect's login synchronously with no timeout before main() ever started reading stdin, so a slow/rate-limited Garmin login could wedge a user's whole subprocess before it became responsive. Give it the same background-thread + bounded-10s-timeout shape _handle_authenticate already uses, with tests for both the fast-success and timeout paths. Also refreshes .claude/skills/geniusrun-dev/SKILL.md (still describing the retired mcp-garmin MCP architecture) and three stale doc comments (garmin.AuthStatus, config.GarminTokenStoreRoot, mock package doc) left over from the direct-wrapper migration. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2.5 KiB
2.5 KiB