Is there an existing issue for this?
Description
After upgrading to ABP 10.2, the AI Management Blazor playground crashes during rendering when a previously saved conversation is restored from browser storage and one of the restored chat messages has null text/markdown content.
The exception is thrown inside Volo.AIManagement.Client.Blazor.Components.ChatClientChat when Markdig.Markdown.ToHtml(...) is called with a null markdown value.
Clearing browser local storage / site data resolves the problem immediately, which suggests the crash is triggered by restored chat history rather than permissions or server startup.
Reproduction Steps
- Upgrade an application to ABP 10.2 with AI Management Blazor UI enabled.
- Run the Blazor Server application.
- Open the AI Management workspace playground.
- Have an existing saved conversation/history in browser local storage.
- Revisit the playground so the previous conversation is restored automatically.
- The page crashes during rendering with a null markdown exception.
Expected behavior
The AI Management playground should safely handle restored chat messages that have null or empty text content.
If a restored message has no markdown/text content, the component should render nothing, an empty string, or only the non-text payload without crashing the Blazor circuit.
Actual behavior
The Blazor circuit crashes while rendering the AI Management playground.
Server-side exception:
System.ArgumentNullException: Value cannot be null. (Parameter 'markdown')
at Markdig.Helpers.ThrowHelper.ArgumentNullException_markdown()
at Markdig.Markdown.ToHtml(String markdown, MarkdownPipeline pipeline, MarkdownParserContext context)
at Volo.AIManagement.Client.Blazor.Components.ChatClientChat...
at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(...)
A secondary browser/client-side error appears after the circuit is broken:
Cannot send data if the connection is not in the 'Connected' State.
Regression?
Possibly yes.
The issue started after upgrading our solution to ABP 10.2.
I have not yet verified the same scenario on an earlier ABP version with the same saved browser conversation state.
Known Workarounds
Clear browser local storage / site data for the application origin, then reopen the AI Management playground.
After clearing site data, the playground works normally again.
Version
10.2
User Interface
Blazor Server
Database Provider
EF Core (Default)
Tiered or separate authentication server
None (Default)
Operation System
Windows (Default)
Other information
Additional observations:
- Permission checks succeed before the crash, so this does not appear to be an authorization issue.
- The problem seems related to restored conversation history in browser storage.
- The AI Management chat component appears to restore saved history, and a restored message with null content is likely being passed to Markdig without a null check.
- The issue may be related to tool-call / MCP / other non-text assistant responses being restored and rendered as markdown.
- A null/empty guard before markdown rendering in
ChatClientChat would likely prevent the crash.
Is there an existing issue for this?
Description
After upgrading to ABP 10.2, the AI Management Blazor playground crashes during rendering when a previously saved conversation is restored from browser storage and one of the restored chat messages has null text/markdown content.
The exception is thrown inside
Volo.AIManagement.Client.Blazor.Components.ChatClientChatwhenMarkdig.Markdown.ToHtml(...)is called with a nullmarkdownvalue.Clearing browser local storage / site data resolves the problem immediately, which suggests the crash is triggered by restored chat history rather than permissions or server startup.
Reproduction Steps
Expected behavior
The AI Management playground should safely handle restored chat messages that have null or empty text content.
If a restored message has no markdown/text content, the component should render nothing, an empty string, or only the non-text payload without crashing the Blazor circuit.
Actual behavior
The Blazor circuit crashes while rendering the AI Management playground.
Server-side exception:
System.ArgumentNullException: Value cannot be null. (Parameter 'markdown')
at Markdig.Helpers.ThrowHelper.ArgumentNullException_markdown()
at Markdig.Markdown.ToHtml(String markdown, MarkdownPipeline pipeline, MarkdownParserContext context)
at Volo.AIManagement.Client.Blazor.Components.ChatClientChat...
at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(...)
A secondary browser/client-side error appears after the circuit is broken:
Cannot send data if the connection is not in the 'Connected' State.
Regression?
Possibly yes.
The issue started after upgrading our solution to ABP 10.2.
I have not yet verified the same scenario on an earlier ABP version with the same saved browser conversation state.
Known Workarounds
Clear browser local storage / site data for the application origin, then reopen the AI Management playground.
After clearing site data, the playground works normally again.
Version
10.2
User Interface
Blazor Server
Database Provider
EF Core (Default)
Tiered or separate authentication server
None (Default)
Operation System
Windows (Default)
Other information
Additional observations:
ChatClientChatwould likely prevent the crash.