{"record":{"id":"3f401a97c2cce164","repo":"diegosouzapw/OmniRoute","slug":"hailuo-web-does-not-support-message-role-message","errorCode":null,"errorMessage":"Hailuo Web does not support message role ${message.role}","messagePattern":"Hailuo Web does not support message role (.+?)","errorType":"validation","errorClass":"Error","httpStatus":400,"severity":"error","filePath":"open-sse/executors/hailuo-web.ts","lineNumber":185,"sourceCode":"export function foldHailuoMessages(messages: HailuoInputMessage[]): string {\n  const parts: string[] = [];\n  for (const message of messages) {\n    if (message.role === \"tool\" || message.role === \"function\") {\n      throw new Error(\"Hailuo Web does not support tool result messages\");\n    }\n    if (message.tool_calls !== undefined) {\n      throw new Error(\"Hailuo Web does not support assistant tool calls\");\n    }\n    const text = textFromContent(message.content);\n    if (!text) continue;\n    if (message.role === \"system\" || message.role === \"developer\") {\n      parts.push(`System: ${text}`);\n    } else if (message.role === \"user\") {\n      parts.push(parts.length > 0 ? `User: ${text}` : text);\n    } else if (message.role === \"assistant\") {\n      parts.push(`Assistant: ${text}`);\n    } else {\n      throw new Error(`Hailuo Web does not support message role ${message.role}`);\n    }\n  }\n  return parts.join(\"\\n\\n\").trim();\n}\n\nexport interface HailuoStreamState {\n  emittedLen: number;\n}\n\n/** `message_result.content` is a cumulative snapshot, not a delta — diff it. */\nexport function extractHailuoMessageDelta(content: string, state: HailuoStreamState): string {\n  if (typeof content !== \"string\" || content.length <= state.emittedLen) return \"\";\n  const delta = content.slice(state.emittedLen);\n  state.emittedLen = content.length;\n  return delta;\n}\n\nexport type HailuoSseLine =","sourceCodeStart":167,"sourceCodeEnd":203,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/open-sse/executors/hailuo-web.ts#L167-L203","documentation":"Error \"Hailuo Web does not support message role ${message.role}\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at open-sse/executors/hailuo-web.ts:185 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}