Skip to content

bug: structured question data is lost from provider tool-call timelines #7012

Closed as not planned

Description

@luoph

What's broken

Codex async questions lose their structured questions, options, and answer mapping in the tool-call timeline. The permission form receives the original data, but the settled timeline item only contains a joined plain-text transcript. Timeline consumers cannot reconstruct the original choices, selected state, or question boundaries reliably. OMP, Pi, and OpenCode question tools can similarly lose their original arguments when their native detail is reduced to plain text.

Steps to reproduce

  1. Start a Codex session in Paseo and call request_user_input_async with two choice questions and one free-text question.
  2. Answer the questions.
  3. Inspect the resulting tool_call item passed to a timeline transformer.
  4. Observe detail.type=plain_text with joined question/answer lines and no metadata.questions or metadata.answers. The original choices are no longer available to the renderer.

A minimal provider-level reproduction is CodexAsyncQuestions.receive({type: "agentMessage", id: "q1", delivery: "async", questions: [{title: "Which platform?", options: ["iOS", "Web"]}]}), followed by prepareResponse(...).complete().

Expected behavior

Keep the original structured questions, keyed answers, and pending/answered/dismissed state available in existing optional timeline metadata. Preserve the native detail for existing consumers. Question tools from other supported providers should retain their original question input and result details when native summaries replace their tool arguments.

Where did this happen

Daemon / timeline transformer API, observed through a desktop question transcript preview.

Paseo version

0.11.2. Also reproduced in provider regression tests rebased onto upstream main 0708b82.

OS / provider

macOS; Codex request_user_input_async. Additional mapper-level cases: OMP, Pi, OpenCode. No production daemon was changed or restarted for the proposed fix.

Scope

This report concerns lost timeline data. It does not request a particular question-card design or a new client protocol schema.

Activity

  1. paseo-bot commented on Oct 15, 2026

    @paseo-bot
    Contributor

    Thanks for writing this up. I'm closing it because issues here are for bugs; ideas get read in Discussions.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    triagedReviewed by maintainer triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions