Skip to content

Commit

Permalink
CommonQuery thread safety and concurrent request handling (#329)
Browse files Browse the repository at this point in the history
* faster common query (#399)

max time

report skill_id in IntentMatch

Add more commonqa test coverage
Support skill-handled speech with backwards-compat tests

More message context troubleshooting
Annotate rationale for expected context in tests

More message context troubleshooting

More message context troubleshooting

Troubleshooting message routing context
Update docstrings/type annotations

Update tests for expected context

Update message passed to `_query_timeout` for expected message data

Fix `speak` message to `reply` instead of `forward` for expected source/destination context
Add context to `speak` created messages to ensure expected context

Revert test change and update commonqa_service to match expected behavior

Update test and docs in commonQA

Update for backwards-compat.

Revert import changes to resolve init error

Update test enclosure message context to match other enclosure messages
diff with NeonCore to ensure any fixes/adjustments there are included here

Update test event order

Update expected enclosure event context to match other enclosure event context

Update tests to allow for context changes

Add test to ensure input context is unmodified

Add logging to troubleshoot test failures

Add logging to troubleshoot test failures

Allow setting CommonQuery timeouts in configuration

Update session handling

Revert invalid class/ID changes

Refactors commonqa_service to handle requests per session and implement event-based flow for thread safety

* feat/break_ties

squeeze performance

backwards compat version logs and notes

rm not needed backwards compat

        # notify about outdated skill, this can only happen if it is running in standalone mode
        # standalone mode skills can have any version of ovos-workshop >= 0.0.12a49
        # the CommonQuery base class started handling speak also in 0.0.12a49
        # (different PRs -> release automation failure ? )
        # it is impossible to load outdated common_query skills
        # for this method to trigger since ovos-core requires workshop 0.0.15

* unittests/fix message context

* reqs

* reqs

---------

Co-authored-by: JarbasAi <[email protected]>
  • Loading branch information
NeonDaniel and JarbasAl authored Jan 13, 2024
1 parent a5b6dd8 commit cdb29e2
Show file tree
Hide file tree
Showing 5 changed files with 266 additions and 146 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,4 @@ test/unittests/skills/test_skill/settings.json
test_conf.json
.pytest_cache/
/.gtm/
!/.ruff_cache/
3 changes: 2 additions & 1 deletion mycroft/skills/intent_services/commonqa_service.py
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
from ovos_core.intent_services.commonqa_service import EXTENSION_TIME, CommonQAService
from ovos_core.intent_services.commonqa_service import CommonQAService
EXTENSION_TIME = 10
Loading

0 comments on commit cdb29e2

Please sign in to comment.