perf(log-panel): use VecDeque for O(1) log pruning#80
Open
SH20RAJ wants to merge 3 commits intomofa-org:mainfrom
Open
perf(log-panel): use VecDeque for O(1) log pruning#80SH20RAJ wants to merge 3 commits intomofa-org:mainfrom
SH20RAJ wants to merge 3 commits intomofa-org:mainfrom
Conversation
Fix typo 'setings' -> 'settings' in the benefits section of TabId enum documentation.
Replace panic-based error handling with Result-based error propagation and recovery mechanisms to prevent runtime crashes. Changes: - node-hub/dora-funasr-nano-mlx/src/main.rs: Handle engine None case gracefully - apps/mofa-asr/src/screen/mod.rs: Recover from poisoned mutexes in ChatController - mofa-dora-bridge/src/parser.rs: Use expect with descriptive message in test - node-hub/dora-gpt-sovits-mlx/src/ssml.rs: Use expect in test This addresses issue mofa-org#41.
- Replace Vec<String> with VecDeque<String> for log buffers - Replace front drain operations with pop_front loops - Add 5000-entry retention cap to mofa-debate logs - Keep display/filter behavior unchanged Addresses mofa-org#40
Author
|
Implemented VecDeque-based O(1) front-pruning for log buffers in mofa-fm, mofa-asr, and mofa-debate, plus a retention cap for debate logs. Please review. |
Author
|
Checked status: this PR is pending maintainer review/merge from upstream maintainers. I’m available to address feedback quickly. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes log-panel pruning performance across MoFA apps by replacing front-drain patterns on with queue semantics using .
What changed
Why
triggers O(n) shifts and can cause periodic UI-thread spikes once buffers are full. Queue-based pruning avoids repeated full shifts and keeps eviction cost effectively O(1) per item.
Notes
Closes #40