Module redaction

Module redaction 

Source
Expand description

Transcript redaction — sensitive data never reaches the lanes.

A voice caller will read card numbers, one-time passcodes, and account identifiers out loud, and speech recognition will faithfully transcribe them. Anything downstream of the transcript — callbacks, the transcript buffer, extraction, persistence snapshots, application logs — then holds that data unless it is removed first.

A TranscriptRedactor installed on the session (LiveSessionBuilder::redaction) is applied at the event router, before either lane sees the text: what the fast-lane callbacks receive, what the transcript buffer accumulates, what extractors read, and what a persistence backend stores are all the redacted form. There is deliberately no unredacted side channel.

Two limits worth knowing:

  • Streaming text deltas are not redacted. A card number can straddle delta boundaries where no single chunk matches anything. Deltas are a text-mode display stream; voice deployments should treat transcripts and TextComplete (both redacted) as the record.
  • Redaction is pattern-based, applied to each partial and final transcript independently. It removes well-formed sensitive strings; it is a complement to, not a replacement for, infrastructure-level data loss prevention on stored audio.

Structs§

TranscriptRedactor
Pattern-based transcript scrubber. Build one with the methods below and install it with LiveSessionBuilder::redaction.