Architecture Overhaul , Stability Fixes and CUI Speech Checks #11
Open
Filipedavila wants to merge 32 commits intoqualweb:developfrom
Open
Architecture Overhaul , Stability Fixes and CUI Speech Checks #11Filipedavila wants to merge 32 commits intoqualweb:developfrom
Filipedavila wants to merge 32 commits intoqualweb:developfrom
Conversation
…now produces actions as output, new speech tests
Establishes a single source of truth for error management across sidepanel, background, and content scripts. Includes predefined message handlers to standardize communication.
- Replace Singletons with Factory patterns to improve testability. - Implement immutability across core content components. - Rename and refactor OOP structures for better domain clarity.
- Replace raw text payloads with structured Action objects from background agents. - Decouple interaction logic from message listeners. - Improve modularity by isolating action execution from transport logic.
…vity - Restructured project hierarchy for better domain isolation. - Introduced Signal logic for granular state management. - Optimized Mutation Objects to improve state predictability. - Added a centralized AbortController manager to handle task cancellation.
- Replace Singletons with Factory patterns to improve testability. - Implement immutability across core content components.
Updated content handlers to use factory-instantiated core components.
- Connected Vue's global error hook to the centralized error management system.
- Changed Background port handlers from async to sync to avoid context invalidation. - Added explicit success message from Background to Content on skip events. - Fixed 'ActionHandlerRegistry' to gracefully handle aborted signals without throwing. - Ensured 'isSkipping' state resets correctly by resolving the pending promise.
Improvment on handling system for sidepanel
…on and improvment of ui on skip objective
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.
PR: Architecture Overhaul , Stability Fixes and CUI Speech Checks
Summary
This PR covers the transition from a more a structured, action-based engine. I’ve refactored the core to handle complex interaction flows and fixed the persistent "context invalidated" and "uncaught promise" errors we were seeing.
Additionally, a new suite of Speech Tests has been integrated to evaluate voice-based interactions.
Major Changes
Decoupled Architecture
Replaced singletons with Factory patterns. This makes the code immutable, significantly improves testability, and follows SOLID principles for better domain isolation.
Centralized Error Handling
Created a Single Source of Truth for errors. The Sidepanel, Background, and Content scripts now handle failures through a unified registry, ensuring consistent state across all extension components.
Action-Based Engine
The system now processes structured Action Objects instead of raw text. This decoupling allows for more complex agent behavior and better validation of interaction payloads.
Reliable Skip/Cancel Logic
Implemented centralized AbortController management. Skipping an objective now resets the internal state correctly, preventing UI hangs or loop breaks during user interruptions.
Communication & Resilience
rejectmechanism for failed background messages to ensure the UI remains responsive even on failure.Extras