Skip to content

Conversation

@tobias-tengler
Copy link
Member

No description provided.

Copilot AI review requested due to automatic review settings January 11, 2026 15:48
@tobias-tengler tobias-tengler force-pushed the tte/fusion-source-schema-archive branch from af5d226 to 5fd5510 Compare January 11, 2026 15:49
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces a new FusionSourceSchemaArchive component that provides functionality for creating, reading, and modifying Fusion source schema archives. The archive is a ZIP-based container format that packages GraphQL schemas and source schema settings together.

Changes:

  • Adds a new Fusion.SourceSchema.Packaging library with archive management capabilities
  • Implements support for Create, Read, and Update modes for archives
  • Provides comprehensive test coverage with 15 test cases covering various scenarios

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
HotChocolate.Fusion.SourceSchema.Packaging.csproj New library project configuration
FusionSourceSchemaArchive.cs Main API for archive operations with CRUD functionality
FusionSourceSchemaArchiveSession.cs Session management for archive file operations
FusionSourceSchemaArchiveMode.cs Enum defining Read/Create/Update modes
FusionSourceSchemaArchiveOptions.cs Configuration options for archive size limits
FusionSourceSchemaArchiveReadOptions.cs Internal read options with defaults
ArchiveMetadata.cs Archive metadata model with format version
ArchiveMetadataSerializer.cs JSON serialization for archive metadata
FileKind.cs Enum for distinguishing file types in archive
FileNames.cs Constants for standard file names in archive
FusionSourceSchemaArchiveTests.cs Comprehensive test suite with 15 test cases
HotChocolate.Fusion.SourceSchema.Packaging.csproj (test) Test project configuration
HotChocolate.Fusion-vnext.slnx Solution file update with new projects
All.slnx Main solution file update with new projects

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link
Contributor

🚀 Fusion Gateway Performance Results

Simple Composite Query

Constant Load (50 VUs)

Requests/sec Error Rate
5908.97 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.78ms 7.05ms 160.35ms 8.31ms 12.67ms 18.17ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
4668.43 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.76ms 37.09ms 264.44ms 47.56ms 107.75ms 126.14ms

Executed Query

fragment User on User {
  id
  username
  name
}

fragment Review on Review {
  id
  body
}

fragment Product on Product {
  inStock
  name
  price
  shippingEstimate
  upc
  weight
}

query TestQuery {
  topProducts(first: 5) {
    ...Product
    reviews {
      ...Review
      author {
        ...User
      }
    }
  }
}

Deep Recursion Query

Constant Load (50 VUs)

Requests/sec Error Rate
270.15 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
12.85ms 173.02ms 572.02ms 179.50ms 225.20ms 251.51ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
304.98 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
3.11ms 672.97ms 1698.42ms 692.79ms 1377.48ms 1467.63ms

Executed Query

fragment User on User {
  id
  username
  name
}

fragment Review on Review {
  id
  body
}

fragment Product on Product {
  inStock
  name
  price
  shippingEstimate
  upc
  weight
}

query TestQuery {
  users {
    ...User
    reviews {
      ...Review
      product {
        ...Product
        reviews {
          ...Review
          author {
            ...User
            reviews {
              ...Review
              product {
                ...Product
              }
            }
          }
        }
      }
    }
  }
  topProducts(first: 5) {
    ...Product
    reviews {
      ...Review
      author {
        ...User
        reviews {
          ...Review
          product {
            ...Product
          }
        }
      }
    }
  }
}

Variable Batching Throughput

Constant Load (50 VUs)

Requests/sec Error Rate
24055.39 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.09ms 1.68ms 38.08ms 2.03ms 3.87ms 4.74ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
18965.68 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.09ms 9.04ms 120.97ms 11.15ms 23.10ms 27.90ms

Executed Query

query TestQuery_8f7a46ce_2(
  $__fusion_1_upc: ID!
  $__fusion_2_price: Long!
  $__fusion_2_weight: Long!
) {
  productByUpc(upc: $__fusion_1_upc) {
    inStock
    shippingEstimate(weight: $__fusion_2_weight, price: $__fusion_2_price)
  }
}

Variables (5 sets batched in single request)

[
  { "__fusion_1_upc": "1", "__fusion_2_price": 899, "__fusion_2_weight": 100 },
  { "__fusion_1_upc": "2", "__fusion_2_price": 1299, "__fusion_2_weight": 1000 },
  { "__fusion_1_upc": "3", "__fusion_2_price": 15, "__fusion_2_weight": 20 },
  { "__fusion_1_upc": "4", "__fusion_2_price": 499, "__fusion_2_weight": 100 },
  { "__fusion_1_upc": "5", "__fusion_2_price": 1299, "__fusion_2_weight": 1000 }
]

No baseline data available for comparison.


Run 20897800863 • Commit 733f4f6 • Sun, 11 Jan 2026 16:07:59 GMT

@tobias-tengler tobias-tengler merged commit 66a540c into main Jan 11, 2026
116 checks passed
@tobias-tengler tobias-tengler deleted the tte/fusion-source-schema-archive branch January 11, 2026 16:17
@github-actions
Copy link
Contributor

🚀 Fusion Gateway Performance Results

Simple Composite Query

Constant Load (50 VUs)

Requests/sec Error Rate
5897.11 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.80ms 7.06ms 160.79ms 8.33ms 12.66ms 18.29ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
4503.87 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.73ms 39.26ms 229.11ms 49.28ms 110.47ms 126.88ms

Executed Query

fragment User on User {
  id
  username
  name
}

fragment Review on Review {
  id
  body
}

fragment Product on Product {
  inStock
  name
  price
  shippingEstimate
  upc
  weight
}

query TestQuery {
  topProducts(first: 5) {
    ...Product
    reviews {
      ...Review
      author {
        ...User
      }
    }
  }
}

Deep Recursion Query

Constant Load (50 VUs)

Requests/sec Error Rate
270.38 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
12.62ms 173.91ms 562.30ms 179.47ms 225.23ms 248.66ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
305.21 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
3.12ms 676.71ms 1688.10ms 692.18ms 1383.86ms 1475.97ms

Executed Query

fragment User on User {
  id
  username
  name
}

fragment Review on Review {
  id
  body
}

fragment Product on Product {
  inStock
  name
  price
  shippingEstimate
  upc
  weight
}

query TestQuery {
  users {
    ...User
    reviews {
      ...Review
      product {
        ...Product
        reviews {
          ...Review
          author {
            ...User
            reviews {
              ...Review
              product {
                ...Product
              }
            }
          }
        }
      }
    }
  }
  topProducts(first: 5) {
    ...Product
    reviews {
      ...Review
      author {
        ...User
        reviews {
          ...Review
          product {
            ...Product
          }
        }
      }
    }
  }
}

Variable Batching Throughput

Constant Load (50 VUs)

Requests/sec Error Rate
23926.80 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.09ms 1.68ms 46.92ms 2.04ms 3.89ms 4.76ms

Ramping Load (0→50→500→50 VUs)

Requests/sec Error Rate
18796.91 req/s 0.00%
📊 Response Time Metrics
Min Med Max Avg P90 P95
0.09ms 9.20ms 103.51ms 11.17ms 23.14ms 27.75ms

Executed Query

query TestQuery_8f7a46ce_2(
  $__fusion_1_upc: ID!
  $__fusion_2_price: Long!
  $__fusion_2_weight: Long!
) {
  productByUpc(upc: $__fusion_1_upc) {
    inStock
    shippingEstimate(weight: $__fusion_2_weight, price: $__fusion_2_price)
  }
}

Variables (5 sets batched in single request)

[
  { "__fusion_1_upc": "1", "__fusion_2_price": 899, "__fusion_2_weight": 100 },
  { "__fusion_1_upc": "2", "__fusion_2_price": 1299, "__fusion_2_weight": 1000 },
  { "__fusion_1_upc": "3", "__fusion_2_price": 15, "__fusion_2_weight": 20 },
  { "__fusion_1_upc": "4", "__fusion_2_price": 499, "__fusion_2_weight": 100 },
  { "__fusion_1_upc": "5", "__fusion_2_price": 1299, "__fusion_2_weight": 1000 }
]

No baseline data available for comparison.


Run 20898094505 • Commit 7ab980f • Sun, 11 Jan 2026 16:30:22 GMT

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants