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:
@@ -87,6 +87,17 @@ Consequences, stated plainly:
|
||||
binding is reportable"), or (b) a new per-condition config entity — the first of its kind. Neither
|
||||
is designed here.
|
||||
|
||||
**Update (Gitea #59, 2026-11-09): option (a) is built.** `TemplateNativeAlarmSource.IsMesReportable`
|
||||
(bool, default false) plus a tri-state `InstanceNativeAlarmSourceOverride.IsMesReportableOverride`
|
||||
(null inherits) mean "every condition mirrored under this binding is MES-reportable". It flattens onto
|
||||
`ResolvedNativeAlarmSource.IsMesReportable`, `NativeAlarmActor` stamps it on every condition it emits
|
||||
and `InstanceActor` stamps it on the quiet-binding placeholder rows, so `ScriptAlarm.IsMesReportable`
|
||||
/ `Alarms.MesReportableAsync()` and the wire fields from #60 carry it. It is **additive** to the
|
||||
900-999 severity band, which still flags a condition on its own (an inbound-API method ORs the two).
|
||||
Migration `AddNativeAlarmSourceMesReportable`; CLI `--mes-reportable` on
|
||||
`template native-alarm-source add|update` and `instance native-alarm-source set`; Transport carries
|
||||
both fields. Per-condition flags (option b) remain unbuilt.
|
||||
|
||||
### 2.4 Central visibility is a follow-up
|
||||
|
||||
The Alarm Summary / Debug View rows are `AlarmStateChanged` values that arrive over gRPC. Showing a
|
||||
|
||||
Reference in New Issue
Block a user