v20260101-15-changelog-0-1-15 #13
@ -1 +1 @@
|
|||||||
v20260101-14-run-checks-select-all-indeterminate-stuck-dash-fix
|
v20260101-15-changelog-0-1-15
|
||||||
|
|||||||
@ -8,11 +8,116 @@ def changelog_page():
|
|||||||
|
|
||||||
changelog = {
|
changelog = {
|
||||||
"completed_summary": [
|
"completed_summary": [
|
||||||
|
{
|
||||||
|
"version": "0.1.15",
|
||||||
|
"overview": [
|
||||||
|
"This release focused on improving operational clarity and usability by strengthening dashboard guidance, introducing a solid reporting foundation, and significantly refining the Run Checks review workflow for daily accountability.",
|
||||||
|
],
|
||||||
|
"categories": [
|
||||||
|
{
|
||||||
|
"category": "Dashboard & User Guidance",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Added a comprehensive explanatory section to the Dashboard describing how Backupchecks collects, normalizes, and evaluates backup results.",
|
||||||
|
"Clarified dashboard counters, job statuses, overrides, and operational workflows.",
|
||||||
|
"Introduced clear guidance emphasizing the goal of keeping the Run Checks page empty or near-empty as proof of daily review and accountability.",
|
||||||
|
"Positioned Backupchecks explicitly as a monitoring and validation layer that complements existing backup software.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Navigation & Usability",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Implemented automatic redirection to the Dashboard on a user’s first visit of each day, improving daily visibility of system status.",
|
||||||
|
"Refactored the Settings area into clearly separated sections (General, Imports, Users, etc.) for better usability and structure.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Dashboard News",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Added a per-user Dashboard News section with read/unread tracking.",
|
||||||
|
"Enabled full admin management of news items (create, edit, delete, pin, severity, publish window).",
|
||||||
|
"Provided admin insight into read statistics and the ability to reset read status.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Reporting – Foundation",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Introduced the initial reporting framework focused on raw, immutable data for auditability.",
|
||||||
|
"Added object-based reporting across multiple jobs with aggregated success, warning, failed, missed, and override metrics.",
|
||||||
|
"Prepared the data model for CSV export, future PDF generation, scheduling, and email delivery.",
|
||||||
|
"Enabled reporting access for admin, operator, and reporter roles in phase 1.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Reports UI & Generation",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Added an initial Reports UI to define, generate, and manage reports.",
|
||||||
|
"Enabled raw data preview directly in the UI with pagination support.",
|
||||||
|
"Implemented backend endpoints to generate and retrieve report data on demand.",
|
||||||
|
"Replaced the “New report” modal with a dedicated Create Report page.",
|
||||||
|
"Added month-based date selection, quick-select options, and multi-customer reporting support.",
|
||||||
|
"Enabled actual report generation while keeping scheduling as a non-functional placeholder.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Run Checks – Multi-Select Improvements",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Added Shift-click multi-selection for efficient bulk review.",
|
||||||
|
"Iteratively fixed edge cases including:",
|
||||||
|
"Off-by-one range selection issues",
|
||||||
|
"Checkbox and row highlight desynchronization",
|
||||||
|
"Last-row selection bugs",
|
||||||
|
"Browser text selection interference",
|
||||||
|
"Improved “Select all” checkbox behavior:",
|
||||||
|
"Clearing selection when indeterminate",
|
||||||
|
"Correctly resetting from the indeterminate state",
|
||||||
|
"Ensuring consistent mouse and keyboard interaction",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"category": "Overall Result",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Improved clarity, accountability, and daily workflow guidance across the application.",
|
||||||
|
"Established a solid, extensible reporting foundation.",
|
||||||
|
"Significantly enhanced usability and reliability of the Run Checks review process.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"version": "0.1.14",
|
"version": "0.1.14",
|
||||||
"overview": [
|
"overview": [
|
||||||
|
|||||||
@ -1,214 +1,59 @@
|
|||||||
## v20251231-01-dashboard-description
|
|
||||||
|
|
||||||
- Added a comprehensive explanatory section to the Dashboard, positioned directly below the legend.
|
|
||||||
- Introduced detailed documentation describing how Backupchecks collects, normalizes, and evaluates backup results across multiple backup solutions.
|
|
||||||
- Clarified the purpose and behavior of dashboard counters, job statuses, and override indicators.
|
|
||||||
- Expanded the explanation of the Daily Jobs and Run Checks workflows, including the review, follow-up, resolution, and override processes.
|
|
||||||
- Documented the operational goal of maintaining an empty or near-empty Run Checks page to ensure full review and accountability.
|
|
||||||
- Clearly positioned Backupchecks as a monitoring, validation, and control platform that enhances, but does not replace, existing backup software.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-02-daily-first-open-dashboard
|
|
||||||
|
|
||||||
- Added logic to automatically redirect users to the Dashboard on their first website visit of each day.
|
|
||||||
- The redirect is applied per browser session after authentication, ensuring normal navigation afterwards.
|
|
||||||
- Excluded API endpoints and static asset requests from the redirect to prevent unintended side effects.
|
|
||||||
- Ensured the behavior is transparent to users while improving daily visibility of overall system status.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-03-dashboard-news-settings-sections
|
|
||||||
|
|
||||||
- Added a Dashboard News section displaying active announcements per user.
|
|
||||||
- Implemented per-user read tracking, allowing users to mark news items as read so they disappear only for that user.
|
|
||||||
- Added admin management for News items in Settings (create, edit, delete, pin, severity, active state, publish window).
|
|
||||||
- Added admin visibility into read status per news item, including read counts and user timestamps.
|
|
||||||
- Implemented admin action to reset read status for a news item.
|
|
||||||
- Refactored the Settings page into separate sections to improve usability and prevent overly long pages.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-04-settings-tabs-restructure
|
|
||||||
|
|
||||||
### Settings
|
|
||||||
- Removed the collapse-based layout from **Settings → General** and converted it to a fixed section view for improved clarity.
|
|
||||||
- Moved **Import configuration** from **Settings → General** to the dedicated **Imports** section.
|
|
||||||
- Moved **User Management** from **Settings → Maintenance** to the dedicated **Users** section.
|
|
||||||
- Moved **Manual mail import** from **Settings → Maintenance** to the **Imports** section.
|
|
||||||
- Simplified and clarified the overall Settings structure by grouping related functionality into dedicated sections.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-05-reporting-raw-data-foundation
|
|
||||||
|
|
||||||
### Reporting – Foundation
|
|
||||||
- Introduced the initial reporting foundation focused on raw data collection.
|
|
||||||
- Added support for object-based reporting across multiple jobs.
|
|
||||||
- Implemented immutable report snapshot data to ensure auditability.
|
|
||||||
- Added aggregated summary data to calculate success, warning, failed, missed, and override metrics per object.
|
|
||||||
- Prepared reporting structures to support CSV output and future PDF generation.
|
|
||||||
- Enabled both one-time and scheduled report concepts at the data and API level.
|
|
||||||
- Ensured report data is reusable for downloads and email delivery.
|
|
||||||
- Aligned reporting permissions so admin, operator, and reporter roles have equal access in phase 1.
|
|
||||||
- Designed the reporting model to be extensible for future RBAC, UI, and visualization enhancements.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-06-reports-ui-placeholders
|
|
||||||
|
|
||||||
- Added an initial Reports UI to create, view, and manage report definitions for testing purposes.
|
|
||||||
- Implemented UI components to generate and download raw report data as CSV.
|
|
||||||
- Added scheduling placeholders (non-functional) to preview future report scheduling options.
|
|
||||||
- Prepared the Reports page layout for future extensions such as automated delivery and scheduling.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-07-reports-raw-data-ui
|
|
||||||
|
|
||||||
- Added raw data preview functionality to the Reports page, allowing users to view report data directly in the UI without downloading a CSV.
|
|
||||||
- Introduced a modal-based raw data viewer with pagination support for large datasets.
|
|
||||||
- Implemented backend support to generate report data on demand for UI preview usage.
|
|
||||||
- Added API endpoints to retrieve report raw data with configurable limits and offsets.
|
|
||||||
- Prepared the reporting flow to support future export options (CSV/PDF) using the same data foundation.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20251231-08-reports-generation-enabled
|
|
||||||
|
|
||||||
- Enabled actual report generation from the Reports page.
|
|
||||||
- Connected the “Generate report” action to the backend generation logic.
|
|
||||||
- Ensured raw data can be used to build a report without requiring a schedule.
|
|
||||||
- Kept scheduling functionality as a placeholder only, as intended.
|
|
||||||
- Improved UI state handling after report generation (status and available actions).
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-01-reports-new-report-button-fix
|
|
||||||
|
|
||||||
- Fixed the “New report” button on the Reports page so it correctly opens the report creation modal.
|
|
||||||
- Ensured report-related JavaScript is initialized after DOMContentLoaded to avoid issues with unloaded dependencies.
|
|
||||||
- Restored the ability to start creating a new report from the UI.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-02-reports-new-report-page-multicustomer
|
|
||||||
|
|
||||||
- Replaced the “New report” modal with a dedicated page for creating reports.
|
|
||||||
- Added a full Create Report page with support for future expansion of report options.
|
|
||||||
- Implemented month-based date selection with clickable days and separate time inputs.
|
|
||||||
- Added quick-select options for:
|
|
||||||
- First day of the current month
|
|
||||||
- First day of the last month
|
|
||||||
- Added the ability to select a customer for which the report is generated.
|
|
||||||
- Extended reporting to support generating reports for multiple customers in a single report.
|
|
||||||
- Updated report generation logic to handle single-customer, multi-customer, and all-customer scopes.
|
|
||||||
- Prepared reporting output for use cases such as account management and operations-wide overviews.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-03-run-checks-page-guide-text
|
|
||||||
|
|
||||||
- Added a workflow guide to the Run Checks page explaining its purpose in daily operational triage.
|
|
||||||
- Emphasized that the main objective is to keep the Run Checks page as empty as possible.
|
|
||||||
- Clarified that every run must be marked as reviewed to demonstrate that backups are actively checked.
|
|
||||||
- Explicitly stated that after adding a ticket number or remark, the run must still be marked as reviewed.
|
|
||||||
- Explained the role of the resolved status within the Run Checks workflow.
|
|
||||||
- Placed the guide directly on the Run Checks page (no popup), aligned with the dashboard explanation style.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-04-run-checks-guide-layout-fix
|
|
||||||
|
|
||||||
- Moved the Run Checks workflow guide into the main page content so it aligns with the left edge of the table.
|
|
||||||
- Reduced vertical spacing below the guide to remove excessive empty space before the Run Checks table.
|
|
||||||
- Ensured the guide follows the same layout and alignment as the existing Run Checks page elements.
|
|
||||||
- Applied layout-only changes without modifying any functional behavior.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-05-run-checks-shift-multiselect
|
|
||||||
|
|
||||||
- Added support for selecting multiple rows on the Run Checks page using Shift-click.
|
|
||||||
- Users can now select a continuous range of checkboxes by holding Shift and clicking another row.
|
|
||||||
- Improves efficiency when reviewing or updating multiple checks at once.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-06-run-checks-shift-multiselect-fix
|
|
||||||
|
|
||||||
- Fixed Shift-click behavior on the Run Checks page to properly select a range of rows via checkboxes.
|
|
||||||
- Prevented default browser text selection when using Shift during checkbox selection.
|
|
||||||
- Implemented tracking of the last selected checkbox to enable continuous range selection.
|
|
||||||
- Ensured multiselect only applies to checkbox interactions and not table row text.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-07-run-checks-shift-multiselect-delegation-fix
|
|
||||||
|
|
||||||
- Reworked Shift-click multiselect on the Run Checks page using event delegation.
|
|
||||||
- Ensured checkbox range selection works correctly with dynamically rendered table rows.
|
|
||||||
- Disabled default browser text selection when using Shift during checkbox interaction.
|
|
||||||
- Applied Gmail-style range selection logic for consistent multi-row selection behavior.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-08-run-checks-shift-multiselect-selection-retain
|
|
||||||
|
|
||||||
- Fixed Shift-click multi-select on the Run Checks page so the initial checkbox selection is preserved when selecting additional rows with Shift.
|
|
||||||
- Made Shift range selection use the checkbox pre-click state to prevent unintended double-toggles across browsers.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-09-run-checks-shift-multiselect-range-highlight-fix
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
- Fixed shift-click multi-select behavior on the Run Checks page to include the clicked row in the selection range.
|
|
||||||
- Corrected an off-by-one issue where selection previously stopped one row above the clicked item.
|
|
||||||
- Added visual highlighting for all rows that are selected via checkmarks to clearly indicate active selection.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-10-run-checks-shift-multiselect-last-row-checkbox-fix
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
- Fixed an issue on the Run Checks page where the last row in a shift-selected range was visually highlighted but its checkbox was not checked.
|
|
||||||
- Ensured checkbox state and row highlight state stay fully in sync for all rows in a shift multi-selection.
|
|
||||||
- Corrected selection logic so every row within the calculated range is consistently selected and marked.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-11-run-checks-select-all-indeterminate-clear-selection
|
|
||||||
|
|
||||||
- Fixed the Run Checks header “select all” checkbox behavior: when the checkbox is in an indeterminate (partial selection) state, clicking it now clears all selected rows instead of selecting all rows.
|
|
||||||
- Prevented unintended full selection when toggling from an indeterminate state.
|
|
||||||
- Ensured consistent behavior between mouse click and keyboard (Space) interaction on the header checkbox.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-12-run-checks-select-all-indeterminate-clear-selection-fix
|
|
||||||
|
|
||||||
- Fixed the Run Checks header “select all” checkbox: when it is indeterminate (partial selection), clicking it now clears the current selection instead of selecting all rows.
|
|
||||||
- Implemented click interception before the browser toggles the checkbox state to prevent unintended full selection from the indeterminate state.
|
|
||||||
- Added consistent keyboard behavior: pressing Space on the indeterminate header checkbox now also clears the selection.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-13-run-checks-select-all-indeterminate-state-fix
|
|
||||||
|
|
||||||
- Fixed the “Select all” checkbox behavior on the Run Checks page.
|
|
||||||
- Resolved an issue where the checkbox remained in the indeterminate (`-`) state after clearing the selection.
|
|
||||||
- Ensured that after clearing all selected rows, the “Select all” checkbox can again be used to select all rows normally.
|
|
||||||
- Improved synchronization between individual row selection and the global “Select all” checkbox state.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260101-14-run-checks-select-all-indeterminate-stuck-dash-fix
|
|
||||||
|
|
||||||
- Fixed an issue on the Run Checks page where the “Select all” checkbox could remain visually stuck in the indeterminate (`-`) state after clearing the current selection.
|
|
||||||
- Ensured the header checkbox state is re-synced after the click/change cycle so it correctly reflects the row selection state.
|
|
||||||
|
|
||||||
================================================================================================================================================
|
================================================================================================================================================
|
||||||
|
|
||||||
|
## v0.1.15
|
||||||
|
|
||||||
|
This release focused on improving operational clarity and usability by strengthening dashboard guidance, introducing a solid reporting foundation, and significantly refining the Run Checks review workflow for daily accountability.
|
||||||
|
|
||||||
|
### Dashboard & User Guidance
|
||||||
|
- Added a comprehensive explanatory section to the Dashboard describing how Backupchecks collects, normalizes, and evaluates backup results.
|
||||||
|
- Clarified dashboard counters, job statuses, overrides, and operational workflows.
|
||||||
|
- Introduced clear guidance emphasizing the goal of keeping the Run Checks page empty or near-empty as proof of daily review and accountability.
|
||||||
|
- Positioned Backupchecks explicitly as a monitoring and validation layer that complements existing backup software.
|
||||||
|
|
||||||
|
### Navigation & Usability
|
||||||
|
- Implemented automatic redirection to the Dashboard on a user’s first visit of each day, improving daily visibility of system status.
|
||||||
|
- Refactored the Settings area into clearly separated sections (General, Imports, Users, etc.) for better usability and structure.
|
||||||
|
|
||||||
|
### Dashboard News
|
||||||
|
- Added a per-user Dashboard News section with read/unread tracking.
|
||||||
|
- Enabled full admin management of news items (create, edit, delete, pin, severity, publish window).
|
||||||
|
- Provided admin insight into read statistics and the ability to reset read status.
|
||||||
|
|
||||||
|
### Reporting – Foundation
|
||||||
|
- Introduced the initial reporting framework focused on raw, immutable data for auditability.
|
||||||
|
- Added object-based reporting across multiple jobs with aggregated success, warning, failed, missed, and override metrics.
|
||||||
|
- Prepared the data model for CSV export, future PDF generation, scheduling, and email delivery.
|
||||||
|
- Enabled reporting access for admin, operator, and reporter roles in phase 1.
|
||||||
|
|
||||||
|
### Reports UI & Generation
|
||||||
|
- Added an initial Reports UI to define, generate, and manage reports.
|
||||||
|
- Enabled raw data preview directly in the UI with pagination support.
|
||||||
|
- Implemented backend endpoints to generate and retrieve report data on demand.
|
||||||
|
- Replaced the “New report” modal with a dedicated Create Report page.
|
||||||
|
- Added month-based date selection, quick-select options, and multi-customer reporting support.
|
||||||
|
- Enabled actual report generation while keeping scheduling as a non-functional placeholder.
|
||||||
|
|
||||||
|
### Run Checks – Multi-Select Improvements
|
||||||
|
- Added Shift-click multi-selection for efficient bulk review.
|
||||||
|
- Iteratively fixed edge cases including:
|
||||||
|
- Off-by-one range selection issues
|
||||||
|
- Checkbox and row highlight desynchronization
|
||||||
|
- Last-row selection bugs
|
||||||
|
- Browser text selection interference
|
||||||
|
- Improved “Select all” checkbox behavior:
|
||||||
|
- Clearing selection when indeterminate
|
||||||
|
- Correctly resetting from the indeterminate state
|
||||||
|
- Ensuring consistent mouse and keyboard interaction
|
||||||
|
|
||||||
|
### Overall Result
|
||||||
|
- Improved clarity, accountability, and daily workflow guidance across the application.
|
||||||
|
- Established a solid, extensible reporting foundation.
|
||||||
|
- Significantly enhanced usability and reliability of the Run Checks review process.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## v0.1.14
|
## v0.1.14
|
||||||
|
|
||||||
### Daily Jobs
|
### Daily Jobs
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
v0.1.14
|
v0.1.15
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user