Add the Secrets and Alerts screens

Two backends that had no way in: secrets could only be set through the API,
and alerting could only be configured by hand-editing its file. Both are
engine-wide operator settings rather than personal ones, so they get sidebar
entries of their own instead of tabs under the per-user Settings — and the
missing-secret error now names the place the page actually is.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H7LwYgJfpkbLCTeiAf8U4A
This commit is contained in:
2026-08-16 16:36:41 +02:00
co-authored by Claude Fable 5
parent f239c884b6
commit 45392d31d9
5 changed files with 798 additions and 100 deletions
+1 -1
View File
@@ -31,7 +31,7 @@ class SecretNotFound(KeyError):
self.name = name
def __str__(self) -> str:
return f"No secret named '{self.name}' — add it under Settings Secrets."
return f"No secret named '{self.name}' — add it under Secrets."
class SecretsStore: