Several interconnected changes to optimize performance in incremental mode

Introduce invalidated flag to program producer to control whether to
only process invalidated nodes in incremental mode.

Update validated flag in RulesPlanHandler to reflect the finalized
state, after the plan has been built.

Refactor ProgramProducer/Factory to avoid enumerating the source
root in case no changes have been detected (in incremental mode).

Avoid relaunching program in case the producer did nothing.
This commit is contained in:
Fedor Isakov 2021-01-12 11:39:34 +01:00
parent d88acbe0f4
commit baae5c5bf0
8 changed files with 736 additions and 561 deletions

View File

@ -4061,6 +4061,10 @@
<property role="TrG5h" value="recursively" />
<node concept="10P_77" id="61G6TdDXIQo" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b69bNu" role="3clF46">
<property role="TrG5h" value="invalidated" />
<node concept="10P_77" id="3VwM5b69eRc" role="1tU5fm" />
</node>
<node concept="37vLTG" id="5EDW3XEu33d" role="3clF46">
<property role="TrG5h" value="query" />
<node concept="3uibUv" id="5EDW3XEu3xO" role="1tU5fm">
@ -4088,8 +4092,8 @@
<node concept="3uibUv" id="6OXbTDxOoZ1" role="1tU5fm">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
<node concept="2YIFZM" id="7TC1Xcd$6oC" role="33vP2m">
<ref role="37wK5l" to="psoy:7Oc59RSEjeq" resolve="OK" />
<node concept="2YIFZM" id="3VwM5b5YQL6" role="33vP2m">
<ref role="37wK5l" to="psoy:3VwM5b5YDoi" resolve="SKIP" />
<ref role="1Pybhc" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
</node>
@ -4108,58 +4112,6 @@
</node>
</node>
</node>
<node concept="3clFbJ" id="cmlg9OIKe5" role="3cqZAp">
<node concept="3clFbS" id="cmlg9OIKe7" role="3clFbx">
<node concept="3clFbF" id="6OXbTDxPpdh" role="3cqZAp">
<node concept="37vLTI" id="6OXbTDzR3Ob" role="3clFbG">
<node concept="37vLTw" id="6OXbTDzR41p" role="37vLTJ">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="2OqwBi" id="6OXbTDxPpl6" role="37vLTx">
<node concept="37vLTw" id="6OXbTDxPpdf" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="liA8E" id="6OXbTDxPptb" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="6OXbTDxPpIU" role="37wK5m">
<node concept="37vLTw" id="6OXbTDxPp_9" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPojCI" resolve="factory" />
</node>
<node concept="liA8E" id="6OXbTDxPqb1" role="2OqNvi">
<ref role="37wK5l" to="ksgm:6OXbTDxOzxt" resolve="processQuery" />
<node concept="10QFUN" id="5EDW3XEx1PL" role="37wK5m">
<node concept="37vLTw" id="5EDW3XEx1PK" role="10QFUP">
<ref role="3cqZAo" node="7WKNeR9b_iR" resolve="queryTemplate" />
</node>
<node concept="3uibUv" id="5EDW3XEx1PF" role="10QFUM">
<ref role="3uigEE" to="i348:6OXbTD$iNPP" resolve="QueryTemplate" />
<node concept="16syzq" id="5EDW3XEx26X" role="11_B2D">
<ref role="16sUi3" node="6OXbTDyaL_y" resolve="T" />
</node>
</node>
</node>
<node concept="10QFUN" id="5EDW3XEx_GG" role="37wK5m">
<node concept="37vLTw" id="5EDW3XEx_GF" role="10QFUP">
<ref role="3cqZAo" node="5EDW3XEu33d" resolve="query" />
</node>
<node concept="16syzq" id="5EDW3XExAo6" role="10QFUM">
<ref role="16sUi3" node="5EDW3XEvo5m" resolve="Q" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="cmlg9OIKD0" role="3clFbw">
<node concept="10Nm6u" id="cmlg9OIKR4" role="3uHU7w" />
<node concept="37vLTw" id="cmlg9OIKnz" role="3uHU7B">
<ref role="3cqZAo" node="7WKNeR9b_iR" resolve="queryTemplate" />
</node>
</node>
</node>
<node concept="3clFbF" id="6OXbTDzR2PY" role="3cqZAp">
<node concept="37vLTI" id="6OXbTDzR2Q0" role="3clFbG">
<node concept="37vLTw" id="6OXbTDzR2Q4" role="37vLTJ">
@ -4183,12 +4135,104 @@
<node concept="37vLTw" id="61G6TdDXKQE" role="37wK5m">
<ref role="3cqZAo" node="61G6TdDXEdy" resolve="recursively" />
</node>
<node concept="37vLTw" id="3VwM5b6aJ$4" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b69bNu" resolve="invalidated" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbJ" id="3VwM5b5YS3_" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b5YS3B" role="3clFbx">
<node concept="3clFbJ" id="cmlg9OIKe5" role="3cqZAp">
<node concept="3clFbS" id="cmlg9OIKe7" role="3clFbx">
<node concept="3clFbF" id="6OXbTDxPpdh" role="3cqZAp">
<node concept="37vLTI" id="6OXbTDzR3Ob" role="3clFbG">
<node concept="37vLTw" id="6OXbTDzR41p" role="37vLTJ">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="2OqwBi" id="6OXbTDxPpl6" role="37vLTx">
<node concept="37vLTw" id="6OXbTDxPpdf" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="liA8E" id="6OXbTDxPptb" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="6OXbTDxPpIU" role="37wK5m">
<node concept="37vLTw" id="6OXbTDxPp_9" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPojCI" resolve="factory" />
</node>
<node concept="liA8E" id="6OXbTDxPqb1" role="2OqNvi">
<ref role="37wK5l" to="ksgm:6OXbTDxOzxt" resolve="processQuery" />
<node concept="10QFUN" id="5EDW3XEx1PL" role="37wK5m">
<node concept="37vLTw" id="5EDW3XEx1PK" role="10QFUP">
<ref role="3cqZAo" node="7WKNeR9b_iR" resolve="queryTemplate" />
</node>
<node concept="3uibUv" id="5EDW3XEx1PF" role="10QFUM">
<ref role="3uigEE" to="i348:6OXbTD$iNPP" resolve="QueryTemplate" />
<node concept="16syzq" id="5EDW3XEx26X" role="11_B2D">
<ref role="16sUi3" node="6OXbTDyaL_y" resolve="T" />
</node>
</node>
</node>
<node concept="10QFUN" id="5EDW3XEx_GG" role="37wK5m">
<node concept="37vLTw" id="5EDW3XEx_GF" role="10QFUP">
<ref role="3cqZAo" node="5EDW3XEu33d" resolve="query" />
</node>
<node concept="16syzq" id="5EDW3XExAo6" role="10QFUM">
<ref role="16sUi3" node="5EDW3XEvo5m" resolve="Q" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="cmlg9OIKD0" role="3clFbw">
<node concept="10Nm6u" id="cmlg9OIKR4" role="3uHU7w" />
<node concept="37vLTw" id="cmlg9OIKnz" role="3uHU7B">
<ref role="3cqZAo" node="7WKNeR9b_iR" resolve="queryTemplate" />
</node>
</node>
</node>
<node concept="3clFbF" id="3VwM5b5XfL1" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5XfL2" role="3clFbG">
<node concept="37vLTw" id="3VwM5b5XfL3" role="37vLTJ">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="2OqwBi" id="3VwM5b5XfL4" role="37vLTx">
<node concept="37vLTw" id="3VwM5b5XfL5" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="liA8E" id="3VwM5b5XfL6" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="3VwM5b5XfL7" role="37wK5m">
<node concept="37vLTw" id="3VwM5b5XfL8" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPojCI" resolve="factory" />
</node>
<node concept="liA8E" id="3VwM5b5XfL9" role="2OqNvi">
<ref role="37wK5l" to="ksgm:7nkyKX7ncaN" resolve="processAux" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3fqX7Q" id="3VwM5b5YSVE" role="3clFbw">
<node concept="2OqwBi" id="3VwM5b5YSVG" role="3fr31v">
<node concept="37vLTw" id="3VwM5b5YSVH" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxOoZd" resolve="result" />
</node>
<node concept="liA8E" id="3VwM5b5YSVI" role="2OqNvi">
<ref role="37wK5l" to="psoy:3VwM5b5XMK9" resolve="isTrivial" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="6OXbTDzSpO_" role="3cqZAp" />
<node concept="3clFbF" id="6OXbTDzR49N" role="3cqZAp">
<node concept="37vLTw" id="6OXbTDzR49L" role="3clFbG">
@ -4265,17 +4309,6 @@
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="7kTeLbPnFaf" role="3clF46">
<property role="TrG5h" value="produceAction" />
<node concept="1ajhzC" id="7kTeLbPnFEB" role="1tU5fm">
<node concept="3uibUv" id="7DvO2M9B7a5" role="1ajw0F">
<ref role="3uigEE" to="ksgm:12yN8DyF_E1" resolve="ProgramFactory" />
</node>
<node concept="3uibUv" id="7kTeLbPnOYu" role="1ajl9A">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
</node>
</node>
<node concept="3uibUv" id="7kTeLbPnVDn" role="3clF45">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
@ -4540,133 +4573,126 @@
</node>
</node>
<node concept="3clFbH" id="51nMZI9$QRH" role="3cqZAp" />
<node concept="3cpWs8" id="6tPOoeTaVAX" role="3cqZAp">
<node concept="3cpWsn" id="6tPOoeTaVAY" role="3cpWs9">
<property role="TrG5h" value="programBuilder" />
<node concept="3uibUv" id="4baZKvaNZHJ" role="1tU5fm">
<ref role="3uigEE" node="5rhZO$TYZJM" resolve="ProgramProducer.ProgramBuilder" />
</node>
<node concept="2ShNRf" id="6tPOoeTaVAZ" role="33vP2m">
<node concept="1pGfFk" id="6tPOoeTaVB0" role="2ShVmc">
<ref role="37wK5l" node="4baZKvaO3Fj" resolve="ProgramProducer.ProgramBuilder" />
<node concept="2OqwBi" id="4baZKvaO6tz" role="37wK5m">
<node concept="37vLTw" id="4baZKvaO6t$" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxQIa8" resolve="factory" />
</node>
<node concept="liA8E" id="4baZKvaO6t_" role="2OqNvi">
<ref role="37wK5l" to="ksgm:4baZKvaJUD7" resolve="getPreambleInfo" />
<node concept="3clFbJ" id="3VwM5b5YXMK" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b5YXMM" role="3clFbx">
<node concept="3cpWs8" id="6tPOoeTaVAX" role="3cqZAp">
<node concept="3cpWsn" id="6tPOoeTaVAY" role="3cpWs9">
<property role="TrG5h" value="programBuilder" />
<node concept="3uibUv" id="4baZKvaNZHJ" role="1tU5fm">
<ref role="3uigEE" node="5rhZO$TYZJM" resolve="ProgramProducer.ProgramBuilder" />
</node>
<node concept="2ShNRf" id="6tPOoeTaVAZ" role="33vP2m">
<node concept="1pGfFk" id="6tPOoeTaVB0" role="2ShVmc">
<ref role="37wK5l" node="4baZKvaO3Fj" resolve="ProgramProducer.ProgramBuilder" />
<node concept="2OqwBi" id="4baZKvaO6tz" role="37wK5m">
<node concept="37vLTw" id="4baZKvaO6t$" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxQIa8" resolve="factory" />
</node>
<node concept="liA8E" id="4baZKvaO6t_" role="2OqNvi">
<ref role="37wK5l" to="ksgm:4baZKvaJUD7" resolve="getPreambleInfo" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="cmlg9O$$EG" role="3cqZAp">
<node concept="37vLTI" id="cmlg9O$$EH" role="3clFbG">
<node concept="37vLTw" id="cmlg9O$$EI" role="37vLTJ">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
<node concept="2OqwBi" id="cmlg9O$$EJ" role="37vLTx">
<node concept="37vLTw" id="cmlg9O$$EK" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
<node concept="liA8E" id="cmlg9O$$EL" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="cmlg9O$$EM" role="37wK5m">
<node concept="37vLTw" id="cmlg9O$$EN" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDxQIa8" resolve="factory" />
<node concept="3clFbF" id="3VwM5b5WuV8" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5Wvj1" role="3clFbG">
<node concept="2OqwBi" id="3VwM5b5WvBu" role="37vLTx">
<node concept="37vLTw" id="3VwM5b5WvA3" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
<node concept="liA8E" id="cmlg9O$B54" role="2OqNvi">
<ref role="37wK5l" to="ksgm:7nkyKX7ncaN" resolve="buildProgram" />
<node concept="1bVj0M" id="4baZKvaLWNY" role="37wK5m">
<node concept="3clFbS" id="4baZKvaLWNZ" role="1bW5cS">
<node concept="3clFbF" id="4baZKvaLXy9" role="3cqZAp">
<node concept="2OqwBi" id="4baZKvaLXFF" role="3clFbG">
<node concept="37vLTw" id="4baZKvaLXy8" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeTaVAY" resolve="programBuilder" />
</node>
<node concept="liA8E" id="4baZKvaLXMy" role="2OqNvi">
<ref role="37wK5l" node="1XKnVPruHE" resolve="build" />
<node concept="37vLTw" id="4baZKvaLXSB" role="37wK5m">
<ref role="3cqZAo" node="4baZKvaLWTt" resolve="planHandler" />
</node>
</node>
<node concept="liA8E" id="3VwM5b5WvHU" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="3VwM5b5WvTK" role="37wK5m">
<node concept="37vLTw" id="3VwM5b5WvTL" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeTaVAY" resolve="programBuilder" />
</node>
<node concept="liA8E" id="3VwM5b5WvTM" role="2OqNvi">
<ref role="37wK5l" node="1XKnVPruHE" resolve="build" />
<node concept="37vLTw" id="3VwM5b5WvTN" role="37wK5m">
<ref role="3cqZAo" node="7i3KM7gknF0" resolve="planHandler" />
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="3VwM5b5WuV6" role="37vLTJ">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
</node>
</node>
<node concept="3clFbH" id="cmlg9OC9fp" role="3cqZAp" />
<node concept="3clFbJ" id="cmlg9OCavS" role="3cqZAp">
<node concept="3clFbS" id="cmlg9OCavU" role="3clFbx">
<node concept="3clFbF" id="6tPOoeTb3FO" role="3cqZAp">
<node concept="37vLTI" id="6tPOoeTb4EN" role="3clFbG">
<node concept="2OqwBi" id="6tPOoeTb4Rp" role="37vLTx">
<node concept="37vLTw" id="6tPOoeTb4Ki" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeTaVAY" resolve="programBuilder" />
</node>
<node concept="liA8E" id="6tPOoeTb4ZE" role="2OqNvi">
<ref role="37wK5l" node="5rhZO$TZiL1" resolve="toProgram" />
<node concept="37vLTw" id="6tPOoeTb8N4" role="37wK5m">
<ref role="3cqZAo" node="6OXbTDxtYkB" resolve="name" />
</node>
</node>
</node>
<node concept="2OqwBi" id="6tPOoeTb47l" role="37vLTJ">
<node concept="Xjq3P" id="6tPOoeTb3FM" role="2Oq$k0" />
<node concept="2OwXpG" id="6tPOoeTb4lL" role="2OqNvi">
<ref role="2Oxat5" node="1pPth$lE8Xs" resolve="program" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1imVejVAz4t" role="3cqZAp">
<node concept="37vLTI" id="1imVejVB2DR" role="3clFbG">
<node concept="2OqwBi" id="1imVejVB2QO" role="37vLTx">
<node concept="37vLTw" id="1imVejVB2Hs" role="2Oq$k0">
<ref role="3cqZAo" node="1imVejVAllg" resolve="occurrenceCache" />
</node>
<node concept="liA8E" id="1imVejVB32M" role="2OqNvi">
<ref role="37wK5l" to="i348:1imVejVABtA" resolve="getAll" />
<node concept="2OqwBi" id="1imVejVB3AY" role="37wK5m">
<node concept="37vLTw" id="1imVejVB3f4" role="2Oq$k0">
<ref role="3cqZAo" node="1imVejV_lwG" resolve="cachedResultsFilter" />
</node>
<node concept="liA8E" id="1imVejVB3P5" role="2OqNvi">
<ref role="37wK5l" to="i348:1imVejVyfmY" resolve="getSkippedApplications" />
</node>
</node>
<node concept="3clFbH" id="4baZKvaLXXg" role="3cqZAp" />
</node>
<node concept="37vLTG" id="4baZKvaLWTt" role="1bW2Oz">
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="1XKnVPrt8V" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="2OqwBi" id="1imVejVAzcK" role="37vLTJ">
<node concept="Xjq3P" id="1imVejVAz4r" role="2Oq$k0" />
<node concept="2OwXpG" id="1imVejVAzjA" role="2OqNvi">
<ref role="2Oxat5" node="1imVejVAyjK" resolve="initialStore" />
</node>
</node>
</node>
</node>
</node>
<node concept="2OqwBi" id="cmlg9OCaMk" role="3clFbw">
<node concept="37vLTw" id="cmlg9OCaBS" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
<node concept="liA8E" id="cmlg9OCaV3" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="cmlg9OC9fp" role="3cqZAp" />
<node concept="3clFbJ" id="cmlg9OCavS" role="3cqZAp">
<node concept="3clFbS" id="cmlg9OCavU" role="3clFbx">
<node concept="3clFbF" id="6tPOoeTb3FO" role="3cqZAp">
<node concept="37vLTI" id="6tPOoeTb4EN" role="3clFbG">
<node concept="2OqwBi" id="6tPOoeTb4Rp" role="37vLTx">
<node concept="37vLTw" id="6tPOoeTb4Ki" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeTaVAY" resolve="programBuilder" />
</node>
<node concept="liA8E" id="6tPOoeTb4ZE" role="2OqNvi">
<ref role="37wK5l" node="5rhZO$TZiL1" resolve="toProgram" />
<node concept="37vLTw" id="6tPOoeTb8N4" role="37wK5m">
<ref role="3cqZAo" node="6OXbTDxtYkB" resolve="name" />
</node>
</node>
</node>
<node concept="2OqwBi" id="6tPOoeTb47l" role="37vLTJ">
<node concept="Xjq3P" id="6tPOoeTb3FM" role="2Oq$k0" />
<node concept="2OwXpG" id="6tPOoeTb4lL" role="2OqNvi">
<ref role="2Oxat5" node="1pPth$lE8Xs" resolve="program" />
</node>
</node>
<node concept="3fqX7Q" id="3VwM5b5YXYx" role="3clFbw">
<node concept="2OqwBi" id="3VwM5b5YYic" role="3fr31v">
<node concept="37vLTw" id="3VwM5b5YXYZ" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
</node>
<node concept="3clFbF" id="1imVejVAz4t" role="3cqZAp">
<node concept="37vLTI" id="1imVejVB2DR" role="3clFbG">
<node concept="2OqwBi" id="1imVejVB2QO" role="37vLTx">
<node concept="37vLTw" id="1imVejVB2Hs" role="2Oq$k0">
<ref role="3cqZAo" node="1imVejVAllg" resolve="occurrenceCache" />
</node>
<node concept="liA8E" id="1imVejVB32M" role="2OqNvi">
<ref role="37wK5l" to="i348:1imVejVABtA" resolve="getAll" />
<node concept="2OqwBi" id="1imVejVB3AY" role="37wK5m">
<node concept="37vLTw" id="1imVejVB3f4" role="2Oq$k0">
<ref role="3cqZAo" node="1imVejV_lwG" resolve="cachedResultsFilter" />
</node>
<node concept="liA8E" id="1imVejVB3P5" role="2OqNvi">
<ref role="37wK5l" to="i348:1imVejVyfmY" resolve="getSkippedApplications" />
</node>
</node>
</node>
</node>
<node concept="2OqwBi" id="1imVejVAzcK" role="37vLTJ">
<node concept="Xjq3P" id="1imVejVAz4r" role="2Oq$k0" />
<node concept="2OwXpG" id="1imVejVAzjA" role="2OqNvi">
<ref role="2Oxat5" node="1imVejVAyjK" resolve="initialStore" />
</node>
</node>
<node concept="liA8E" id="3VwM5b5YYtC" role="2OqNvi">
<ref role="37wK5l" to="psoy:3VwM5b5XMK9" resolve="isTrivial" />
</node>
</node>
</node>
<node concept="2OqwBi" id="cmlg9OCaMk" role="3clFbw">
<node concept="37vLTw" id="cmlg9OCaBS" role="2Oq$k0">
<ref role="3cqZAo" node="7kTeLbPnP2B" resolve="result" />
</node>
<node concept="liA8E" id="cmlg9OCaV3" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
</node>
<node concept="3clFbH" id="7kTeLbPnP3O" role="3cqZAp" />
<node concept="3clFbF" id="7kTeLbPnP3P" role="3cqZAp">
@ -4675,6 +4701,17 @@
</node>
</node>
</node>
<node concept="37vLTG" id="7kTeLbPnFaf" role="3clF46">
<property role="TrG5h" value="produceAction" />
<node concept="1ajhzC" id="7kTeLbPnFEB" role="1tU5fm">
<node concept="3uibUv" id="7DvO2M9B7a5" role="1ajw0F">
<ref role="3uigEE" to="ksgm:12yN8DyF_E1" resolve="ProgramFactory" />
</node>
<node concept="3uibUv" id="7kTeLbPnOYu" role="1ajl9A">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="cmlg9OJhKU" role="jymVt" />
<node concept="2tJIrI" id="3GlpCDSyN7T" role="jymVt" />

View File

@ -1100,6 +1100,17 @@
</node>
<node concept="3cqZAl" id="cmlg9OuIxP" role="3clF45" />
<node concept="3clFbS" id="cmlg9OuIxQ" role="3clF47">
<node concept="3clFbF" id="3VwM5b5IeSp" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5IgeC" role="3clFbG">
<node concept="3clFbT" id="3VwM5b5Igio" role="37vLTx" />
<node concept="2OqwBi" id="3VwM5b5If20" role="37vLTJ">
<node concept="Xjq3P" id="3VwM5b5IeSn" role="2Oq$k0" />
<node concept="2OwXpG" id="3VwM5b5IfdQ" role="2OqNvi">
<ref role="2Oxat5" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="cmlg9Ov5u4" role="3cqZAp">
<node concept="2OqwBi" id="cmlg9Ow9om" role="3clFbG">
<node concept="1rXfSq" id="cmlg9Ov5u6" role="2Oq$k0">
@ -1442,6 +1453,24 @@
</node>
</node>
</node>
<node concept="3clFbF" id="3VwM5b5IbXD" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5IdE8" role="3clFbG">
<node concept="2OqwBi" id="3VwM5b5IeAR" role="37vLTx">
<node concept="37vLTw" id="3VwM5b5Ieu0" role="2Oq$k0">
<ref role="3cqZAo" node="1XKnVPw3aj" resolve="res" />
</node>
<node concept="liA8E" id="3VwM5b5IeJ5" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
<node concept="2OqwBi" id="3VwM5b5IcqK" role="37vLTJ">
<node concept="Xjq3P" id="3VwM5b5IbXB" role="2Oq$k0" />
<node concept="2OwXpG" id="3VwM5b5IcEB" role="2OqNvi">
<ref role="2Oxat5" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1XKnVPw9aq" role="3cqZAp">
<node concept="37vLTw" id="1XKnVPw9ao" role="3clFbG">
<ref role="3cqZAo" node="1XKnVPw3aj" resolve="res" />
@ -1502,6 +1531,19 @@
</node>
</node>
<node concept="2tJIrI" id="7DvO2M9Uaho" role="jymVt" />
<node concept="3clFb_" id="3VwM5b5Ihsr" role="jymVt">
<property role="TrG5h" value="isValidated" />
<node concept="10P_77" id="3VwM5b5Iuzo" role="3clF45" />
<node concept="3Tm1VV" id="3VwM5b5Ihsu" role="1B3o_S" />
<node concept="3clFbS" id="3VwM5b5Ihsv" role="3clF47">
<node concept="3clFbF" id="3VwM5b5J027" role="3cqZAp">
<node concept="37vLTw" id="3VwM5b5J026" role="3clFbG">
<ref role="3cqZAo" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="3VwM5b5L31H" role="jymVt" />
<node concept="3clFb_" id="7DvO2M9Uahp" role="jymVt">
<property role="TrG5h" value="updateAuxRules" />
<node concept="37vLTG" id="7DvO2M9Uahq" role="3clF46">
@ -4986,6 +5028,12 @@
</node>
<node concept="10Nm6u" id="2hQbw6HT6iu" role="33vP2m" />
</node>
<node concept="312cEg" id="3VwM5b5HXAZ" role="jymVt">
<property role="TrG5h" value="validated" />
<node concept="3Tm6S6" id="3VwM5b5HXB0" role="1B3o_S" />
<node concept="10P_77" id="3VwM5b5I8WW" role="1tU5fm" />
<node concept="3clFbT" id="3VwM5b5IaTL" role="33vP2m" />
</node>
<node concept="3Tm1VV" id="cmlg9OLXEa" role="1B3o_S" />
</node>
<node concept="312cEu" id="12yN8DyNqdl">
@ -6687,7 +6735,7 @@
</node>
<node concept="2tJIrI" id="6i42QSspmaL" role="jymVt" />
<node concept="3clFb_" id="7nkyKX7ncaN" role="jymVt">
<property role="TrG5h" value="buildProgram" />
<property role="TrG5h" value="processAux" />
<node concept="3uibUv" id="7nkyKX7nfei" role="3clF45">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
@ -6850,30 +6898,6 @@
</node>
</node>
</node>
<node concept="3clFbH" id="2TBKto$2ijV" role="3cqZAp" />
<node concept="3clFbF" id="1XKnVPbVER" role="3cqZAp">
<node concept="37vLTI" id="1XKnVPbVES" role="3clFbG">
<node concept="2OqwBi" id="1XKnVPbVET" role="37vLTx">
<node concept="37vLTw" id="1XKnVPbVEU" role="2Oq$k0">
<ref role="3cqZAo" node="2Z9Itkddll6" resolve="res" />
</node>
<node concept="liA8E" id="1XKnVPbVEV" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2Sg_IR" id="1XKnVPbVEW" role="37wK5m">
<node concept="37vLTw" id="1XKnVPbVEY" role="2SgHGx">
<ref role="3cqZAo" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
<node concept="37vLTw" id="1XKnVPbVF0" role="2SgG2M">
<ref role="3cqZAo" node="4baZKvaLlD4" resolve="buildTask" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="1XKnVPbVF1" role="37vLTJ">
<ref role="3cqZAo" node="2Z9Itkddll6" resolve="res" />
</node>
</node>
</node>
<node concept="3clFbH" id="1XKnVPbVEb" role="3cqZAp" />
</node>
</node>
@ -6883,17 +6907,6 @@
</node>
</node>
</node>
<node concept="37vLTG" id="4baZKvaLlD4" role="3clF46">
<property role="TrG5h" value="buildTask" />
<node concept="1ajhzC" id="4baZKvaLyhT" role="1tU5fm">
<node concept="3uibUv" id="4baZKvaLDt4" role="1ajl9A">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
<node concept="3uibUv" id="1XKnVPrrFR" role="1ajw0F">
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="7Oc59RSy_Bt" role="jymVt" />
<node concept="3clFb_" id="4QPCta1bMC1" role="jymVt">
@ -6908,6 +6921,10 @@
<property role="TrG5h" value="recursively" />
<node concept="10P_77" id="61G6TdDKG4G" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b6awf7" role="3clF46">
<property role="TrG5h" value="invalidated" />
<node concept="10P_77" id="3VwM5b6aAXH" role="1tU5fm" />
</node>
<node concept="3uibUv" id="4QPCta1bMC8" role="3clF45">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
@ -6919,8 +6936,8 @@
<node concept="3uibUv" id="4QPCta1bMCd" role="1tU5fm">
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
<node concept="2YIFZM" id="7TC1Xcd$6oE" role="33vP2m">
<ref role="37wK5l" to="psoy:7Oc59RSEjeq" resolve="OK" />
<node concept="2YIFZM" id="3VwM5b5YOTJ" role="33vP2m">
<ref role="37wK5l" to="psoy:3VwM5b5YDoi" resolve="SKIP" />
<ref role="1Pybhc" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
</node>
@ -7206,35 +7223,56 @@
</node>
</node>
</node>
<node concept="3clFbF" id="4QPCta1bMCp" role="3cqZAp">
<node concept="37vLTI" id="4QPCta1bMCq" role="3clFbG">
<node concept="2OqwBi" id="4QPCta1bMCr" role="37vLTx">
<node concept="37vLTw" id="4QPCta1bMCs" role="2Oq$k0">
<ref role="3cqZAo" node="4QPCta1bMCc" resolve="result" />
</node>
<node concept="liA8E" id="4QPCta1bMCt" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="4QPCta1bMCu" role="37wK5m">
<node concept="Xjq3P" id="4QPCta1bMCv" role="2Oq$k0" />
<node concept="liA8E" id="4QPCta1bMCw" role="2OqNvi">
<ref role="37wK5l" node="4QPCta1aZLs" resolve="processInput" />
<node concept="37vLTw" id="4QPCta1bMCx" role="37wK5m">
<ref role="3cqZAo" node="4QPCta1bMC2" resolve="input" />
</node>
<node concept="37vLTw" id="61G6TdDL5vd" role="37wK5m">
<ref role="3cqZAo" node="61G6TdDK_5y" resolve="recursively" />
</node>
<node concept="2ShNRf" id="2hQbw6HB4BX" role="37wK5m">
<node concept="2i4dXS" id="2hQbw6HB6J5" role="2ShVmc">
<node concept="3Tqbb2" id="2hQbw6HB7e7" role="HW$YZ" />
<node concept="3clFbJ" id="3VwM5b5J6_6" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b5J6_8" role="3clFbx">
<node concept="3clFbF" id="4QPCta1bMCp" role="3cqZAp">
<node concept="37vLTI" id="4QPCta1bMCq" role="3clFbG">
<node concept="2OqwBi" id="4QPCta1bMCr" role="37vLTx">
<node concept="37vLTw" id="4QPCta1bMCs" role="2Oq$k0">
<ref role="3cqZAo" node="4QPCta1bMCc" resolve="result" />
</node>
<node concept="liA8E" id="4QPCta1bMCt" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="4QPCta1bMCu" role="37wK5m">
<node concept="Xjq3P" id="4QPCta1bMCv" role="2Oq$k0" />
<node concept="liA8E" id="4QPCta1bMCw" role="2OqNvi">
<ref role="37wK5l" node="4QPCta1aZLs" resolve="processInput" />
<node concept="37vLTw" id="4QPCta1bMCx" role="37wK5m">
<ref role="3cqZAo" node="4QPCta1bMC2" resolve="input" />
</node>
<node concept="37vLTw" id="61G6TdDL5vd" role="37wK5m">
<ref role="3cqZAo" node="61G6TdDK_5y" resolve="recursively" />
</node>
<node concept="2ShNRf" id="2hQbw6HB4BX" role="37wK5m">
<node concept="2i4dXS" id="2hQbw6HB6J5" role="2ShVmc">
<node concept="3Tqbb2" id="2hQbw6HB7e7" role="HW$YZ" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="4QPCta1bMCy" role="37vLTJ">
<ref role="3cqZAo" node="4QPCta1bMCc" resolve="result" />
</node>
</node>
</node>
<node concept="37vLTw" id="4QPCta1bMCy" role="37vLTJ">
<ref role="3cqZAo" node="4QPCta1bMCc" resolve="result" />
</node>
<node concept="3fqX7Q" id="3VwM5b64e8w" role="3clFbw">
<node concept="1eOMI4" id="3VwM5b64e8C" role="3fr31v">
<node concept="1Wc70l" id="3VwM5b64bQ9" role="1eOMHV">
<node concept="37vLTw" id="3VwM5b6aGkQ" role="3uHU7B">
<ref role="3cqZAo" node="3VwM5b6awf7" resolve="invalidated" />
</node>
<node concept="2OqwBi" id="3VwM5b5J81f" role="3uHU7w">
<node concept="37vLTw" id="3VwM5b5J7GA" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
<node concept="liA8E" id="3VwM5b5J8gz" role="2OqNvi">
<ref role="37wK5l" node="3VwM5b5Ihsr" resolve="isValidated" />
</node>
</node>
</node>
</node>
</node>
</node>

View File

@ -2081,6 +2081,7 @@
<node concept="3clFbT" id="61G6TdDXSDw" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
<node concept="3clFbT" id="3VwM5b69sNB" role="37wK5m" />
<node concept="37vLTw" id="3j46jeGMKtD" role="37wK5m">
<ref role="3cqZAo" node="3j46jeGMH3J" resolve="query" />
</node>

View File

@ -2770,7 +2770,9 @@
<node concept="37vLTw" id="1z4$59jNiwB" role="37wK5m">
<ref role="3cqZAo" node="1z4$59jNhpk" resolve="tmo" />
</node>
<node concept="3clFbT" id="1T5MAgPgIqM" role="37wK5m" />
<node concept="3clFbT" id="5XNK1YzpxKa" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
</node>
@ -3564,6 +3566,7 @@
<node concept="3clFbT" id="61G6TdDXWzJ" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
<node concept="3clFbT" id="3VwM5b69wKn" role="37wK5m" />
<node concept="2YIFZM" id="5EDW3XEzAnI" role="37wK5m">
<ref role="37wK5l" to="tj24:5EDW3XDYggE" resolve="check" />
<ref role="1Pybhc" to="tj24:5EDW3XDYg8Y" resolve="TypecheckingQueries" />

View File

@ -3370,6 +3370,7 @@
<node concept="3clFbT" id="61G6TdE2zqb" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
<node concept="3clFbT" id="3VwM5b681nz" role="37wK5m" />
<node concept="37vLTw" id="7WKNeR8ThOi" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR8SQxI" resolve="repository" />
</node>

View File

@ -6490,7 +6490,9 @@
<ref role="3cqZAo" node="1FOQehxzduN" resolve="repository" />
</node>
</node>
<node concept="3clFbT" id="1T5MAgPgEmd" role="37wK5m" />
<node concept="3clFbT" id="5XNK1Yzpxgo" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="37vLTw" id="6hpwxwivOos" role="37wK5m">
@ -6551,7 +6553,9 @@
<ref role="3cqZAo" node="1z4$59iHBaC" resolve="repository" />
</node>
</node>
<node concept="3clFbT" id="1T5MAgPgEyI" role="37wK5m" />
<node concept="3clFbT" id="5XNK1YzpxoH" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="37vLTw" id="1z4$59iHI$M" role="37wK5m">
@ -10334,31 +10338,28 @@
</node>
<node concept="3clFbF" id="1T5MAgPeBfk" role="3cqZAp">
<node concept="37vLTI" id="1T5MAgPeBFl" role="3clFbG">
<node concept="2OqwBi" id="1T5MAgPeBVP" role="37vLTx">
<node concept="37vLTw" id="1T5MAgPgNjO" role="2Oq$k0">
<ref role="3cqZAo" node="5cBWTAehvVd" resolve="typesModuleOwner" />
</node>
<node concept="liA8E" id="1T5MAgPeBY6" role="2OqNvi">
<ref role="37wK5l" node="1T5MAgPew6v" resolve="createSharedCacheHolder" />
</node>
</node>
<node concept="2OqwBi" id="1T5MAgPeBmy" role="37vLTJ">
<node concept="Xjq3P" id="1T5MAgPeBfi" role="2Oq$k0" />
<node concept="2OwXpG" id="1T5MAgPeBuJ" role="2OqNvi">
<ref role="2Oxat5" node="1T5MAgPeszY" resolve="sharedCacheHolder" />
</node>
</node>
<node concept="2ShNRf" id="5XNK1YzoHQ3" role="37vLTx">
<node concept="1pGfFk" id="5XNK1YzoHQ4" role="2ShVmc">
<ref role="37wK5l" node="4Z$O9mrTmmf" resolve="CacheHolder" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="5cBWTAehkB1" role="3cqZAp">
<node concept="37vLTI" id="5cBWTAehlbV" role="3clFbG">
<node concept="37vLTw" id="5cBWTAehzi5" role="37vLTx">
<ref role="3cqZAo" node="5cBWTAehyR1" resolve="generationMode" />
<ref role="3cqZAo" node="5cBWTAehyR1" resolve="publishTypeNodes" />
</node>
<node concept="2OqwBi" id="5cBWTAehkGY" role="37vLTJ">
<node concept="Xjq3P" id="5cBWTAehkB0" role="2Oq$k0" />
<node concept="2OwXpG" id="5cBWTAehkOf" role="2OqNvi">
<ref role="2Oxat5" node="5cBWTAeh6DH" resolve="generationMode" />
<ref role="2Oxat5" node="5cBWTAeh6DH" resolve="publishTypeNodes" />
</node>
</node>
</node>
@ -10386,7 +10387,7 @@
</node>
</node>
<node concept="37vLTG" id="5cBWTAehyR1" role="3clF46">
<property role="TrG5h" value="generationMode" />
<property role="TrG5h" value="publishTypeNodes" />
<node concept="10P_77" id="5cBWTAehz11" role="1tU5fm" />
</node>
</node>
@ -11236,10 +11237,8 @@
</node>
<node concept="liA8E" id="1T5MAgPc7EU" role="2OqNvi">
<ref role="37wK5l" node="1T5MAgPbOmk" resolve="createCache" />
<node concept="3fqX7Q" id="5cBWTAekn_1" role="37wK5m">
<node concept="37vLTw" id="5cBWTAeknLB" role="3fr31v">
<ref role="3cqZAo" node="5cBWTAeh6DH" resolve="generationMode" />
</node>
<node concept="37vLTw" id="5cBWTAeknLB" role="37wK5m">
<ref role="3cqZAo" node="5cBWTAeh6DH" resolve="publishTypeNodes" />
</node>
</node>
</node>
@ -11379,10 +11378,8 @@
</node>
<node concept="liA8E" id="1T5MAgPc99a" role="2OqNvi">
<ref role="37wK5l" node="1T5MAgPbOmk" resolve="createCache" />
<node concept="3fqX7Q" id="5cBWTAekmSo" role="37wK5m">
<node concept="37vLTw" id="5cBWTAekmSq" role="3fr31v">
<ref role="3cqZAo" node="5cBWTAeh6DH" resolve="generationMode" />
</node>
<node concept="37vLTw" id="5cBWTAekmSq" role="37wK5m">
<ref role="3cqZAo" node="5cBWTAeh6DH" resolve="publishTypeNodes" />
</node>
</node>
</node>
@ -11704,10 +11701,12 @@
</node>
</node>
<node concept="312cEg" id="5cBWTAeh6DH" role="jymVt">
<property role="TrG5h" value="generationMode" />
<property role="TrG5h" value="publishTypeNodes" />
<node concept="3Tm6S6" id="5cBWTAeh6DI" role="1B3o_S" />
<node concept="10P_77" id="5cBWTAeh99P" role="1tU5fm" />
<node concept="3clFbT" id="5cBWTAehA6j" role="33vP2m" />
<node concept="3clFbT" id="5cBWTAehA6j" role="33vP2m">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="312cEu" id="4Z$O9mrQJw7">
@ -12884,8 +12883,7 @@
<node concept="312cEu" id="7i3KM7gxDuw">
<property role="3GE5qa" value="launch.step" />
<property role="TrG5h" value="InvalidateAndApplyTemplatesStep" />
<node concept="2tJIrI" id="7i3KM7gxGsa" role="jymVt" />
<node concept="2tJIrI" id="3yEb0I3UQ0q" role="jymVt" />
<node concept="2tJIrI" id="3VwM5b5y$Hm" role="jymVt" />
<node concept="3clFbW" id="7i3KM7gApvv" role="jymVt">
<node concept="37vLTG" id="6nFpYluo8Vd" role="3clF46">
<property role="TrG5h" value="session" />
@ -12950,6 +12948,9 @@
<node concept="3clFbT" id="61G6TdE2xuv" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
<node concept="3clFbT" id="3VwM5b67U$G" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
<node concept="37vLTw" id="6nFpYlurvhr" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR9fh8_" resolve="repository" />
</node>
@ -14513,6 +14514,7 @@
<node concept="37vLTw" id="61G6TdEblCH" role="37wK5m">
<ref role="3cqZAo" node="61G6TdE5zcX" resolve="recursive" />
</node>
<node concept="3clFbT" id="3VwM5b67ZnH" role="37wK5m" />
<node concept="2OqwBi" id="61G6TdCopl$" role="37wK5m">
<node concept="2OqwBi" id="1z4$59i_k3R" role="2Oq$k0">
<node concept="37vLTw" id="61G6TdCl6qv" role="2Oq$k0">
@ -15353,6 +15355,7 @@
<node concept="37vLTw" id="6XnUDeizCcM" role="37wK5m">
<ref role="3cqZAo" node="6XnUDeizCcd" resolve="recursive" />
</node>
<node concept="3clFbT" id="3VwM5b68eCR" role="37wK5m" />
<node concept="2OqwBi" id="6XnUDeizCcN" role="37wK5m">
<node concept="2OqwBi" id="6XnUDeizCcO" role="2Oq$k0">
<node concept="37vLTw" id="6XnUDeizCcP" role="2Oq$k0">
@ -16238,6 +16241,7 @@
<node concept="37vLTw" id="3OUB6BBbeOZ" role="37wK5m">
<ref role="3cqZAo" node="3OUB6BBaXxT" resolve="recursive" />
</node>
<node concept="3clFbT" id="3VwM5b680mw" role="37wK5m" />
<node concept="2OqwBi" id="3OUB6BBbeP0" role="37wK5m">
<node concept="2OqwBi" id="1z4$59iAiGL" role="2Oq$k0">
<node concept="37vLTw" id="3OUB6BBbeP1" role="2Oq$k0">
@ -19262,23 +19266,6 @@
</node>
</node>
<node concept="2tJIrI" id="1T5MAgP8Vkf" role="jymVt" />
<node concept="3clFb_" id="1T5MAgPew6v" role="jymVt">
<property role="TrG5h" value="createSharedCacheHolder" />
<node concept="3uibUv" id="1T5MAgPew6y" role="3clF45">
<ref role="3uigEE" node="4Z$O9mrQJw7" resolve="CacheHolder" />
</node>
<node concept="3Tm1VV" id="1T5MAgPew6z" role="1B3o_S" />
<node concept="3clFbS" id="1T5MAgPew6$" role="3clF47">
<node concept="3clFbF" id="1T5MAgPew6_" role="3cqZAp">
<node concept="2ShNRf" id="1T5MAgPew6A" role="3clFbG">
<node concept="1pGfFk" id="1T5MAgPeASW" role="2ShVmc">
<ref role="37wK5l" node="4Z$O9mrTmmf" resolve="CacheHolder" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1T5MAgPb_KB" role="jymVt" />
<node concept="3clFb_" id="1T5MAgPbOmk" role="jymVt">
<property role="TrG5h" value="createCache" />
<node concept="37vLTG" id="1T5MAgPbTr6" role="3clF46">

View File

@ -303,11 +303,15 @@
</concept>
<concept id="5349172909345501395" name="jetbrains.mps.baseLanguage.javadoc.structure.BaseDocComment" flags="ng" index="P$AiS">
<child id="8465538089690331502" name="body" index="TZ5H$" />
<child id="5383422241790532083" name="tags" index="3nqlJM" />
</concept>
<concept id="5349172909345532724" name="jetbrains.mps.baseLanguage.javadoc.structure.MethodDocComment" flags="ng" index="P$JXv" />
<concept id="8465538089690331500" name="jetbrains.mps.baseLanguage.javadoc.structure.CommentLine" flags="ng" index="TZ5HA">
<child id="8970989240999019149" name="part" index="1dT_Ay" />
</concept>
<concept id="8465538089690331492" name="jetbrains.mps.baseLanguage.javadoc.structure.DeprecatedBlockDocTag" flags="ng" index="TZ5HI">
<child id="2667874559098216723" name="text" index="3HnX3l" />
</concept>
<concept id="6612597108003615641" name="jetbrains.mps.baseLanguage.javadoc.structure.HTMLElement" flags="ng" index="2U$1Ah">
<property id="6612597108003615642" name="name" index="2U$1Ai" />
<child id="6612597108003615643" name="line" index="2U$1Aj" />
@ -505,7 +509,6 @@
</node>
</node>
<node concept="2tJIrI" id="39eNUjlYwif" role="jymVt" />
<node concept="2tJIrI" id="5iJsa3_dpkl" role="jymVt" />
<node concept="3clFbW" id="7kTeLbPt4na" role="jymVt">
<node concept="3cqZAl" id="7kTeLbPt4nb" role="3clF45" />
<node concept="3Tm1VV" id="7kTeLbPt4nc" role="1B3o_S" />
@ -672,6 +675,19 @@
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="P$JXv" id="3VwM5b67l_A" role="lGtFl">
<node concept="TZ5HI" id="3VwM5b67l_B" role="3nqlJM">
<node concept="TZ5HA" id="3VwM5b67l_C" role="3HnX3l" />
</node>
<node concept="TZ5HA" id="3VwM5b67mHW" role="TZ5H$">
<node concept="1dT_AC" id="3VwM5b67mHX" role="1dT_Ay">
<property role="1dT_AB" value="FIXME used only from a deprecated UI action" />
</node>
</node>
</node>
<node concept="2AHcQZ" id="3VwM5b67l_D" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Deprecated" resolve="Deprecated" />
</node>
</node>
<node concept="2tJIrI" id="7WKNeR9fh8i" role="jymVt" />
<node concept="3clFbW" id="5EDW3XEoy55" role="jymVt">
@ -692,6 +708,9 @@
<node concept="37vLTw" id="1imVejVBWy$" role="37wK5m">
<ref role="3cqZAo" node="61G6TdE2izs" resolve="recursive" />
</node>
<node concept="37vLTw" id="3VwM5b67SAR" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b67Rf$" resolve="invalidated" />
</node>
<node concept="37vLTw" id="1imVejVBZ$2" role="37wK5m">
<ref role="3cqZAo" node="5EDW3XEoy5T" resolve="repository" />
</node>
@ -728,6 +747,10 @@
<property role="TrG5h" value="recursive" />
<node concept="10P_77" id="61G6TdE2lVn" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b67Rf$" role="3clF46">
<property role="TrG5h" value="invalidated" />
<node concept="10P_77" id="3VwM5b67S8h" role="1tU5fm" />
</node>
<node concept="37vLTG" id="5EDW3XEoy5T" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="5EDW3XEoy5U" role="1tU5fm">
@ -821,6 +844,19 @@
</node>
</node>
</node>
<node concept="3clFbF" id="3VwM5b69oI2" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b69qhY" role="3clFbG">
<node concept="37vLTw" id="3VwM5b69qAs" role="37vLTx">
<ref role="3cqZAo" node="3VwM5b67SGe" resolve="invalidated" />
</node>
<node concept="2OqwBi" id="3VwM5b69pfz" role="37vLTJ">
<node concept="Xjq3P" id="3VwM5b69oI0" role="2Oq$k0" />
<node concept="2OwXpG" id="3VwM5b69pAA" role="2OqNvi">
<ref role="2Oxat5" node="3VwM5b69lkh" resolve="invalidated" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1imVejVB$_P" role="3cqZAp">
<node concept="37vLTI" id="1imVejVB$_Q" role="3clFbG">
<node concept="2OqwBi" id="1imVejVB$_R" role="37vLTJ">
@ -894,6 +930,10 @@
<property role="TrG5h" value="recursive" />
<node concept="10P_77" id="1imVejVB$Ae" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b67SGe" role="3clF46">
<property role="TrG5h" value="invalidated" />
<node concept="10P_77" id="3VwM5b67TPp" role="1tU5fm" />
</node>
<node concept="37vLTG" id="1imVejVB$Af" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="1imVejVB$Ag" role="1tU5fm">
@ -1232,6 +1272,9 @@
<node concept="37vLTw" id="61G6TdE8ZuE" role="37wK5m">
<ref role="3cqZAo" node="61G6TdE2my1" resolve="recursive" />
</node>
<node concept="37vLTw" id="3VwM5b69nuS" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b69lkh" resolve="invalidated" />
</node>
<node concept="37vLTw" id="5EDW3XEu5SF" role="37wK5m">
<ref role="3cqZAo" node="5EDW3XEoAmV" resolve="query" />
</node>
@ -1490,6 +1533,12 @@
<node concept="10P_77" id="61G6TdE2my4" role="1tU5fm" />
<node concept="3clFbT" id="61G6TdE8Z5S" role="33vP2m" />
</node>
<node concept="312cEg" id="3VwM5b69lkh" role="jymVt">
<property role="TrG5h" value="invalidated" />
<node concept="3Tm6S6" id="3VwM5b69lki" role="1B3o_S" />
<node concept="10P_77" id="3VwM5b69lkj" role="1tU5fm" />
<node concept="3clFbT" id="3VwM5b69lkk" role="33vP2m" />
</node>
<node concept="312cEg" id="6kREIVkLEGt" role="jymVt">
<property role="TrG5h" value="repository" />
<node concept="3Tmbuc" id="6nFpYlurwNH" role="1B3o_S" />
@ -2439,116 +2488,64 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="3o9wrC3tl4y" role="3cqZAp">
<node concept="3cpWsn" id="3o9wrC3tl4w" role="3cpWs9">
<property role="3TUv4t" value="true" />
<property role="TrG5h" value="supervisor" />
<node concept="3uibUv" id="3o9wrC3tmgD" role="1tU5fm">
<ref role="3uigEE" to="w7la:~Supervisor" resolve="Supervisor" />
</node>
<node concept="2ShNRf" id="3o9wrC3trPm" role="33vP2m">
<node concept="1pGfFk" id="6RN9TdHo4b$" role="2ShVmc">
<ref role="37wK5l" to="hano:3o9wrC3sC_c" resolve="FeedbackReportingSupervisor" />
<node concept="37vLTw" id="6RN9TdHo8NX" role="37wK5m">
<ref role="3cqZAo" node="6RN9TdHnHUK" resolve="feedbackSink" />
</node>
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="5tAk4yVP0GG" role="3cqZAp">
<node concept="3cpWsn" id="5tAk4yVP0GH" role="3cpWs9">
<property role="TrG5h" value="programSpec" />
<property role="3TUv4t" value="true" />
<node concept="3uibUv" id="5tAk4yW396h" role="1tU5fm">
<ref role="3uigEE" to="av0y:~IncrementalSpec" resolve="IncrementalSpec" />
</node>
<node concept="2OqwBi" id="5tAk4yVP3fT" role="33vP2m">
<node concept="37vLTw" id="5tAk4yVP2gX" role="2Oq$k0">
<ref role="3cqZAo" node="51ek2rQHHIn" resolve="inEff" />
</node>
<node concept="liA8E" id="5tAk4yVP3RE" role="2OqNvi">
<ref role="37wK5l" node="2daneBOX8cN" resolve="getValue" />
<node concept="10M0yZ" id="5tAk4yVP6pz" role="37wK5m">
<ref role="3cqZAo" node="5tAk4yVOMI9" resolve="PROGRAM_SPEC" />
<ref role="1PxDUh" node="RZQG98UNsT" resolve="ConfigureEvalStep" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="5tAk4yVPasS" role="3cqZAp" />
<node concept="3clFbF" id="Hg6Enc7CQd" role="3cqZAp">
<node concept="37vLTI" id="Hg6Enc7CQe" role="3clFbG">
<node concept="37vLTw" id="Hg6Enc7CQf" role="37vLTJ">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="2OqwBi" id="Hg6Enc7CQg" role="37vLTx">
<node concept="37vLTw" id="Hg6Enc7CQh" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="liA8E" id="Hg6Enc7CQi" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="Hg6Enc7CQj" role="37wK5m">
<node concept="37vLTw" id="Hg6Enc7CQk" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPL" resolve="progEval" />
</node>
<node concept="liA8E" id="Hg6Enc7CQl" role="2OqNvi">
<ref role="37wK5l" to="hano:HV6urVFrQ9" resolve="eval" />
<node concept="37vLTw" id="7WKNeR9GipL" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR9AkUd" resolve="stage" />
</node>
<node concept="37vLTw" id="7WKNeR9AoxM" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR9AoxI" resolve="programProducer" />
</node>
<node concept="37vLTw" id="5tAk4yVP86g" role="37wK5m">
<ref role="3cqZAo" node="5tAk4yVP0GH" resolve="programSpec" />
</node>
<node concept="37vLTw" id="4J__M6MUpd" role="37wK5m">
<ref role="3cqZAo" node="5gVsyvEOU28" resolve="sessionToken" />
</node>
<node concept="37vLTw" id="5DfcI9UuzgE" role="37wK5m">
<ref role="3cqZAo" node="3o9wrC3tl4w" resolve="supervisor" />
</node>
<node concept="2ShNRf" id="7WKNeR9Gjbf" role="37wK5m">
<node concept="1pGfFk" id="7WKNeR9Gjbg" role="2ShVmc">
<ref role="37wK5l" node="7nPD14NbIzp" resolve="MultiTrace" />
<node concept="37vLTw" id="6tPOoeTco$P" role="37wK5m">
<ref role="3cqZAo" node="RZQG98WpMA" resolve="trace" />
</node>
<node concept="1rXfSq" id="7WKNeR9Gjbi" role="37wK5m">
<ref role="37wK5l" node="6kREIVky9Kx" resolve="timeout" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="Hg6Enc7CQo" role="3cqZAp" />
<node concept="3cpWs8" id="2j1FRbx0U68" role="3cqZAp">
<node concept="3cpWsn" id="2j1FRbx0U69" role="3cpWs9">
<property role="TrG5h" value="sessionToken" />
<node concept="3uibUv" id="2j1FRbx0Tl5" role="1tU5fm">
<node concept="3clFbH" id="3VwM5b5_jMY" role="3cqZAp" />
<node concept="3cpWs8" id="3VwM5b5$OSc" role="3cqZAp">
<node concept="3cpWsn" id="3VwM5b5$OSd" role="3cpWs9">
<property role="TrG5h" value="newSessionToken" />
<node concept="3uibUv" id="3VwM5b5$OSe" role="1tU5fm">
<ref role="3uigEE" to="w7la:~SessionToken" resolve="SessionToken" />
</node>
<node concept="10Nm6u" id="2j1FRbx0Z7d" role="33vP2m" />
<node concept="10Nm6u" id="3VwM5b5DBID" role="33vP2m" />
</node>
</node>
<node concept="3cpWs8" id="2yEnwsh8S6T" role="3cqZAp">
<node concept="3cpWsn" id="2yEnwsh8S6Z" role="3cpWs9">
<property role="TrG5h" value="invalidFeedbackKeys" />
<node concept="3uibUv" id="2yEnwsh8S71" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="3uibUv" id="2yEnwsh8Uhb" role="11_B2D">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
<node concept="3clFbJ" id="3VwM5b6e2Al" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b6e2An" role="3clFbx">
<node concept="3clFbF" id="3VwM5b5DDhT" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5DGNV" role="3clFbG">
<node concept="37vLTw" id="3VwM5b5DSyV" role="37vLTx">
<ref role="3cqZAo" node="5gVsyvEOU28" resolve="sessionToken" />
</node>
<node concept="37vLTw" id="3VwM5b5DDhR" role="37vLTJ">
<ref role="3cqZAo" node="3VwM5b5$OSd" resolve="newSessionToken" />
</node>
</node>
</node>
<node concept="3SKdUt" id="3VwM5b6ed3B" role="3cqZAp">
<node concept="1PaTwC" id="3VwM5b6ed3C" role="1aUNEU">
<node concept="3oM_SD" id="3VwM5b6ed3D" role="1PaTwD">
<property role="3oM_SC" value="TODO" />
</node>
<node concept="3oM_SD" id="3VwM5b6ef1J" role="1PaTwD">
<property role="3oM_SC" value="ensure" />
</node>
<node concept="3oM_SD" id="3VwM5b6ehxr" role="1PaTwD">
<property role="3oM_SC" value="session" />
</node>
<node concept="3oM_SD" id="3VwM5b6erjz" role="1PaTwD">
<property role="3oM_SC" value="token" />
</node>
<node concept="3oM_SD" id="3VwM5b6epIR" role="1PaTwD">
<property role="3oM_SC" value="!=" />
</node>
<node concept="3oM_SD" id="3VwM5b6eqkt" role="1PaTwD">
<property role="3oM_SC" value="null" />
</node>
</node>
</node>
</node>
<node concept="3clFbC" id="3VwM5b6fct$" role="3clFbw">
<node concept="10Nm6u" id="3VwM5b6fdm3" role="3uHU7w" />
<node concept="2OqwBi" id="3VwM5b6f9RS" role="3uHU7B">
<node concept="37vLTw" id="3VwM5b6f8dn" role="2Oq$k0">
<ref role="3cqZAo" node="7WKNeR9AoxI" resolve="programProducer" />
</node>
<node concept="liA8E" id="3VwM5b6fb7R" role="2OqNvi">
<ref role="37wK5l" to="hano:3GlpCDSyO$P" resolve="getProgram" />
</node>
</node>
<node concept="10Nm6u" id="2yEnwsh8ZKr" role="33vP2m" />
</node>
</node>
<node concept="3clFbH" id="3VwM5b5E56N" role="3cqZAp" />
<node concept="3cpWs8" id="19OC8ZSz1g" role="3cqZAp">
<node concept="3cpWsn" id="19OC8ZSz1h" role="3cpWs9">
<property role="TrG5h" value="outEff" />
@ -2558,216 +2555,326 @@
<node concept="10Nm6u" id="19OC8ZSNFg" role="33vP2m" />
</node>
</node>
<node concept="3clFbJ" id="Hg6Enc7CQp" role="3cqZAp">
<node concept="2OqwBi" id="Hg6Enc7CQr" role="3clFbw">
<node concept="37vLTw" id="Hg6Enc7CQs" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="liA8E" id="Hg6Enc7CQt" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
<node concept="3clFbS" id="7WKNeR9zVo8" role="3clFbx">
<node concept="3SKdUt" id="51a$_pPMCVj" role="3cqZAp">
<node concept="1PaTwC" id="51a$_pPMCVk" role="1aUNEU">
<node concept="3oM_SD" id="51a$_pPMEgT" role="1PaTwD">
<property role="3oM_SC" value="save" />
<node concept="3clFbJ" id="3VwM5b5AdSK" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b5AdSM" role="3clFbx">
<node concept="3clFbF" id="Hg6Enc7CQd" role="3cqZAp">
<node concept="37vLTI" id="Hg6Enc7CQe" role="3clFbG">
<node concept="37vLTw" id="Hg6Enc7CQf" role="37vLTJ">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="3oM_SD" id="51a$_pPMEgV" role="1PaTwD">
<property role="3oM_SC" value="session" />
</node>
<node concept="3oM_SD" id="51a$_pPMFNQ" role="1PaTwD">
<property role="3oM_SC" value="results" />
</node>
<node concept="3oM_SD" id="51a$_pPMI2q" role="1PaTwD">
<property role="3oM_SC" value="only" />
</node>
<node concept="3oM_SD" id="51a$_pPMI2v" role="1PaTwD">
<property role="3oM_SC" value="on" />
</node>
<node concept="3oM_SD" id="51a$_pPMJ65" role="1PaTwD">
<property role="3oM_SC" value="successful" />
</node>
<node concept="3oM_SD" id="51a$_pPMMBc" role="1PaTwD">
<property role="3oM_SC" value="completion" />
</node>
</node>
</node>
<node concept="3cpWs8" id="4J__M6Mw23" role="3cqZAp">
<node concept="3cpWsn" id="4J__M6Mw24" role="3cpWs9">
<property role="TrG5h" value="evaluationResult" />
<node concept="3uibUv" id="4J__M6Mv$k" role="1tU5fm">
<ref role="3uigEE" to="w7la:~EvaluationResult" resolve="EvaluationResult" />
</node>
<node concept="2OqwBi" id="4J__M6Mw25" role="33vP2m">
<node concept="37vLTw" id="4J__M6Mw26" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPL" resolve="progEval" />
</node>
<node concept="liA8E" id="4J__M6Mw27" role="2OqNvi">
<ref role="37wK5l" to="hano:4J__M6Meme" resolve="getEvaluationResult" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2j1FRbx0VVD" role="3cqZAp">
<node concept="37vLTI" id="2j1FRbx0VVF" role="3clFbG">
<node concept="37vLTw" id="2j1FRbx0VVJ" role="37vLTJ">
<ref role="3cqZAo" node="2j1FRbx0U69" resolve="sessionToken" />
</node>
<node concept="2OqwBi" id="4J__M6MwKx" role="37vLTx">
<node concept="37vLTw" id="4J__M6Mw28" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="4J__M6Myq5" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.token()" resolve="token" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2yEnwsh94na" role="3cqZAp">
<node concept="37vLTI" id="2yEnwsh96re" role="3clFbG">
<node concept="37vLTw" id="2yEnwsh94n8" role="37vLTJ">
<ref role="3cqZAo" node="2yEnwsh8S6Z" resolve="invalidFeedbackKeys" />
</node>
<node concept="2OqwBi" id="4J__M6Mcy_" role="37vLTx">
<node concept="37vLTw" id="4J__M6MzqR" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="4J__M6M$U3" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.invalidFeedbackKeys()" resolve="invalidFeedbackKeys" />
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="2EG5v$dFmTU" role="3cqZAp">
<node concept="3cpWsn" id="2EG5v$dFmTX" role="3cpWs9">
<property role="TrG5h" value="invalidNodes" />
<node concept="3vKaQO" id="2EG5v$dFmTR" role="1tU5fm">
<node concept="3Tqbb2" id="2EG5v$dFo3T" role="3O5elw" />
</node>
<node concept="1rXfSq" id="2EG5v$dG07H" role="33vP2m">
<ref role="37wK5l" node="2EG5v$dDKbh" resolve="getInvalidatedNodes" />
<node concept="2OqwBi" id="6KCGZaSxuGM" role="37wK5m">
<node concept="37vLTw" id="6KCGZaSxtQH" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="6KCGZaSxvsw" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.invalidRules()" resolve="invalidRules" />
</node>
</node>
<node concept="2OqwBi" id="2EG5v$dGHtc" role="37wK5m">
<node concept="37vLTw" id="2EG5v$dGGeL" role="2Oq$k0">
<ref role="3cqZAo" node="7WKNeR9AoxI" resolve="programProducer" />
</node>
<node concept="liA8E" id="2EG5v$dGIwD" role="2OqNvi">
<ref role="37wK5l" to="hano:3GlpCDSyO$P" resolve="getProgram" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="51a$_pPMPYj" role="3cqZAp" />
<node concept="3clFbF" id="q1hCixUYFm" role="3cqZAp">
<node concept="37vLTI" id="q1hCixUYFn" role="3clFbG">
<node concept="2YIFZM" id="q1hCixUYFs" role="37vLTx">
<ref role="1Pybhc" node="2daneBOWXQd" resolve="Effect" />
<ref role="37wK5l" node="7TC1XcdTw$T" resolve="of" />
<node concept="Xl_RD" id="51ek2rQwZyi" role="37wK5m">
<property role="Xl_RC" value="evaluate rules" />
</node>
<node concept="37vLTw" id="51ek2rQuvsc" role="37wK5m">
<node concept="2OqwBi" id="Hg6Enc7CQg" role="37vLTx">
<node concept="37vLTw" id="Hg6Enc7CQh" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="2OqwBi" id="q1hCixUYFt" role="37wK5m">
<node concept="37vLTw" id="51ek2rQHN6B" role="2Oq$k0">
<ref role="3cqZAo" node="2daneBP_Jiy" resolve="SESSION_TOKEN" />
</node>
<node concept="liA8E" id="q1hCixUYFv" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="q1hCixUYFw" role="37wK5m">
<ref role="3cqZAo" node="2j1FRbx0U69" resolve="sessionToken" />
<node concept="liA8E" id="Hg6Enc7CQi" role="2OqNvi">
<ref role="37wK5l" to="psoy:7nkyKX7v7xb" resolve="and" />
<node concept="2OqwBi" id="Hg6Enc7CQj" role="37wK5m">
<node concept="37vLTw" id="Hg6Enc7CQk" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPL" resolve="progEval" />
</node>
<node concept="liA8E" id="Hg6Enc7CQl" role="2OqNvi">
<ref role="37wK5l" to="hano:HV6urVFrQ9" resolve="eval" />
<node concept="37vLTw" id="7WKNeR9GipL" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR9AkUd" resolve="stage" />
</node>
<node concept="37vLTw" id="7WKNeR9AoxM" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR9AoxI" resolve="programProducer" />
</node>
<node concept="2OqwBi" id="3VwM5b5$U8V" role="37wK5m">
<node concept="37vLTw" id="3VwM5b5$U8W" role="2Oq$k0">
<ref role="3cqZAo" node="51ek2rQHHIn" resolve="inEff" />
</node>
<node concept="liA8E" id="3VwM5b5$U8X" role="2OqNvi">
<ref role="37wK5l" node="2daneBOX8cN" resolve="getValue" />
<node concept="10M0yZ" id="3VwM5b5$U8Y" role="37wK5m">
<ref role="3cqZAo" node="5tAk4yVOMI9" resolve="PROGRAM_SPEC" />
<ref role="1PxDUh" node="RZQG98UNsT" resolve="ConfigureEvalStep" />
</node>
</node>
</node>
<node concept="37vLTw" id="4J__M6MUpd" role="37wK5m">
<ref role="3cqZAo" node="5gVsyvEOU28" resolve="sessionToken" />
</node>
<node concept="2ShNRf" id="3VwM5b5$Swa" role="37wK5m">
<node concept="1pGfFk" id="3VwM5b5$Swb" role="2ShVmc">
<ref role="37wK5l" to="hano:3o9wrC3sC_c" resolve="FeedbackReportingSupervisor" />
<node concept="37vLTw" id="3VwM5b5$Swc" role="37wK5m">
<ref role="3cqZAo" node="6RN9TdHnHUK" resolve="feedbackSink" />
</node>
</node>
</node>
<node concept="2ShNRf" id="7WKNeR9Gjbf" role="37wK5m">
<node concept="1pGfFk" id="7WKNeR9Gjbg" role="2ShVmc">
<ref role="37wK5l" node="7nPD14NbIzp" resolve="MultiTrace" />
<node concept="37vLTw" id="6tPOoeTco$P" role="37wK5m">
<ref role="3cqZAo" node="RZQG98WpMA" resolve="trace" />
</node>
<node concept="1rXfSq" id="7WKNeR9Gjbi" role="37wK5m">
<ref role="37wK5l" node="6kREIVky9Kx" resolve="timeout" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2OqwBi" id="q1hCixUYFz" role="37wK5m">
<node concept="37vLTw" id="51ek2rQHN6Z" role="2Oq$k0">
<ref role="3cqZAo" node="2yEnwsh8n5F" resolve="INVALID_FEEDBACK" />
</node>
<node concept="liA8E" id="q1hCixUYF_" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="q1hCixUYFA" role="37wK5m">
<ref role="3cqZAo" node="2yEnwsh8S6Z" resolve="invalidFeedbackKeys" />
</node>
</node>
</node>
<node concept="2OqwBi" id="2EG5v$dFjOp" role="37wK5m">
<node concept="37vLTw" id="2EG5v$dFior" role="2Oq$k0">
<ref role="3cqZAo" node="2EG5v$dFgce" resolve="INVALIDATED_NODES" />
</node>
<node concept="liA8E" id="2EG5v$dFkOS" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="2EG5v$dGPCg" role="37wK5m">
<ref role="3cqZAo" node="2EG5v$dFmTX" resolve="invalidNodes" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="q1hCixUYFB" role="37vLTJ">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />
</node>
</node>
</node>
<node concept="3clFbH" id="7WKNeR9zZA8" role="3cqZAp" />
</node>
<node concept="9aQIb" id="7WKNeR9zW7_" role="9aQIa">
<node concept="3clFbS" id="Hg6Enc7CQu" role="9aQI4">
<node concept="3clFbF" id="3lXUvG07Z1I" role="3cqZAp">
<node concept="1rXfSq" id="3lXUvG07Z1G" role="3clFbG">
<ref role="37wK5l" node="1laj_RSAZoB" resolve="addReportItem" />
<node concept="Rm8GO" id="3lXUvG083Oj" role="37wK5m">
<ref role="1Px2BO" to="2gg1:~MessageStatus" resolve="MessageStatus" />
<ref role="Rm8GQ" to="2gg1:~MessageStatus.ERROR" resolve="ERROR" />
<node concept="3clFbH" id="3VwM5b5Fw3$" role="3cqZAp" />
<node concept="3clFbJ" id="Hg6Enc7CQp" role="3cqZAp">
<node concept="2OqwBi" id="Hg6Enc7CQr" role="3clFbw">
<node concept="37vLTw" id="Hg6Enc7CQs" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="liA8E" id="Hg6Enc7CQt" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
<node concept="3clFbS" id="7WKNeR9zVo8" role="3clFbx">
<node concept="3SKdUt" id="51a$_pPMCVj" role="3cqZAp">
<node concept="1PaTwC" id="51a$_pPMCVk" role="1aUNEU">
<node concept="3oM_SD" id="51a$_pPMEgT" role="1PaTwD">
<property role="3oM_SC" value="save" />
</node>
<node concept="3oM_SD" id="51a$_pPMEgV" role="1PaTwD">
<property role="3oM_SC" value="session" />
</node>
<node concept="3oM_SD" id="51a$_pPMFNQ" role="1PaTwD">
<property role="3oM_SC" value="results" />
</node>
<node concept="3oM_SD" id="51a$_pPMI2q" role="1PaTwD">
<property role="3oM_SC" value="only" />
</node>
<node concept="3oM_SD" id="51a$_pPMI2v" role="1PaTwD">
<property role="3oM_SC" value="on" />
</node>
<node concept="3oM_SD" id="51a$_pPMJ65" role="1PaTwD">
<property role="3oM_SC" value="successful" />
</node>
<node concept="3oM_SD" id="51a$_pPMMBc" role="1PaTwD">
<property role="3oM_SC" value="completion" />
</node>
</node>
<node concept="10Nm6u" id="3lXUvG08br$" role="37wK5m" />
<node concept="Xl_RD" id="3lXUvG08eBF" role="37wK5m">
<property role="Xl_RC" value="evaluation" />
</node>
<node concept="3cpWs8" id="4J__M6Mw23" role="3cqZAp">
<node concept="3cpWsn" id="4J__M6Mw24" role="3cpWs9">
<property role="TrG5h" value="evaluationResult" />
<node concept="3uibUv" id="4J__M6Mv$k" role="1tU5fm">
<ref role="3uigEE" to="w7la:~EvaluationResult" resolve="EvaluationResult" />
</node>
<node concept="2OqwBi" id="4J__M6Mw25" role="33vP2m">
<node concept="37vLTw" id="4J__M6Mw26" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPL" resolve="progEval" />
</node>
<node concept="liA8E" id="4J__M6Mw27" role="2OqNvi">
<ref role="37wK5l" to="hano:4J__M6Meme" resolve="getEvaluationResult" />
</node>
</node>
</node>
<node concept="10Nm6u" id="3lXUvG08jQq" role="37wK5m" />
<node concept="2YIFZM" id="3lXUvG09eMY" role="37wK5m">
<ref role="1Pybhc" to="wyt6:~String" resolve="String" />
<ref role="37wK5l" to="wyt6:~String.valueOf(java.lang.Object)" resolve="valueOf" />
<node concept="2OqwBi" id="3lXUvG08wHq" role="37wK5m">
<node concept="37vLTw" id="3lXUvG08wHr" role="2Oq$k0">
</node>
<node concept="3clFbF" id="3VwM5b5DyJ5" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5DyJ7" role="3clFbG">
<node concept="2OqwBi" id="3VwM5b5$OSf" role="37vLTx">
<node concept="37vLTw" id="3VwM5b5$OSg" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="3VwM5b5$OSh" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.token()" resolve="token" />
</node>
</node>
<node concept="37vLTw" id="3VwM5b5DyJb" role="37vLTJ">
<ref role="3cqZAo" node="3VwM5b5$OSd" resolve="newSessionToken" />
</node>
</node>
</node>
<node concept="3cpWs8" id="3VwM5b5$IhH" role="3cqZAp">
<node concept="3cpWsn" id="3VwM5b5$IhI" role="3cpWs9">
<property role="TrG5h" value="invalidFeedbackKeys" />
<node concept="3uibUv" id="3VwM5b5$IhJ" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="3uibUv" id="3VwM5b5$IhK" role="11_B2D">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="2OqwBi" id="3VwM5b5$IhL" role="33vP2m">
<node concept="37vLTw" id="3VwM5b5$IhM" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="3VwM5b5$IhN" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.invalidFeedbackKeys()" resolve="invalidFeedbackKeys" />
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="2EG5v$dFmTU" role="3cqZAp">
<node concept="3cpWsn" id="2EG5v$dFmTX" role="3cpWs9">
<property role="TrG5h" value="invalidNodes" />
<node concept="3vKaQO" id="2EG5v$dFmTR" role="1tU5fm">
<node concept="3Tqbb2" id="2EG5v$dFo3T" role="3O5elw" />
</node>
<node concept="1rXfSq" id="2EG5v$dG07H" role="33vP2m">
<ref role="37wK5l" node="2EG5v$dDKbh" resolve="getInvalidatedNodes" />
<node concept="2OqwBi" id="6KCGZaSxuGM" role="37wK5m">
<node concept="37vLTw" id="6KCGZaSxtQH" role="2Oq$k0">
<ref role="3cqZAo" node="4J__M6Mw24" resolve="evaluationResult" />
</node>
<node concept="liA8E" id="6KCGZaSxvsw" role="2OqNvi">
<ref role="37wK5l" to="w7la:~EvaluationResult.invalidRules()" resolve="invalidRules" />
</node>
</node>
<node concept="2OqwBi" id="2EG5v$dGHtc" role="37wK5m">
<node concept="37vLTw" id="2EG5v$dGGeL" role="2Oq$k0">
<ref role="3cqZAo" node="7WKNeR9AoxI" resolve="programProducer" />
</node>
<node concept="liA8E" id="2EG5v$dGIwD" role="2OqNvi">
<ref role="37wK5l" to="hano:3GlpCDSyO$P" resolve="getProgram" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="51a$_pPMPYj" role="3cqZAp" />
<node concept="3clFbF" id="q1hCixUYFm" role="3cqZAp">
<node concept="37vLTI" id="q1hCixUYFn" role="3clFbG">
<node concept="2YIFZM" id="q1hCixUYFs" role="37vLTx">
<ref role="1Pybhc" node="2daneBOWXQd" resolve="Effect" />
<ref role="37wK5l" node="7TC1XcdTw$T" resolve="of" />
<node concept="Xl_RD" id="51ek2rQwZyi" role="37wK5m">
<property role="Xl_RC" value="evaluate rules" />
</node>
<node concept="37vLTw" id="51ek2rQuvsc" role="37wK5m">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="liA8E" id="3lXUvG08Cgd" role="2OqNvi">
<ref role="37wK5l" to="psoy:5X1yxJI3vjy" resolve="cause" />
<node concept="2OqwBi" id="q1hCixUYFt" role="37wK5m">
<node concept="37vLTw" id="51ek2rQHN6B" role="2Oq$k0">
<ref role="3cqZAo" node="2daneBP_Jiy" resolve="SESSION_TOKEN" />
</node>
<node concept="liA8E" id="q1hCixUYFv" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="3VwM5b5$QJf" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b5$OSd" resolve="newSessionToken" />
</node>
</node>
</node>
<node concept="2OqwBi" id="q1hCixUYFz" role="37wK5m">
<node concept="37vLTw" id="51ek2rQHN6Z" role="2Oq$k0">
<ref role="3cqZAo" node="2yEnwsh8n5F" resolve="INVALID_FEEDBACK" />
</node>
<node concept="liA8E" id="q1hCixUYF_" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="3VwM5b5$LeE" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b5$IhI" resolve="invalidFeedbackKeys" />
</node>
</node>
</node>
<node concept="2OqwBi" id="2EG5v$dFjOp" role="37wK5m">
<node concept="37vLTw" id="2EG5v$dFior" role="2Oq$k0">
<ref role="3cqZAo" node="2EG5v$dFgce" resolve="INVALIDATED_NODES" />
</node>
<node concept="liA8E" id="2EG5v$dFkOS" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="2EG5v$dGPCg" role="37wK5m">
<ref role="3cqZAo" node="2EG5v$dFmTX" resolve="invalidNodes" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="q1hCixUYFB" role="37vLTJ">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />
</node>
</node>
</node>
<node concept="3clFbH" id="7WKNeR9zZA8" role="3cqZAp" />
</node>
<node concept="9aQIb" id="7WKNeR9zW7_" role="9aQIa">
<node concept="3clFbS" id="Hg6Enc7CQu" role="9aQI4">
<node concept="3clFbF" id="3lXUvG07Z1I" role="3cqZAp">
<node concept="1rXfSq" id="3lXUvG07Z1G" role="3clFbG">
<ref role="37wK5l" node="1laj_RSAZoB" resolve="addReportItem" />
<node concept="Rm8GO" id="3lXUvG083Oj" role="37wK5m">
<ref role="1Px2BO" to="2gg1:~MessageStatus" resolve="MessageStatus" />
<ref role="Rm8GQ" to="2gg1:~MessageStatus.ERROR" resolve="ERROR" />
</node>
<node concept="10Nm6u" id="3lXUvG08br$" role="37wK5m" />
<node concept="Xl_RD" id="3lXUvG08eBF" role="37wK5m">
<property role="Xl_RC" value="evaluation" />
</node>
<node concept="10Nm6u" id="3lXUvG08jQq" role="37wK5m" />
<node concept="2YIFZM" id="3lXUvG09eMY" role="37wK5m">
<ref role="1Pybhc" to="wyt6:~String" resolve="String" />
<ref role="37wK5l" to="wyt6:~String.valueOf(java.lang.Object)" resolve="valueOf" />
<node concept="2OqwBi" id="3lXUvG08wHq" role="37wK5m">
<node concept="37vLTw" id="3lXUvG08wHr" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="liA8E" id="3lXUvG08Cgd" role="2OqNvi">
<ref role="37wK5l" to="psoy:5X1yxJI3vjy" resolve="cause" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="19OC8ZSUvn" role="3cqZAp">
<node concept="37vLTI" id="19OC8ZSW$t" role="3clFbG">
<node concept="37vLTw" id="19OC8ZSUvl" role="37vLTJ">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />
</node>
<node concept="2YIFZM" id="7TC1XcdUbGp" role="37vLTx">
<ref role="37wK5l" node="7TC1XcdTw$T" resolve="of" />
<ref role="1Pybhc" node="2daneBOWXQd" resolve="Effect" />
<node concept="Xl_RD" id="3MwxBzFOJ0h" role="37wK5m">
<property role="Xl_RC" value="evaluate rules" />
</node>
<node concept="37vLTw" id="51ek2rQ_rVX" role="37wK5m">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="19OC8ZSUvn" role="3cqZAp">
<node concept="37vLTI" id="19OC8ZSW$t" role="3clFbG">
<node concept="37vLTw" id="19OC8ZSUvl" role="37vLTJ">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />
</node>
<node concept="2YIFZM" id="7TC1XcdUbGp" role="37vLTx">
<ref role="37wK5l" node="7TC1XcdTw$T" resolve="of" />
</node>
</node>
<node concept="3clFbC" id="3VwM5b5E66$" role="3clFbw">
<node concept="37vLTw" id="3VwM5b5E3a7" role="3uHU7B">
<ref role="3cqZAo" node="3VwM5b5$OSd" resolve="newSessionToken" />
</node>
<node concept="10Nm6u" id="3VwM5b5DtoE" role="3uHU7w" />
</node>
<node concept="9aQIb" id="3VwM5b5FpvN" role="9aQIa">
<node concept="3clFbS" id="3VwM5b5FpvO" role="9aQI4">
<node concept="3clFbF" id="3VwM5b5FqFS" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5FqFT" role="3clFbG">
<node concept="2YIFZM" id="3VwM5b5FqFU" role="37vLTx">
<ref role="1Pybhc" node="2daneBOWXQd" resolve="Effect" />
<node concept="Xl_RD" id="3MwxBzFOJ0h" role="37wK5m">
<ref role="37wK5l" node="7TC1XcdTw$T" resolve="of" />
<node concept="Xl_RD" id="3VwM5b5FqFV" role="37wK5m">
<property role="Xl_RC" value="evaluate rules" />
</node>
<node concept="37vLTw" id="51ek2rQ_rVX" role="37wK5m">
<node concept="37vLTw" id="3VwM5b5FqFW" role="37wK5m">
<ref role="3cqZAo" node="Hg6Enc7CPS" resolve="result" />
</node>
<node concept="2OqwBi" id="3VwM5b5FqFX" role="37wK5m">
<node concept="37vLTw" id="3VwM5b5FqFY" role="2Oq$k0">
<ref role="3cqZAo" node="2daneBP_Jiy" resolve="SESSION_TOKEN" />
</node>
<node concept="liA8E" id="3VwM5b5FqFZ" role="2OqNvi">
<ref role="37wK5l" node="6BMBBPCRIcz" resolve="is" />
<node concept="37vLTw" id="3VwM5b5FqG0" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b5$OSd" resolve="newSessionToken" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="3VwM5b5FqG9" role="37vLTJ">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="7WKNeR9zC9b" role="3cqZAp" />
<node concept="3clFbH" id="3VwM5b5FmrV" role="3cqZAp" />
<node concept="3clFbF" id="51ek2rQI8nF" role="3cqZAp">
<node concept="37vLTw" id="51ek2rQI8nD" role="3clFbG">
<ref role="3cqZAo" node="19OC8ZSz1h" resolve="outEff" />

View File

@ -1069,6 +1069,7 @@
<ref role="2Oxat5" node="6hqFpWnfpcc" resolve="nodes" />
</node>
</node>
<node concept="3clFbT" id="3VwM5b682u6" role="37wK5m" />
<node concept="3clFbT" id="61G6TdE2zIC" role="37wK5m">
<property role="3clFbU" value="true" />
</node>