Skip to content

test: verify skill install from ggwave audio end-to-end#770

Draft
JarbasAl wants to merge 1 commit into
devfrom
test/ggwave-skill-install-e2e
Draft

test: verify skill install from ggwave audio end-to-end#770
JarbasAl wants to merge 1 commit into
devfrom
test/ggwave-skill-install-e2e

Conversation

@JarbasAl

Copy link
Copy Markdown
Member

What

Add an end-to-end test (test/end2end/test_ggwave_skill_install.py) proving the data-over-sound skill-install path: a genuine ggwave waveform carrying a GHS: (GitHub-skill) payload installs a skill through ovos-core's SkillsStore.

How

Wires the real ggwave audio transformer plugin and SkillsStore onto a single bus, feeds a real ggwave waveform, and asserts the decoded payload drives ovos.skills.installpip_install(["git+https://github.com/OpenVoiceOS/skill-hello-world"])ovos.skills.install.complete. pip_install and GitHub validation are mocked, so nothing is fetched or installed. Also asserts the allow_pip=false path refuses the install.

Changes

  • New e2e test (2 cases).
  • test extra: add ovos-dinkum-listener and ovos-audio-transformer-plugin-ggwave; bump ovoscope floor to >=0.20.0 for feed_audio_stream.

Dependency ordering

Depends on the ovoscope streaming PR (OpenVoiceOS/ovoscope#86) and the ggwave plugin decode-in-pipeline PR (OpenVoiceOS/ovos-audio-transformer-plugin-ggwave#42) being released first; CI here goes green once those land.

Test plan

uv run pytest test/end2end/test_ggwave_skill_install.py -v — 2 passed locally.

🤖 Generated with Claude Code

Wire the real ggwave audio transformer plugin and SkillsStore onto a
single bus and feed a genuine ggwave waveform carrying a GHS: payload;
assert the decoded payload drives ovos.skills.install through to a pip
install request (pip and GitHub validation mocked). Also assert the
allow_pip=false path refuses the install.

Adds ovos-dinkum-listener and the ggwave plugin to the test extra and
bumps the ovoscope floor to >=0.20.0 for feed_audio_stream.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 3972f387-75c4-4fc1-ae1f-f732cd86ec3f

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/ggwave-skill-install-e2e

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 and usage tips.

@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown

I've finished my rounds! Here's the state of the PR. 🏥

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

📋 Repo Health

Keeping the project in tip-top shape! 🏃

✅ All required files present.

Latest Version: 2.1.6a1

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

🏷️ Release Preview

I've checked the 'New Features' highlight reel. 📽️

Current: 2.1.6a1Next: 2.1.6a2

Signal Value
Label (none)
PR title test: verify skill install from ggwave audio end-to-end
Bump alpha

✅ PR title follows conventional commit format.


🚀 Release Channel Compatibility

Predicted next version: 2.1.6a2

Channel Status Note Current Constraint
Stable Too new (must be <1.4.0) ovos-core>=1.3.1,<1.4.0
Testing Compatible ovos-core>=2.1.1,<3.0.0
Alpha Compatible ovos-core>=2.1.6a1

🌍 Locale Build

Just keeping you informed on the state of things. ℹ️

✅ Locale properly configured (64 files, 17 languages)

Locale directories found:

  • ovos_core/intent_services/locale

Localization coverage:

  • ovos_core/intent_services/locale: 64 files in 17 languages (eu-ES, es-es, it-it, de-de, uk-ua...)

pyproject.toml:[tool.setuptools.package-data.ovos_core] includes locale

  • intent_services/locale/*/*.voc

Build manifest: ✅ 31 locale files included in package

🔒 Security (pip-audit)

Our digital defenses have been updated. 🛡️

✅ No known vulnerabilities found (104 packages scanned).

🔨 Build Tests

I tried building your changes, and here's what happened! 🔨

Python Build Install Tests
3.10
3.11
3.12
3.13
3.14

❌ 3.10: Build OK, install failed
❌ 3.11: Build OK, install failed
❌ 3.12: Build OK, install failed
❌ 3.13: Build OK, install failed
❌ 3.14: Build OK, install failed
Check job logs for details.

⚖️ License Check

The license check is now finished. 🏁

✅ No license violations found.

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


The automation engine never sleeps. 🚂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant