JSONDecoder.keyDecodingStrategy = .convertFromSnakeCase converts JSON keys like 'tenant_access_token' to Swift names like 'tenantAccessToken'. Having explicit CodingKeys that map to the ORIGINAL snake_case keys (e.g., case tenantAccessToken = "tenant_access_token") causes a collision: the decoder first converts the JSON key, then looks for a CodingKey matching the original name — but the converted name doesn't match. Removed redundant CodingKeys from OAuthTokenData, TenantAccessTokenData, UserInfoData, and RecordItem. .convertFromSnakeCase handles all these mappings automatically. Co-Authored-By: Claude <noreply@anthropic.com> |
||
|---|---|---|
| Bugger.xcodeproj | ||
| Resources | ||
| Sources | ||
| docs | ||
| scripts | ||
| .gitignore | ||
| Config.xcconfig.example | ||
| README.md | ||
README.md
Bugger for macOS
A lightweight macOS menu bar app that surfaces bugs assigned to you from a Feishu Bitable. Shows a badge in the menu bar, a popover with your active bugs, and native notifications when bugs are assigned or changed.
Inspired by the Windows Bugger tool.
Status
Early design phase. See docs/ for the high-level design and detailed implementation plan.