CPE Tracker Product Release Page
Product Release Notes for cpetracker.net
🎉CPE Tracker v2.20.0 – Release Notes 🚀
Major Highlights
We're excited to announce the release of CPE Tracker Chrome Extension version 2.20.0! This release introduces our new sponsor integration system, bringing valuable content from trusted partners while maintaining our commitment to user privacy and experience.
Key Features
Sponsor Integration System:
Dynamic sponsor cards with tiered display (Gold, Silver, Bronze)
Multiple placement options (header, sidebar, footer)
Automated sponsor rotation system
Privacy-focused implementation with no tracking scripts
Clear "Sponsored" labeling and visual indicators
Enhanced Search Experience:
Sponsor-boosted search results based on tier level
Improved course discovery with sponsored content
Affiliate code integration for partner tracking
UTM parameter management for analytics
Analytics and Tracking:
Comprehensive sponsor analytics system
Click tracking with privacy safeguards
Impression tracking using Intersection Observer
Detailed reporting for sponsor performance
Technical Improvements:
JSON-based sponsor management
Automated monthly sponsor rotation
Enhanced error handling and logging
Improved data validation and cleaning
Privacy and Ethics:
Strict privacy compliance checks
Clear sponsor content guidelines
No user data collection
Transparent sponsor labeling
System Requirements:
Chrome Browser version 88 or higher
Windows 10/11, macOS, or Linux operating system
Internet connection for sponsor content and updates
Installation
We are approaching a general availability (GA) launch. New users will be able to install from the Chrome Web Store "soon".
Support
For any issues or questions, please contact our support team or visit our documentation at Auditbrands.com/contact.
What's Next:
We're working on exciting new features for future releases, including:
- Documentation - a user guide
- Enhanced sponsor analytics dashboard
- Additional sponsor placement options
- Improved sponsor content management
Thank you for your continued support and feedback!
🚀 CPE Tracker v2.19.0 – Release Notes
Release Date: 2025-06-07
Major Highlights
UI/UX Improvements:
Major updates to the frontend UI for a smoother, more intuitive user experience.
Improved filtering, pagination, and event handling for course and certification management.
Enhanced accessibility and responsiveness across devices.
Course Index & Search:
The course search index (powered by Meilisearch) is now production-ready.
Bulk upload and ingestion scripts for course and certification data have been improved for reliability and speed.
Search and filtering are now faster and more accurate.
Centralized Logging Overhaul:
All server logs (FastAPI, Meilisearch, ClickHouse) are now forwarded to a single, secure FastAPI host using rsyslog over UDP. This enables unified monitoring, easier troubleshooting, and better compliance.
Robust Log Rotation & Retention:
Logrotate is now configured for all critical logs, including remote logs, nginx, and fail2ban. This prevents disk overuse and ensures historical logs are available for 14 days (remote logs) and 4 weeks (fail2ban).
Automated Monitoring & Alerting:
Custom scripts and systemd timers now monitor disk usage, log file sizes, logrotate health, and rsyslog service status. Email alerts are sent proactively to the admin team for any detected issues.
Security & Maintenance:
Kernel and package upgrades applied (now running kernel 6.11.0-26-generic).
All services (nginx, rsyslog, fail2ban, etc.) confirmed healthy post-reboot.
Fail2ban jails for SSH and FastAPI/nginx endpoints are active and protecting the stack.
Bug Fixes:
Resolved duplicate log rotation and log entry issues.
Fixed UI bugs related to filter logic, pagination, and event listeners.
Addressed backend ingestion errors and improved error handling for bulk uploads.
General stability and performance improvements across the stack.
Documentation:
The infrastructure runbook has been updated to reflect all new logging, monitoring, and alerting procedures, as well as UI and search index changes.
How This Benefits You
Reliability: Proactive monitoring and alerting means issues are caught before they impact users.
Security: Up-to-date kernel and active fail2ban protection.
Maintainability: Centralized logs, improved UI, and clear documentation make troubleshooting and audits a breeze.
User Experience: Faster, more intuitive, and more robust course and certification management.
Thank you to everyone who contributed to this release!
🚀 CPE Tracker v2.18.0 – Product Release Notes
Release Date: 5/29/2025
Highlights
End-to-End Encryption for Analytics:
Analytics database is now fully secured with TLS/SSL encryption. All data in transit is protected, meeting modern security and compliance standards.
Technical Documentation Upgrade:
The infrastructure runbook now includes comprehensive documentation for encryption, certificate management, and troubleshooting, ensuring operational clarity and future-proofing.
Reliability & Observability:
All monitoring, alerting, and logging systems remain active, with improved documentation and operational procedures.
Foundation for Future Integrations:
This release sets the stage for secure integrations and analytics expansion, with a focus on best practices and maintainability.
Key Features & Improvements
TLS/SSL Encryption:
All client and API connections are now encrypted.
Self-signed certificates and DH params are managed and documented.
Troubleshooting and client connection guidance included in the runbook.
Documentation:
Runbook updated with a new section on encryption.
Step-by-step instructions for certificate generation, renewal, and client compatibility.
Security & Compliance:
All analytics data in transit is now encrypted.
Meets best practices for data protection and compliance.
🚀 CPE Tracker v2.17.0 – Product Release Notes
Release Date: May 27, 2025
Highlights
Meilisearch API is now securely deployed behind NGINX with HTTPS, CORS, and advanced security hardening.
Chrome Extension and website now use a single, secure endpoint for blazing-fast search.
Fail2Ban is enabled for automated protection against bots and abuse.
Monitoring and resource alerts are active for proactive server health management.
All configuration and security decisions are fully documented in a new technical runbook.
NEW: Chrome extension now features robust, CSP-compliant image fallback—broken or missing course images automatically display a default image, ensuring a seamless user experience.
Key Features & Improvements
NGINX Security Hardening:
Strong SSL/TLS, HSTS, and modern security headers.
UI access to Meilisearch is blocked for public users.
CORS is enabled and ready for further restriction.
API Key Security:
No admin keys are exposed to the public.
Only read-only keys are used.
Fail2Ban Protection:
Default and custom jails protect against brute-force, bots, and repeated 403s.
All internal servers are whitelisted to prevent accidental bans.
Monitoring:
Monitoring with resource alerts for CPU, RAM, and disk.
All logs and bans are tracked for future analysis.
Chrome Extension Image Fallback (NEW):
Images for courses now use a JavaScript-based fallback mechanism.
If a course image URL is broken or missing, the extension automatically displays a default image.
Fully compliant with Chrome Extension Content Security Policy (CSP).
Documentation:
A comprehensive runbook details every technical and security decision for the team.
🚀 CPE Tracker v2.16.0 – Product Release Notes
Date: 5/25/2025
New Features & UI/UX Improvements
Modern Accordion Layouts:
The courses and certifications pages now feature a clean, modern accordion interface for managing your CPE records and certifications.
Add/Edit forms are always visible for quick entry, while Saved, Bulk Import, and Bulk Archive sections are organized in collapsible accordions for a clutter-free experience.
Responsive design and improved spacing for better usability on all devices.
Sticky Headers & Modal Editing:
Enhanced navigation with sticky headers and modal dialogs for editing, making large lists easier to manage.
Accessibility & CSP Compliance:
All JavaScript is now external, ensuring full Content Security Policy (CSP) compliance for maximum security and compatibility.
Bug Fixes
CSV Import Robustness:
Fixed an issue where missing trailing commas in CSV imports could cause errors. The import logic now provides clear feedback and expects all required columns, even if empty.
Provided a corrected CSV template for users to avoid formatting issues.
🚀 CPE Tracker v2.15.0 – Release Notes
Date: 5/24/2025
What’s New & Improved
Added a clear, human-friendly “Hands-Off-Our-Stuff” AI Policy to protect our content, code, and creativity from unauthorized AI/ML scraping and training.
See ai-respect-policy.md for details.
Robots.txt & Meta Updates:
Enhanced robots.txt to block major AI crawlers, /api, and /do-not-ai/ directories.
Added <meta name="robots" content="noai, noimageai"> to all major pages for extra AI protection.
Sitemap & SEO:
Created a sitemap.xml for better search engine indexing.
Improved footer links and spacing for a more polished look.
Transparency & Compliance:
Updated privacy and terms pages for clarity, compliance, and international users.
Added a dedicated /do-not-ai/ directory for sensitive docs.
General Improvements:
Minor UI/UX tweaks for footer navigation.
Version bump to 2.15.0 to mark this major compliance and policy milestone.
🚀 CPE Tracker v2.14.0: Release Notes
Date: 5/21/2025
Highlights
Data Durability & User ID Consistency:
All courses and certifications are now permanently associated with a unique user ID, ensuring data integrity across upgrades, imports, and exports.
Robust Import/Export:
All CSV exports now include a User ID column for both courses and certifications.
Import logic validates column headers and provides clear error messages for missing or extra columns.
Migration Logic:
Automatic migration updates all existing records to use the current user ID, ensuring consistency even after extension reinstalls or profile changes.
Improved Error Handling:
Clear, user-friendly error messages for missing columns, invalid dates, or malformed CSVs.
Prevents partial or silent data loss during import.
Static CSV Templates:
Downloadable, version-controlled CSV templates for both courses and certifications, with clear instructions for the User ID column.
Performance & Stability:
Analytics and event tracking are more robust during script load and usage.
All analytics events consistently use the correct user ID.
Bug Fixes & Enhancements
Fixed CSV export misalignment when certifications contained commas.
Improved handling of Chrome extension background/service worker environment.
Unified import/export logic and error handling across all pages.
Enhanced documentation and in-app guidance for bulk import/export.
✨CPE Tracker 2.13: Release Notes Stability & Performance Edition
What’s New & Improved
Major Stability Improvements
Aggressively tuned background merge and mutation settings for small servers.
Prevented CPU overloads and service interruptions, even with large log tables.
Ensured server remains responsive and reliable.
Resource Usage Controls
Set strict per-query and per-user memory limits to prevent runaway queries.
Forced large operations to spill to disk, protecting system RAM.
Automated Log Table Maintenance
Added a daily cron job to automatically truncate internal log tables (system.text_log, system.metric_log).
Prevents log bloat and surprise CPU spikes from background merges.
Comprehensive Operational Playbook
Documented all configuration changes, rationale, and when to revisit settings.
Ensures future upgrades and scaling are safe and predictable.
✨CPETracker v2.12.0 Release Notes
Date: 5/18/2025
🗂️ Index & Backend Improvements
Simplified and Updated Meilisearch Index:
The course index schema was streamlined for faster, more reliable search and filtering.
Index rebuild process improved for both development and production environments.
Enhanced compatibility between the extension and Meilisearch, reducing errors and improving performance.
🎨 UI/UX Improvements – Filters Reimagined!
Filter Experience, Rebuilt:
Dropdowns: Select from dynamic lists for Difficulty Level and Delivery Method.
Auto-complete: Instantly search and filter by Brand, Competency Area, Category, Course Type, and Program Type with smart suggestions.
Range Sliders: Effortlessly set your desired Price and CPE Hours with interactive sliders.
Clear (✕) Buttons: Instantly reset any filter—now available for every field, including dropdowns and auto-complete.
Modern, Responsive Layout: Filters are easy to use on any device, with a clean, professional look.
🛠️ Robustness & Documentation
Error Handling:
Improved error messages and handling for Meilisearch connectivity and filter resets.
Operational Playbooks:
New README for the Chrome extension, with links to operational playbooks for easy onboarding and maintenance.
Added detailed playbooks for ClickHouse and Meilisearch server configuration and operations.
🚀 Performance & Stability
Upgraded server resources and kernel parameters for ClickHouse and Meilisearch services.
Improved index rebuild and search reliability.
✨CPETracker v2.11.0 Release Notes
Date: 5/11/2025
✨ New Features
Heartbeat Analytics
Added daily heartbeat events to track active installations
Includes non-PII data: version, browser type, OS, and timezone
Helps understand user base and version distribution
🔧 Improvements
Enhanced Analytics System
Improved offline event queuing with rate limiting
Added protection against server overload
Events now process in controlled batches
Original event timestamps preserved during retries
🛡️ Technical Details
Events queue when offline
Process event batches with 1-second intervals
Queued events retry every minute
Maintains data accuracy with original timestamps
✨CPETracker v2.10.0 Release Notes
Date: 5/10/2025
✨ New & Improved
UI/UX:
Added guard clauses and defensive checks to prevent errors when allocating certifications to courses, especially for new (unsaved) courses.
Checkbox allocation logic is now robust and error-free, with no unnecessary analytics noise.
Analytics Event Structure:
All event types now use a deduplicated, ID-based structure for robust analytics and easier reporting.
Reporting Page:
Updated CSV exporting event handling for reporting.
Backend Improvements:
Enhanced error logging in the FastAPI analytics backend for easier debugging and root cause analysis.
All analytics events are now stored as valid JSON in ClickHouse.
⚡ Performance & Reliability
Added defensive checks to prevent undefined errors in the UI.
Improved ClickHouse resource management.
🐞 Bug Fixes
Fixed a bug where allocation events could cause errors for new courses.
Fixed missing or malformed analytics events for bulk imports, exports, and reporting.
Fixed UI bugs related to certification allocation and event tracking.
🎉 CPE Tracker v2.9.0 Release Notes
Date: 5/9/2025
New Features & Enhancements
Bulk Course Deletion:
Select multiple courses with checkboxes and delete them all at once.
“Select All” checkbox for fast selection/deselection.
Confirmation dialog for bulk deletes, with clear messaging.
Analytics event courses_bulk_deleted now tracks the number of courses, their IDs, and total hours deleted.
Robust Checkbox Handling:
Bulletproof event delegation ensures selection state is always in sync, even after table re-renders or filtering.
Certification Allocation Improvement:
For multi-year certifications, a course can now only be allocated to a single year per certification (radio button behavior).
Prevents accidental double-counting and ensures compliance with certification rules.
Bug Fixes & Usability:
Fixed silent bug where bulk delete would not recognize selected courses.
Fixed bulk import refresh issue.
Improved code structure for future enhancements.
How to Use the New Features
Use the checkboxes in the course table to select one or more courses.
Click “Delete Selected” to remove them in one action.
Allocate a course to a certification year—only one year per certification per course is now allowed.
🚀 CPE Tracker v2.8.0 Release Notes
Date: 5/8/2025
Major New Feature: Reporting Page
Brand New Reporting Dashboard:
Introducing a powerful, user-friendly Reporting page for deep insights into your CPE and certification progress.
Certification-centric analytics: Instantly view all courses associated with each certification, including hours, ethics, providers, and completion dates.
Live search and filtering: Quickly find certifications and toggle between active and archived records.
One-click CSV exports: Export all courses for a single certification or all certifications at once, with detailed analytics event tracking.
Bulk statistics: See total hours, course counts, and certification counts at a glance.
Visual clarity: Clean, modern tables and metadata panels for easy review and compliance tracking.
Seamless integration: All reporting actions are tracked for analytics, supporting robust organizational and personal reporting needs.
Other Features & Enhancements
Analytics & Event Tracking
Unified event structure:
All course add/edit actions use the course_added event type, with an action field (add or edit) to distinguish between them.
All course-related events now include a course_id for reliable referencing and future JOINs.
Certification and course export/import events now include detailed, consistent data (counts, arrays, and key fields).
Bulk archive, export, and import events for both courses and certifications now provide clear, structured analytics data.
Reduced data duplication:
Only course_added events include full details; other events reference by course_id.
UI/UX Improvements
Date handling standardized:
All date fields now use the MM/DD/YYYY format for input, display, and editing.
Inline editing of dates in the course table now auto-formats to MM/DD/YYYY.
Input masking and validation for date fields to prevent invalid entries.
Certification association:
Certification checkboxes and allocations are now reliably updated and saved when editing or adding courses.
Bulk actions:
Bulk import, export, and archive actions for both courses and certifications are robust and provide clear feedback.
Table rendering and editing:
All table actions (edit, delete, archive) are restored and reliable.
Visual feedback for selected rows and improved event handler attachment.
Reporting & Export
Reporting page analytics:
Export certification events now include counts and total hours, with clear, consistent field naming.
Aggregated statistics for reporting events are now explicit and easy to analyze.
Bug Fixes
Fixed issues with missing or undefined functions in popup.js, restoring all core UI functionality.
Resolved duplicate analytics events from popup/background script coordination.
Fixed memory limit issues on ClickHouse server with improved config and resource management.
Corrected date parsing and display bugs, especially for inline editing and CSV import/export.
Addressed event data inconsistencies and ensured all analytics events are properly formatted and accepted by the backend.
Fixed "Invalid Date" errors in the Reporting page for all date columns.
Technical & Infrastructure
ClickHouse server configuration updated for stability.
Improved event data structure for future-proof analytics and easier JOINs in centralized databases.
All analytics events now include user_id and course_id for reliable multi-user aggregation.
Known Issues / Next Steps
Future releases will further streamline event schemas and may introduce UUIDs for even stronger global uniqueness if needed.
🚀 CPE Tracker v2.7.0 Release Notes
Date: 4/30/2025
New Features
Enhanced Course Management
Bulk Archive by Year: Archive multiple courses at once based on completion year
Dynamic Year Selection: Years now populate based on your actual course completion dates
Improved Course Sorting: Courses are now sorted by completion date (newest first) with archived courses at the bottom
Individual Course Archive Warnings: Get notified when archiving courses linked to active certifications
Search Improvements
Added search functionality to both Courses and Certifications pages
Optimized search to focus on relevant fields
Search results maintain proper sorting and filtering
UI/UX Enhancements
Streamlined Bulk Archive section placement
Consistent styling across all sections
Improved keyboard navigation for year selection
Better visual organization of course and certification data
Bug Fixes
Fixed timezone issues affecting course year display
Resolved archived courses visibility issues
Fixed sorting problems with archived courses
Addressed various UI inconsistencies
Technical Improvements
Enhanced date handling to prevent timezone-related issues
Improved data integrity when managing archived courses
Optimized course-certification association handling
Better validation of imported data
Known Issues
None at this time
Upgrade Notes
This version includes significant improvements to course management and archiving
Users should review their archived courses after upgrade to ensure proper sorting
The new bulk archive feature may require some familiarization
🚀 CPE Tracker v2.6.1 Release Notes
Date: 4/29/2025
Major Changes
Improved CSV Import/Export for Certifications
Removed derived fields from CSV template and import process
Simplified CSV structure to include only user-input fields
Auto-calculation of derived fields during import:
Enhanced Certifications Table UI
Added visual distinction for auto-calculated fields
Improved hover tooltips to identify derived fields
Maintained consistent styling with existing editable fields
Simplified column headers for better readability
UI Improvements
Added subtle background color for derived fields
Added informative tooltips on hover for derived fields
Maintained existing hover behavior for editable fields
Improved overall table readability
Technical Changes
Updated popup.js to handle derived field calculations during CSV import
Modified CSV export to exclude derived fields
Enhanced table cell rendering to indicate calculated fields
Streamlined certification data structure
Compatibility
All existing certification data will be preserved
Existing CSV exports can still be imported
No database schema changes required
Notes
Users should download the new CSV template for future imports
Existing certifications will automatically display calculated fields
All derived values are now consistently calculated by the system
🚀 CPE Tracker v2.6.0 Release Notes
Date: 4/29/2025
Major Features & Improvements
1. Inline Table Editing
You can now edit course and certification details directly in the tables!
Click on any editable cell to make quick changes.
Press Save or Cancel (or hit Enter/Escape) to confirm or revert your edits.
The Cancel button now works reliably, never re-entering edit mode by accident.
2. UI/UX Enhancements
Column widths and alignment in both Courses and Certifications tables have been optimized for readability and consistency.
All numeric columns, date columns, and checkboxes are now center-justified for a cleaner look.
The “Annual Ethics” column is now clearly labeled as “Annual Ethics Requirement.”
Added a “Certification Details” field to the Add/Edit Certification form (for your notes, not shown in tables or dashboard).
3. Dashboard Improvements
The “Ethics Hours vs Requirement” chart and table now only show certifications that actually have an ethics requirement, reducing clutter and whitespace.
4. Bug Fixes
Fixed a long-standing issue where the Cancel button in inline editing would not work or would immediately re-enter edit mode.
Fixed date editing to accept both YYYY-MM-DD and MM/DD/YYYY formats.
Fixed CSV export for certifications to ensure correct deadline values and formatting.
Fixed column wrapping and alignment issues in all tables.
5. General Polish
Improved spacing, button styling, and overall visual consistency across the extension.
All features tested and verified for Chrome extension compatibility.
🚀 Release Notes: CPE Tracker v2.5.0
Date: 4/29/2025
Highlights
1. Consistent Bulk Import Experience
Bulk Import Certifications: Added a dedicated section for importing certifications via CSV, matching the layout and user experience of the Courses page.
Improved Button Behavior: The "Bulk Import" button for certifications now checks if a file is selected before processing, providing clear feedback if no file is chosen—just like the Courses page.
2. UI/UX Enhancements
Cleaner Layout: The "Export to CSV" button for certifications is now placed below the table, mirroring the Courses page and improving usability.
Restored Centered Form: The Add/Edit Certification form is once again centered and uses the raised, card-like appearance for a consistent look and feel.
Section Spacing: Improved spacing and alignment for all bulk import and export controls, ensuring a professional and user-friendly interface.
3. Bug Fixes
Fixed inconsistent styling and layout issues introduced in previous versions.
Ensured that all CSV import/export operations provide clear, actionable feedback to users.
CPE Tracker v2.4.0 Release Notes
Date: 4/28/2025
Major Features & Enhancements:
Certification Requirements Flexibility:
Added support for certifications with both a total multi-year CPE requirement and a minimum annual CPE requirement (e.g., ISACA certifications).
Certification form now includes an optional “Minimum CPEs Per Year” field.
Compliance logic and dashboard now enforce and display both requirements as appropriate.
Saved Certifications Table Improvements:
Replaced “Total Ethics” column with “Minimum Annual Requirement.”
Table columns reordered for clarity and user focus.
Dynamic Chart Sizing:
The “Certification Completed Hours vs Requirement” chart now dynamically expands its height based on the number of certifications and years, ensuring bars remain readable for all users.
Technical & UI:
Removed all remaining references to Algolia from the manifest and codebase.
Cleaned up and streamlined certification data handling and display logic.
CPE Tracker v2.3.0 Release Notes
Date: 4/28/2025
Major Changes:
Migrated all search and filter functionality from Algolia to Meilisearch. (Open Source for the win!)
Updated search logic, filter building, and result handling for Meilisearch compatibility.
Removed all Algolia SDK references and dependencies.
Enhancements:
Improved filter dropdown population by extracting unique values from Meilisearch results.
Streamlined codebase for easier maintenance and future updates.
Technical:
Cleaned up legacy code and removed unused scripts.
CPE Tracker v2.2.0 Release Notes
Date: 4/28/2025
New Features:
Enhanced search functionality with Algolia integration
Improved course tracking and management
Added support for multiple certification types
Streamlined user interface for better navigation
Technical Updates:
Updated manifest to version 3
Implemented secure content security policy
Added proper host permissions for Algolia services
Optimized background service worker
Security Enhancements:
Restricted script sources to self and wasm-unsafe-eval
Limited object sources to self
Added proper CSP headers
Dependencies:
Integrated Algolia search client
Added ECharts for data visualization
CPE Tracker v2.1.0 Release Notes
Date: 4/25/2025
New Features:
Initial integration with Algolia for fast, cloud-based search.
Improved UI for course and certification management.
Added support for multiple certification types and providers.
Enhancements:
Streamlined user experience for adding and tracking CPE credits.
Improved error handling and user feedback.
Updated manifest and permissions for better security.
Bug Fixes:
Fixed issues with CSV import/export.
Resolved UI glitches on popup and search pages.
Technical:
Refactored codebase for maintainability.
Added more robust data validation.
CPE Tracker v 2.0.0 Release Notes
Date: 4/23/2025
Certification Management
Removed redundant "Certification Type" field
Simplified certification duration to use "Number of Years" only
Added automatic calculation of total training requirement based on annual requirement and years
Added total ethics requirement calculation
Course Management
Fixed date formatting issues in course editing
Improved course allocation to prevent "double dipping" across years
Enhanced course association with certifications
Dashboard Features
Added comprehensive CPE tracking by year
Implemented ethics hours tracking
Added provider-based course analysis
Enhanced certification deadline tracking
Data Visualization
Added multiple interactive charts for data analysis
Implemented detailed tables for all metrics
Enhanced tooltips with detailed information
Added responsive design for all visualizations