Escalation Notifications Pull Request#152
Open
KopikoCappu wants to merge 54 commits intoramfam101:developfrom
Open
Escalation Notifications Pull Request#152KopikoCappu wants to merge 54 commits intoramfam101:developfrom
KopikoCappu wants to merge 54 commits intoramfam101:developfrom
Conversation
…#2753) Add Telegram as a new notification type, allowing users to receive monitor alerts via a Telegram bot. Configuration requires: - Bot token (obtained from @Botfather) - Chat ID (user, group, or channel) Changes: - TelegramProvider: sends HTML-formatted messages via Telegram Bot API - NotificationsService: route telegram type to TelegramProvider - Notification model/types: add 'telegram' to NotificationChannel enum - Server validation: telegram schema (accessToken + address/chat_id) - Client Types/Validation: telegram schema with accessToken + address - useNotificationForm: handle telegram defaults - Notifications create page: render Telegram config UI - en.json: add telegram i18n keys
The previous commit reformatted the entire en.json (spaces → kept as-is but accumulated unrelated upstream changes), creating a 1.3k line diff. Restore the file to match upstream/develop exactly and add only the Telegram-specific i18n keys required by this PR.
- useNotificationForm: replace nested ternary with if/else if/else block - TelegramProvider: type error as unknown and access properties safely via instanceof checks instead of casting to HTTPError
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…seNotificationForm Per @ajhollid review: define defaults up-front with a NotificationDefaults type and eliminate the trailing else branch entirely. The if/else-if blocks only override when the type is matrix or telegram.
…in useNotificationForm Replace the loose NotificationDefaults intermediate type and 'as NotificationFormData' cast with an exhaustive buildDefaults() helper that narrows each branch of the discriminated union explicitly. TypeScript now infers the return type correctly from the discriminated union without any casts, satisfying strong typing for all channels (email, slack, discord, webhook, pager_duty, teams, matrix, telegram).
…ledb feat: timescaledb
…nt URL in telegram provider - Remove redundant 'defaultValue' prop on Telegram chat ID Controller in create/index.tsx; the form already initialises via 'defaultValues: defaults' at the useForm level, making the per-Controller prop unnecessary and inconsistent with the reviewer's expectation. - Fix 'View Incident' URL in telegram.ts: was pointing to the infrastructure details page (/infrastructure/:id) instead of the incidents page (/incidents/:id).
…ation-type feat(notifications): add Telegram notification channel (bluewave-labs#2753)
Feat(DLQ): Add DLQ data layer -> types, model, and repository
Fix outdated links and add Prerequisites section
fix geocheck update logic
…er/1.9.1 feat: bump scheduler, consume scheduler events
All 15 non-English locale files had a structural mismatch with en.json: - en.json used nested keys (common.buttons.cancel) - Other locales used flat keys (cancel, DeleteAccountButton) - Result: 0.3% effective translation coverage at runtime ## Changes Migration script (client/scripts/migrate-locales.ts): - Restructures all locale files to match en.json's nested key structure - Recovers existing translations via safe key-matching strategies - Backs up originals to locales/backup/ Translation of all 15 languages: - ar (94.6%), cs (91.6%), de (89.4%), es (92.6%), fi (94.2%) - fr (86.7%), ja (93.3%), pt-BR (91.0%), ru (93.0%), th (93.4%) - tr (91.9%), uk (94.3%), vi (92.5%), zh-CN (94.0%), zh-TW (94.2%) Keys intentionally left in English are technical terms (HTTP, CPU, Docker, gRPC, etc.), placeholder examples, and brand names. en.json was NOT modified.
…ale-migration fix: restructure and translate all i18n locale files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Describe your changes
Write your issue number after "Fixes "
Fixes #1
Please ensure all items are checked off before requesting a review. "Checked off" means you need to add an "x" character between brackets so they turn into checkmarks.
<div>Add</div>, use):npm run formatin server and client directories, which automatically formats your code.