Skip to content

Echo — local record-and-send speech through Graph #48

Description

@zenithruneblade

Outcome

One local record-and-send voice journey reaches its Graph outcome with visible capture, cancellation and audio custody.

Next planning checkpoint: Iter. This is the earliest scope/review conversation, not an assignment or a promise to finish the whole outcome in that week. Selected work starts at #52.

Remaining acceptance

  • Qualify the exact speech capability registration/admission this journey needs. The broader typed-service substrate from Capabilities — admit one typed non-model service #42 remains in Future capability register — preserved outcomes and selection boundaries #62; replacing its planning issue does not supply that capability.
  • Pin one supported local runtime and exact Ear/Voice profiles under ADR 37; register typed operations, probes, language capabilities and Rune configuration through Capabilities — admit one typed non-model service #42.
  • Add explicit bounded record/upload input and authorized artifact custody; validate codec, duration and size, preserving transcript/source provenance.
  • Run transcription → Agent reply → requested synthesis through Graph with real bytes; retain only references in durable state and distinguish generated audio from delivered/played audio.
  • Verify unsupported language, failed decode, cold runtime, cancellation and failed delivery without silent translation, provider substitution or remote fallback.

Keep the first voice journey bounded. The exact first interface/device is selected with the common task; this is not an implicit requirement to finish phone, Discord and Minecraft voice together.

Evidence and handoff

Start from current State of Work and its linked source/tests and owning ADRs. The linked original acceptance remains binding unless a named replacement outcome records its disposition. Detailed scope, negative cases and dated campaign evidence are preserved in preserved scope and evidence; historical evidence does not establish current qualification on its own. Any accepted requirement not selected for this profile needs an explicit route in #62 before this issue closes.

Choose one small implementation or verification slice when this outcome is admitted. Record the responsible contributor, exact profile/revision, observed result, failure/unknown boundary and next checkpoint. The founder reviews and approves all code for this campaign; merge and promotion follow CONTRIBUTING.

Activity

  1. added
    area:runtimeAgents, Graph, dispatch, orchestration, capabilities and workers.
    needs-designAn issue-specific implementation choice remains open; see Open decision.
    on Sep 18, 2026
  2. added
    help wantedActive contribution call for the named scope or host evidence; may require deep experience.
    and removed
    help wantedActive contribution call for the named scope or host evidence; may require deep experience.
    on Sep 18, 2026
  3. zenithruneblade commented on Nov 6, 2026

    @zenithruneblade
    ContributorAuthor

    Planning reset — 6 November 2026. The original acceptance below remains binding unless a named replacement outcome records its disposition. This is a preserved historical body, not a fresh capability/qualification claim.

    Original issue scope and dated evidence before the planning reset

    Record one bounded utterance, transcribe it locally, obtain an Agent reply, and synthesize the reply only when explicitly requested.

    Starting point: Audio admission now includes an unregistered PCM-WAV validation helper and a trusted local custody seam; selectable STT/TTS grants and the complete conversation path remain absent.

    First working slice

    • Pin one supported local runtime and exact Ear/Voice profiles under ADR 37; register typed operations, probes, language capabilities and Rune configuration through Capabilities — admit one typed non-model service #42.
    • Add explicit bounded record/upload input and authorized artifact custody; validate codec, duration and size, preserving transcript/source provenance.
    • Run transcription → Agent reply → requested synthesis through Graph with real bytes; retain only references in durable state and distinguish generated audio from delivered/played audio.
    • Verify unsupported language, failed decode, cold runtime, cancellation and failed delivery without silent translation, provider substitution or remote fallback.

    Connections: Uses #23, #42, #5/#8 and #6/#7. Owns the minimal Bridge recording/playback affordance alongside #11; shared runtime acceptance belongs to #50, before #16/#17 policy expansion.

    Later: Streaming, full-duplex, interruption/barge-in and broader models. This stage remains record-and-send and uses the first admitted local runtime profile.

    References: ADR 37 · ADR 21 · ADR 22.

    Contribution entry: Contribute the bounded recording/custody path or the first transcription adapter.
    Open decision: Agree the first Ear runtime/profile, codecs, languages and byte/duration limits jointly with #21/#42 and #50's host scenario. Confirm #23's artifact-reference boundary before forwarding bytes. Recording/custody, transcription and synthesis can land separately. Issue acceptance covers both text-only replies and explicitly requested synthesized replies.
    Verification: Audio fixtures without GPU; named local profile for live acceptance. Shared contribution and touched-docs rules: #52.

    Delivery review — 12 October 2026

    Published source: a913bff.

    Audio now includes an unregistered canonical PCM-WAV validation helper and trusted local custody with bounded bytes, digest/identity checks, quarantine admission, fresh reads and cleanup tests. No selectable Echo capture/upload-to-Graph transcription, synthesis or delivery path is delivered. Complete the original local record-and-send journey, cold activation, cancellation and cleanup acceptance; Android handset qualification is a separate client boundary. Handset lifecycle/audio qualification is tracked separately in #77.

    Delivery evidence

  4. removed
    needs-designAn issue-specific implementation choice remains open; see Open decision.
    on Nov 6, 2026
  5. removed this from the Local multimodal milestone on Nov 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:runtimeAgents, Graph, dispatch, orchestration, capabilities and workers.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions