Skip to content

fix(agents): prevent inference STT frame retention - #2240

Open
swayamg20 wants to merge 1 commit into
livekit:mainfrom
swayamg20:fix/2053-stt-abort-promise-retention
Open

fix(agents): prevent inference STT frame retention#2240
swayamg20 wants to merge 1 commit into
livekit:mainfrom
swayamg20:fix/2053-stt-abort-promise-retention

Conversation

@swayamg20

Copy link
Copy Markdown

Summary

  • replace the shared, long-lived abort promise in inference STT input and VAD loops with per-iteration cancellation cleanup
  • keep late iterator rejections handled after cancellation and remove abort listeners on every settlement path
  • add regression coverage for listener hygiene, rejection handling, cancellation, and garbage collection of consumed inputs

Fixes #2053

Validation

  • pnpm exec vitest run agents/src/inference/stt.test.ts --execArgv=--expose-gc — 71 passed, 1 credentialed integration test skipped
  • pnpm exec vitest run agents/src — 115 files passed; 1,588 tests passed, 6 skipped
  • pnpm build — 40 packages built successfully
  • pnpm lint — passed with 145 existing warnings outside the changed files
  • pnpm exec eslint -f unix agents/src/inference/stt.ts agents/src/inference/stt.test.ts — clean
  • pnpm format:check
  • pnpm throws:check
  • pnpm typecheck

Replace the long-lived abort race in inference STT send and VAD loops with per-iteration cancellation that removes listeners after either side settles. Cover listener cleanup, cancellation, late rejection handling, and garbage collection of consumed inputs.
@swayamg20
swayamg20 requested a review from a team as a code owner August 7, 2026 16:09
@changeset-bot

changeset-bot Bot commented Aug 7, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 3cc2e7f

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 39 packages
Name Type
@livekit/agents Patch
@livekit/agents-plugin-anam Patch
@livekit/agents-plugin-anthropic Patch
@livekit/agents-plugin-assemblyai Patch
@livekit/agents-plugin-azure Patch
@livekit/agents-plugin-baseten Patch
@livekit/agents-plugin-bey Patch
@livekit/agents-plugin-cartesia Patch
@livekit/agents-plugin-cerebras Patch
@livekit/agents-plugin-deepgram Patch
@livekit/agents-plugin-did Patch
@livekit/agents-plugin-elevenlabs Patch
@livekit/agents-plugin-fishaudio Patch
@livekit/agents-plugin-google Patch
@livekit/agents-plugin-hedra Patch
@livekit/agents-plugin-hume Patch
@livekit/agents-plugin-inworld Patch
@livekit/agents-plugin-krisp Patch
@livekit/agents-plugin-lemonslice Patch
@livekit/agents-plugin-liveavatar Patch
@livekit/agents-plugin-livekit Patch
@livekit/agents-plugin-minimax Patch
@livekit/agents-plugin-mistral Patch
@livekit/agents-plugin-mistralai Patch
@livekit/agents-plugin-neuphonic Patch
@livekit/agents-plugin-openai Patch
@livekit/agents-plugin-perplexity Patch
@livekit/agents-plugin-phonic Patch
@livekit/agents-plugin-protoface Patch
@livekit/agents-plugin-resemble Patch
@livekit/agents-plugin-rime Patch
@livekit/agents-plugin-runway Patch
@livekit/agents-plugin-sarvam Patch
@livekit/agents-plugin-silero Patch
@livekit/agents-plugin-soniox Patch
@livekit/agents-plugin-tavus Patch
@livekit/agents-plugins-test Patch
@livekit/agents-plugin-trugen Patch
@livekit/agents-plugin-xai Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant