Release 0.6.4a1 - #117
Open
github-actions[bot] wants to merge 69 commits into
Open
Conversation
* Translate skill.json via GitLocalize * Translate dialogs.json via GitLocalize * Translate intents.json via GitLocalize --------- Co-authored-by: marccasadesus <marc.casadesus.bsc@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* Translate skill.json via GitLocalize * Translate skill.json via GitLocalize --------- Co-authored-by: Adina Vladu <adina.vladu@usc.es> Co-authored-by: daniferlop <danielfernandez.lopez@usc.es>
* Translate skill.json via GitLocalize * Translate dialogs.json via GitLocalize * Translate intents.json via GitLocalize --------- Co-authored-by: Goudarz Jafari <me@goudarzjafari.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Automated rename submitted by @JarbasAl via OVOS Localize. Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
Automated rename submitted by @JarbasAl via OVOS Localize. Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
…94) * feat(en-US): tighten open-vocab {application} slot with a .blacklist The {application} slot is open-vocabulary and the "open"/"close" verbs are shared with many other skills, so "open the door", "open the news", "open the camera" and anaphoric "open it" were all captured as application names. Add an application.blacklist slot-value exclusion (OVOS-INTENT-2 §4.3), wired into the padacioso fallback loader, so blacklisted values leave the slot unresolved and the utterance can reach its rightful skill (Home Assistant / PHAL, ovos-skill-news, camera, weather, power). Also consolidate the en-US launch/close templates via expansion, add the "start"/"shut down" verbs and explicit app-context phrasings ("open the app spotify"), and add regression tests for matching and exclusion. * fix: tolerate invalid locale tags and canonical {application} slot parse_desktop_file crashed when a .desktop file carried a POSIX-style locale modifier (e.g. Name[sr@latn]) that is not a valid BCP-47 tag, taking the whole skill down at startup. Keep the raw tag when it cannot be standardized instead of raising. The es-ES intents used an accented, non-canonical slot name ({aplicación}) that violates the OVOS-INTENT-2 §3.4 slot charset and no longer matched the code's "application" entity; align them with the canonical {application} slot used by every other locale. Add an ovoscope end2end suite routing launch/close utterances through the fallback pipeline, plus a unit test locking the .desktop parser fix, and declare the [test] extra (ovoscope + padacioso floor-pins). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * test(en-US): table-driven fallback intent-match e2e with negatives Replace the brittle full ordered-message skeleton with per-utterance subset assertions over the real high-priority fallback pipeline: a matched utterance must carry ovos.skills.fallback.<skill_id>.response result=True; a blacklisted or deictic phrasing must be declined (OVOS-INTENT-2 §4.3). Immune to ovos-core message-sequence drift. Covers every launch/close verb alias plus the cited blacklist over-grab exclusions. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * build: migrate to pyproject-only packaging Drop setup.py, requirements.txt and MANIFEST.in in favour of a single pyproject.toml. Version is derived dynamically from version.py's VERSION_BLOCK, the skill entry-point and test extra are preserved, and package-data bundles the locale resources (including the new en-US application.blacklist). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Submitted by @athmanemokraoui via OVOS Localize Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
Submitted by @athmanemokraoui via OVOS Localize Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
Submitted by @athmanemokraoui via OVOS Localize Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
Line 1 had translated the placeholder to {applikation}, while
line 2 in the same file correctly kept {application} unchanged -
an inconsistency within the file itself. The variable name must
match the English source exactly since the skill substitutes by
that key.
Found via ovos-localize validation while doing a general da-DK
translation review.
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Vendors the skill's slice of the shared ovoscope golden-utterance corpus (8 rows) and drives every row through a real MiniCroft, asserting the launcher fallback consumes each launch/close phrasing. Adds 8 negative utterances from other skills' domains asserted NOT claimed. All rows pass green as-is; no template defects found.
handle_async_prompt used `if not switch:` to decide whether to ask the confirm_launch prompt after confirm_switch. Since switch holds the string "no" (truthy in Python) after an explicit decline, that check was skipped and execution fell through to the unconditional self.launch_app(app) call at the end of the function - so declining the switch prompt launched a new instance anyway. The same unconditional call also fired if confirm_launch's yes/no retries were exhausted with an unclear (None) answer, launching without any explicit confirmation at all. Fix: only call launch_app when the final answer is explicitly "yes"; "no" and unclear/unanswered prompts return without launching. The confirm_switch loop above already returns on "yes", so switch can never be "yes" by the time we reach the confirm_launch loop - dropped the redundant `if switch != "yes":` guard that was reading as load-bearing but always evaluated true. Regression test tightened to assert the actual prompt sequence (["confirm_switch", "confirm_launch"]) rather than only the launch outcome, so it fails if the confirm_launch gate is reverted.
ovos-core now requires ovos-workshop>=9.3.11a1,<10.0.0, so the stale <9.0.0 cap made this skill refuse to install alongside current ovos-core (a normal install downgraded ovos-workshop to 8.x and broke core). This skill was verified loading and serving on ovos-workshop 9.3.13a1 on a live deployment. Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Automated rename submitted by @JarbasAl via OVOS Localize. Co-authored-by: ovos-localize[bot] <ovos-localize[bot]@users.noreply.github.com>
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.
Human review requested!