- Add centralized friendlyError() helper mapping technical errors to
clear German messages (rate limit, auth, network, timeout, etc.)
- Improve /status to handle rate limits gracefully
- Improve album upload: abort early on rate limit/auth, show partial
results with failure reason
- Better file-type rejection: show the rejected extension, suggest
sending as photo instead
- Friendlier Telegram download errors (file too big, getFile failures)
- Add global bot.catch() handler for unhandled Grammy errors
- Truncate long unknown errors to 150 chars
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Show German messages with retry time for 429 and helpful guidance for
401 instead of raw API error JSON.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Payload CMS REST API requires document data (alt, tenant, etc.) as a
JSON string in a _payload form field, not as individual form fields.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>