Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(backup): introduce new schema to minimize backup length #333

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

jeyem
Copy link

@jeyem jeyem commented Nov 12, 2024

Enhance Backup Efficiency and Flexibility
issue 322
This PR introduces several key improvements to the backup functionality:

Compact Backup Schema:

Added a new backup schema (version 0.0.2) designed to minimize the size of backups.
This schema reduces storage requirements while maintaining data integrity and compatibility.
Enhanced createJWE Options:

Added support for specifying a master encoding key via options, enabling greater flexibility in the encryption process.
Integrated optional compression, further optimizing the storage and transfer of backups.
Testing and Documentation:

Comprehensive tests were added to validate the new schema and updated createJWE functionality.
Inline comments and JSDoc annotations have been included to clarify the implementation details.
The package was built manually and tested within the wallet application, confirming successful integration and functionality.
Feel free to review, and I’m happy to address any change requests promptly.

Checklist:

  • My PR follows the contribution guidelines of this project
  • My PR is free of third-party dependencies that don't comply with the Allowlist
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked the PR title to follow the conventional commit specification

@jeyem jeyem requested a review from a team as a code owner November 12, 2024 16:37
@jeyem jeyem force-pushed the feature/322_backup_recovery branch from f83ca83 to a83ecba Compare November 12, 2024 16:42
@jeyem jeyem marked this pull request as draft November 12, 2024 16:43
@elribonazo
Copy link
Contributor

@jeyem Very nice PR! we are going to need some time to digest, understand and validate this but great work really!

If you need some help setting up the DCO signatures on github commits please follow this link

We'll be reviewing this at some point soon, thank you!

@jeyem
Copy link
Author

jeyem commented Nov 12, 2024

@jeyem Very nice PR! we are going to need some time to digest, understand and validate this but great work really!

If you need some help setting up the DCO signatures on github commits please follow this link

We'll be reviewing this at some point soon, thank you!

@elribonazo Thank you man, I'll check the signatures issue, my work is not done yet I'll add more functions to agent like Agent.backup.createJwe to cover our backup and restore flow it was just early stage of my work I made this PR Draft for now

This commit adds a new backup schema designed to reduce the overall
length of backups. The new schema is implemented in version 0.0.2,
enhancing efficiency and reducing storage requirements.

Signed-off-by: jeyem <me@e-mahmoudi.me>
@jeyem jeyem force-pushed the feature/322_backup_recovery branch from 64cb7cc to a825bf7 Compare November 12, 2024 19:17
 - Added support for providing a master encoding key directly via options, making the method more flexible.
 - Introduced data compression for backups using optional settings to reduce size.
 - Updated related tests and fixtures to ensure comprehensive coverage of new functionality.

Signed-off-by: jeyem <me@e-mahmoudi.me>
@jeyem jeyem marked this pull request as ready for review November 19, 2024 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants