feat(native-alarms): per-binding IsMesReportable on native alarm source bindings (ScadaBridge#59)
TemplateNativeAlarmSource.IsMesReportable + tri-state InstanceNativeAlarmSourceOverride .IsMesReportableOverride flatten onto ResolvedNativeAlarmSource; NativeAlarmActor stamps every mirrored condition and InstanceActor the quiet-binding placeholder, so ScriptAlarm, Alarms.MesReportableAsync() and the #60 wire fields carry it. Additive to the 900-999 severity band. Migration AddNativeAlarmSourceMesReportable. Management commands, CLI --mes-reportable, Central UI (template dialog checkbox, instance override select), Transport DTOs/importer/diff and the revision hash (true-only, so existing hashes are unchanged) carry it. Claude-Session: https://claude.ai/code/session_01GT67AEHd2Acv1YPwGfXEoV
This commit is contained in:
@@ -651,9 +651,10 @@ public static class InstanceCommands
|
||||
var setConnectionOption = new Option<string?>("--connection") { Description = "Connection name override (blank = inherited)" };
|
||||
var setSourceRefOption = new Option<string?>("--source-ref") { Description = "Source reference override (blank = inherited)" };
|
||||
var setFilterOption = new Option<string?>("--filter") { Description = "Condition filter override (blank = inherited)" };
|
||||
var setMesOption = new Option<bool?>("--mes-reportable") { Description = "MES-reportable override for the binding: true or false; omit to inherit" };
|
||||
var setCmd = new Command("set") { Description = "Set (upsert) a native alarm source override on an instance" };
|
||||
setCmd.Add(setIdOption); setCmd.Add(setSourceOption); setCmd.Add(setConnectionOption);
|
||||
setCmd.Add(setSourceRefOption); setCmd.Add(setFilterOption);
|
||||
setCmd.Add(setSourceRefOption); setCmd.Add(setFilterOption); setCmd.Add(setMesOption);
|
||||
setCmd.SetAction(async (ParseResult result) =>
|
||||
{
|
||||
return await CommandHelpers.ExecuteCommandAsync(
|
||||
@@ -663,7 +664,8 @@ public static class InstanceCommands
|
||||
result.GetValue(setSourceOption)!,
|
||||
result.GetValue(setConnectionOption),
|
||||
result.GetValue(setSourceRefOption),
|
||||
result.GetValue(setFilterOption)));
|
||||
result.GetValue(setFilterOption),
|
||||
result.GetValue(setMesOption)));
|
||||
});
|
||||
group.Add(setCmd);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user