Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 13, 2025

Documents how to configure QuicTransportOptions using the UseQuic extension method on IWebHostBuilder, addressing the gap in HTTP/3 transport configuration documentation.

Changes

  • New documentation section in http3.md covering QuicTransportOptions configuration

    • Usage of UseQuic(Action<QuicTransportOptions>) extension method
    • Table of all 7 configurable properties with defaults and descriptions
    • xref links to API documentation
  • Code sample demonstrating configuration pattern in Snippets/Program.cs:

var builder = WebApplication.CreateBuilder(args);

builder.WebHost.UseQuic(options =>
{
    options.MaxBidirectionalStreamCount = 200;
});

builder.WebHost.ConfigureKestrel((context, serverOptions) =>
{
    serverOptions.ListenAnyIP(5001, listenOptions =>
    {
        listenOptions.Protocols = HttpProtocols.Http1AndHttp2AndHttp3;
        listenOptions.UseHttps();
    });
});

Properties documented

  • MaxBidirectionalStreamCount (default: 100, example shows 200 for demonstration)
  • MaxUnidirectionalStreamCount (default: 10)
  • MaxReadBufferSize (default: 1 MB)
  • MaxWriteBufferSize (default: 64 KB)
  • Backlog (default: 512)
  • DefaultStreamErrorCode (default: 0x010c / H3_REQUEST_CANCELLED)
  • DefaultCloseErrorCode (default: 0x100 / H3_NO_ERROR)

Code Review Updates

  • Simplified UseQuic example to only set MaxBidirectionalStreamCount for clarity
  • Updated error code defaults to reflect actual HTTP/3 error codes used by Kestrel
  • Simplified the configuration description for better readability
  • Fixed metadata ordering: moved ai-usage to alphabetical position after title
  • Fixed table formatting: changed colon to period before table and updated header separator spacing
  • Applied additional table formatting corrections

Metadata Updates

  • Updated ms.date to 11/13/2025
  • Added ai-usage: ai-assisted metadata in alphabetical order
Original prompt

Add documentation to https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/fundamentals/servers/kestrel/http3.md for configuring QuicTransportOptions.

QuicTransportOptions can be found here: https://github.com/dotnet/aspnetcore/blob/main/src/Servers/Kestrel/Transport.Quic/src/QuicTransportOptions.cs

And are used with UseQuic extension method on IWebHostBuilder.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.


Internal previews

📄 File 🔗 Preview link
aspnetcore/fundamentals/servers/kestrel/http3.md aspnetcore/fundamentals/servers/kestrel/http3

Copilot AI changed the title [WIP] Add documentation for configuring QuicTransportOptions Add QuicTransportOptions configuration documentation to HTTP/3 guide Nov 13, 2025
Copilot AI requested a review from JamesNK November 13, 2025 04:39
Copilot finished work on behalf of JamesNK November 13, 2025 04:39
Copilot finished work on behalf of JamesNK November 13, 2025 04:43
Copy link
Contributor Author

Copilot AI commented Nov 13, 2025

Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/search/code
    • Triggering command: curl -s REDACTED (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI requested a review from JamesNK November 13, 2025 04:49
Copilot finished work on behalf of JamesNK November 13, 2025 04:49
Copilot finished work on behalf of JamesNK November 13, 2025 04:52
Copilot finished work on behalf of JamesNK November 13, 2025 04:56
@JamesNK JamesNK marked this pull request as ready for review November 13, 2025 04:57
@guardrex
Copy link
Collaborator

guardrex commented Nov 13, 2025

@JamesNK ... Copilot usually doesn't pay any attention to me. As a contractor, I suppose that I don't have a high enough level of service (paid $$) to get it to do anything I ask. Therefore, you'll probably end up making the changes, unless you ask it and it complies with your order to make these changes.

Nevermind! It looks like it's actually going to do what I say! 🎉 This is the first time it has ever paid attention to my orders.

Copilot finished work on behalf of guardrex November 13, 2025 12:43
Copilot AI requested a review from guardrex November 13, 2025 12:43
@guardrex
Copy link
Collaborator

@copilot There are three remaining suggestions that I made that you didn't commit. Commit the last three suggestions.

Copy link
Contributor Author

Copilot AI commented Nov 13, 2025

@copilot There are three remaining suggestions that I made that you didn't commit. Commit the last three suggestions.

The three suggestions on lines 78, 79, and 83 appear incomplete in the comment thread (showing only | with no content after). Could you clarify what changes are needed for those lines? The current formatting shows all table rows with proper spacing after the opening pipe character (| <xref:...).

Copilot finished work on behalf of guardrex November 13, 2025 12:50
@guardrex
Copy link
Collaborator

@copilot It looks like you are only assessing these rows by looking at how GitHub is displaying them in the web UI. If you look at the lines in the raw markdown file, you will see that each of my suggestions is for changes to individual lines. You should be assessing the changes by looking at the raw markdown file, not what GitHub displays in this web UI.

@copilot Don't commit the final three suggesions. I will commit them myself right now. Stand by and take no further action on my review.

Copilot finished work on behalf of guardrex November 13, 2025 12:56
Copilot AI requested a review from guardrex November 13, 2025 12:56
@guardrex
Copy link
Collaborator

@copilot I made the changes, and my review was complete. I already approved the PR. There was no need for you to request another approval from me after I just approved it. However, I will approve the PR again.

@wadepickett @tdykstra ... A T-800 is going to show up at my house first after Skynet takes over! 😆 AI has been helpful for catching small errors when a PR goes up, but OMG on how much I see everyone fighting with it thereafter over the simplest things. It doesn't seem like it's saving all that much 💰 right now. Let's hope it improves quickly. 🤞🍀

Copilot finished work on behalf of guardrex November 13, 2025 13:08
Copilot AI requested a review from guardrex November 13, 2025 13:08
@wadepickett
Copy link
Contributor

"how much I see everyone fighting with it thereafter over the simplest things. It doesn't seem like it's saving all that much 💰 right now."

Yes, still entirely in a training phase for this repo (and others). The messy and at times frustrating stage. You are identifying some great items it is tripping up on. At the moment for every good catch I receive from Copilot there are a series of items it trips on in my expreience too. I’ll be adding a review-specific Copilot instruction set soon for you and Tom to review and add to. As we go along and spot common GitHub Copilot errors in this doc set that can be helped with prompts in that instruction set, we can add to it as we go. We can’t control the model it chooses, and with every model update we may see drastic changes for the better or some things break. It’s a small share of our time, but an important part of my job and Tom’s is to help Copilot be more successful with our content and eventually more usable from the MCP venue for handling top questions through AI interfaces.

Copy link
Contributor

@wadepickett wadepickett left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Look great with the updates in. Approved.

@JamesNK JamesNK merged commit 8d17c35 into main Nov 13, 2025
5 checks passed
@JamesNK JamesNK deleted the copilot/add-quictransportoptions-documentation branch November 13, 2025 22:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants