feat(runtime): EvaluationResult carries OpcUaQuality; VT bridge publishes it + historizes BadInternalError on Bad (02/S13)
This commit is contained in:
@@ -10,26 +10,34 @@
|
||||
{
|
||||
"id": "R2-03-T2",
|
||||
"subject": "Add OpcUaQuality Quality (default Good) to VirtualTagActor.EvaluationResult; bridge passes result.Quality into AttributeValueUpdate; historize maps Bad to 0x80020000u BadInternalError (RED bridge tests then GREEN)",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T1"]
|
||||
"status": "completed",
|
||||
"blockedBy": [
|
||||
"R2-03-T1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T3",
|
||||
"subject": "VirtualTagActor failure/throw publishes Bad EvaluationResult once per transition, gated on all dependencyRefs arrived; recovery bypasses value-dedup; update Evaluator_failure_publishes_ScriptLogEntry_warning expectation (turns T1 green)",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T2"]
|
||||
"blockedBy": [
|
||||
"R2-03-T2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T4",
|
||||
"subject": "S13 transition-semantics unit guards: second consecutive failure publishes nothing; same-value recovery republishes Good; evaluator-threw path also degrades",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T3"]
|
||||
"blockedBy": [
|
||||
"R2-03-T3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T5",
|
||||
"subject": "S13 cold-start suppression guards: missing-dep failure publishes no Bad; failure after all deps arrived publishes Bad (inputs-ready gate)",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T3"]
|
||||
"blockedBy": [
|
||||
"R2-03-T3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T6",
|
||||
@@ -47,31 +55,45 @@
|
||||
"id": "R2-03-T8",
|
||||
"subject": "S12 fix: retry-once on ObjectDisposedException in RoslynVirtualTagEvaluator.Evaluate (re-fetch via GetOrCompile; no retry when _disposed or second hit); update xmldoc (turns T7 green)",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T6", "R2-03-T7"]
|
||||
"blockedBy": [
|
||||
"R2-03-T6",
|
||||
"R2-03-T7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T9",
|
||||
"subject": "P7 wiring-guard rewrite (RED): ApplyVirtualTags clears the compile cache only when the expression set changes — identical redeploy must NOT clear; expression edit must; shared-expression removal must not",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T3"]
|
||||
"blockedBy": [
|
||||
"R2-03-T3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T10",
|
||||
"subject": "P7 fix: gate the OnApply ClearCompiledScripts on HashSet.SetEquals of desired vs _planByVtag expression sets (ordinal), with explanatory comment (turns T9 green)",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T9"]
|
||||
"blockedBy": [
|
||||
"R2-03-T9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T11",
|
||||
"subject": "Full-suite sweep (Runtime.Tests whole project + RoslynVirtualTagEvaluatorTests + solution build) and STATUS.md / tasks.json bookkeeping",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T4", "R2-03-T5", "R2-03-T8", "R2-03-T10"]
|
||||
"blockedBy": [
|
||||
"R2-03-T4",
|
||||
"R2-03-T5",
|
||||
"R2-03-T8",
|
||||
"R2-03-T10"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "R2-03-T12",
|
||||
"subject": "Live-/run gate on docker-dev (rebuild BOTH centrals): author working VT, break it, Client.CLI read shows StatusCode Bad with last value, fix and read Good; P7 no-recompile spot-check on identical redeploy",
|
||||
"status": "pending",
|
||||
"blockedBy": ["R2-03-T11"]
|
||||
"blockedBy": [
|
||||
"R2-03-T11"
|
||||
]
|
||||
}
|
||||
],
|
||||
"lastUpdated": "2026-07-12"
|
||||
|
||||
Reference in New Issue
Block a user