Conversation
Jobs can now store notification triggers as a multi-select set of success, partial, and failed outcomes instead of the old preset enum values. This includes a migration for existing jobs, updated job form controls, and runner logic that maps both legacy and new formats. The notification system now emits a dedicated partial backup event with its own template and badge, and the UI/email presentation was updated to show partial upload states in orange instead of red.
Introduces notification templates as first-class entities with channels and per-channel event filters, plus job-to-template assignments via new Prisma models and migration. Adds template CRUD server actions and a dedicated service, exposes template management in the Templates dashboard tab, and integrates template selection into the job form and jobs API create/update flow. Backup completion now resolves notification recipients from assigned templates (while keeping legacy per-job channel behavior for compatibility), and notification logs can be filtered by executionId to show per-execution delivery results in history.
Move upload result evaluation to run immediately after metadata upload and before post-upload verification. This ensures success and partial-failure summaries are logged during the Uploading stage, while preserving existing behavior for final remote path selection, partial status assignment, and all-destination-failed errors.
Integrity checks now count destination scan failures separately and mark the system task as partial when some destinations cannot be reached, with clearer completion logging for unreachable destinations. Notification sends can now be linked to an execution ID so per-channel sent and failed results appear directly in the execution log history UI.
New backup jobs now auto-fill the default notification template when one is marked as default. The changelog was updated to document the behavior.
Adds a prominent breaking-change warning to vNEXT in the changelog. It clarifies that per-job notification settings are not migrated to Notification Templates, existing jobs lose notification config after update, and admins must create templates and reassign them to each job, with an optional default template for new jobs.
Restructured the notification template dialog channel configuration to match the job destinations layout. Changes include: - Numbered channel rows for clarity - ScrollArea with fixed height for better UX with many channels - Moved event filter checkboxes into collapsible per-channel settings section - Updated visual hierarchy and spacing to match existing UI patterns
Split the right column into separate rightTop and rightBottom props for more explicit layout control. Wrapped grid sections with Fragment elements and keys to improve React reconciliation. This change makes the component interface clearer and allows independent control of each grid section.
Fixes three related regressions across the dashboard and backup flow. The calendar range now uses UTC day boundaries so today's backups appear correctly in the last 12 months view on non-UTC servers, notification completion logging now records when legacy event filters skip a status, and job cloning no longer crashes when the source job has no notification templates. Also includes small React effect cleanup updates and the notification event count test adjustment.
Expanded unit test coverage with a large set of new tests across storage adapters (FTP, SFTP, S3/R2/Hetzner, Google Drive, OneDrive), SSH key handling, runner steps, restore pipeline, and core services including dashboard, storage, integrity, encryption, jobs, and notification templates. These tests target edge cases and failure paths to harden behavior and raise overall coverage. Updated the changelog with the new coverage metrics and test scope.
Move Create Group and Create API Key dialog actions into fixed DialogFooter sections so only form content scrolls, restoring proper scrolling behavior and keeping action buttons anchored. Also add hidden DialogDescription elements to both dialogs to satisfy aria-describedby accessibility requirements and remove related warnings. Update the changelog with the bug fix entry.
Remove the ineffective grid rows class from the flex-based dialog content and constrain the scroll area viewport so the API Trigger dialog scrolls correctly.
Updated the notification preview HTML rewrite to match the current `https://docs.dbackup.app/logo.png` logo URL, so logos render correctly in the dashboard email preview. Added a changelog bug-fix entry documenting the issue and fix.
Update the Discord notification preview field value class from `break-words` to `wrap-break-word` so long field content wraps correctly in the history preview UI.
Disable the middle-version database containers in the integration test compose file and keep the oldest and newest versions active for each supported family. Update the integration test configs and helper scripts to target the remaining containers, switch multi-database tests to the newest active versions, and document the reduced test footprint in the changelog.
Updates the app, docs, and OpenAPI versions to 2.8.0 and marks the changelog release as published with the latest bug fixes, tests, and Docker tags.
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Cleans up unit tests to satisfy updated ESLint and TypeScript checks. This updates SSH key test setup (including stronger RSA key size and safer private key casting), removes a stale throw-literal lint disable, renames intentionally unused variables with underscore prefixes, and wraps Prisma async mock implementations with compatible casts. The changelog was also updated under the test section to document these lint and type fixes.
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.
No description provided.