KB / Memory / reference-ai-sdk-uimessage
AI SDK UIMessage shape
UIMessage is id+role+parts; unknown part types render as null
Vercel AI SDK UIMessage = {id, role, parts[], metadata?}. Renderer switches on part.type and drops unknowns.
Native tool parts: dynamic-tool / tool-${name} with {state, input, output}.
See tech-ai-sdk-history-dto-convert, tech-ai-agent-stack.