Skip to content

Conversation

@JarbasAl
Copy link
Member

@JarbasAl JarbasAl commented Oct 14, 2025

Summary by CodeRabbit

  • Documentation
    • Added a new blog post introducing the OVOS Wake Word Speaker Validator plugin.
    • Explains how it works: voice enrollment, embedding creation, and real-time speaker matching after wake word detection.
    • Highlights benefits: fewer false activations, improved household security, and compatibility with lighter wake-word engines.
    • Includes usage examples, a configuration snippet, and guidance for community involvement and contributions.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

Walkthrough

Adds a new blog post describing the OVOS Wake Word Speaker Validator, covering enrollment from .wav samples, embedding generation/storage, and real-time speaker vetting after wake word detection, with configuration and usage examples.

Changes

Cohort / File(s) Summary
Blog Post
_posts/2025-11-01-ww-validator.md
New markdown post introducing a wake-word speaker validation plugin, outlining enrollment via .wav files, embedding generation/storage, runtime comparison after wake word, use cases, examples, and configuration snippet.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor User
  participant Device
  participant WakeWordEngine as Wake Word Engine
  participant Validator as Speaker Validator
  participant ASR as ASR/NLU

  rect rgba(232,245,233,0.6)
    note over Device,Validator: Enrollment (offline/setup)
    User->>Device: Provide .wav samples (enrolled speaker)
    Device->>Validator: Generate embedding(s)
    Validator->>Validator: Store embeddings in configured path
  end

  rect rgba(227,242,253,0.6)
    note over User,ASR: Runtime interaction
    User->>WakeWordEngine: Speak wake word
    WakeWordEngine-->>Device: Wake word detected
    Device->>Validator: Create embedding from wake word audio
    Validator->>Validator: Compare to enrolled embeddings
    alt Speaker match
      Validator-->>Device: Accept activation
      Device->>ASR: Stream command audio
      ASR-->>Device: Intent result
    else No match
      Validator-->>Device: Reject activation
      Device-->>User: Ignore input
    end
  end
Loading

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

A whisker twitch, a wake word said,
I bounce through bytes on soft-tread tread—
Who speaks? I check, then hop along,
If it’s you, we sing the command song;
If not, I nibble silence tight—
Secure as carrots in the night. 🥕🐇

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Title Check ⚠️ Warning The title “ww validator” is too vague and relies on an unclear acronym, so it does not clearly summarize the primary change of adding a new blog post about the OVOS Wake Word Speaker Validator plugin. It fails to convey that this PR introduces a detailed blog entry, its purpose, or its context in the project. As a result, teammates scanning the PR history may not understand its intent. Please update the title to fully describe the change, for example “Add OVOS Wake Word Speaker Validator blog post” or “Publish blog post for Wake Word Speaker Validator plugin,” using clear terms and proper capitalization.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch validator

Warning

Review ran into problems

🔥 Problems

Git: Failed to clone repository. Please run the @coderabbitai full review command to re-trigger a full review. If the issue persists, set path_filters to include or exclude specific files.


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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
_posts/2025-11-01-ww-validator.md (2)

15-15: Remove unnecessary backslash before exclamation mark

The \! escape isn’t needed and shows up in raw Markdown.

-... **OVOS Wake Word Speaker Validator\!**
+... **OVOS Wake Word Speaker Validator!**
...
-... let your assistant finally recognize its true owner\!
+... let your assistant finally recognize its true owner!

Also applies to: 53-53


29-31: Optional: link to the plugin repo/doc

Adding a link to the ovos-ww-speaker-validator repository or docs will help readers install it quickly.

If appropriate, add a link near the module name, e.g., GitHub or PyPI page for "ovos-ww-speaker-validator".

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b4a7cb0 and d562a06.

⛔ Files ignored due to path filters (1)
  • public/assets/blog/ww-validator/thumb.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • _posts/2025-11-01-ww-validator.md (1 hunks)
🔇 Additional comments (2)
_posts/2025-11-01-ww-validator.md (2)

2-11: Front matter: future-dated publish + metadata shape verification

  • The date is in the future; ensure your site is configured to publish future posts, or this won’t render until 2025‑11‑01.
  • Verify your theme expects author: { name, picture } and ogImage: { url } (some themes expect strings or different keys).

4-10: Validate asset path and OG image behavior

Confirm the image exists at /assets/blog/ww-validator/thumb.png and that your theme uses ogImage.url for social previews; otherwise, previews may break.

@JarbasAl JarbasAl marked this pull request as draft October 14, 2025 17:35
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.

2 participants