release orchestrator v1 draft and build fixes
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
// Copyright (c) StellaOps. All rights reserved.
|
||||
// Licensed under AGPL-3.0-or-later. See LICENSE in the project root.
|
||||
|
||||
using System.Collections.Immutable;
|
||||
|
||||
namespace StellaOps.Scanner.ChangeTrace.ByteDiff;
|
||||
|
||||
/// <summary>
|
||||
/// Options for byte-level diffing.
|
||||
/// </summary>
|
||||
public sealed record ByteDiffOptions
|
||||
{
|
||||
/// <summary>
|
||||
/// Rolling hash window size in bytes. Default: 2048.
|
||||
/// </summary>
|
||||
public int WindowSize { get; init; } = 2048;
|
||||
|
||||
/// <summary>
|
||||
/// Step size for window advancement. Default: WindowSize (non-overlapping).
|
||||
/// </summary>
|
||||
public int StepSize { get; init; } = 2048;
|
||||
|
||||
/// <summary>
|
||||
/// Maximum file size to analyze in bytes. Default: 10MB.
|
||||
/// </summary>
|
||||
public long MaxFileSize { get; init; } = 10 * 1024 * 1024;
|
||||
|
||||
/// <summary>
|
||||
/// Whether to analyze by ELF/PE section. Default: true.
|
||||
/// </summary>
|
||||
public bool AnalyzeBySections { get; init; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// Sections to include (e.g., ".text", ".data"). Null = all sections.
|
||||
/// </summary>
|
||||
public ImmutableArray<string>? IncludeSections { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Whether to include context description in output. Default: false.
|
||||
/// </summary>
|
||||
public bool IncludeContext { get; init; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// Enable parallel processing for large files. Default: true.
|
||||
/// </summary>
|
||||
public bool EnableParallel { get; init; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// Minimum number of consecutive changed windows to report. Default: 1.
|
||||
/// </summary>
|
||||
public int MinConsecutiveChanges { get; init; } = 1;
|
||||
|
||||
/// <summary>
|
||||
/// Create default options.
|
||||
/// </summary>
|
||||
public static ByteDiffOptions Default { get; } = new();
|
||||
}
|
||||
Reference in New Issue
Block a user