Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,12 @@
admin entrypoint (DynamicTenancyAdminExtensions) that dispatches add/disable/enable/remove
to every registered dynamic tenant source — graceful no-op when none — so CritterWatch never
sniffs the concrete tenancy type. -->
<JasperFxVersion>2.6.0</JasperFxVersion>
<!-- 2.6.1: remove redundant HttpChainDescriptor pipeline-introspection fields (#411). Drops
HttpChainDescriptor.Middleware/Postprocessors/ServiceDependencies, the MiddlewareStepDescriptor
type, and graph-level HttpGraphUsage.MiddlewareTypes — the same operator-facing pipeline
information is available on demand via the chain's generated source code, so the descriptor
copies were redundant payload (~30-50 KB compressed per ~163-endpoint topology). -->
<JasperFxVersion>2.6.1</JasperFxVersion>
<LangVersion>13</LangVersion>
<NoWarn>1570;1571;1572;1573;1574;1587;1591;1701;1702;1711;1735;0618</NoWarn>
<Authors>Jeremy D. Miller;Jaedyn Tonee</Authors>
Expand Down
12 changes: 4 additions & 8 deletions src/JasperFx/Descriptors/HttpChainDescriptor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -109,11 +109,10 @@ public class HttpChainDescriptor : OptionsDescription
/// <summary>OpenAPI tags applied to this chain.</summary>
public new List<string> Tags { get; set; } = new();

/// <summary>Middleware steps in apply order.</summary>
public List<MiddlewareStepDescriptor> Middleware { get; set; } = new();

/// <summary>Postprocessor steps in apply order.</summary>
public List<MiddlewareStepDescriptor> Postprocessors { get; set; } = new();
// jasperfx#411: the Middleware / Postprocessors / ServiceDependencies pipeline-introspection fields
// were removed. The same operator-facing information is available on demand via the chain's generated
// source code (RequestHandlerSourceCode in Wolverine.CritterWatch) — the generated C# IS the compiled
// pipeline — so the descriptor copies were redundant payload.

/// <summary>
/// Cascading message types this chain may publish — the
Expand All @@ -122,9 +121,6 @@ public class HttpChainDescriptor : OptionsDescription
/// </summary>
public List<TypeDescriptor> CascadingMessageTypes { get; set; } = new();

/// <summary>Service dependencies the chain resolves at runtime.</summary>
public List<TypeDescriptor> ServiceDependencies { get; set; } = new();

/// <summary>Full OpenAPI shape of the operation, when discoverable.</summary>
public OpenApiOperationDescriptor? OpenApi { get; set; }

Expand Down
7 changes: 2 additions & 5 deletions src/JasperFx/Descriptors/HttpGraphUsage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,8 @@ public class HttpGraphUsage : OptionsDescription
/// </summary>
public List<string> PolicyNames { get; set; } = new();

/// <summary>
/// Type names of middleware that may apply across the graph (the
/// <c>WolverineHttpOptions.Middleware</c> registry).
/// </summary>
public List<string> MiddlewareTypes { get; set; } = new();
// jasperfx#411: graph-level MiddlewareTypes (the WolverineHttpOptions.Middleware registry) was removed
// for API consistency with the per-chain pipeline-introspection removal.

/// <summary>
/// Names of tenant-detection strategies registered on the graph.
Expand Down
27 changes: 3 additions & 24 deletions src/JasperFx/Descriptors/MiddlewareStepDescriptor.cs
Original file line number Diff line number Diff line change
@@ -1,29 +1,8 @@
namespace JasperFx.Descriptors;

/// <summary>
/// One ordered step in a chain's middleware / postprocessor pipeline.
/// </summary>
public class MiddlewareStepDescriptor
{
/// <summary>Type that owns the step (handler / middleware / policy).</summary>
public string TypeFullName { get; set; } = "";

/// <summary>Method name within the owning type.</summary>
public string MethodName { get; set; } = "";

/// <summary>
/// Step kind — <c>"Middleware"</c>, <c>"Postprocessor"</c>,
/// <c>"Validation"</c>, <c>"Audit"</c>, etc. Used for visual
/// grouping in the Pipeline tab.
/// </summary>
public string Kind { get; set; } = "";

/// <summary>
/// Compact display string for the row (e.g.
/// <c>"OrderHandler.Before(Order)"</c>).
/// </summary>
public string Description { get; set; } = "";
}
// jasperfx#411: MiddlewareStepDescriptor (one step in a chain's middleware/postprocessor pipeline) was
// removed along with HttpChainDescriptor.Middleware/Postprocessors. Pipeline information is available on
// demand via the chain's generated source code rather than mirrored into the descriptor payload.

/// <summary>
/// Narrow per-namespace prefix applied via Wolverine's
Expand Down