Repository navigation
v3.13.9
OpReady v3.13.9
✨ Features
-
Implement chunked restore functionality for large backups
- Added support for chunked uploads of backup files exceeding 32MB limit.
- Introduced new endpoints: /api/system/restore/chunk and /api/system/restore/finalize.
- Updated existing restore logic to handle .sql and .zip files, including Knowledge Base documents.
- Enhanced rate limiting for chunk uploads.
- Updated frontend to manage chunked uploads automatically.
- Improved documentation and help content regarding backup restoration.
- Added tests for chunked restore functionality.
-
Enhance full backup restore functionality with Knowledge Base document reconciliation for S3/GCS storage
-
Implement full backup restore with knowledge base storage reconciliation
-
Add HTML sanitizer for rich text fields
- Implemented a new service for sanitizing TinyMCE-authored rich text to prevent XSS vulnerabilities.
- Added
sanitizeRichTextfunction to clean HTML input by stripping out dangerous tags and attributes. - Introduced
sanitizeQuestionStructurefunction to sanitize thedescriptionfield of questions in forms/surveys. - Created unit tests for both sanitization functions to ensure proper functionality and security.
- Added a migration to introduce a
resolver_tokencolumn in theknowledgebase_documentstable to enhance security. - Developed a script to sanitize production database copies for testing environments, ensuring no real user data is exposed.
-
Add support for linking Knowledge Base documents to skills as refresher material
- Updated UAT testing plan to include new test cases for linking and unlinking Knowledge Base documents.
- Modified API to accept
kb_document_idfor skills, allowing optional linking to refresher materials. - Enhanced validation to ensure proper handling of
kb_document_id. - Updated mailer service to include refresher material links in notifications for expiring skills.
- Added UI components for selecting and displaying linked Knowledge Base documents in the skills management interface.
- Implemented database migration to add
kb_document_idcolumn to the skills table. - Created tests to verify the functionality of the new refresher material feature in member notifications and skills management.
-
guide-builder: Implement PDF generation for Quiz Games guide
- Add pdf-renderer.js to handle rendering HTML content to PDF using Playwright.
- Introduce prepare-db.js for creating a disposable demo database for guide generation.
- Create capture.js to drive the Quiz Games lifecycle with Playwright, capturing screenshots at each step.
- Develop content.js to generate narrative content for the Quiz Games PDF guide.
- Update scripts/scripts.md with documentation on the new guide-building framework and usage instructions.
-
Add PDF rendering and quiz capture functionality for guide builder
- Implemented pdf-renderer.js to render HTML guides to PDF using Playwright.
- Created prepare-db.js to prepare a disposable demo database for quiz sessions.
- Developed capture.js to drive a real OpReady instance through the quiz lifecycle, capturing screenshots at each step.
- Added content.js to generate narrative content for the Quiz Games PDF guide, structuring it into sections and parts.
-
Add example quiz games seeding to demo database script
🔀 Other Changes
-
Add Penetration Test Report (Pass 4) for OpReady application
This commit introduces a comprehensive security assessment report detailing findings from the fourth penetration test of the OpReady application. The report includes an executive summary, scope and methodology, re-verification of previous findings, and a detailed account of new vulnerabilities identified during the assessment. Key highlights include the remediation status of prior findings, the discovery of new high-severity issues, and recommendations for immediate fixes to enhance application security.
Full Changelog: v3.13.0...v3.13.9