Specify baseline analysis and verified library contract compatibility

This commit is contained in:
Codex
2026-09-11 04:48:44 -07:00
parent 1516949567
commit 2cc4d115d0
171 changed files with 6241 additions and 4 deletions
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,11 @@
base|controls1|data1|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,21 @@
document|Alpha|1
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
mount|data1|controls1|management/data1.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,11 @@
base|controls1|data1|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,21 @@
document|Alpha|1
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
mount|data1|controls1|management/data1.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,11 @@
base|controls1|data1|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,22 @@
document|Alpha|2
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
mount|data1|controls1|management/data1.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|900@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
applied|edit_base|left/P|900@controls1:ms
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,5 @@
member|Alarm|data2/Alarm
member|Code|data2/Code
member|Flag|data2/Flag
member|Interface|data2/Interface
member|Operation|data2/Operation
@@ -0,0 +1,11 @@
base|controls2|data2|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|750@controls2:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.1
description|Monitor alarm
note|Revised documentation only
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,25 @@
document|Alpha|3
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
import|controls2|ControlPatterns|1.0.1|a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779|packages/a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779.library
mount|data1|controls1|management/data1.mount
mount|data2|controls2|management/data2.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|900@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
applied|edit_base|left/P|900@controls1:ms
applied|update|left|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|controls2|data2|2|P.base=keep_local
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,11 @@
base|controls1|data1|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A2
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A2
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,22 @@
document|Alpha|2
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
mount|data1|controls1|management/data1.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A2|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
record|left/E|OA|left Alarm|Interaction|left/A2|sink_left|data1/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
record|left/P|OA|left Elapsed|Property|left/A2|controls1:Duration|900@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
applied|edit_base|left/P|900@controls1:ms
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,5 @@
member|Alarm|data2/Alarm
member|Code|data2/Code
member|Flag|data2/Flag
member|Interface|data2/Interface
member|Operation|data2/Operation
@@ -0,0 +1,11 @@
base|controls2|data2|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|750@controls2:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.1
description|Monitor alarm
note|Revised documentation only
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,25 @@
document|Alpha|3
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
import|controls2|ControlPatterns|1.0.1|a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779|packages/a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779.library
mount|data1|controls1|management/data1.mount
mount|data2|controls2|management/data2.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|900@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
applied|edit_base|left/P|900@controls1:ms
applied|update|left|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|controls2|data2|2|P.base=keep_local
@@ -0,0 +1,24 @@
# Finite-model results
Assertions passed: 120
Initial budget: 1500 ms, satisfied.
After one local base edit: 1650 ms, satisfied.
After selected cosmetic update: 1650 ms, satisfied; exact pins differ.
Outside budget/consumer/global case: exact records unchanged.
Updated left baseline: 750 controls2:ms; current: 900 controls1:ms; declared kind controls2:Duration.
Right instance/base/map: exact original.
Contract path projection: data1/Code -> data2/Code and data1/Operation -> data2/Operation.
Changed field cardinality: selective candidate rejected.
Strict revision identity: old/new refs unequal.
Same-origin typed compatibility: cosmetic revision accepted; Energy/Torque, other origin, changed contract rejected.
Bridge alternative: 2 explicit validated direct witnesses; changed contracts rejected.
Stable vocabulary alternative: exact common pin survives pattern change; vocabulary change remains unresolved without compatibility/migration.
Subjectless explicit C+K selected; unrelated G omitted; selected G requires Q boundary.
OA/SA: explicit pinned counterpart or independent local derivative; refined reverse counterpart fails exact transformed contract.
D1: 28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33
D2: a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779
D3: 4b05d6a15115448e318d0c5d567ebb0bb9e0ab6438bd238e5f3a0716c7db1ee8
This dialect uses opaque symbolic identities, a restricted AST, one package per import and scalar integer-millisecond arithmetic. It is not Studio source, a full package dependency solver, production UUID allocation, complete data/operation/transition admission, REST or native acceptance.
@@ -0,0 +1,5 @@
member|Alarm|data1/Alarm
member|Code|data1/Code
member|Flag|data1/Flag
member|Interface|data1/Interface
member|Operation|data1/Operation
@@ -0,0 +1,5 @@
member|Alarm|data2/Alarm
member|Code|data2/Code
member|Flag|data2/Flag
member|Interface|data2/Interface
member|Operation|data2/Operation
@@ -0,0 +1,11 @@
base|controls2|data2|sink_left|left
original|A|left/A
original|C|left/C
original|E|left/E
original|K|left/K
original|P|left/P
member|A|record|left/A|OA|left Watch|Activity|Monitor alarm
member|C|record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
member|E|record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
member|K|record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
member|P|record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|750@controls2:ms
@@ -0,0 +1,5 @@
lineage|left/A|left/A
lineage|left/C|left/C
lineage|left/E|left/E
lineage|left/K|left/K
lineage|left/P|left/P
@@ -0,0 +1,5 @@
current|A|left/A
current|C|left/C
current|E|left/E
current|K|left/K
current|P|left/P
@@ -0,0 +1,11 @@
base|controls1|data1|sink_right|right
original|A|right/A
original|C|right/C
original|E|right/E
original|K|right/K
original|P|right/P
member|A|record|right/A|OA|right Watch|Activity|Monitor alarm
member|C|record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
member|E|record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
member|K|record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
member|P|record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
@@ -0,0 +1,5 @@
lineage|right/A|right/A
lineage|right/C|right/C
lineage|right/E|right/E
lineage|right/K|right/K
lineage|right/P|right/P
@@ -0,0 +1,5 @@
current|A|right/A
current|C|right/C
current|E|right/E
current|K|right/K
current|P|right/P
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.1
description|Monitor alarm
note|Revised documentation only
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,25 @@
document|Alpha|3
import|controls1|ControlPatterns|1.0.0|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|packages/28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33.library
import|controls2|ControlPatterns|1.0.1|a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779|packages/a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779.library
mount|data1|controls1|management/data1.mount
mount|data2|controls2|management/data2.mount
instance|left|management/left
instance|right|management/right
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|900@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
applied|create-two-instances
applied|edit_base|left/P|900@controls1:ms
applied|update|left|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|controls2|data2|2|P.base=keep_local
@@ -0,0 +1,15 @@
record|sink_left|OA|Receive left|Activity|
record|sink_right|OA|Receive right|Activity|
record|left/A|OA|left Watch|Activity|Monitor alarm
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data1/Alarm
record|left/P|OA|left Elapsed|Property|left/A|controls1:Duration|750@controls1:ms
record|left/C|OA|left Stress|Case|-|left/P=1250@controls1:ms
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls1:ms
record|right/A|OA|right Watch|Activity|Monitor alarm
record|right/E|OA|right Alarm|Interaction|right/A|sink_right|data1/Alarm
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|right/C|OA|right Stress|Case|-|right/P=1250@controls1:ms
record|right/K|OA|right Elapsed limit|Check|right/P|1000@controls1:ms
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
record|global|OA|Unrelated project-wide study|Case|-|left/P=3000@controls1:ms
@@ -0,0 +1,7 @@
record|left/P|OA|left Elapsed|Property|left/A|controls2:Duration|900@controls1:ms
record|left/E|OA|left Alarm|Interaction|left/A|sink_left|data2/Alarm
record|left/C|OA|left Stress|Case|-|left/P=1250@controls2:ms
record|left/K|OA|left Elapsed limit|Check|left/P|1000@controls2:ms
record|right/P|OA|right Elapsed|Property|right/A|controls1:Duration|750@controls1:ms
record|budget|OA|Combined duration|Budget|left/P|right/P|controls1:Duration|2000@controls1:ms
record|outside|OA|Outside typed receiver|Consumer|left/E|data1/Interface|data1/Operation|data1/Code
@@ -0,0 +1,2 @@
checked-same-origin|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|Duration|a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779|Duration
checked-same-origin|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|Interface|a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779|Interface
@@ -0,0 +1,11 @@
new|Alpha
import|controls1|D1
mount|data1|controls1
activity|sink_left|Receive left
activity|sink_right|Receive right
instantiate|left|controls1|data1|sink_left
instantiate|right|controls1|data1|sink_right
budget|budget|left/P|right/P|controls1
consumer|outside|left/E|data1
global_case|global|left/P
receipt|create-two-instances
@@ -0,0 +1 @@
edit_base|left/P|900@controls1:ms
@@ -0,0 +1,256 @@
pinned-counterpart=Transition {
layer: "SA",
records: {
"SA/Alarm": Definition {
member: "SA/Alarm",
class: "Item",
layer: "SA",
fields: [
"Flow",
],
refs: [
"SA/Code",
],
},
"SA/Code": Definition {
member: "SA/Code",
class: "Field",
layer: "SA",
fields: [
"minimum=1;maximum=1",
],
refs: [
"SA/Alarm",
"SA/Flag",
],
},
"SA/Flag": Definition {
member: "SA/Flag",
class: "Scalar",
layer: "SA",
fields: [
"Boolean",
],
refs: [],
},
"SA/Interface": Definition {
member: "SA/Interface",
class: "Interface",
layer: "SA",
fields: [],
refs: [
"SA/Operation",
],
},
"SA/Operation": Definition {
member: "SA/Operation",
class: "Allocation",
layer: "SA",
fields: [
"order=0",
],
refs: [
"SA/Interface",
"SA/Alarm",
],
},
},
origin_pin: "a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779",
target_pin: Some(
"f52b2a9281b60d35ddc0044fc9624b3b30ee0d35d88d1130c2c3e1af54e05696",
),
origin_map: {
"Alarm": "SA/Alarm",
"Code": "SA/Code",
"Flag": "SA/Flag",
"Interface": "SA/Interface",
"Operation": "SA/Operation",
},
mount: true,
}
pinned-architecture={
"sa/alarm": FunctionalExchange {
source: "sa/watch",
target: "sa/receive",
source_port: "sa/watch_out",
target_port: "sa/receive_in",
item: "sa_mount/SA/Alarm",
},
"sa/receive": Function {
name: "Receive left",
},
"sa/receive_in": Port {
owner: "sa/receive",
direction: "In",
accepted_item: "sa_mount/SA/Alarm",
},
"sa/watch": Function {
name: "Watch",
},
"sa/watch_out": Port {
owner: "sa/watch",
direction: "Out",
accepted_item: "sa_mount/SA/Alarm",
},
}
local-derivative=Transition {
layer: "SA",
records: {
"SA/Alarm": Definition {
member: "SA/Alarm",
class: "Item",
layer: "SA",
fields: [
"Flow",
],
refs: [
"SA/Code",
],
},
"SA/Code": Definition {
member: "SA/Code",
class: "Field",
layer: "SA",
fields: [
"minimum=1;maximum=1",
],
refs: [
"SA/Alarm",
"SA/Flag",
],
},
"SA/Flag": Definition {
member: "SA/Flag",
class: "Scalar",
layer: "SA",
fields: [
"Boolean",
],
refs: [],
},
"SA/Interface": Definition {
member: "SA/Interface",
class: "Interface",
layer: "SA",
fields: [],
refs: [
"SA/Operation",
],
},
"SA/Operation": Definition {
member: "SA/Operation",
class: "Allocation",
layer: "SA",
fields: [
"order=0",
],
refs: [
"SA/Interface",
"SA/Alarm",
],
},
},
origin_pin: "a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779",
target_pin: None,
origin_map: {
"Alarm": "SA/Alarm",
"Code": "SA/Code",
"Flag": "SA/Flag",
"Interface": "SA/Interface",
"Operation": "SA/Operation",
},
mount: false,
}
local-architecture={
"sa/alarm": FunctionalExchange {
source: "sa/watch",
target: "sa/receive",
source_port: "sa/watch_out",
target_port: "sa/receive_in",
item: "SA/Alarm",
},
"sa/receive": Function {
name: "Receive left",
},
"sa/receive_in": Port {
owner: "sa/receive",
direction: "In",
accepted_item: "SA/Alarm",
},
"sa/watch": Function {
name: "Watch",
},
"sa/watch_out": Port {
owner: "sa/watch",
direction: "Out",
accepted_item: "SA/Alarm",
},
}
refined-derivative=Transition {
layer: "SA",
records: {
"SA/Alarm": Definition {
member: "SA/Alarm",
class: "Item",
layer: "SA",
fields: [
"Flow",
],
refs: [
"SA/Code",
],
},
"SA/Code": Definition {
member: "SA/Code",
class: "Field",
layer: "SA",
fields: [
"minimum=1;maximum=2",
],
refs: [
"SA/Alarm",
"SA/Flag",
],
},
"SA/Flag": Definition {
member: "SA/Flag",
class: "Scalar",
layer: "SA",
fields: [
"Boolean",
],
refs: [],
},
"SA/Interface": Definition {
member: "SA/Interface",
class: "Interface",
layer: "SA",
fields: [],
refs: [
"SA/Operation",
],
},
"SA/Operation": Definition {
member: "SA/Operation",
class: "Allocation",
layer: "SA",
fields: [
"order=0",
],
refs: [
"SA/Interface",
"SA/Alarm",
],
},
},
origin_pin: "a35102e04b9f6822ab409ab43f83eded33edd0a3a3c1f589245bb7b123ce4779",
target_pin: None,
origin_map: {
"Alarm": "SA/Alarm",
"Code": "SA/Code",
"Flag": "SA/Flag",
"Interface": "SA/Interface",
"Operation": "SA/Operation",
},
mount: false,
}
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,24 @@
package|ControlPatterns|1.0.1
description|Monitor alarm
note|Revised documentation only
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=1|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,24 @@
package|ControlPatterns|2.0.0
description|Monitor alarm
note|Initial documentation
def|Duration|Kind|Neutral|dimension=0,0,1,0,0,0,0;linear|-
def|Energy|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|Torque|Kind|Neutral|dimension=2,1,-2,0,0,0,0;linear|-
def|ms|Unit|Neutral|millis=1|Duration
def|s|Unit|Neutral|millis=1000|Duration
def|Flag|Scalar|OA|Boolean|-
def|Alarm|Item|OA|Flow|Code
def|Code|Field|OA|minimum=1;maximum=2|Alarm,Flag
def|Interface|Interface|OA|-|Operation
def|Operation|Allocation|OA|order=0|Interface,Alarm
prototype|A|record|A|OA|Watch|Activity|Monitor alarm
prototype|E|record|E|OA|Alarm|Interaction|A|H|MOUNT/Alarm
prototype|P|record|P|OA|Elapsed|Property|A|SELF:Duration|750@SELF:ms
prototype|C|record|C|OA|Stress|Case|-|P=1250@SELF:ms
prototype|K|record|K|OA|Elapsed limit|Check|P|1000@SELF:ms
prototype|H|record|H|OA|Prototype receiver|Activity|Context role only
prototype|Q|record|Q|OA|Outside delay|Property|H|SELF:Duration|1000@SELF:ms
prototype|G|record|G|OA|Project-wide study|Case|-|P=2500@SELF:ms,Q=4000@SELF:ms
pattern|monitor|A,E,P,C,K
analysis|P|K|C
role|sink|H|Activity|OA
@@ -0,0 +1,7 @@
package|ControlPatternsSA|1.0.1
description|Explicit SA counterpart
def|SA/Alarm|Item|SA|Flow|SA/Code
def|SA/Code|Field|SA|minimum=1;maximum=1|SA/Alarm,SA/Flag
def|SA/Flag|Scalar|SA|Boolean|
def|SA/Interface|Interface|SA||SA/Operation
def|SA/Operation|Allocation|SA|order=0|SA/Interface,SA/Alarm
@@ -0,0 +1 @@
update|left|28df5ea3447918dfee3c6ed4243d8f986c689f93a54d89c6181b47d6c2f39b33|controls2|data2|2|P.base=keep_local