Sorry, the diff of this file is not supported yet
@@ -5,13 +5,8 @@ <?xml version="1.0" encoding="utf-8"?> | ||
| <Default Extension="psmdcp" ContentType="application/vnd.openxmlformats-package.core-properties+xml" /> | ||
| <Default Extension="aar" ContentType="application/octet" /> | ||
| <Default Extension="dll" ContentType="application/octet" /> | ||
| <Default Extension="dylib" ContentType="application/octet" /> | ||
| <Default Extension="json" ContentType="application/octet" /> | ||
| <Default Extension="lib" ContentType="application/octet" /> | ||
| <Default Extension="md" ContentType="application/octet" /> | ||
| <Default Extension="nuspec" ContentType="application/octet" /> | ||
| <Default Extension="pdb" ContentType="application/octet" /> | ||
| <Default Extension="so" ContentType="application/octet" /> | ||
| <Default Extension="xml" ContentType="application/octet" /> | ||
| <Default Extension="zip" ContentType="application/octet" /> | ||
| </Types> |
+2
-2
@@ -5,3 +5,3 @@ <?xml version="1.0" encoding="utf-8"?> | ||
| <id>Fuse</id> | ||
| <version>2.1.0</version> | ||
| <version>2.0.1</version> | ||
| <authors>Litenova Solutions</authors> | ||
@@ -18,4 +18,4 @@ <license type="expression">MIT</license> | ||
| </packageTypes> | ||
| <repository type="git" url="https://github.com/Litenova-Solutions/Fuse.git" commit="65e66a0a12471f6805b41c86cf833857bda769d3" /> | ||
| <repository type="git" url="https://github.com/Litenova-Solutions/Fuse.git" commit="1dd0aa96b263e7b4f04ed6aa0582689311e7a1e3" /> | ||
| </metadata> | ||
| </package> |
+2
-13
@@ -8,3 +8,3 @@ <!-- mcp-name: io.github.Litenova-Solutions/fuse --> | ||
| <p align="center"> | ||
| <b>The MCP server that collapses an AI coding agent's explore phase on .NET into one scoped call.</b> | ||
| <b>The MCP server that gives AI coding agents the right .NET code, for up to 40% fewer input tokens.</b> | ||
| </p> | ||
@@ -19,12 +19,2 @@ | ||
| <p align="center"> | ||
| <a href="https://www.nuget.org/packages/Fuse"><img src="https://img.shields.io/nuget/v/Fuse?logo=nuget&label=NuGet" alt="NuGet version"></a> | ||
| <a href="https://www.nuget.org/packages/Fuse"><img src="https://img.shields.io/nuget/dt/Fuse?logo=nuget&label=downloads&color=6d4aff" alt="NuGet downloads"></a> | ||
| <a href="https://github.com/Litenova-Solutions/Fuse/actions/workflows/ci.yml"><img src="https://github.com/Litenova-Solutions/Fuse/actions/workflows/ci.yml/badge.svg?branch=main" alt="CI status"></a> | ||
| <a href="https://codecov.io/gh/Litenova-Solutions/Fuse"><img src="https://codecov.io/gh/Litenova-Solutions/Fuse/branch/main/graph/badge.svg" alt="Code coverage"></a> | ||
| <a href="https://registry.modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-registry-6d4aff" alt="MCP Registry"></a> | ||
| <a href="https://dotnet.microsoft.com/download"><img src="https://img.shields.io/badge/.NET-10.0-512BD4?logo=dotnet&logoColor=white" alt=".NET 10"></a> | ||
| <a href="LICENSE"><img src="https://img.shields.io/github/license/Litenova-Solutions/Fuse?color=6d4aff" alt="License: MIT"></a> | ||
| </p> | ||
| --- | ||
@@ -43,6 +33,5 @@ | ||
| <p align="center"> | ||
| <img src="assets/fuse-benchmarks.png" alt="Fuse benchmark results: 40 percent fewer tokens at full public-API fidelity, 88 percent change-scoping recall versus a 38 percent grep baseline, 100 percent versus 4 percent skeleton method fidelity with the opt-in Roslyn tier, one scoped call replacing at least six grep-and-open round-trips, and that call delivering a task's context in about 13 times fewer tokens than a generic packer." width="820"> | ||
| <img src="assets/fuse-benchmarks.png" alt="Fuse benchmark results: 40 percent fewer tokens at full public-API fidelity, 88 percent change-scoping recall versus a 38 percent grep baseline, and 100 percent versus 4 percent skeleton method fidelity with the opt-in Roslyn tier." width="820"> | ||
| </p> | ||
| - **One scoped call instead of an explore loop.** Over 24 real merged pull requests, one `fuse --query` call delivers the files a change needs in about 40,000 tokens at 51 percent recall, against a generic-packer dump of about 512,000 tokens (about 13 times more) at the same single call, and about 494,000 tokens to read the repository blind. Fuse ties a packer at one call and wins on tokens; with a git base the change-scoping mode reaches 88 percent recall. Read the token number with its recall. | ||
| - **Cuts tokens without dropping API.** Default reduction removes 7 to 10 percent and `--all` removes 21 to 40 percent of tokens while keeping 99 to 100 percent of public types and methods. `--skeleton` removes 66 to 93 percent for an architecture map. | ||
@@ -49,0 +38,0 @@ - **Smaller than the generic packers.** Repomix output runs 1.3 to 3.9 percent larger than raw concatenation on these repositories; Fuse is smaller than raw in every mode. |
@@ -9,8 +9,7 @@ { | ||
| ".NETCoreApp,Version=v10.0": { | ||
| "fuse/2.1.0": { | ||
| "fuse/2.0.1": { | ||
| "dependencies": { | ||
| "DotMake.CommandLine": "3.1.0", | ||
| "Fuse.Fusion": "2.1.0", | ||
| "Fuse.Fusion.Embeddings.Onnx": "2.1.0", | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn": "2.1.0", | ||
| "Fuse.Fusion": "2.0.1", | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn": "2.0.1", | ||
| "Microsoft.CodeAnalysis.CSharp": "4.14.0", | ||
@@ -450,95 +449,2 @@ "Microsoft.Extensions.DependencyInjection": "10.0.3", | ||
| }, | ||
| "Microsoft.ML.OnnxRuntime/1.27.0": { | ||
| "dependencies": { | ||
| "Microsoft.ML.OnnxRuntime.Managed": "1.27.0" | ||
| }, | ||
| "runtimeTargets": { | ||
| "runtimes/android/native/onnxruntime.aar": { | ||
| "rid": "android", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/ios/native/onnxruntime.xcframework.zip": { | ||
| "rid": "ios", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/linux-arm64/native/libonnxruntime.so": { | ||
| "rid": "linux-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/linux-arm64/native/libonnxruntime_providers_shared.so": { | ||
| "rid": "linux-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/linux-x64/native/libonnxruntime.so": { | ||
| "rid": "linux-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/linux-x64/native/libonnxruntime_providers_shared.so": { | ||
| "rid": "linux-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/osx-arm64/native/libonnxruntime.dylib": { | ||
| "rid": "osx-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-arm64/native/onnxruntime.dll": { | ||
| "rid": "win-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-arm64/native/onnxruntime.lib": { | ||
| "rid": "win-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-arm64/native/onnxruntime_providers_shared.dll": { | ||
| "rid": "win-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-arm64/native/onnxruntime_providers_shared.lib": { | ||
| "rid": "win-arm64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-x64/native/onnxruntime.dll": { | ||
| "rid": "win-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-x64/native/onnxruntime.lib": { | ||
| "rid": "win-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-x64/native/onnxruntime_providers_shared.dll": { | ||
| "rid": "win-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| }, | ||
| "runtimes/win-x64/native/onnxruntime_providers_shared.lib": { | ||
| "rid": "win-x64", | ||
| "assetType": "native", | ||
| "fileVersion": "0.0.0.0" | ||
| } | ||
| } | ||
| }, | ||
| "Microsoft.ML.OnnxRuntime.Managed/1.27.0": { | ||
| "dependencies": { | ||
| "System.Numerics.Tensors": "9.0.0" | ||
| }, | ||
| "runtime": { | ||
| "lib/net8.0/Microsoft.ML.OnnxRuntime.dll": { | ||
| "assemblyVersion": "1.27.0.0", | ||
| "fileVersion": "1.27.0.0" | ||
| } | ||
| } | ||
| }, | ||
| "Microsoft.ML.Tokenizers/1.0.2": { | ||
@@ -640,11 +546,3 @@ "dependencies": { | ||
| }, | ||
| "System.Numerics.Tensors/9.0.0": { | ||
| "runtime": { | ||
| "lib/net9.0/System.Numerics.Tensors.dll": { | ||
| "assemblyVersion": "9.0.0.0", | ||
| "fileVersion": "9.0.24.52809" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Collection/2.1.0": { | ||
| "Fuse.Collection/2.0.1": { | ||
| "dependencies": { | ||
@@ -655,11 +553,11 @@ "DotNet.Glob": "3.1.3" | ||
| "Fuse.Collection.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Emission/2.1.0": { | ||
| "Fuse.Emission/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Reduction": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "Fuse.Reduction": "2.0.1", | ||
| "Microsoft.ML.Tokenizers": "1.0.2", | ||
@@ -671,15 +569,15 @@ "Microsoft.ML.Tokenizers.Data.Cl100kBase": "1.0.2", | ||
| "Fuse.Emission.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Fusion/2.1.0": { | ||
| "Fuse.Fusion/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Collection": "2.1.0", | ||
| "Fuse.Emission": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Plugins.Formats.Web": "2.1.0", | ||
| "Fuse.Plugins.Languages.CSharp": "2.1.0", | ||
| "Fuse.Reduction": "2.1.0", | ||
| "Fuse.Collection": "2.0.1", | ||
| "Fuse.Emission": "2.0.1", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "Fuse.Plugins.Formats.Web": "2.0.1", | ||
| "Fuse.Plugins.Languages.CSharp": "2.0.1", | ||
| "Fuse.Reduction": "2.0.1", | ||
| "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3" | ||
@@ -689,35 +587,21 @@ }, | ||
| "Fuse.Fusion.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Fusion.Embeddings.Onnx/2.1.0": { | ||
| "Fuse.Plugins.Abstractions/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Fusion": "2.1.0", | ||
| "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3", | ||
| "Microsoft.ML.OnnxRuntime": "1.27.0", | ||
| "Microsoft.ML.Tokenizers": "1.0.2" | ||
| "Fuse.Collection": "2.0.1" | ||
| }, | ||
| "runtime": { | ||
| "Fuse.Fusion.Embeddings.Onnx.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Plugins.Abstractions/2.1.0": { | ||
| "dependencies": { | ||
| "Fuse.Collection": "2.1.0" | ||
| }, | ||
| "runtime": { | ||
| "Fuse.Plugins.Abstractions.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Plugins.Formats.Web/2.1.0": { | ||
| "Fuse.Plugins.Formats.Web/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3" | ||
@@ -727,10 +611,10 @@ }, | ||
| "Fuse.Plugins.Formats.Web.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Plugins.Languages.CSharp/2.1.0": { | ||
| "Fuse.Plugins.Languages.CSharp/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3" | ||
@@ -740,10 +624,10 @@ }, | ||
| "Fuse.Plugins.Languages.CSharp.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn/2.1.0": { | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "Microsoft.CodeAnalysis.CSharp": "4.14.0", | ||
@@ -754,11 +638,11 @@ "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3" | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
| } | ||
| }, | ||
| "Fuse.Reduction/2.1.0": { | ||
| "Fuse.Reduction/2.0.1": { | ||
| "dependencies": { | ||
| "Fuse.Collection": "2.1.0", | ||
| "Fuse.Plugins.Abstractions": "2.1.0", | ||
| "Fuse.Collection": "2.0.1", | ||
| "Fuse.Plugins.Abstractions": "2.0.1", | ||
| "System.IO.Hashing": "9.0.0" | ||
@@ -768,4 +652,4 @@ }, | ||
| "Fuse.Reduction.dll": { | ||
| "assemblyVersion": "2.1.0.0", | ||
| "fileVersion": "2.1.0.0" | ||
| "assemblyVersion": "2.0.1.0", | ||
| "fileVersion": "2.0.1.0" | ||
| } | ||
@@ -777,3 +661,3 @@ } | ||
| "libraries": { | ||
| "fuse/2.1.0": { | ||
| "fuse/2.0.1": { | ||
| "type": "project", | ||
@@ -1021,16 +905,2 @@ "serviceable": false, | ||
| }, | ||
| "Microsoft.ML.OnnxRuntime/1.27.0": { | ||
| "type": "package", | ||
| "serviceable": true, | ||
| "sha512": "sha512-QdVsm9tkp1M7lmI5F3uLn/Ruc8I4FCMtFVD0ohmWo7JvC7YsZgAu1S3CEEJhZr1YB+lCPWXa7tpBDbQLCZGPTg==", | ||
| "path": "microsoft.ml.onnxruntime/1.27.0", | ||
| "hashPath": "microsoft.ml.onnxruntime.1.27.0.nupkg.sha512" | ||
| }, | ||
| "Microsoft.ML.OnnxRuntime.Managed/1.27.0": { | ||
| "type": "package", | ||
| "serviceable": true, | ||
| "sha512": "sha512-9HZjUh9j/gIe4SN/9e4sg/GeTy+JWaPDGzLgz01FQRaj3/SzwjGFc76DMW+wb3ZU7mwfT4lx8GUqwIDgAaHCpw==", | ||
| "path": "microsoft.ml.onnxruntime.managed/1.27.0", | ||
| "hashPath": "microsoft.ml.onnxruntime.managed.1.27.0.nupkg.sha512" | ||
| }, | ||
| "Microsoft.ML.Tokenizers/1.0.2": { | ||
@@ -1092,10 +962,3 @@ "type": "package", | ||
| }, | ||
| "System.Numerics.Tensors/9.0.0": { | ||
| "type": "package", | ||
| "serviceable": true, | ||
| "sha512": "sha512-hyJB4UlpAi19Xr9AXzu2NuagKC4lPfHObNMEAA0HmqFz2rX7wKgzeYzO/jM/eBHDhnUGFFEjk5cOoJaxqg5J4A==", | ||
| "path": "system.numerics.tensors/9.0.0", | ||
| "hashPath": "system.numerics.tensors.9.0.0.nupkg.sha512" | ||
| }, | ||
| "Fuse.Collection/2.1.0": { | ||
| "Fuse.Collection/2.0.1": { | ||
| "type": "project", | ||
@@ -1105,3 +968,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Emission/2.1.0": { | ||
| "Fuse.Emission/2.0.1": { | ||
| "type": "project", | ||
@@ -1111,3 +974,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Fusion/2.1.0": { | ||
| "Fuse.Fusion/2.0.1": { | ||
| "type": "project", | ||
@@ -1117,3 +980,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Fusion.Embeddings.Onnx/2.1.0": { | ||
| "Fuse.Plugins.Abstractions/2.0.1": { | ||
| "type": "project", | ||
@@ -1123,3 +986,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Plugins.Abstractions/2.1.0": { | ||
| "Fuse.Plugins.Formats.Web/2.0.1": { | ||
| "type": "project", | ||
@@ -1129,3 +992,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Plugins.Formats.Web/2.1.0": { | ||
| "Fuse.Plugins.Languages.CSharp/2.0.1": { | ||
| "type": "project", | ||
@@ -1135,3 +998,3 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Plugins.Languages.CSharp/2.1.0": { | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn/2.0.1": { | ||
| "type": "project", | ||
@@ -1141,13 +1004,8 @@ "serviceable": false, | ||
| }, | ||
| "Fuse.Plugins.Languages.CSharp.Roslyn/2.1.0": { | ||
| "Fuse.Reduction/2.0.1": { | ||
| "type": "project", | ||
| "serviceable": false, | ||
| "sha512": "" | ||
| }, | ||
| "Fuse.Reduction/2.1.0": { | ||
| "type": "project", | ||
| "serviceable": false, | ||
| "sha512": "" | ||
| } | ||
| } | ||
| } |
@@ -229,56 +229,44 @@ <?xml version="1.0"?> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Options.ReductionLevel"> | ||
| <member name="T:Fuse.Plugins.Abstractions.Options.ReductionOptions"> | ||
| <summary> | ||
| The single dial controlling how aggressively C# source is reduced. Each level expands to a fixed set | ||
| of C# transform decisions (see <see cref="T:Fuse.Plugins.Abstractions.Options.ReductionOptions" />), replacing the former cluster of | ||
| overlapping per-transform booleans. | ||
| Configuration options for the content reduction pipeline. | ||
| </summary> | ||
| <remarks> | ||
| <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.None" />, <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" />, and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" /> form an increasing | ||
| text-reduction scale that preserves source shape. <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Skeleton" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.PublicApi" /> | ||
| are a different representation: structural signatures with bodies removed, which is why they are not a | ||
| simple continuation of the text scale. Orthogonal concerns (redaction, minification, route map, project | ||
| graph, semantic markers, generated-code collapse) remain separate flags on <see cref="T:Fuse.Plugins.Abstractions.Options.ReductionOptions" />. | ||
| Controls whitespace normalization, C# structural reduction, and optional minification | ||
| for HTML, Razor, and XML file types. | ||
| </remarks> | ||
| </member> | ||
| <member name="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.None"> | ||
| <summary>No C# structural reduction. Whitespace normalization and the orthogonal flags still apply.</summary> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.TrimContent"> | ||
| <summary> | ||
| Gets a value indicating whether leading and trailing whitespace is trimmed from each line. | ||
| </summary> | ||
| </member> | ||
| <member name="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard"> | ||
| <summary>Removes C# comments, <c>using</c> directives, namespace wrappers, and <c>#region</c> directives.</summary> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.UseCondensing"> | ||
| <summary> | ||
| Gets a value indicating whether blank lines are collapsed. | ||
| </summary> | ||
| </member> | ||
| <member name="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive"> | ||
| <summary>The <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" /> removals plus aggressive whitespace and syntax compression.</summary> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpComments"> | ||
| <summary> | ||
| Gets a value indicating whether C# comments are removed. | ||
| </summary> | ||
| </member> | ||
| <member name="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Skeleton"> | ||
| <summary>Emits structural skeletons (type and member signatures) with bodies removed.</summary> | ||
| </member> | ||
| <member name="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.PublicApi"> | ||
| <summary>Like <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Skeleton" /> but keeps only public and protected members.</summary> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Options.ReductionOptions"> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpUsings"> | ||
| <summary> | ||
| Configuration options for the content reduction pipeline. | ||
| Gets a value indicating whether C# using directives are removed. | ||
| </summary> | ||
| <remarks> | ||
| The single <see cref="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.Level" /> dial controls C# structural reduction intensity; the per-transform | ||
| decisions (comment, using, namespace, and region removal, aggressive compression, skeleton and | ||
| public-API extraction) are derived from it. The remaining flags are orthogonal to that scale and | ||
| control whitespace normalization, minification for HTML, Razor, and XML, redaction, and the optional | ||
| prepended sections (route map, project graph, pattern summary, semantic markers). | ||
| </remarks> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.Level"> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpNamespaces"> | ||
| <summary> | ||
| The C# structural reduction level. Drives the derived C# transform flags. | ||
| Gets a value indicating whether C# namespace declarations are removed. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.TrimContent"> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpRegions"> | ||
| <summary> | ||
| Gets a value indicating whether leading and trailing whitespace is trimmed from each line. | ||
| Gets a value indicating whether C# region directives are removed. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.UseCondensing"> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.AggressiveCSharpReduction"> | ||
| <summary> | ||
| Gets a value indicating whether blank lines are collapsed. | ||
| Gets a value indicating whether aggressive C# syntax compression is applied. | ||
| </summary> | ||
@@ -300,2 +288,7 @@ </member> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.SkeletonMode"> | ||
| <summary> | ||
| Gets a value indicating whether C# files emit structural skeleton only. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.IncludeSemanticMarkers"> | ||
@@ -326,2 +319,7 @@ <summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.PublicApiMode"> | ||
| <summary> | ||
| Gets a value indicating whether skeleton extraction emits only public and protected members. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.IncludeProjectGraph"> | ||
@@ -338,65 +336,7 @@ <summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpComments"> | ||
| <summary>C# comments are removed at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpUsings"> | ||
| <summary>C# <c>using</c> directives are removed at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpNamespaces"> | ||
| <summary>C# namespace declarations are removed at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.RemoveCSharpRegions"> | ||
| <summary>C# <c>#region</c> directives are removed at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Standard" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.AggressiveCSharpReduction"> | ||
| <summary>Aggressive whitespace and syntax compression runs only at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Aggressive" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.SkeletonMode"> | ||
| <summary>Skeleton extraction runs at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.Skeleton" /> and <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.PublicApi" />.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Options.ReductionOptions.PublicApiMode"> | ||
| <summary>Skeleton extraction is restricted to public and protected members only at <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.PublicApi" />.</summary> | ||
| </member> | ||
| <member name="M:Fuse.Plugins.Abstractions.Options.ReductionOptions.#ctor(Fuse.Plugins.Abstractions.Options.ReductionLevel,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean)"> | ||
| <member name="M:Fuse.Plugins.Abstractions.Options.ReductionOptions.#ctor(System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean)"> | ||
| <summary> | ||
| Initializes a new instance of the <see cref="T:Fuse.Plugins.Abstractions.Options.ReductionOptions" /> record. | ||
| </summary> | ||
| <param name="level">The C# structural reduction level. Defaults to <see cref="F:Fuse.Plugins.Abstractions.Options.ReductionLevel.None" />.</param> | ||
| <param name="trimContent">Whether per-line leading and trailing whitespace is trimmed.</param> | ||
| <param name="useCondensing">Whether blank lines are collapsed.</param> | ||
| <param name="minifyXmlFiles">Whether XML-based files are minified.</param> | ||
| <param name="minifyHtmlAndRazor">Whether HTML and Razor view files are minified.</param> | ||
| <param name="includeSemanticMarkers">Whether structural annotation comments are prepended.</param> | ||
| <param name="includePatternSummary">Whether a cross-codebase pattern summary is appended.</param> | ||
| <param name="enableRedaction">Whether secrets are redacted before token counting.</param> | ||
| <param name="includeRedactReport">Whether a redaction count summary is appended.</param> | ||
| <param name="includeRouteMap">Whether an ASP.NET route map is prepended.</param> | ||
| <param name="includeProjectGraph">Whether a solution/project graph is prepended.</param> | ||
| <param name="collapseGeneratedCode">Whether machine-generated C# bodies are collapsed to signatures.</param> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Outline.ISymbolChunkExtractor"> | ||
| <summary> | ||
| Splits a source file into member-level <see cref="T:Fuse.Plugins.Abstractions.Outline.SymbolChunk" />s: one chunk per declared member, each | ||
| carrying its full text and line span. This is the capability behind symbol-level retrieval and packing | ||
| and behind near-duplicate body deduplication, both of which need member body spans the outline does not | ||
| expose. | ||
| </summary> | ||
| <remarks> | ||
| A precise (semantic) implementation registered later overrides a regex one by extension. The regex tier | ||
| produces coarser chunking but must still yield coherent, independently parseable member bodies so the | ||
| symbol-level path keeps working on the Native AOT build, where Roslyn is absent. | ||
| </remarks> | ||
| </member> | ||
| <member name="M:Fuse.Plugins.Abstractions.Outline.ISymbolChunkExtractor.ExtractChunks(System.String)"> | ||
| <summary> | ||
| Extracts the member-level chunks from the supplied content. | ||
| </summary> | ||
| <param name="content"> | ||
| Source content to split. Must not be <see langword="null" />; an empty string yields an empty list. | ||
| </param> | ||
| <returns> | ||
| One <see cref="T:Fuse.Plugins.Abstractions.Outline.SymbolChunk" /> per declared member, in declaration order. Empty when the content | ||
| declares no members the extractor can resolve. | ||
| </returns> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Outline.ISymbolOutlineExtractor"> | ||
@@ -505,91 +445,2 @@ <summary> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Outline.SymbolChunk"> | ||
| <summary> | ||
| A single member-level slice of a source file: one declared member together with its full text and the | ||
| line range it occupies. Chunks are the unit of symbol-level retrieval and packing, where selection moves | ||
| from whole files to the individual members a task needs. | ||
| </summary> | ||
| <param name="SymbolKind"> | ||
| The member kind, such as <c>method</c>, <c>property</c>, <c>constructor</c>, <c>field</c>, <c>event</c>, | ||
| or <c>enum-member</c>. Languages that do not distinguish kinds may use a single label. | ||
| </param> | ||
| <param name="SymbolName">The simple (unqualified) name of the member.</param> | ||
| <param name="ParentType"> | ||
| The simple name of the type that declares the member, or <see langword="null" /> when the member is not | ||
| nested in a type. | ||
| </param> | ||
| <param name="Content"> | ||
| The member's source text, including its signature and body, as a standalone fragment that parses on its | ||
| own. Used both as the indexed body and as the text inlined into a thin host skeleton. | ||
| </param> | ||
| <param name="StartLine">The 1-based line at which the member begins, inclusive.</param> | ||
| <param name="EndLine">The 1-based line at which the member ends, inclusive.</param> | ||
| <remarks> | ||
| A precise (semantic) extractor resolves member boundaries from a parse tree; a regex extractor produces | ||
| coarser but coherent boundaries by brace-depth scanning and may merge members it cannot separate. Both | ||
| guarantee that <see cref="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.Content" /> for a method or property body is independently parseable, which the | ||
| body-integrity check relies on. | ||
| </remarks> | ||
| </member> | ||
| <member name="M:Fuse.Plugins.Abstractions.Outline.SymbolChunk.#ctor(System.String,System.String,System.String,System.String,System.Int32,System.Int32)"> | ||
| <summary> | ||
| A single member-level slice of a source file: one declared member together with its full text and the | ||
| line range it occupies. Chunks are the unit of symbol-level retrieval and packing, where selection moves | ||
| from whole files to the individual members a task needs. | ||
| </summary> | ||
| <param name="SymbolKind"> | ||
| The member kind, such as <c>method</c>, <c>property</c>, <c>constructor</c>, <c>field</c>, <c>event</c>, | ||
| or <c>enum-member</c>. Languages that do not distinguish kinds may use a single label. | ||
| </param> | ||
| <param name="SymbolName">The simple (unqualified) name of the member.</param> | ||
| <param name="ParentType"> | ||
| The simple name of the type that declares the member, or <see langword="null" /> when the member is not | ||
| nested in a type. | ||
| </param> | ||
| <param name="Content"> | ||
| The member's source text, including its signature and body, as a standalone fragment that parses on its | ||
| own. Used both as the indexed body and as the text inlined into a thin host skeleton. | ||
| </param> | ||
| <param name="StartLine">The 1-based line at which the member begins, inclusive.</param> | ||
| <param name="EndLine">The 1-based line at which the member ends, inclusive.</param> | ||
| <remarks> | ||
| A precise (semantic) extractor resolves member boundaries from a parse tree; a regex extractor produces | ||
| coarser but coherent boundaries by brace-depth scanning and may merge members it cannot separate. Both | ||
| guarantee that <see cref="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.Content" /> for a method or property body is independently parseable, which the | ||
| body-integrity check relies on. | ||
| </remarks> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.SymbolKind"> | ||
| <summary> | ||
| The member kind, such as <c>method</c>, <c>property</c>, <c>constructor</c>, <c>field</c>, <c>event</c>, | ||
| or <c>enum-member</c>. Languages that do not distinguish kinds may use a single label. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.SymbolName"> | ||
| <summary>The simple (unqualified) name of the member.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.ParentType"> | ||
| <summary> | ||
| The simple name of the type that declares the member, or <see langword="null" /> when the member is not | ||
| nested in a type. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.Content"> | ||
| <summary> | ||
| The member's source text, including its signature and body, as a standalone fragment that parses on its | ||
| own. Used both as the indexed body and as the text inlined into a thin host skeleton. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.StartLine"> | ||
| <summary>The 1-based line at which the member begins, inclusive.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.EndLine"> | ||
| <summary>The 1-based line at which the member ends, inclusive.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Abstractions.Outline.SymbolChunk.QualifiedName"> | ||
| <summary> | ||
| The fully qualified member name (<c>ParentType.SymbolName</c>), or the simple name when the member | ||
| has no parent type. Used as a stable chunk identifier within a file. | ||
| </summary> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Abstractions.Patterns.DetectedPattern"> | ||
@@ -596,0 +447,0 @@ <summary> |
@@ -75,14 +75,2 @@ <?xml version="1.0"?> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Languages.CSharp.Roslyn.RoslynSymbolChunkExtractor"> | ||
| <summary> | ||
| Roslyn-based <see cref="T:Fuse.Plugins.Abstractions.Outline.ISymbolChunkExtractor" />. Produces one chunk per declared member from the parsed | ||
| tree, attributing each to its declaring type and recording its precise source span. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Plugins.Languages.CSharp.Roslyn.RoslynSymbolChunkExtractor.SupportedExtensions"> | ||
| <inheritdoc /> | ||
| </member> | ||
| <member name="M:Fuse.Plugins.Languages.CSharp.Roslyn.RoslynSymbolChunkExtractor.ExtractChunks(System.String)"> | ||
| <inheritdoc /> | ||
| </member> | ||
| <member name="T:Fuse.Plugins.Languages.CSharp.Roslyn.RoslynSymbolSliceExtractor"> | ||
@@ -89,0 +77,0 @@ <summary> |
@@ -12,8 +12,5 @@ <?xml version="1.0"?> | ||
| <remarks> | ||
| Operations are serialized under an internal lock for the parallel reduction workers of a single run. | ||
| Across concurrent runs (which each hold their own cache instance over the same directory) safety comes | ||
| from writing each entry to a unique temp file and atomically moving it into place, and from treating a | ||
| read or write that races another run as a miss: the cache is best-effort and every entry for a given | ||
| key is byte-identical, so a lost write costs only a recomputation. Each entry is a single file named | ||
| from the content and options hashes; the cache directory is created lazily on first <see cref="M:Fuse.Reduction.Caching.DiskReductionCache.Set(System.UInt64,System.UInt64,System.String)" />. | ||
| All operations are serialized under an internal lock, so the cache is safe to share across the | ||
| parallel reduction workers. Each entry is a single file named from the content and options hashes; | ||
| the cache directory is created lazily on first <see cref="M:Fuse.Reduction.Caching.DiskReductionCache.Set(System.UInt64,System.UInt64,System.String)" />. | ||
| </remarks> | ||
@@ -187,6 +184,7 @@ <seealso cref="T:Fuse.Reduction.Caching.IReductionCache" /> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.#ctor(Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Reducers.IContentReducer},Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Skeleton.ISkeletonExtractor},Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Markers.ISemanticMarkerGenerator},Fuse.Reduction.Tokenization.ITokenCounter,Fuse.Reduction.Security.ISecretRedactor)"> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.#ctor(Fuse.Collection.FileSystem.ISourceContentProvider,Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Reducers.IContentReducer},Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Skeleton.ISkeletonExtractor},Fuse.Plugins.Abstractions.CapabilityRegistry{Fuse.Plugins.Abstractions.Markers.ISemanticMarkerGenerator},Fuse.Reduction.Tokenization.ITokenCounter,Fuse.Reduction.Security.ISecretRedactor)"> | ||
| <summary> | ||
| Initializes a new instance of the <see cref="T:Fuse.Reduction.ContentReductionPipeline" /> class. | ||
| </summary> | ||
| <param name="contentProvider">Provider used to read raw file content.</param> | ||
| <param name="reducers">Registry of per-extension format reducers.</param> | ||
@@ -198,3 +196,3 @@ <param name="skeletonExtractors">Registry of per-extension skeleton extractors.</param> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.ReduceAsync(System.Collections.Generic.IReadOnlyList{Fuse.Collection.Models.SourceFile},Fuse.Plugins.Abstractions.Options.ReductionOptions,Fuse.Collection.FileSystem.ISourceContentProvider,System.Threading.CancellationToken)"> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.ReduceAsync(System.Collections.Generic.IReadOnlyList{Fuse.Collection.Models.SourceFile},Fuse.Plugins.Abstractions.Options.ReductionOptions,System.Threading.CancellationToken)"> | ||
| <summary> | ||
@@ -206,3 +204,2 @@ Reduces the supplied source files and returns non-trivial fused content, using a default | ||
| <param name="options">Options controlling which reduction stages run.</param> | ||
| <param name="contentProvider">Run-scoped provider used to read raw file content.</param> | ||
| <param name="cancellationToken">Token used to cancel reads and reduction.</param> | ||
@@ -214,3 +211,3 @@ <returns> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.ReduceAsync(System.Collections.Generic.IReadOnlyList{Fuse.Collection.Models.SourceFile},Fuse.Plugins.Abstractions.Options.ReductionOptions,Fuse.Collection.FileSystem.ISourceContentProvider,System.Int32,Fuse.Reduction.Caching.IReductionCache,Fuse.Reduction.Tokenization.ITokenCounter,System.Threading.CancellationToken)"> | ||
| <member name="M:Fuse.Reduction.ContentReductionPipeline.ReduceAsync(System.Collections.Generic.IReadOnlyList{Fuse.Collection.Models.SourceFile},Fuse.Plugins.Abstractions.Options.ReductionOptions,System.Int32,Fuse.Reduction.Caching.IReductionCache,Fuse.Reduction.Tokenization.ITokenCounter,System.Threading.CancellationToken)"> | ||
| <summary> | ||
@@ -222,3 +219,2 @@ Reduces the supplied source files and returns non-trivial fused content at the specified degree | ||
| <param name="options">Options controlling which reduction stages run.</param> | ||
| <param name="contentProvider">Run-scoped provider used to read raw file content.</param> | ||
| <param name="parallelism">Maximum number of files reduced concurrently.</param> | ||
@@ -343,3 +339,3 @@ <param name="reductionCache">Cache consulted before reducing and populated on a miss; <c>null</c> disables caching.</param> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.Security.DefaultSecretRedactor.Redact(System.String,System.Boolean)"> | ||
| <member name="M:Fuse.Reduction.Security.DefaultSecretRedactor.Redact(System.String)"> | ||
| <inheritdoc /> | ||
@@ -437,16 +433,60 @@ </member> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.Security.DefaultSecretRedactor.ConnectionStringLiteralRegex"> | ||
| <member name="M:Fuse.Reduction.Security.DefaultSecretRedactor.ConnectionStringRegex"> | ||
| <remarks> | ||
| Pattern:<br/> | ||
| <code>(?<quote>['"])(?<value>[^'"\\r\\n]{0,2048})(?<quote2>\\k<quote>)</code><br/> | ||
| <code>(?:Server|Data Source|Host|User ID|Password|Pwd)\\s*=\\s*[^;\\s"']+</code><br/> | ||
| Options:<br/> | ||
| <code>RegexOptions.Compiled</code><br/> | ||
| <code>RegexOptions.IgnoreCase | RegexOptions.Compiled</code><br/> | ||
| Explanation:<br/> | ||
| <code> | ||
| ○ "quote" capture group.<br/> | ||
| ○ Match a character in the set ["'].<br/> | ||
| ○ "value" capture group.<br/> | ||
| ○ Match a character in the set [^\n\r"'] greedily at most 2048 times.<br/> | ||
| ○ "quote2" capture group.<br/> | ||
| ○ Match the same text as matched by the "quote" capture group.<br/> | ||
| ○ Match with 5 alternative expressions.<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Ss].<br/> | ||
| ○ Match a character in the set [Ee].<br/> | ||
| ○ Match a character in the set [Rr].<br/> | ||
| ○ Match a character in the set [Vv].<br/> | ||
| ○ Match a character in the set [Ee].<br/> | ||
| ○ Match a character in the set [Rr].<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Dd].<br/> | ||
| ○ Match a character in the set [Aa].<br/> | ||
| ○ Match a character in the set [Tt].<br/> | ||
| ○ Match a character in the set [Aa].<br/> | ||
| ○ Match ' '.<br/> | ||
| ○ Match a character in the set [Ss].<br/> | ||
| ○ Match a character in the set [Oo].<br/> | ||
| ○ Match a character in the set [Uu].<br/> | ||
| ○ Match a character in the set [Rr].<br/> | ||
| ○ Match a character in the set [Cc].<br/> | ||
| ○ Match a character in the set [Ee].<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Hh].<br/> | ||
| ○ Match a character in the set [Oo].<br/> | ||
| ○ Match a character in the set [Ss].<br/> | ||
| ○ Match a character in the set [Tt].<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Uu].<br/> | ||
| ○ Match a character in the set [Ss].<br/> | ||
| ○ Match a character in the set [Ee].<br/> | ||
| ○ Match a character in the set [Rr].<br/> | ||
| ○ Match ' '.<br/> | ||
| ○ Match a character in the set [Ii].<br/> | ||
| ○ Match a character in the set [Dd].<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Pp].<br/> | ||
| ○ Match with 2 alternative expressions.<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Aa].<br/> | ||
| ○ Match a character in the set [Ss] exactly 2 times.<br/> | ||
| ○ Match a character in the set [Ww].<br/> | ||
| ○ Match a character in the set [Oo].<br/> | ||
| ○ Match a character in the set [Rr].<br/> | ||
| ○ Match a character in the set [Dd].<br/> | ||
| ○ Match a sequence of expressions.<br/> | ||
| ○ Match a character in the set [Ww].<br/> | ||
| ○ Match a character in the set [Dd].<br/> | ||
| ○ Match a whitespace character atomically any number of times.<br/> | ||
| ○ Match '='.<br/> | ||
| ○ Match a whitespace character greedily any number of times.<br/> | ||
| ○ Match a character in the set [^"';\s] atomically at least once.<br/> | ||
| </code> | ||
@@ -535,3 +575,3 @@ </remarks> | ||
| </member> | ||
| <member name="M:Fuse.Reduction.Security.ISecretRedactor.Redact(System.String,System.Boolean)"> | ||
| <member name="M:Fuse.Reduction.Security.ISecretRedactor.Redact(System.String)"> | ||
| <summary> | ||
@@ -541,7 +581,2 @@ Replaces detected secrets in place with <c>[REDACTED:<kind>]</c> placeholders. | ||
| <param name="content">The source content to scan.</param> | ||
| <param name="classifyCodeLiterals"> | ||
| When <see langword="true" /> (set for C# source), additionally counts how many redactions landed | ||
| inside a string literal, surfaced as <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralRedactions" />. | ||
| A non-zero count flags a redaction that altered a code body rather than a configuration value. | ||
| </param> | ||
| <returns>The redacted content and per-kind occurrence counts.</returns> | ||
@@ -584,8 +619,2 @@ </member> | ||
| <param name="CountsByKind">Occurrence counts keyed by secret kind.</param> | ||
| <remarks> | ||
| <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CountsByKind" /> may carry the reserved <see cref="F:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralKind" /> entry, which counts | ||
| how many redactions landed inside a C# string literal (a code body) rather than a configuration value. | ||
| That entry is a fidelity classification, not a secret kind, so it is excluded from | ||
| <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.TotalCount" /> and surfaced separately by <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralRedactions" />. | ||
| </remarks> | ||
| </member> | ||
@@ -598,8 +627,2 @@ <member name="M:Fuse.Reduction.Security.SecretRedactionResult.#ctor(System.String,System.Collections.Generic.IReadOnlyDictionary{System.String,System.Int32})"> | ||
| <param name="CountsByKind">Occurrence counts keyed by secret kind.</param> | ||
| <remarks> | ||
| <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CountsByKind" /> may carry the reserved <see cref="F:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralKind" /> entry, which counts | ||
| how many redactions landed inside a C# string literal (a code body) rather than a configuration value. | ||
| That entry is a fidelity classification, not a secret kind, so it is excluded from | ||
| <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.TotalCount" /> and surfaced separately by <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralRedactions" />. | ||
| </remarks> | ||
| </member> | ||
@@ -612,18 +635,7 @@ <member name="P:Fuse.Reduction.Security.SecretRedactionResult.Content"> | ||
| </member> | ||
| <member name="F:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralKind"> | ||
| <summary> | ||
| The reserved <see cref="P:Fuse.Reduction.Security.SecretRedactionResult.CountsByKind" /> key recording redactions made inside a C# code literal. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Reduction.Security.SecretRedactionResult.TotalCount"> | ||
| <summary> | ||
| Total number of secret redactions applied across all kinds, excluding the code-literal classification. | ||
| Total number of redactions applied across all kinds. | ||
| </summary> | ||
| </member> | ||
| <member name="P:Fuse.Reduction.Security.SecretRedactionResult.CodeLiteralRedactions"> | ||
| <summary> | ||
| Number of redactions that modified a C# string literal (a code body) rather than a configuration | ||
| value. A non-zero value on otherwise-code content signals a redaction false positive. | ||
| </summary> | ||
| </member> | ||
| <member name="T:Fuse.Reduction.Tokenization.ITokenCounter"> | ||
@@ -769,25 +781,25 @@ <summary> | ||
| </member> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4"> | ||
| <summary>Custom <see cref="T:System.Text.RegularExpressions.Regex"/>-derived type for the ConnectionStringLiteralRegex method.</summary> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4"> | ||
| <summary>Custom <see cref="T:System.Text.RegularExpressions.Regex"/>-derived type for the ConnectionStringRegex method.</summary> | ||
| </member> | ||
| <member name="F:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.Instance"> | ||
| <member name="F:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.Instance"> | ||
| <summary>Cached, thread-safe singleton instance.</summary> | ||
| </member> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.#ctor"> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.#ctor"> | ||
| <summary>Initializes the instance.</summary> | ||
| </member> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory"> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory"> | ||
| <summary>Provides a factory for creating <see cref="T:System.Text.RegularExpressions.RegexRunner"/> instances to be used by methods on <see cref="T:System.Text.RegularExpressions.Regex"/>.</summary> | ||
| </member> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory.CreateInstance"> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory.CreateInstance"> | ||
| <summary>Creates an instance of a <see cref="T:System.Text.RegularExpressions.RegexRunner"/> used by methods on <see cref="T:System.Text.RegularExpressions.Regex"/>.</summary> | ||
| </member> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory.Runner"> | ||
| <member name="T:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory.Runner"> | ||
| <summary>Provides the runner that contains the custom logic implementing the specified regular expression.</summary> | ||
| </member> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory.Runner.Scan(System.ReadOnlySpan{System.Char})"> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory.Runner.Scan(System.ReadOnlySpan{System.Char})"> | ||
| <summary>Scan the <paramref name="inputSpan"/> starting from base.runtextstart for the next match.</summary> | ||
| <param name="inputSpan">The text being scanned by the regular expression.</param> | ||
| </member> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory.Runner.TryFindNextPossibleStartingPosition(System.ReadOnlySpan{System.Char})"> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory.Runner.TryFindNextPossibleStartingPosition(System.ReadOnlySpan{System.Char})"> | ||
| <summary>Search <paramref name="inputSpan"/> starting from base.runtextpos for the next location a match could possibly start.</summary> | ||
@@ -797,3 +809,3 @@ <param name="inputSpan">The text being scanned by the regular expression.</param> | ||
| </member> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringLiteralRegex_4.RunnerFactory.Runner.TryMatchAtCurrentPosition(System.ReadOnlySpan{System.Char})"> | ||
| <member name="M:System.Text.RegularExpressions.Generated.ConnectionStringRegex_4.RunnerFactory.Runner.TryMatchAtCurrentPosition(System.ReadOnlySpan{System.Char})"> | ||
| <summary>Determine whether <paramref name="inputSpan"/> at base.runtextpos is a match for the regular expression.</summary> | ||
@@ -912,2 +924,5 @@ <param name="inputSpan">The text being scanned by the regular expression.</param> | ||
| </member> | ||
| <member name="F:System.Text.RegularExpressions.Generated.Utilities.s_indexOfAnyStrings_OrdinalIgnoreCase_F350CAD1D7936C4C8FF2D26B0579EF672EA8BCF7151F828F0FFC9A63E9E20F70"> | ||
| <summary>Supports searching for the specified strings.</summary> | ||
| </member> | ||
| <member name="F:System.Text.RegularExpressions.Generated.Utilities.s_indexOfString_A64DAC029B0DA501025A341B6A7080E38E5AC0CE0E0C9663DEAAD6A6E60D5F77"> | ||
@@ -914,0 +929,0 @@ <summary>Supports searching for the string "-----BEGIN ".</summary> |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
| <?xml version="1.0"?> | ||
| <doc> | ||
| <assembly> | ||
| <name>Fuse.Fusion.Embeddings.Onnx</name> | ||
| </assembly> | ||
| <members> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor"> | ||
| <summary> | ||
| The pinned identity of a downloadable sentence-encoder model: its files, source URLs, expected SHA-256 | ||
| hashes, and vector dimensionality. Hashes are verified after download and a mismatch is rejected. | ||
| </summary> | ||
| <param name="Name">The model name, used as the per-machine cache subdirectory.</param> | ||
| <param name="Dimensions">The embedding vector length the model produces.</param> | ||
| <param name="MaxTokens">The maximum input token length; longer inputs are truncated.</param> | ||
| <param name="ModelFile">The ONNX weights file descriptor.</param> | ||
| <param name="VocabFile">The WordPiece vocabulary file descriptor.</param> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.#ctor(System.String,System.Int32,System.Int32,Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile,Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile)"> | ||
| <summary> | ||
| The pinned identity of a downloadable sentence-encoder model: its files, source URLs, expected SHA-256 | ||
| hashes, and vector dimensionality. Hashes are verified after download and a mismatch is rejected. | ||
| </summary> | ||
| <param name="Name">The model name, used as the per-machine cache subdirectory.</param> | ||
| <param name="Dimensions">The embedding vector length the model produces.</param> | ||
| <param name="MaxTokens">The maximum input token length; longer inputs are truncated.</param> | ||
| <param name="ModelFile">The ONNX weights file descriptor.</param> | ||
| <param name="VocabFile">The WordPiece vocabulary file descriptor.</param> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.Name"> | ||
| <summary>The model name, used as the per-machine cache subdirectory.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.Dimensions"> | ||
| <summary>The embedding vector length the model produces.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.MaxTokens"> | ||
| <summary>The maximum input token length; longer inputs are truncated.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.ModelFile"> | ||
| <summary>The ONNX weights file descriptor.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.VocabFile"> | ||
| <summary>The WordPiece vocabulary file descriptor.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.Default"> | ||
| <summary> | ||
| The default model: <c>all-MiniLM-L6-v2</c>, a 384-dimension sentence encoder (~90 MB). URLs and | ||
| hashes were captured from the Hugging Face <c>sentence-transformers/all-MiniLM-L6-v2</c> repository. | ||
| </summary> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile"> | ||
| <summary> | ||
| One downloadable file belonging to an <see cref="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor" />. | ||
| </summary> | ||
| <param name="FileName">The file name within the model cache directory.</param> | ||
| <param name="Url">The pinned download URL.</param> | ||
| <param name="Sha256">The lowercase hexadecimal SHA-256 the downloaded bytes must match.</param> | ||
| <param name="SizeBytes">The expected file size in bytes, used only for the download notice.</param> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile.#ctor(System.String,System.String,System.String,System.Int64)"> | ||
| <summary> | ||
| One downloadable file belonging to an <see cref="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor" />. | ||
| </summary> | ||
| <param name="FileName">The file name within the model cache directory.</param> | ||
| <param name="Url">The pinned download URL.</param> | ||
| <param name="Sha256">The lowercase hexadecimal SHA-256 the downloaded bytes must match.</param> | ||
| <param name="SizeBytes">The expected file size in bytes, used only for the download notice.</param> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile.FileName"> | ||
| <summary>The file name within the model cache directory.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile.Url"> | ||
| <summary>The pinned download URL.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile.Sha256"> | ||
| <summary>The lowercase hexadecimal SHA-256 the downloaded bytes must match.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile.SizeBytes"> | ||
| <summary>The expected file size in bytes, used only for the download notice.</summary> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelResolver"> | ||
| <summary> | ||
| Resolves a model's files to local paths: honoring a sideload directory, reusing a per-machine cache, or | ||
| downloading and verifying against the pinned SHA-256. Returns <see langword="null" /> when the files are | ||
| unavailable (offline with nothing cached, or a hash mismatch), so the caller can fall back to hashing. | ||
| </summary> | ||
| </member> | ||
| <member name="F:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelResolver.SideloadPathVariable"> | ||
| <summary> | ||
| The environment variable that points to a directory holding the model files. When set, the resolver | ||
| loads from there and never touches the network. | ||
| </summary> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelResolver.#ctor(Fuse.Fusion.Embeddings.Onnx.IEmbeddingModelDownloader,System.String)"> | ||
| <summary> | ||
| Initializes a new instance of the <see cref="T:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelResolver" /> class. | ||
| </summary> | ||
| <param name="downloader">The seam used to fetch missing files.</param> | ||
| <param name="cacheRoot"> | ||
| The root of the per-machine model cache. Defaults to <c>~/.fuse/models</c> when <c>null</c>. | ||
| </param> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelResolver.ResolveAsync(Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor,System.Threading.CancellationToken)"> | ||
| <summary> | ||
| Resolves the model and vocabulary file paths for <paramref name="descriptor" />. | ||
| </summary> | ||
| <param name="descriptor">The pinned model descriptor.</param> | ||
| <param name="cancellationToken">Token used to cancel any download.</param> | ||
| <returns>The local file paths, or <see langword="null" /> when the model cannot be made available.</returns> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel"> | ||
| <summary> | ||
| The resolved local file paths for a model. | ||
| </summary> | ||
| <param name="Descriptor">The model descriptor the paths belong to.</param> | ||
| <param name="ModelPath">The local path of the ONNX weights file.</param> | ||
| <param name="VocabPath">The local path of the vocabulary file.</param> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel.#ctor(Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor,System.String,System.String)"> | ||
| <summary> | ||
| The resolved local file paths for a model. | ||
| </summary> | ||
| <param name="Descriptor">The model descriptor the paths belong to.</param> | ||
| <param name="ModelPath">The local path of the ONNX weights file.</param> | ||
| <param name="VocabPath">The local path of the vocabulary file.</param> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel.Descriptor"> | ||
| <summary>The model descriptor the paths belong to.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel.ModelPath"> | ||
| <summary>The local path of the ONNX weights file.</summary> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel.VocabPath"> | ||
| <summary>The local path of the vocabulary file.</summary> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.Extensions.OnnxEmbeddingsServiceCollectionExtensions"> | ||
| <summary> | ||
| Registers the opt-in ONNX semantic embedding model in place of the hashing default, with a tri-state | ||
| resolution and an intact fallback. | ||
| </summary> | ||
| </member> | ||
| <member name="F:Fuse.Fusion.Embeddings.Onnx.Extensions.OnnxEmbeddingsServiceCollectionExtensions.EnableVariable"> | ||
| <summary> | ||
| The environment variable that selects the embedding backend: <c>1</c>/<c>true</c> for ONNX, | ||
| <c>0</c>/<c>false</c> for hashing. | ||
| </summary> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.Extensions.OnnxEmbeddingsServiceCollectionExtensions.ResolveChoice(System.Nullable{System.Boolean})"> | ||
| <summary> | ||
| Resolves the embedding choice: an explicit flag wins, otherwise <see cref="F:Fuse.Fusion.Embeddings.Onnx.Extensions.OnnxEmbeddingsServiceCollectionExtensions.EnableVariable" /> is | ||
| consulted, otherwise the build default applies (<see langword="null" />). The default is opt-in | ||
| (hashing) until a recall@budget measurement justifies flipping it. | ||
| </summary> | ||
| <param name="explicitFlag">The value of an explicit <c>--embeddings</c> flag, or <c>null</c> when absent.</param> | ||
| <returns><see langword="true" /> for ONNX, <see langword="false" /> for hashing, <see langword="null" /> for the default.</returns> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.Extensions.OnnxEmbeddingsServiceCollectionExtensions.AddFuseOnnxEmbeddings(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Nullable{System.Boolean},Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor)"> | ||
| <summary> | ||
| Registers <see cref="T:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel" /> as the <see cref="T:Fuse.Fusion.Retrieval.IEmbeddingModel" /> when embeddings are | ||
| requested and the model resolves; otherwise leaves the hashing default in place. A forced-off choice | ||
| and an unavailable model both keep hashing, so a run never fails for want of the model. | ||
| </summary> | ||
| <param name="services">The service collection. Call after <c>AddFuse</c> so this registration wins.</param> | ||
| <param name="explicitFlag">The value of an explicit <c>--embeddings</c> flag, or <c>null</c>.</param> | ||
| <param name="descriptor">The model to use, or <c>null</c> for <see cref="P:Fuse.Fusion.Embeddings.Onnx.EmbeddingModelDescriptor.Default" />.</param> | ||
| <returns>The same <paramref name="services" /> instance, to allow chaining.</returns> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.HttpEmbeddingModelDownloader"> | ||
| <summary> | ||
| Default <see cref="T:Fuse.Fusion.Embeddings.Onnx.IEmbeddingModelDownloader" /> that fetches files over HTTP, printing a one-line | ||
| stderr notice on first download. A failure (offline, transport error) returns <see langword="false" /> | ||
| so the caller can fall back to the hashing embedding rather than throwing. | ||
| </summary> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.HttpEmbeddingModelDownloader.TryDownloadAsync(Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile,System.String,System.Threading.CancellationToken)"> | ||
| <inheritdoc /> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.IEmbeddingModelDownloader"> | ||
| <summary> | ||
| Fetches a model file to a local path. An injectable seam so tests can supply a fixture or assert that no | ||
| network call is attempted (for example when a model is sideloaded). | ||
| </summary> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.IEmbeddingModelDownloader.TryDownloadAsync(Fuse.Fusion.Embeddings.Onnx.EmbeddingModelFile,System.String,System.Threading.CancellationToken)"> | ||
| <summary> | ||
| Downloads <paramref name="file" /> to <paramref name="destinationPath" />. | ||
| </summary> | ||
| <param name="file">The pinned file descriptor (URL and expected hash).</param> | ||
| <param name="destinationPath">The absolute path to write the file to.</param> | ||
| <param name="cancellationToken">Token used to cancel the download.</param> | ||
| <returns><see langword="true" /> when the file was fetched, <see langword="false" /> when it could not be.</returns> | ||
| </member> | ||
| <member name="T:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel"> | ||
| <summary> | ||
| A genuine semantic <see cref="T:Fuse.Fusion.Retrieval.IEmbeddingModel" /> backed by an ONNX sentence encoder (for example | ||
| <c>all-MiniLM-L6-v2</c>). It tokenizes text with the model's WordPiece vocabulary, runs the transformer, | ||
| mean-pools the token embeddings over the attention mask, and L2-normalizes the result, so cosine | ||
| similarity reflects semantic closeness rather than only lexical overlap. | ||
| </summary> | ||
| <remarks> | ||
| This type references ONNX Runtime and is therefore excluded from the Native AOT build, where the | ||
| hashing embedding remains the fallback. Inference is deterministic, so a repeated query yields an | ||
| identical vector and a stable ranking. The instance is thread-safe for concurrent <see cref="M:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel.Embed(System.String)" /> | ||
| calls and owns the underlying session, which is disposed with it. | ||
| </remarks> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel.#ctor(Fuse.Fusion.Embeddings.Onnx.ResolvedEmbeddingModel)"> | ||
| <summary> | ||
| Initializes a new instance of the <see cref="T:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel" /> class from resolved local files. | ||
| </summary> | ||
| <param name="resolved">The resolved model and vocabulary paths plus the pinned descriptor.</param> | ||
| </member> | ||
| <member name="P:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel.Dimensions"> | ||
| <inheritdoc /> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel.Embed(System.String)"> | ||
| <inheritdoc /> | ||
| </member> | ||
| <member name="M:Fuse.Fusion.Embeddings.Onnx.OnnxEmbeddingModel.Dispose"> | ||
| <inheritdoc /> | ||
| </member> | ||
| </members> | ||
| </doc> |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display