Files
Peter Steinberger df4e6666c6 refactor(voice): promote realtime voice policy to talk owner (#122668)
* refactor(voice): promote realtime voice policy to talk owner

Move the exact-speech protocol (typed consult-call outcome instead of
string scraping), agent-proxy session instructions, and consult/wake-name/
barge-in policy defaults from the Discord plugin into src/talk, exported
additively via openclaw/plugin-sdk/realtime-voice. Wake-name enablement now
keys on a supportsActivationNameGating provider capability instead of a
hardcoded provider id. Follow-up to the voice split (#122479).

* fix(talk): bind exact-speech bypass to retained session state

Per ClawSweeper review on #122668: the protocol marker is untrusted model
tool-call text; only a parsed answer matching a currently retained
exact-speech text may select the privileged replay path. Unretained
marker calls route to a normal consult.
2026-08-12 09:44:19 -07:00
..

Generated Docs Artifacts

Generated contract files are tracked drift-detection artifacts. Full pretty snapshots remain local inspection artifacts.

Tracked (committed to git):

  • config-baseline.sha256 — hashes of config baseline JSON artifacts.
  • config-baseline.counts.json — maximum entry counts for each config baseline kind.
  • plugin-sdk-api-baseline/<entrypoint>.json — one content hash record per Plugin SDK module.
  • sqlite-session-transcript-schema-baseline.sha256 — hash of the sessions/transcripts SQLite schema baseline.

Local only (gitignored):

  • config-baseline.json, config-baseline.core.json, config-baseline.channel.json, config-baseline.plugin.json
  • plugin-sdk-api-baseline.json
  • .artifacts/sqlite-session-transcript-schema-baseline.sql

Do not edit any of these files by hand.

  • Regenerate config baseline: pnpm config:docs:gen
  • Validate config baseline: pnpm config:docs:check
  • Regenerate Plugin SDK API baseline: pnpm plugin-sdk:api:gen
  • Validate Plugin SDK API contract manifest: pnpm plugin-sdk:api:check

The Plugin SDK contract sorts modules by import specifier and exports by kind then name. Each entrypoint file hashes one module's normalized declarations and surface-reachable declaration closure hashes, so changes to different modules touch different files. Committed records omit source paths so file moves do not change the contract; origin source fields remain available in the local pretty JSON snapshot.

  • Regenerate SQLite sessions/transcripts schema baseline: pnpm sqlite:sessions-schema:gen
  • Validate SQLite sessions/transcripts schema baseline: pnpm sqlite:sessions-schema:check