Skip to content

AUDIO-IN-1: listening lifecycle signals (ovos.mic.*)#69

Merged
JarbasAl merged 2 commits into
devfrom
spec/audio-in-listening-lifecycle
Jun 25, 2026
Merged

AUDIO-IN-1: listening lifecycle signals (ovos.mic.*)#69
JarbasAl merged 2 commits into
devfrom
spec/audio-in-listening-lifecycle

Conversation

@JarbasAl

Copy link
Copy Markdown
Member

Adds the listener-role bus signals to OVOS-AUDIO-IN-1 (audio-in.md, class V2) under V2 ovos.* names. New ## 6. Listening lifecycle signals section placed before Conformance (Conformance renumbered §6 → §7).

New topics

Topic Replaces (legacy) Emitter Semantics
ovos.mic.record.started recognizer_loop:record_begin audio-input service voice-command capture began
ovos.mic.record.ended recognizer_loop:record_end audio-input service capture ended; pairs with started
ovos.mic.sleep recognizer_loop:sleep controller (e.g. naptime) → audio-input enter sleep mode; suspend capture
ovos.mic.awoken mycroft.awoken audio-input service left sleep mode (sleep→awake only)

All carry no payload; the session is identified by context.session.session_id. The §6.5 bus surface table includes a consumer-side row for ovos.mic.listen, whose defining spec is OVOS-AUDIO-1 §4.4 (owned by PR #38) — referenced here, not redefined.

Companion edits (repo conventions)

  • CHANGELOG.md — extends ## OVOS-AUDIO-IN-1 under ### 2; class unchanged. Version header == CHANGELOG ### 2 == README class 2 triple holds.
  • appendix/divergences.md — legacy→ovos.mic.* migration table (non-normative).
  • GLOSSARY.md — adds "Listening lifecycle signal" → AUDIO-IN-1 §6.
  • README.md — no change (AUDIO-IN-1 already at class 2).

Scope / conflicts

Single-file-1-PR satisfied: only audio-in.md is the spec touched (plus CHANGELOG/appendix/GLOSSARY conventions). PR #38 owns audio-out.md / AUDIO-1 and already defines ovos.mic.listen and the audio-OUTPUT lifecycle — not touched or redefined here.

Add the listener-role bus signals to the Audio Input Service spec under
V2 ovos.* names: ovos.mic.record.started / .record.ended around
voice-command capture, ovos.mic.sleep to suspend capture, and
ovos.mic.awoken on the sleep->awake transition. All carry no payload;
the session is identified by context.session.session_id.

Adds a §6.5 bus surface table including the consumer-side ovos.mic.listen
row, whose defining spec is OVOS-AUDIO-1 §4.4. Conformance and See-also
updated; Conformance renumbered §6 -> §7.

CHANGELOG extends OVOS-AUDIO-IN-1 under ### 2 (class unchanged).
divergences appendix records the legacy -> ovos.mic.* migration.
GLOSSARY gains the "Listening lifecycle signal" term.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 25, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@JarbasAl, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 27 minutes and 39 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more credits in the billing tab to continue.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4bba9584-bd00-46ba-9178-90d4b15edfe5

📥 Commits

Reviewing files that changed from the base of the PR and between 9d801a6 and ac9aaf0.

📒 Files selected for processing (4)
  • CHANGELOG.md
  • GLOSSARY.md
  • appendix/divergences.md
  • audio-in.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch spec/audio-in-listening-lifecycle

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.

ovos.listener.record.started/ended, ovos.listener.sleep, ovos.listener.awoken.
ovos.mic.listen is unchanged — it is defined by OVOS-AUDIO-1 §4.4 and only
referenced here on the consumer side.
@JarbasAl JarbasAl marked this pull request as ready for review June 25, 2026 15:58
@JarbasAl JarbasAl merged commit bcaa32b into dev Jun 25, 2026
1 check was pending
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