Skip to content
This repository was archived by the owner on Apr 18, 2026. It is now read-only.
This repository was archived by the owner on Apr 18, 2026. It is now read-only.

fix(completions): migrate to open_responses 0.1.5 API #177

@91jaeminjo

Description

@91jaeminjo

Problem

soliplex_completions is pinned to open_responses: 0.1.4 because 0.1.5 introduced breaking changes that break compilation of open_responses_llm_provider.dart. Currently pinned as a workaround.

Error 1: List<Item> no longer assignable to input

Lines 132, 175, 218, 246 pass List<Item> to CreateResponseRequest(input: ...). In 0.1.5, input changed from List<Item> to a sealed ResponseInput type.

Error 2: callId removed from streaming events

Lines 306, 314 destructure callId from FunctionCallArgumentsDeltaEvent and FunctionCallArgumentsDoneEvent. In 0.1.5, callId was removed — only itemId remains. The callId is now only on FunctionCallOutputItemResponse (via OutputItemAddedEvent).

Fix

Detailed plan: docs/plans/fix-open-responses-0.1.5.md

Fix 1: Wrap List<Item> in ResponseInput.items() at 4 call sites.

Fix 2: Make _mapStreamingEvent stateful — track itemId → callId mapping from OutputItemAddedEvent, use it in delta/done events, clear on ResponseCompletedEvent.

File to change

packages/soliplex_completions/lib/src/open_responses_llm_provider.dart

After fix

  • Unpin open_responses from 0.1.4 back to ^0.1.5 in packages/soliplex_completions/pubspec.yaml
  • Verify: dart analyze and dart test in both soliplex_completions and soliplex_agent

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions