Improve repository config, changelog notifications and API resilience

This commit is contained in:
Release Monitor
2026-10-11 21:32:04 +07:00
committed by latypov
parent 8f84934c46
commit 4e7b8e3e48
4 changed files with 73 additions and 22 deletions
+9
View File
@@ -65,3 +65,12 @@ through command-line arguments. The state file is read directly by `jq`.
This prevents `Argument list too long` for repositories with large release notes.
Run `bash -n monitor.sh` and `./monitor.sh --dry-run --verbose` to verify.
### Release notes and retention
`repos.json` uses `owner/repo` names (legacy full GitHub URLs remain accepted).
`TELEGRAM_INCLUDE_CHANGELOG=true` includes a shortened release body in Telegram messages.
`TELEGRAM_CHANGELOG_MAX_LENGTH=1800` limits the changelog; Telegram messages are capped at 4096 characters.
`STATE_MAX_IDS=500` bounds stored release IDs per repository. Keep this larger than the number of releases that may appear in the fetched pages; old releases returning after pruning may otherwise be notified again.
GitHub HTTP 403/429 responses log rate-limit headers and fail without changing the repository state. Mid-pagination errors also fail the repository without partially processing it. Tags without GitHub releases are not tracked.