Skip to content

fix: answer "how many languages" in query_langs; move the eu-ES singular language - #91

Merged
JarbasAl merged 1 commit into
devfrom
fix/intent-confusion
Oct 22, 2026
Merged

JarbasAl merged 1 commit into
devfrom
fix/intent-confusion

Conversation

@JarbasAl

@JarbasAl JarbasAl commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

🤖 Auto-generated by Claude Sonnet 5.5 (claude-sonnet-5-5) via Claude Code — NOT human-reviewed. Verify before acting.

The easter egg's "languages" intent conflicted with query_langs. Diagnostics now owns those phrasings.

  • Added the easter egg's phrasings to query_langs in 15 locales, merged into existing alternations.
  • Moved the eu-ES singular-language sentences to query_primary_lang.
  • Added two moved golden rows (en-US).

Tested: no sentence shared between intents; suite passes. Known gaps recorded for the published model (pl-PL, ru-RU); they flip after retrain.

Merge together with OpenVoiceOS/ovos-skill-easter-eggs#134.

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: bf80d7ea-ce3b-4fe6-9665-e8854449a1a6
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Checking the status... all automated tasks are done! ✅

I've aggregated the results of the automated checks for this PR below.

🧪 Spec Lint

Here's the report you've been waiting for. 📁

✅ 0 error(s), 0 warning(s)

🔍 Lint

Ensuring the codebase remains stable and healthy. 🛡️

❌ ruff: issues found in 11 file(s) — see job log
✅ actionlint: 12 workflow file(s), no finding

🏷️ Release Preview

Here's what the next release might look like! 🚀

Current: 0.4.0a3 → Next: 0.4.1a1

Signal Value
Label fix
PR title fix: answer "how many languages" in query_langs; move the eu-ES singular language
Bump build

✅ PR title follows conventional commit format.


🚀 Release Channel Compatibility

Predicted next version: 0.4.1a1

Channel Status Note Current Constraint
Stable ❌ Too new (must be <0.1.0) ovos-skill-diagnostics>=0.0.8,<0.1.0
Testing ✅ Compatible ovos-skill-diagnostics>=0.0.8,<1.0.0
Alpha ✅ Compatible ovos-skill-diagnostics>=0.4.0a3

📋 Repo Health

Checking if we're following maintenance best practices. 📏

✅ All required files present.

Latest Version: 0.4.0a3

✅ version.py — Version file
✅ README.md — README
✅ LICENSE — License file
✅ pyproject.toml — pyproject.toml
⚠️ setup.py — setup.py
✅ CHANGELOG.md — Changelog
✅ version.py has valid version block markers

🎙️ Skill

A linguistic and structural check of your skill. 📚

ℹ️ Not an OVOS skill repo — check skipped.

🔒 Security (pip-audit)

Checking the vault for any security leaks. 🔓

✅ No known vulnerabilities found (82 packages scanned).

⚖️ License Check

A detailed legal audit of your PR. 📖

✅ No license violations found.

Policy: Apache 2.0 (universal donor). StrongCopyleft / NetworkCopyleft / WeakCopyleft / Other / Error categories fail. MPL allowed.

🔨 Build Tests

A thorough inspection of the build process. 🔍

✅ All versions pass

Python Build Install Tests pytest
3.10 ✅ ✅ ✅ 34 passed in 9.03s
3.11 ✅ ✅ ✅ 34 passed in 7.68s
3.12 ✅ ✅ ✅ 34 passed in 8.79s
3.13 ✅ ✅ ✅ 34 passed in 5.72s
3.14 ✅ ✅ ✅ 34 passed in 5.70s

🔌 Skill Tests (ovoscope)

I ran the end-to-end skill tests to see how your skill behaves in the real world! 🎤

✅ 65/67 passed

✅ TestM2VDiagnosticsGoldenEffect — 7/7
✅ TestM2VRegisteredLabelRouting — 1/1
✅ TestNoMatch — 2/2
✅ TestQueryCpuUsage — 2/2
✅ TestQueryExtraLangs — 2/2
✅ TestQueryGpu — 2/2
✅ TestQueryKernelVersion — 3/3
✅ TestQueryLangs — 2/2
✅ TestQueryMemoryUsage — 2/2
✅ TestQueryOvosLocation — 2/2
✅ TestQueryPrimaryLang — 3/3
✅ TestQueryUserLang — 2/2
✅ TestQueryUserLocation — 2/2
✅ test_every_shipping_locale_has_a_golden_file — 1/1
✅ test_golden_rows_match_their_intent[ca-ES] — 1/1
✅ test_golden_rows_match_their_intent[da-DK] — 1/1
✅ test_golden_rows_match_their_intent[de-DE] — 1/1
✅ test_golden_rows_match_their_intent[en-US] — 1/1
✅ test_golden_rows_match_their_intent[es-CO] — 1/1
✅ test_golden_rows_match_their_intent[es-ES] — 1/1
✅ test_golden_rows_match_their_intent[eu-ES] — 1/1
✅ test_golden_rows_match_their_intent[fa-IR] — 1/1
✅ test_golden_rows_match_their_intent[fr-FR] — 1/1
✅ test_golden_rows_match_their_intent[gl-ES] — 1/1
✅ test_golden_rows_match_their_intent[it-IT] — 1/1
✅ test_golden_rows_match_their_intent[kab] — 1/1
✅ test_golden_rows_match_their_intent[nl-NL] — 1/1
✅ test_golden_rows_match_their_intent[oc-FR] — 1/1

❌ **test_golden_rows_match_their_intent[pl-PL]** — 0/1
Test Result
test_golden_rows_match_their_intent[pl-PL] ❌ xfailed

test_golden_rows_match_their_intent[pl-PL] failure:

f"[{lang}] {rate:.1%} of rows match, at the gate: remove its GOLDEN_LOCALE_GAPS entry"
            )
>           pytest.xfail(f"[{lang}] measured {rate:.1%}; known gap: {reason}")
E           _pytest.outcomes.XFailed: [pl-PL] measured 79.5%; known gap: published m2v model predates these templates; remove after retrain; 8 of 39 rows miss: 'na jakiej wersji jądra linuksa pracujesz' (none), 'ile mam jeszcze wolnej pamięci masowej' (query_memory_usage), 'czy to urządzenie ma gpu' (query_ovos_location), 'na jakim jądrze działasz' (query_uptime), 'jakimi językami się posługujesz' (query_user_lang), 'w jakim języku zwykle mówisz' (query_extra_langs), 'od ilu godzin jesteś włączony' (none), 'kiedy był twój ostatni restart' (none)

test/end2end/test_golden_utterances.py:148: XFailed
✅ **test_golden_rows_match_their_intent[pt-BR]** — 1/1 ✅ **test_golden_rows_match_their_intent[pt-PT]** — 1/1
❌ **test_golden_rows_match_their_intent[ru-RU]** — 0/1
Test Result
test_golden_rows_match_their_intent[ru-RU] ❌ xfailed

test_golden_rows_match_their_intent[ru-RU] failure:

ATCH_RATE, (
                f"[{lang}] {rate:.1%} of rows match, at the gate: remove its GOLDEN_LOCALE_GAPS entry"
            )
>           pytest.xfail(f"[{lang}] measured {rate:.1%}; known gap: {reason}")
E           _pytest.outcomes.XFailed: [ru-RU] measured 79.5%; known gap: published m2v model predates these templates; remove after retrain; 8 of 39 rows miss: 'протестируй процессор' (none), 'какие ещё языки ты используешь кроме основного' (none), 'есть ли у тебя графический процессор' (query_cpu_usage), 'ты используешь видеокарту' (none), 'на каком ядре ты работаешь' (none), 'на каком языке ты обычно говоришь' (query_user_lang), 'когда тебя последний раз перезагружали' (none), 'какой язык мы сейчас используем' (query_primary_lang)

test/end2end/test_golden_utterances.py:148: XFailed
✅ **test_golden_rows_match_their_intent[sv-SE]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[ca-ES]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[da-DK]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[de-DE]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[en-US]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[es-CO]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[es-ES]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[fr-FR]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[gl-ES]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[it-IT]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[nl-NL]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[pl-PL]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[pt-BR]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[pt-PT]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[ru-RU]** — 1/1 ✅ **test_negative_rows_match_no_intent_of_this_skill[sv-SE]** — 1/1

🚌 Bus Coverage

Ensuring every intent and event is reached by the test suite. 🎯

⚠️ Bus coverage report unavailable — check the job log.

📊 Coverage

Test coverage audit: no stone left unturned. 🗿

✅ 91.2% total coverage

Per-file coverage (2 files)
File Coverage Missing lines
version.py 0.0% 5
__init__.py 95.4% 5

Full report: download the coverage-report artifact.


Thanks for making OVOS better today! 🙌

@github-actions github-actions Bot added the fix label Oct 17, 2026
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from 09445ce to 82fbcfa Compare October 17, 2026 14:01
@JarbasAl JarbasAl changed the title fix: keep "which language are you using" out of query_langs in eu-ES fix: leave "how many languages" and the eu-ES singular language to their owners Oct 17, 2026
@github-actions github-actions Bot added fix and removed fix labels Oct 17, 2026
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from 82fbcfa to f02cdd8 Compare October 17, 2026 14:29
@github-actions github-actions Bot added fix and removed fix labels Oct 17, 2026
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from f02cdd8 to a3221a4 Compare October 17, 2026 15:33
@github-actions github-actions Bot added fix and removed fix labels Oct 17, 2026
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from a3221a4 to 1f35be7 Compare October 18, 2026 02:01
@JarbasAl JarbasAl changed the title fix: leave "how many languages" and the eu-ES singular language to their owners fix: answer "how many languages" in query_langs; drop the eu-ES singular language Oct 18, 2026
@github-actions github-actions Bot added fix and removed fix labels Oct 18, 2026
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from 1f35be7 to 6fcad7c Compare October 18, 2026 02:46
@JarbasAl JarbasAl changed the title fix: answer "how many languages" in query_langs; drop the eu-ES singular language fix: answer "how many languages" in query_langs; move the eu-ES singular language Oct 18, 2026
@github-actions github-actions Bot added fix and removed fix labels Oct 18, 2026
…lar language

The easter egg's languages intent is removed, so query_langs takes over its
phrasings in the 15 locales it covered ("how many languages do you speak",
"languages do you speak", and the per-locale equivalents); each sentence has one
owner across both skills. The eu-ES singular-language sentences ("zein hizkuntza
erabiltzen ari zara", "zein hizkuntzatan hitz egiten duzu") belong to
query_primary_lang. Two easter-egg golden rows move to the en-US golden file.
The pl-PL and ru-RU golden gaps are recorded as strict expected failures for the
published m2v model.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@JarbasAl
JarbasAl force-pushed the fix/intent-confusion branch from 6fcad7c to b11af11 Compare October 18, 2026 02:51
@JarbasAl
JarbasAl marked this pull request as ready for review October 22, 2026 14:37
@JarbasAl
JarbasAl merged commit 3cd6a16 into dev Oct 22, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant