Extended buildRuntimeAttr to consume resolved so that resolver can be used for readItems in monitor. Runtime contract extended to differentiate between action and monitor

This commit is contained in:
Lyncoln
2026-10-19 14:00:21 -04:00
parent 169ea26a40
commit 5eb2df2ee1
2 changed files with 26 additions and 17 deletions
+2 -2
View File
@@ -21,13 +21,13 @@ def buildAction (action, outputs):
response, outputs = executeRequest(action, outputs, resolved)
recursiveresponses.append(response)
outputs, response = buildRuntimeAttr(action, outputs, response)
outputs, response = buildRuntimeAttr(action, outputs, resolved, response)
return outputs, recursiveresponses
else:
outputs, resolved = buildPreRuntimeAttr(action, outputs)
response, outputs = executeRequest(action, outputs, resolved)
outputs, response = buildRuntimeAttr(action, outputs, response)
outputs, response = buildRuntimeAttr(action, outputs, resolved, response)
return outputs, response
+14 -5
View File
@@ -1,17 +1,20 @@
from core.runtime import buildSelect, buildOutput, buildSave, loadSave, buildLog
from core.runtime import buildSelect, buildOutput, buildSave, loadSave, saveRow, buildLog
from core.runtime.image import buildImage
#from core.runtime.select import buildSelect3
from core.runtime.resolver import resolveItem
def buildPreRuntimeAttr(action, outputs):
if action.kind == "action":
outputs = loadSave(action, outputs)
resolved = resolveItem(action, outputs)
#print("RESOLVER DEBUG")
#print(resolved)
return outputs, resolved
elif action.kind == "monitor":
outputs = loadSave(action, outputs)
resolved = {}
return outputs, resolved
def buildRuntimeAttr(action, outputs, response):
def buildRuntimeAttr(action, outputs, resolved, response):
if action.kind == "action":
outputs = buildOutput(response, action, outputs)
outputs = buildImage(response, action, outputs)
@@ -20,6 +23,12 @@ def buildRuntimeAttr(action, outputs, response):
buildSave(action, outputs)
saveRow(action, outputs, resolved)
buildLog(action, outputs, response)
return outputs, response
elif action.kind == "monitor":
#readitems = resolveItem(action, response.json())
#print(readitems)
return outputs, response