feat: Implement Speech History Auto-Pruning / Retention Policy - #1162
Conversation
|
@Kritika200520 is attempting to deploy a commit to the itzzavdhesh's projects Team on Vercel. A member of the Team first needs to authorize it. |
✍️ DCO Sign-off NeededHey @Kritika200520! 👋 One or more commits in this PR are missing a Warning
How to fix: For the latest commit: git commit --amend --signoff
git push --force-with-leaseFor multiple commits, replace git rebase --signoff HEAD~N
git push --force-with-leaseThis comment will update automatically after you push. 🤖 VoiceForge Automation · Updates automatically on edits |
|
Warning Review limit reached
Next review available in: 54 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughAdds configurable speech-history retention for forever, session, 7-day, and 30-day policies. The implementation prunes history while preserving favorites, handles policy changes and session close, and includes backup import/export support and tests. ChangesSpeech history retention policy
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant Settings
participant LocalStorage
participant useSpeechHistory
participant pruneHistory
Settings->>LocalStorage: Save retention policy
Settings->>useSpeechHistory: Dispatch policy change
useSpeechHistory->>LocalStorage: Read history and policy
useSpeechHistory->>pruneHistory: Apply retention rules
pruneHistory-->>useSpeechHistory: Return retained entries
useSpeechHistory->>LocalStorage: Persist pruned history
Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🎉 PR Ready for Mentor ReviewHey @Kritika200520! 👋 Your PR passed all checks and is now in the GSSoC review queue. Note 🔗 Closing: #764 · 📐 486 lines across 3 file(s) · 📬 Already requested or no eligible reviewer found @sabeenaviklar @Anushreebasics @itsdakshjain @snehkris @Mrigakshi-Rathore @Itzzavdheshh @Nitya-003 @4f4d @lovestaco, this PR is ready for your review — please confirm scope, check behavior and tests, then approve or request changes. Important This is not an approval. Please wait for mentor feedback before expecting a merge. If changes are requested, push them to this same branch and keep the PR focused on the linked issue. 🤖 VoiceForge Automation · Updates automatically on edits |
There was a problem hiding this comment.
All reported issues were addressed across 3 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
sabeenaviklar
left a comment
There was a problem hiding this comment.
@Kritika200520 resolve merge conflicts
🎊 PR Merged SuccessfullyHey @Kritika200520! 👋 Congratulations and thank you for your contribution to VoiceForge! Note 🔗 Linked issue(s): #764 · ✅ Marked as merged and complete Maintainers may still handle final cleanup, release notes, or follow-up tracking after the merge. 🤖 VoiceForge Automation · Updates automatically on edits |
🚀 Program
GSSoC
📝 Description
Implement a Speech History Retention Policy setting that automatically prunes older synthesized messages from local storage after a user-defined period (7 days, 30 days, or on session close), while exempting pinned/favorite messages.
🔗 Related Issue
Closes #764
🔄 Type of Change
🧪 How to Test
npm run test -w client.✅ Checklist
feat: Implement Speech History Auto-Pruning / Retention Policy)Summary by cubic
Implements a speech history retention policy with auto‑pruning to limit local storage growth. Previously history persisted indefinitely; now users can keep it forever, for 7 or 30 days, or clear it on session close. Pinned/favorite items are always preserved.
vf_history_retention, shows a toast, and dispatchesvoiceforge:retentionPolicyChanged.useSpeechHistoryprunes viapruneHistory; for the “session” policy it clears non‑pinned items at new session start (tracked byvf_session_active) and on tab close (beforeunload).pruneHistoryutility with unit tests; tests also cover favorite handling utilities.Written for commit d3e7333. Summary will update on new commits.
Summary by CodeRabbit
New Features
Bug Fixes