dotnet / dotnet/aspnetcore

Components.AI: Implement atomic follow-up queue state and dispatch

Open
#68,406 0 comments 0 reactions 0 assignees View on GitHub
area-blazor cost: L feature-blazor-builtin-components Priority:0
Dominant language
C#
Stars
38.4k
Forks
10.9k
Avg merge
2d 6h
Merged PRs (30d)
290

Description

### Is your feature request related to a problem? Please describe the problem.

The engine cannot accept follow-up messages while streaming or atomically dispatch a pending batch as one turn.

### Describe the solution you'd like

Implement the approved queue model with unbounded ordered entries, per-entry removal, composer clearing after enqueue, full-queue cancellation on Stop, and atomic drain of all pending messages into one next turn after normal completion.

### Additional context

Leaf task for #68227 requirement C11. Depends on queue semantics and lifecycle APIs.

Contributor guide

Open the contributing guide

Research direction

Start with requirement C11 in #68227, then read the existing queue semantics and lifecycle APIs that this leaf task depends on. Verify the implementation supports ordered unbounded entries, per-entry removal, composer clearing after enqueue, full cancellation on Stop, and atomic draining into one next turn after normal completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
ai, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.