docs(comments): strip internal task/milestone/bundle bookkeeping from code comments
Remove project bookkeeping citations from shipped code comments across the solution: hyphenated task IDs (WP-14, StoreAndForward-025), milestone/task/ issue refs (M3, Task 4, Audit Log #23, #21), Bundle X task-bundle labels, and C/D/K/S/T phase labels. Comment text only — no code logic, string/log literals, or XML-doc structure changed. Genuine descriptions are preserved (only the citation is stripped), and technical lookalikes are retained (UTF-8, SHA-256, T00:00:00, M365, UTC-5, pre-C4/pre-C5 schema versions). Flagged by the new CommentChecker TaskReferenceInComment / TrackingReferenceInComment checks plus targeted grep passes; full solution builds clean, append-only guard tests pass.
This commit is contained in:
@@ -3,8 +3,8 @@ using ZB.MOM.WW.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
|
||||
/// <summary>
|
||||
/// Akka message sent to the central <c>AuditLogIngestActor</c> (Audit Log #23,
|
||||
/// M2 site-sync pipeline) carrying a batch of <see cref="AuditEvent"/> rows
|
||||
/// Akka message sent to the central <c>AuditLogIngestActor</c> (site-sync
|
||||
/// pipeline) carrying a batch of <see cref="AuditEvent"/> rows
|
||||
/// decoded by the <c>SiteStreamGrpcServer</c> from a site's
|
||||
/// <c>IngestAuditEvents</c> gRPC RPC. The actor stamps
|
||||
/// <see cref="AuditEvent.IngestedAtUtc"/> and writes the rows idempotently to
|
||||
|
||||
@@ -4,8 +4,8 @@ using ZB.MOM.WW.ScadaBridge.Commons.Entities.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
|
||||
/// <summary>
|
||||
/// Akka message sent to the central <c>AuditLogIngestActor</c> (Audit Log #23 M3
|
||||
/// Bundle D dual-write transaction) carrying a batch of combined audit +
|
||||
/// Akka message sent to the central <c>AuditLogIngestActor</c> (dual-write
|
||||
/// transaction) carrying a batch of combined audit +
|
||||
/// site-call telemetry packets decoded by the <c>SiteStreamGrpcServer</c> from a
|
||||
/// site's <c>IngestCachedTelemetry</c> gRPC RPC. For each entry the actor writes
|
||||
/// the <see cref="AuditEvent"/> row AND the <see cref="SiteCall"/> upsert inside
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
|
||||
/// <summary>
|
||||
/// Site Calls UI -> Central: paginated, filtered query over the central
|
||||
/// <c>SiteCalls</c> table (Site Call Audit #22). All filter fields are optional;
|
||||
/// <c>SiteCalls</c> table. All filter fields are optional;
|
||||
/// <see cref="StuckOnly"/> restricts results to stuck cached calls. Mirrors
|
||||
/// <see cref="ZB.MOM.WW.ScadaBridge.Commons.Messages.Notification.NotificationOutboxQueryRequest"/>
|
||||
/// but uses keyset paging (<see cref="AfterCreatedAtUtc"/> + <see cref="AfterId"/>)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
|
||||
/// <summary>
|
||||
/// Outcome of a Site Call Audit (#22) Retry/Discard relay — distinguishes the
|
||||
/// Outcome of a Site Call Audit Retry/Discard relay — distinguishes the
|
||||
/// three cases the Central UI Site Calls page must surface differently.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
|
||||
@@ -3,8 +3,7 @@ using ZB.MOM.WW.ScadaBridge.Commons.Entities.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
|
||||
/// <summary>
|
||||
/// Akka message sent to the central <c>SiteCallAuditActor</c> (Site Call Audit
|
||||
/// #22, Audit Log #23 M3 Bundle C) carrying one <see cref="SiteCall"/> row to
|
||||
/// Akka message sent to the central <c>SiteCallAuditActor</c> carrying one <see cref="SiteCall"/> row to
|
||||
/// be persisted via <c>ISiteCallAuditRepository.UpsertAsync</c>. The repository
|
||||
/// performs an insert-if-not-exists then monotonic update — duplicate gRPC
|
||||
/// packets and reconciliation pulls can both feed the actor without rolling
|
||||
@@ -13,7 +12,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
/// <remarks>
|
||||
/// Lives in <c>ZB.MOM.WW.ScadaBridge.Commons</c> rather than <c>ZB.MOM.WW.ScadaBridge.SiteCallAudit</c>
|
||||
/// so the gRPC server in <c>ZB.MOM.WW.ScadaBridge.Communication</c> can construct it
|
||||
/// without taking a project reference on the actor's host project (Bundle D
|
||||
/// adds the IngestCachedTelemetry RPC that will Tell this command).
|
||||
/// without taking a project reference on the actor's host project — needed
|
||||
/// once the IngestCachedTelemetry RPC that will Tell this command is added.
|
||||
/// </remarks>
|
||||
public sealed record UpsertSiteCallCommand(SiteCall SiteCall);
|
||||
|
||||
@@ -8,7 +8,6 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Audit;
|
||||
/// when the upsert reached the repository without throwing (including the
|
||||
/// monotonic-no-op case where the stored status' rank wins) and <c>false</c>
|
||||
/// when persistence raised an exception. The actor itself stays alive in
|
||||
/// either case — audit-write failures must NEVER abort the user-facing action
|
||||
/// (Audit Log #23 §13).
|
||||
/// either case — audit-write failures must NEVER abort the user-facing action.
|
||||
/// </summary>
|
||||
public sealed record UpsertSiteCallReply(TrackedOperationId TrackedOperationId, bool Accepted);
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.DebugView;
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// <b>Additive-only contract (M2.11):</b> <see cref="InstanceNotFound"/> is an
|
||||
/// <b>Additive-only contract:</b> <see cref="InstanceNotFound"/> is an
|
||||
/// optional trailing parameter with a default of <see langword="false"/> so every
|
||||
/// existing positional constructor call and every existing serialized wire frame
|
||||
/// remains valid. Callers that receive a snapshot with
|
||||
@@ -33,7 +33,7 @@ public record DebugViewSnapshot(
|
||||
IReadOnlyList<AttributeValueChanged> AttributeValues,
|
||||
IReadOnlyList<AlarmStateChanged> AlarmStates,
|
||||
DateTimeOffset SnapshotTimestamp,
|
||||
// M2.11 — additive field: true when the requested instance is not registered
|
||||
// Additive field: true when the requested instance is not registered
|
||||
// on this site. Defaults to false so all existing call sites and wire
|
||||
// frames are unaffected.
|
||||
bool InstanceNotFound = false);
|
||||
|
||||
@@ -22,26 +22,26 @@ public record SiteHealthReport(
|
||||
IReadOnlyDictionary<string, TagQualityCounts>? DataConnectionTagQuality = null,
|
||||
int ParkedMessageCount = 0,
|
||||
IReadOnlyList<NodeStatus>? ClusterNodes = null,
|
||||
// Audit Log (#23) M2 Bundle G: per-interval count of FallbackAuditWriter
|
||||
// Per-interval count of FallbackAuditWriter
|
||||
// primary failures (SQLite throws routed to the drop-oldest ring). Surfaces
|
||||
// a sustained audit-write outage on /monitoring/health. Defaults to 0 so
|
||||
// existing producers / tests that don't construct the field stay valid.
|
||||
int SiteAuditWriteFailures = 0,
|
||||
// Audit Log (#23) M5 Bundle C: per-interval count of payload-filter
|
||||
// Per-interval count of payload-filter
|
||||
// redactor over-redactions (header / body / SQL parameter stages all
|
||||
// throwing → field replaced with the "<redacted: redactor error>"
|
||||
// marker). Surfaces a misconfigured / catastrophic regex on
|
||||
// /monitoring/health. Defaults to 0 for back-compat with existing
|
||||
// producers and tests that don't construct the field.
|
||||
int AuditRedactionFailure = 0,
|
||||
// Audit Log (#23) M6 Bundle E (T6): point-in-time snapshot of the
|
||||
// Point-in-time snapshot of the
|
||||
// site-local SQLite audit-log queue (pending count, oldest pending row,
|
||||
// on-disk bytes). Populated by the site-side SiteAuditBacklogReporter
|
||||
// hosted service every 30 s. Defaults to null so existing producers /
|
||||
// tests that don't refresh the snapshot stay valid; the central health
|
||||
// surface treats null as "no data yet" rather than a zeroed queue.
|
||||
SiteAuditBacklogSnapshot? SiteAuditBacklog = null,
|
||||
// Site Event Logging (#12) M2.16 (#30): cumulative count of event-log write
|
||||
// Site Event Logging: cumulative count of event-log write
|
||||
// failures (SQLite error, disk full, bounded-queue overflow drop) since the
|
||||
// logger was created. Populated by the site-side SiteEventLogFailureCountReporter
|
||||
// hosted service. Point-in-time (not reset on collect) — mirrors the
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.InboundApi;
|
||||
/// Used by Route.To("instanceCode").Call("scriptName", params).
|
||||
/// </summary>
|
||||
/// <param name="ParentExecutionId">
|
||||
/// Audit Log #23 (ParentExecutionId): the spawning execution's <c>ExecutionId</c>
|
||||
/// ParentExecutionId: the spawning execution's <c>ExecutionId</c>
|
||||
/// — for an inbound-API-routed call this is the inbound request's per-request
|
||||
/// execution id. The site records it as the routed script execution's
|
||||
/// <c>ParentExecutionId</c> so a spawned execution points back at its spawner.
|
||||
@@ -34,7 +34,7 @@ public record RouteToCallResponse(
|
||||
/// Request to read attribute(s) from a remote instance.
|
||||
/// </summary>
|
||||
/// <param name="ParentExecutionId">
|
||||
/// Audit Log #23 (ParentExecutionId): mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// ParentExecutionId: mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// For an inbound-API-routed read this is the inbound request's per-request execution id;
|
||||
/// future site-side audit emission for routed reads can stamp it as <c>ParentExecutionId</c>
|
||||
/// so the inbound→site execution-tree link survives the read path. Additive trailing
|
||||
@@ -61,7 +61,7 @@ public record RouteToGetAttributesResponse(
|
||||
/// Request to write attribute(s) on a remote instance.
|
||||
/// </summary>
|
||||
/// <param name="ParentExecutionId">
|
||||
/// Audit Log #23 (ParentExecutionId): mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// ParentExecutionId: mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// For an inbound-API-routed write this is the inbound request's per-request execution id;
|
||||
/// site-side audit emission for the underlying device / static-attribute write can stamp
|
||||
/// it as <c>ParentExecutionId</c> so the inbound→site execution-tree link survives the
|
||||
@@ -93,7 +93,7 @@ public record RouteToSetAttributesResponse(
|
||||
/// times out.
|
||||
/// </summary>
|
||||
/// <param name="ParentExecutionId">
|
||||
/// Audit Log #23 (ParentExecutionId): mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// ParentExecutionId: mirrors <see cref="RouteToCallRequest.ParentExecutionId"/>.
|
||||
/// For an inbound-API-routed wait this is the inbound request's per-request execution id;
|
||||
/// future site-side audit emission for routed waits can stamp it as <c>ParentExecutionId</c>
|
||||
/// so the inbound→site execution-tree link survives the wait path. Additive trailing
|
||||
|
||||
@@ -3,7 +3,7 @@ using ZB.MOM.WW.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
|
||||
/// <summary>
|
||||
/// Audit Log (#23) telemetry envelope sent from a site to central over gRPC.
|
||||
/// Audit Log telemetry envelope sent from a site to central over gRPC.
|
||||
/// At-least-once delivery; central is idempotent on <see cref="AuditEvent.EventId"/>.
|
||||
/// See Component-AuditLog.md "Ingestion" for the handoff contract.
|
||||
/// </summary>
|
||||
|
||||
@@ -4,8 +4,8 @@ using ZB.MOM.WW.ScadaBridge.Commons.Types;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
|
||||
/// <summary>
|
||||
/// Combined audit + operational telemetry packet for cached outbound calls
|
||||
/// (Audit Log #23 / M3). The site emits one packet per lifecycle event
|
||||
/// Combined audit + operational telemetry packet for cached outbound calls.
|
||||
/// The site emits one packet per lifecycle event
|
||||
/// — <c>Submit</c> (Audit kind <c>CachedSubmit</c>), per-attempt
|
||||
/// <c>ApiCallCached</c>/<c>DbWriteCached</c>, terminal <c>CachedResolve</c> —
|
||||
/// and central writes the <see cref="AuditEvent"/> row plus the
|
||||
@@ -18,16 +18,16 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
/// <para>
|
||||
/// Both inner records carry the same <c>TrackedOperationId</c> — the
|
||||
/// idempotency key end-to-end. The <see cref="AuditEvent.CorrelationId"/>
|
||||
/// pattern (used by Audit Log #23 to thread cached-call rows together) is
|
||||
/// pattern (used by Audit Log to thread cached-call rows together) is
|
||||
/// honoured by the site emitter; the packet itself is shape-only and makes no
|
||||
/// independent correlation guarantees.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// Additive-only per Commons REQ-COM-5a (M2 reviewer note) — this is a new
|
||||
/// message, not a rename of any existing M2 envelope.
|
||||
/// Additive-only per Commons REQ-COM-5a — this is a new
|
||||
/// message, not a rename of any existing envelope.
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
/// <param name="Audit">The Audit Log #23 row to insert at central.</param>
|
||||
/// <param name="Audit">The Audit Log row to insert at central.</param>
|
||||
/// <param name="Operational">The <c>SiteCalls</c> upsert mirroring this lifecycle event.</param>
|
||||
public sealed record CachedCallTelemetry(
|
||||
AuditEvent Audit,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
|
||||
/// <summary>
|
||||
/// Audit Log (#23) periodic reconciliation pull request: central asks a site for
|
||||
/// Audit Log periodic reconciliation pull request: central asks a site for
|
||||
/// audit events since the given UTC watermark, up to <paramref name="BatchSize"/>.
|
||||
/// Acts as the fallback when streaming telemetry is lost. See Component-AuditLog.md "Ingestion".
|
||||
/// </summary>
|
||||
|
||||
@@ -3,7 +3,7 @@ using ZB.MOM.WW.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
|
||||
/// <summary>
|
||||
/// Audit Log (#23) periodic reconciliation pull response: the next batch of site
|
||||
/// Audit Log periodic reconciliation pull response: the next batch of site
|
||||
/// audit events plus a <paramref name="MoreAvailable"/> flag signalling the caller
|
||||
/// to advance the watermark and pull again. See Component-AuditLog.md "Ingestion".
|
||||
/// </summary>
|
||||
|
||||
@@ -3,7 +3,7 @@ using ZB.MOM.WW.ScadaBridge.Commons.Entities.Audit;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Integration;
|
||||
|
||||
/// <summary>
|
||||
/// Site Call Audit (#22) periodic reconciliation pull response: the next batch of
|
||||
/// Site Call Audit periodic reconciliation pull response: the next batch of
|
||||
/// site cached-call operational rows (the eventually-consistent <c>SiteCalls</c>
|
||||
/// mirror's self-heal feed) plus a <paramref name="MoreAvailable"/> flag signalling
|
||||
/// the caller to advance the watermark and pull again. Mirrors
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Management;
|
||||
|
||||
// ─────────────────────────────────────────────────────────────────────────────
|
||||
// T17 / D6 — OPC UA server-certificate trust management.
|
||||
// OPC UA server-certificate trust management.
|
||||
//
|
||||
// Cert trust is SITE-LOCAL: there is no central persistence of trusted server
|
||||
// certificates. The trusted-peer PKI store lives on each site node's file
|
||||
// system, so a trust/remove decision must reach BOTH site nodes (node-a and
|
||||
// node-b) or the two PKI stores diverge across failover (Decision D6).
|
||||
// node-b) or the two PKI stores diverge across failover.
|
||||
//
|
||||
// The public commands below are handled by the site Deployment Manager
|
||||
// singleton (active node only). For trust/remove it broadcasts the
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Management;
|
||||
|
||||
// M9-T32c — schema-library authoring commands. The reusable named JSON-Schema
|
||||
// library (the SharedSchema entity + ISharedSchemaRepository, T32a) gains its CRUD
|
||||
// Schema-library authoring commands. The reusable named JSON-Schema
|
||||
// library (the SharedSchema entity + ISharedSchemaRepository) gains its CRUD
|
||||
// surface here. These records travel the same HTTP / ClusterClient management
|
||||
// boundary as every other *Command and are auto-discovered by reflection in
|
||||
// ManagementCommandRegistry (no manual registry entry needed).
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Management;
|
||||
|
||||
// ============================================================================
|
||||
// Two-person ("secured") write commands (M7 OPC UA / MxGateway UX, Task T14b).
|
||||
// Two-person ("secured") write commands.
|
||||
//
|
||||
// An Operator SUBMITS a pending secured write against an MxGateway data
|
||||
// connection; a distinct Verifier later APPROVES (executes — Task C3) or
|
||||
// connection; a distinct Verifier later APPROVES (executes) or
|
||||
// REJECTS it. Separation of duties is enforced at the handler: a write may not
|
||||
// be verified by the same principal that submitted it. ListSecuredWrites is a
|
||||
// read-only query (any authenticated user). Role gating lives in
|
||||
@@ -33,9 +33,9 @@ public record SubmitSecuredWriteCommand(
|
||||
string? Comment);
|
||||
|
||||
/// <summary>
|
||||
/// Verifier request to approve (and execute — handled by Task C3) a pending
|
||||
/// Verifier request to approve (and execute) a pending
|
||||
/// secured write. Declared here so the secured-write contract is complete; the
|
||||
/// approve→execute relay handler and dispatch arm are implemented in C3.
|
||||
/// approve→execute relay handler and dispatch arm are implemented separately.
|
||||
/// </summary>
|
||||
/// <param name="Id">Identity of the pending secured write.</param>
|
||||
/// <param name="Comment">Optional free-text comment supplied by the verifier.</param>
|
||||
|
||||
@@ -5,7 +5,7 @@ public record GetTemplateCommand(int TemplateId);
|
||||
public record CreateTemplateCommand(string Name, string? Description, int? ParentTemplateId);
|
||||
|
||||
/// <summary>
|
||||
/// Updates a template. Optional fields use leave-unchanged semantics (followup #5):
|
||||
/// Updates a template. Optional fields use leave-unchanged semantics:
|
||||
/// a <c>null</c> <see cref="Description"/> keeps the stored description (pass an empty
|
||||
/// string to clear it), and a <c>null</c> <see cref="ParentTemplateId"/> keeps the
|
||||
/// existing parent (the parent is immutable; a non-null value that differs is rejected).
|
||||
@@ -15,7 +15,7 @@ public record DeleteTemplateCommand(int TemplateId);
|
||||
public record ValidateTemplateCommand(int TemplateId);
|
||||
|
||||
/// <summary>
|
||||
/// Read-only authoring query (M9/T26a): returns the EFFECTIVE inherited member
|
||||
/// Read-only authoring query: returns the EFFECTIVE inherited member
|
||||
/// set for a template — computed fresh from the full inheritance chain
|
||||
/// (arbitrary depth), annotated per member with origin + lock state — plus a
|
||||
/// staleness summary comparing the template's stored rows against the resolved
|
||||
@@ -52,7 +52,7 @@ public record ListTemplateNativeAlarmSourcesCommand(int TemplateId);
|
||||
// MinTimeBetweenRuns mirrors the TemplateScript.MinTimeBetweenRuns TimeSpan throttle/re-fire interval;
|
||||
// ExecutionTimeoutSeconds mirrors the per-script TemplateScript.ExecutionTimeoutSeconds override (seconds;
|
||||
// null/non-positive falls back to the site's global default). Both were previously settable only via
|
||||
// Transport bundle import — these fields close the CLI/UI authoring gap (#54). Additive-only: never reorder.
|
||||
// Transport bundle import — these fields close the CLI/UI authoring gap. Additive-only: never reorder.
|
||||
public record AddTemplateScriptCommand(int TemplateId, string Name, string Code, string? TriggerType, string? TriggerConfiguration, bool IsLocked, string? ParameterDefinitions = null, string? ReturnDefinition = null, TimeSpan? MinTimeBetweenRuns = null, int? ExecutionTimeoutSeconds = null);
|
||||
public record UpdateTemplateScriptCommand(int ScriptId, string Name, string Code, string? TriggerType, string? TriggerConfiguration, bool IsLocked, string? ParameterDefinitions = null, string? ReturnDefinition = null, TimeSpan? MinTimeBetweenRuns = null, int? ExecutionTimeoutSeconds = null);
|
||||
public record DeleteTemplateScriptCommand(int ScriptId);
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Management;
|
||||
/// name lists and exports every entity of every supported type.
|
||||
/// <para>
|
||||
/// Inbound API keys are intentionally not selectable: per the inbound-API-key
|
||||
/// re-architecture (C4) keys are not transported between environments; only API
|
||||
/// re-architecture keys are not transported between environments; only API
|
||||
/// methods travel. Re-create keys and re-grant their method scopes on the
|
||||
/// destination via the admin UI/CLI.
|
||||
/// </para>
|
||||
@@ -25,13 +25,13 @@ public sealed record ExportBundleCommand(
|
||||
bool IncludeDependencies,
|
||||
string? Passphrase,
|
||||
string SourceEnvironment,
|
||||
// Additive (M8 B4): site/instance-scoped selection. Sites resolve by
|
||||
// Additive: site/instance-scoped selection. Sites resolve by
|
||||
// SiteIdentifier (preferred) or Name; instances resolve by UniqueName.
|
||||
// Defaulted null so every existing positional caller keeps compiling; the
|
||||
// handler normalizes null to "select nothing" (or everything under All=true).
|
||||
IReadOnlyList<string>? SiteNames = null,
|
||||
IReadOnlyList<string>? InstanceNames = null,
|
||||
// Additive (S10b): SMS provider config selection, mirroring
|
||||
// Additive: SMS provider config selection, mirroring
|
||||
// SmtpConfigurationNames. SmsConfiguration is keyed by AccountSid (no Name
|
||||
// column), so tokens are AccountSid values. Defaulted null so every existing
|
||||
// positional caller keeps compiling.
|
||||
@@ -59,17 +59,17 @@ public sealed record PreviewBundleResult(
|
||||
int ModifiedCount,
|
||||
int IdenticalCount,
|
||||
int BlockerCount,
|
||||
// Additive (M8 D3): site/connection references the operator must resolve
|
||||
// Additive: site/connection references the operator must resolve
|
||||
// before import, carried verbatim from ImportPreview. Defaulted to empty so
|
||||
// every existing positional caller keeps compiling.
|
||||
IReadOnlyList<RequiredSiteMapping>? RequiredSiteMappings = null,
|
||||
IReadOnlyList<RequiredConnectionMapping>? RequiredConnectionMappings = null)
|
||||
{
|
||||
/// <summary>Site references the operator must resolve before import (M8). Never null.</summary>
|
||||
/// <summary>Site references the operator must resolve before import. Never null.</summary>
|
||||
public IReadOnlyList<RequiredSiteMapping> RequiredSiteMappings { get; init; } =
|
||||
RequiredSiteMappings ?? Array.Empty<RequiredSiteMapping>();
|
||||
|
||||
/// <summary>Connection references the operator must resolve before import (M8). Never null.</summary>
|
||||
/// <summary>Connection references the operator must resolve before import. Never null.</summary>
|
||||
public IReadOnlyList<RequiredConnectionMapping> RequiredConnectionMappings { get; init; } =
|
||||
RequiredConnectionMappings ?? Array.Empty<RequiredConnectionMapping>();
|
||||
}
|
||||
@@ -108,7 +108,7 @@ public sealed record ConnectionMappingSpec(
|
||||
/// <c>"overwrite"</c>, <c>"rename"</c>. Rename mints a unique suffix per row.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// M8 (D3): <paramref name="SiteMappings"/> / <paramref name="ConnectionMappings"/>
|
||||
/// <paramref name="SiteMappings"/> / <paramref name="ConnectionMappings"/>
|
||||
/// supply explicit operator resolutions for the source-environment site/connection
|
||||
/// references the bundle carries; the handler merges them with the preview's
|
||||
/// auto-matches and the <paramref name="CreateMissingSites"/> /
|
||||
|
||||
@@ -5,14 +5,14 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.Notification;
|
||||
/// Fire-and-forget with ack; the site retries until a <see cref="NotificationSubmitAck"/> is received.
|
||||
/// </summary>
|
||||
/// <param name="OriginExecutionId">
|
||||
/// The originating script execution's <c>ExecutionId</c> (Audit Log #23). Stamped at
|
||||
/// The originating script execution's <c>ExecutionId</c>. Stamped at
|
||||
/// <c>Notify.Send</c> time and carried, inside the serialized payload, through the site
|
||||
/// store-and-forward buffer so the central dispatcher can echo it onto the
|
||||
/// <c>NotifyDeliver</c> audit rows. Additive trailing member — null for messages built
|
||||
/// before the field existed, or for notifications raised outside a script execution.
|
||||
/// </param>
|
||||
/// <param name="OriginParentExecutionId">
|
||||
/// The originating routed script execution's <c>ParentExecutionId</c> (Audit Log #23).
|
||||
/// The originating routed script execution's <c>ParentExecutionId</c>.
|
||||
/// Stamped at <c>Notify.Send</c> time and carried, inside the serialized payload, through
|
||||
/// the site store-and-forward buffer so the central dispatcher can echo it onto the
|
||||
/// <c>NotifyDeliver</c> audit rows. Additive trailing member — null for messages built
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Messages.ScriptExecution;
|
||||
|
||||
/// <param name="ParentExecutionId">
|
||||
/// Audit Log #23 (ParentExecutionId): the spawning execution's <c>ExecutionId</c>.
|
||||
/// The spawning execution's <c>ExecutionId</c>.
|
||||
/// For an inbound-API-routed call this is the inbound request's per-request
|
||||
/// execution id (carried in from <c>RouteToCallRequest.ParentExecutionId</c>);
|
||||
/// the routed script execution records it as its <c>ParentExecutionId</c> so a
|
||||
|
||||
Reference in New Issue
Block a user