docs: add XML doc comments across src + Sister Projects section in CLAUDE.md
Bulk CommentChecker pass: fills in <param>/<inheritdoc> tags on public APIs across all 23 src/ projects so the doc-coverage gate is green. Also adds a Sister Projects section to CLAUDE.md pointing at the MxAccess Gateway and OtOpcUa sibling repos, and gitignores local credential captures (*login*.txt) and the wonder-app-vd03 deploy/ artifacts.
This commit is contained in:
@@ -13,15 +13,45 @@ namespace ScadaLink.CLI.Commands;
|
||||
/// </summary>
|
||||
public sealed class AuditExportArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Start timestamp for the export time window.
|
||||
/// </summary>
|
||||
public string Since { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// End timestamp for the export time window.
|
||||
/// </summary>
|
||||
public string Until { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// Export format (e.g., 'json', 'csv', 'parquet').
|
||||
/// </summary>
|
||||
public string Format { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// Output file path for the exported audit log.
|
||||
/// </summary>
|
||||
public string Output { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// Channel filter values (repeated query parameter).
|
||||
/// </summary>
|
||||
public string[] Channel { get; set; } = Array.Empty<string>();
|
||||
/// <summary>
|
||||
/// Kind filter values (repeated query parameter).
|
||||
/// </summary>
|
||||
public string[] Kind { get; set; } = Array.Empty<string>();
|
||||
/// <summary>
|
||||
/// Status filter values (repeated query parameter).
|
||||
/// </summary>
|
||||
public string[] Status { get; set; } = Array.Empty<string>();
|
||||
/// <summary>
|
||||
/// Site identifier filter values (repeated query parameter).
|
||||
/// </summary>
|
||||
public string[] Site { get; set; } = Array.Empty<string>();
|
||||
/// <summary>
|
||||
/// Optional target system filter.
|
||||
/// </summary>
|
||||
public string? Target { get; set; }
|
||||
/// <summary>
|
||||
/// Optional actor/user filter.
|
||||
/// </summary>
|
||||
public string? Actor { get; set; }
|
||||
}
|
||||
|
||||
@@ -41,6 +71,8 @@ public static class AuditExportHelpers
|
||||
/// server's multi-value <c>IN (…)</c> filter receives the full set — mirroring
|
||||
/// <see cref="AuditQueryHelpers.BuildQueryString"/>.
|
||||
/// </summary>
|
||||
/// <param name="args">The export arguments containing filters and format.</param>
|
||||
/// <param name="now">The current time for resolving relative time specifications.</param>
|
||||
public static string BuildQueryString(AuditExportArgs args, DateTimeOffset now)
|
||||
{
|
||||
var parts = new List<string>();
|
||||
@@ -79,6 +111,10 @@ public static class AuditExportHelpers
|
||||
/// A <c>501 Not Implemented</c> (parquet not yet supported server-side) prints the
|
||||
/// server message and returns a non-zero exit code.
|
||||
/// </summary>
|
||||
/// <param name="client">The management HTTP client for API communication.</param>
|
||||
/// <param name="args">The export arguments containing filters and output file path.</param>
|
||||
/// <param name="output">Text writer for command output messages.</param>
|
||||
/// <param name="now">The current time for resolving relative time specifications.</param>
|
||||
public static async Task<int> RunExportAsync(
|
||||
ManagementHttpClient client, AuditExportArgs args, TextWriter output, DateTimeOffset now)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user