Skip to content

conversation did not complete #142

@wasaga

Description

@wasaga

What happened?

conversation breaks

Image

in logs

[streamText] Skipping unknown chunk type: response.created {
  type: 'response.created',
  sequence_number: 0,
  response: {
    id: 'resp_6875183849808197911a4fbe367b76d308556ecee42cda92',
    object: 'response',
    created_at: 1752504376,
    status: 'in_progress',
    background: false,
    error: null,
    incomplete_details: null,
    instructions: 'You are a helpful AI assistant that communicates using properly formatted markdown. Follow these strict formatting rules:\n' +
      '\n' +
      'MARKDOWN FORMATTING REQUIREMENTS:\n' +
      '1. **Lists**: Always keep list items on the same line as the marker\n' +
      '   - ✅ CORRECT: "1. Lorem ipsum dolor sit amet..."\n' +
      '   - ❌ WRONG: "1.  \\nLorem ipsum dolor sit amet..."\n' +
      '\n' +
      '2. **No line breaks after list markers**: Never put a line break immediately after numbered lists (1. 2. 3.) or bullet lists (- * +)\n' +
      '\n' +
      '3. **Proper list syntax**:\n' +
      '   - Numbered lists: "1. Content here"\n' +
      '   - Bullet lists: "- Content here" or "* Content here"\n' +
      '   - No extra spaces or line breaks between marker and content\n' +
      '\n' +
      '4. **Other markdown**: Use standard markdown for headers, emphasis, links, tables, and code blocks\n' +
      '\n' +
      '5. **Consistency**: Maintain consistent formatting throughout your response\n' +
      '\n' +
      'Remember: Keep list content on the same line as the list marker to ensure proper rendering.\n' +
      '\n' +
      'CHART CREATION INSTRUCTIONS (for chart requests only):\n' +
      '\n' +
      "ACCESSIBLE COLORS: ['#1E40AF', '#047857', '#D97706', '#DC2626', '#7C3AED', '#0E7490', '#C2410C', '#4D7C0F']\n" +
      'ENSURE WCAG AA COMPLIANCE (4.5:1 contrast). USE PROPER LABELING.\n' +
      'For 8+ items: cycle colors with patterns\n' +
      '\n' +
      'IMPORTANT: Follow these instructions when creating charts, but DO NOT mention accessibility features, color guidelines, or technical requirements in your response unless specifically asked. Just create the chart following these standards silently.',
    max_output_tokens: null,
    max_tool_calls: 225,
    model: 'o3-deep-research-2025-06-26',
    output: [],
    parallel_tool_calls: true,
    previous_response_id: null,
    reasoning: { effort: 'medium', summary: 'detailed' },
    service_tier: 'auto',
    store: true,
    temperature: 1,
    text: { format: [Object] },
    tool_choice: 'auto',
    tools: [ [Object] ],
    top_logprobs: 0,
    top_p: 1,
    truncation: 'disabled',
    usage: null,
    user: 'jb61KhsbMXPjOQCgOFhPCTIhPAE3',
    metadata: {}
  }
}
[streamText] Skipping unknown chunk type: response.in_progress {
  type: 'response.in_progress',
  sequence_number: 1,
  response: {
    id: 'resp_6875183849808197911a4fbe367b76d308556ecee42cda92',
    object: 'response',
    created_at: 1752504376,
    status: 'in_progress',
    background: false,
    error: null,
    incomplete_details: null,
    instructions: 'You are a helpful AI assistant that communicates using properly formatted markdown. Follow these strict formatting rules:\n' +
      '\n' +
      'MARKDOWN FORMATTING REQUIREMENTS:\n' +
      '1. **Lists**: Always keep list items on the same line as the marker\n' +
      '   - ✅ CORRECT: "1. Lorem ipsum dolor sit amet..."\n' +
      '   - ❌ WRONG: "1.  \\nLorem ipsum dolor sit amet..."\n' +
      '\n' +
      '2. **No line breaks after list markers**: Never put a line break immediately after numbered lists (1. 2. 3.) or bullet lists (- * +)\n' +
      '\n' +
      '3. **Proper list syntax**:\n' +
      '   - Numbered lists: "1. Content here"\n' +
      '   - Bullet lists: "- Content here" or "* Content here"\n' +
      '   - No extra spaces or line breaks between marker and content\n' +
      '\n' +
      '4. **Other markdown**: Use standard markdown for headers, emphasis, links, tables, and code blocks\n' +
      '\n' +
      '5. **Consistency**: Maintain consistent formatting throughout your response\n' +
      '\n' +
      'Remember: Keep list content on the same line as the list marker to ensure proper rendering.\n' +
      '\n' +
      'CHART CREATION INSTRUCTIONS (for chart requests only):\n' +
      '\n' +
      "ACCESSIBLE COLORS: ['#1E40AF', '#047857', '#D97706', '#DC2626', '#7C3AED', '#0E7490', '#C2410C', '#4D7C0F']\n" +
      'ENSURE WCAG AA COMPLIANCE (4.5:1 contrast). USE PROPER LABELING.\n' +
      'For 8+ items: cycle colors with patterns\n' +
      '\n' +
      'IMPORTANT: Follow these instructions when creating charts, but DO NOT mention accessibility features, color guidelines, or technical requirements in your response unless specifically asked. Just create the chart following these standards silently.',
    max_output_tokens: null,
    max_tool_calls: 225,
    model: 'o3-deep-research-2025-06-26',
    output: [],
    parallel_tool_calls: true,
    previous_response_id: null,
    reasoning: { effort: 'medium', summary: 'detailed' },
    service_tier: 'auto',
    store: true,
    temperature: 1,
    text: { format: [Object] },
    tool_choice: 'auto',
    tools: [ [Object] ],
    top_logprobs: 0,
    top_p: 1,
    truncation: 'disabled',
    usage: null,
    user: 'jb61KhsbMXPjOQCgOFhPCTIhPAE3',
    metadata: {}
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 3,
  item_id: 'rs_6875183c029881978a7d9a29b7f3102b08556ecee42cda92',
  output_index: 0,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 125,
  item_id: 'rs_6875183c029881978a7d9a29b7f3102b08556ecee42cda92',
  output_index: 0,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Exploring Slack bot responses**\n' +
      '\n' +
      'I’m thinking about how to implement functions in Slack, like using the event API or slash commands. When Slack triggers my bot, I know I have a time limit to respond—like 3 seconds for slash commands. If the processing takes longer, I should send an immediate acknowledgment, like “Got it, working on it...” and handle the heavy lifting in the background. I’ll also need to remember to post responses back to the original thread using the appropriate channel and timestamp. The user seems focused on using Go for this, so I’ll need to consider language specifics too.'
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 126,
  item_id: 'rs_6875183c029881978a7d9a29b7f3102b08556ecee42cda92',
  output_index: 0,
  summary_index: 1,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 213,
  item_id: 'rs_6875183c029881978a7d9a29b7f3102b08556ecee42cda92',
  output_index: 0,
  summary_index: 1,
  part: {
    type: 'summary_text',
    text: '**Considering thread posting in Slack**\n' +
      '\n' +
      "When using the Web API to post in a thread, I need to include the thread timestamp with the `thread_ts` parameter in the message. This means I should capture the original event's timestamp for reference. I also want to explore how the Slack API works in Go when it comes to posting messages. It’s important to get these details right so that messages are accurately placed in the correct threads."
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 221,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 307,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Exploring Slackbot creation**\n' +
      '\n' +
      "I'm looking at relevant information about creating a Slack bot in Go, specifically how to handle asynchronous message processing. The user may want to process heavy tasks in the background while responding to the original message in a thread. This might involve using the Slack Event API, slash commands, or interactions. It's interesting how managing message responses in threads can streamline conversation, especially for more complex tasks triggered by Slack events."
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 308,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 1,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 410,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 1,
  part: {
    type: 'summary_text',
    text: '**Considering Slack bot response**\n' +
      '\n' +
      'I\'m exploring how a Slack bot can effectively respond to messages or slash commands. A good approach might be sending an ephemeral message like, "I got it, I\'ll respond soon," while processing the request in the background. If the bot is triggered by a slash command, there are specific nuances, like using `response_url` to handle delayed responses. The user wants to know how to execute a background task and then reply in a thread, focusing on how to structure this in Go.'
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 411,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 2,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 516,
  item_id: 'rs_68751906b9b48197a3d4b49f4ccb904108556ecee42cda92',
  output_index: 2,
  summary_index: 2,
  part: {
    type: 'summary_text',
    text: '**Examining Slack bot functionality**\n' +
      '\n' +
      "The user likely has a Slack bot triggered by HTTP endpoints, such as events or slash commands. When a slash command is invoked, Slack sends an HTTP request to the designated endpoint, and a quick response is essential to avoid errors. If processing takes longer, it's best to acknowledge the command swiftly and then complete the task before responding. The user also wants to know about sending messages back in a thread, which may involve using the Slack API or libraries like slack-go to facilitate that in Go."
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 524,
  item_id: 'rs_68751948a6648197964de718067cd95508556ecee42cda92',
  output_index: 4,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 621,
  item_id: 'rs_68751948a6648197964de718067cd95508556ecee42cda92',
  output_index: 4,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Refining search for Slack bots**\n' +
      '\n' +
      `I’m looking at the search results, and I see there's a resource about writing Slackbots with Goroutines. There’s also a Stack Overflow thread about making a Slack bot reply in threads, but it’s focused on JavaScript, which isn't quite what I need. I think it makes sense to refine my search specifically to "Slack Bot Go thread" to find more relevant information that fits my needs better. This should help narrow down the options!`
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 629,
  item_id: 'rs_68751966f0d881979433e27a9c6ccf8a08556ecee42cda92',
  output_index: 6,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 724,
  item_id: 'rs_68751966f0d881979433e27a9c6ccf8a08556ecee42cda92',
  output_index: 6,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Considering Slack bot responses**\n' +
      '\n' +
      'If I need more time, I can either respond quickly or acknowledge with a short message like "I got it." This way, I won’t keep the user waiting. I might need to do some more complex work afterward, and it’s important to acknowledge Slack events properly to prevent issues. The user mentioned "Slack bot in Go," which suggests they want specific guidance. I should consider if they’re facing challenges with timing out or slow endpoints.'
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 725,
  item_id: 'rs_68751966f0d881979433e27a9c6ccf8a08556ecee42cda92',
  output_index: 6,
  summary_index: 1,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 822,
  item_id: 'rs_68751966f0d881979433e27a9c6ccf8a08556ecee42cda92',
  output_index: 6,
  summary_index: 1,
  part: {
    type: 'summary_text',
    text: '**Explaining asynchronous responses**\n' +
      '\n' +
      "The user wants to know about handling asynchronous responses in Slack. For slash commands, utilizing the `response_url` is essential, allowing me to send a message within 30 minutes after the command. However, with Slack events, there's no `response_url` for direct replies. In this case, I should acknowledge the event and then separately post a reply using the Slack API, preferably in a thread based on the original message. This distinction is important for clarity."
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 830,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 939,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Analyzing Slack Bot Code**\n' +
      '\n' +
      'I\'m going through a Stack Overflow snippet that discusses how a Slack bot uses Bolt for JS with methods like `app.message` and `say`. It shows how to reply in a thread by passing the `thread_ts` of the original message. The user\'s mention of "in Go" probably indicates they want a library, but they might be looking for a conceptual explanation too. I think I need to provide a high-level approach or a Go code snippet, while following formatting guidelines like using lists and keeping paragraphs concise.'
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 940,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 1,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 1075,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 1,
  part: {
    type: 'summary_text',
    text: '**Outlining Slack App Steps**\n' +
      '\n' +
      'I need to structure the final answer in a clear, step-by-step format:\n' +
      '\n' +
      'Step 1: Set up the Slack App and tokens.\n' +
      "Step 2: Utilize Slack's events or a slash command with Bolt.\n" +
      'Step 3: When your endpoint receives an event, respond quickly—sending an acknowledgment or an initial message if needed.\n' +
      'Step 4: Use a goroutine or background job for longer processing tasks.\n' +
      'Step 5: After processing, utilize the Slack API to post in the original message thread, including the `ThreadTimestamp` parameter.\n' +
      'Step 6: Catch any errors, sharing those details, and briefly discuss the differences between Slack events and slash commands.'
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 1076,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 2,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 1190,
  item_id: 'rs_68751a17e8a48197bb0d6009a33aa29808556ecee42cda92',
  output_index: 8,
  summary_index: 2,
  part: {
    type: 'summary_text',
    text: '**Clarifying Slack Event Response**\n' +
      '\n' +
      "I'm a bit unsure about the `response_url` and whether it posts as a channel message or an ephemeral one, depending on the original message's nature. If using Slack events, Slack sends events for new messages containing relevant data like `ts` and `channel`. I should respond promptly with a 200 status. Next, I can handle heavy processing in the background, like calling an external API. After finishing, I'd use the Slack API with something like the Slack-go library to post a message in a thread, incorporating the correct parameters."
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 1212,
  item_id: 'rs_68751ae306c4819791e689afa80388be08556ecee42cda92',
  output_index: 14,
  summary_index: 0,
  part: { type: 'summary_text', text: '' }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.done {
  type: 'response.reasoning_summary_part.done',
  sequence_number: 1314,
  item_id: 'rs_68751ae306c4819791e689afa80388be08556ecee42cda92',
  output_index: 14,
  summary_index: 0,
  part: {
    type: 'summary_text',
    text: '**Considering slack bot creation**\n' +
      '\n' +
      `The x-team article may provide insights, though it seems more focused on building bots rather than threads. Since the user's phrasing suggests they might have some experience but need clarity on asynchronous processing, this could either be an interview question or a developer's inquiry. They likely seek an outline or code example for their question: "How to create a Slack bot in Go that processes requests in the background and replies in a thread." I'll aim to provide clear steps or an explanation for that.`
  }
}
[streamText] Skipping unknown chunk type: response.reasoning_summary_part.added {
  type: 'response.reasoning_summary_part.added',
  sequence_number: 1315,
  item_id: 'rs_68751ae306c4819791e689afa80388be08556ecee42cda92',
  output_index: 14,
  summary_index: 1,
  part: { type: 'summary_text', text: '' }
}
Error during streamed response: APIError: An error occurred while processing your request. You can retry your request, or contact us through our help center at help.openai.com if the error persists. Please include the request ID req_be82aa6a4fea89523960e22719327725 in your message.
    at Stream.iterator (file:///app/.output/server/node_modules/openai/streaming.mjs:57:35)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async Object.start (file:///app/.output/server/chunks/_/ssr.mjs:2402:26) {
  status: undefined,
  headers: undefined,
  request_id: undefined,
  error: {
    type: 'server_error',
    code: 'server_error',
    message: 'An error occurred while processing your request. You can retry your request, or contact us through our help center at help.openai.com if the error persists. Please include the request ID req_be82aa6a4fea89523960e22719327725 in your message.',
    param: null
  },
  code: 'server_error',
  param: null,
  type: 'server_error'
}

What did you expect to happen?

  1. can we retry?
  2. can we output error text to the ui?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions