# HyperTwist Phase 6R-G piper local narration sidecar implementation packet

Created on `2026-05-22`

## Status

- first-party HyperTwist packet
- bounded permissive `Phase 6R-G` implementation slice

## Purpose

This packet lands the first narrower bounded slice from the retained `rhasspy/piper` voice-output row.

The landed slice is:

- first-party local narration sidecar contract above the existing embodied companion narration lane

It is not:

- a broad TTS platform packet
- a downloadable voice-asset packet
- a provider-profile or BYOK packet
- a viseme / gesture runtime packet
- a `coqui-ai/TTS` widening packet

## Current authority basis

This implementation packet stands on:

- `docs/HYPERTWIST_PHASE_0R_PACKET_0R_A_EVALUATION_2026-05-12.md`
- `docs/HYPERTWIST_PHASE_2R_PACKET_2R_A_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md`
- `docs/REPO_LICENSE_TRACKING.md`
- `docs/ops/HYPERTWIST_PROVIDER_NEUTRALITY_AND_BYOK_DOCTRINE_2026-05-21.md`
- `docs/arch/HYPERTWIST_PHASE6R_G_PIPER_LOCAL_NARRATION_SIDECAR_PREPARATION_PACKET_2026-05-22.md`

The retained owner remains:

- `rhasspy/piper`

The top-level provider and companion contract owner does not change here:

- first-party HyperTwist remains the provider-neutral and companion-contract owner
- this packet keeps `rhasspy/piper` bounded to the narrower `A1 / R1 / F2` local narration sidecar slice

## Landed scope

The current code now owns a retained local narration sidecar contract through:

- retained recognition contract types for:
  - `FHyperTwistVoiceProfileSummary`
  - `FHyperTwistVoiceProfileCatalog`
  - `FHyperTwistNarrationSynthesisRequest`
  - `FHyperTwistNarrationSynthesisResult`
  - `FHyperTwistVoiceServiceHealth`
- sample voice-profile, narration-request, narration-result, and service-health outputs in:
  - `UHyperTwistContractLibrary`
- direct-donor voice client seam in:
  - `UHyperTwistMockVoiceClient`
  - `UHyperTwistHttpVoiceClient`
- first-party config defaults for the bounded local voice sidecar lane in:
  - `DefaultGame.ini`
- focused automation coverage in:
  - `HyperTwistPiperPhase6RGLocalNarrationContractTest.cpp`

## Why this is still intentionally bounded

This packet lands the first voice-output donor seam, but it does not widen into the neighboring retained families.

Still deferred:

- downloadable voice/model review
- bundled voice asset shipping
- rich playback runtime ownership
- viseme / gesture runtime integration
- provider-profile and BYOK custody
- broad assistant-platform scope
- `coqui-ai/TTS`

## Validation

Build validation:

- `Build.bat UnrealHyperTwistEditor Win64 Development -Project='C:\HyperTwist\UnrealHyperTwist\UnrealHyperTwist.uproject' -WaitMutex -NoHotReloadFromIDE`

Focused automation validation:

- `Automation RunTests HyperTwist.Permissive.Piper.Phase6R.G`

Regression automation validation:

- `Automation RunTests HyperTwist.Permissive.FasterWhisper.Phase6R.F`
- `Automation RunTests HyperTwist.Permissive.WhisperCpp.Phase6R.E`
- `Automation RunTests HyperTwist.CleanRoom.CubeDesk`

Expected covered tests:

- `NarrationRequest`
- `SynthesisResult`
- `ServiceHealth`
- `TranscriptMetadata`
- `SessionConfig`
- `TranscriptResult`
- existing `CubeDesk` clean-room regression suite

## Queue effect

This packet consumes the current `Phase 6R-G` implementation slice.

`rhasspy/piper` remains only partially incorporated:

- landed now:
  - local voice-profile catalog normalization
  - narration synthesis request/result contract
  - mock and HTTP local sidecar voice-client seam
  - local voice service-health exposure
- still deferred:
  - downloadable voice/model review
  - bundled voice asset shipping
  - rich playback runtime ownership
  - viseme / gesture runtime integration
  - broad assistant-platform scope

The next clean move is:

- source-backed `Phase 6R-H` `coqui-ai/TTS` preparation/control pass

Keep the future sequencing guards visible:

- speech-input / voice sidecar set
  - keep code-license judgments separate from model, voice, and payload-license review
- `rhasspy/piper`
  - keep it bounded to the local narration sidecar seam rather than broad voice-platform ownership
- `coqui-ai/TTS`
  - keep future downloadable voice/model review separate from the code-license judgment
