From 5f8b02e970a16cef0da8528d26a9f48be194b6de Mon Sep 17 00:00:00 2001 From: Sucukdeluxe Date: Wed, 10 Jun 2026 00:35:54 +0200 Subject: [PATCH] =?UTF-8?q?Fix:=20Webhook-Settings=20=E2=80=94=20Backup-Ma?= =?UTF-8?q?skierung=20+=20Support-Bundle-Diagnose?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Audit-Befunde SET-2, SET-4: - notifyUrl in die SENSITIVE_KEYS des Backup-Imports aufgenommen: ein mit "***" maskierter Wert (haendisch redigierte Backup-Datei) wird wieder durch den aktuellen ersetzt statt als kaputte URL persistiert zu werden — die Webhook-URL ist ein Capability-Secret wie die Tokens. - Support-Bundle enthaelt jetzt einen notifications-Block (konfiguriert?, URL-Format plausibel?, welche Toggles an) — "warum kam kein Webhook" ist damit aus einem Bundle diagnostizierbar, ohne die URL selbst zu leaken. --- src/main/app-controller.ts | 3 ++- src/main/support-data.ts | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/app-controller.ts b/src/main/app-controller.ts index 13ac749..aebe347 100644 --- a/src/main/app-controller.ts +++ b/src/main/app-controller.ts @@ -696,7 +696,8 @@ public async checkDebridAccounts(): Promise { const SENSITIVE_KEYS: (keyof AppSettings)[] = [ "token", "megaLogin", "megaPassword", "bestToken", "allDebridToken", "ddownloadLogin", "ddownloadPassword", "oneFichierApiKey", - "debridLinkApiKeys", "linkSnappyLogin", "linkSnappyPassword" + "debridLinkApiKeys", "linkSnappyLogin", "linkSnappyPassword", + "notifyUrl" ]; for (const key of SENSITIVE_KEYS) { const val = importedSettingsRecord[key]; diff --git a/src/main/support-data.ts b/src/main/support-data.ts index 3c46d37..1e584f8 100644 --- a/src/main/support-data.ts +++ b/src/main/support-data.ts @@ -1,4 +1,5 @@ import { getDebridLinkApiKeyIds } from "../shared/debrid-link-keys"; +import { isNotifyUrlValid } from "./notify"; import type { AppSettings, HistoryEntry, UiSnapshot } from "../shared/types"; function hasText(value: unknown): boolean { @@ -131,6 +132,14 @@ export function buildRedactedSettingsPayload(settings: AppSettings): Record