Skip to content

[PERF] Dual stream state always allocated regardless of provider #131

@Livezt

Description

@Livezt

Bug: Memory waste - dual stream state always created

File: src/model/streaming/normalizeStreamEvent.ts lines 21-25

return {
  anthropic: createAnthropicStreamState(),  // Always created
  openai: createOpenAIStreamState(),         // Always created
};

Issue: Both states created per stream, only one ever used based on provider.

Impact: Memory waste on every stream. ~50% memory overhead.

Recommended Fix: Lazy instantiation or factory pattern:

return provider === 'anthropic' 
  ? { anthropic: createAnthropicStreamState() }
  : { openai: createOpenAIStreamState() };

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions