101 lines
3.7 KiB
JSON
101 lines
3.7 KiB
JSON
{
|
|
"planPath": "archreview/plans/R2-03-vt-failure-quality-plan.md",
|
|
"tasks": [
|
|
{
|
|
"id": "R2-03-T1",
|
|
"subject": "S13 stale-Good repro test at host level (RED — must fail on f6eaa267): fail-after-success evaluator, publish probe sees Good then expects Bad AttributeValueUpdate",
|
|
"status": "completed",
|
|
"blockedBy": []
|
|
},
|
|
{
|
|
"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": "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": "completed",
|
|
"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": "completed",
|
|
"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": "completed",
|
|
"blockedBy": [
|
|
"R2-03-T3"
|
|
]
|
|
},
|
|
{
|
|
"id": "R2-03-T6",
|
|
"subject": "S12 sequential pin: Evaluate_after_ClearCompiledScripts_recompiles_and_succeeds (green baseline the T8 retry-loop restructure must not regress)",
|
|
"status": "pending",
|
|
"blockedBy": []
|
|
},
|
|
{
|
|
"id": "R2-03-T7",
|
|
"subject": "S12 concurrent stress repro (RED): 300 compiled evaluations racing ClearCompiledScripts, WaitAsync-bounded, assert zero disposed-reason failures",
|
|
"status": "pending",
|
|
"blockedBy": []
|
|
},
|
|
{
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"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"
|
|
]
|
|
}
|
|
],
|
|
"lastUpdated": "2026-07-12"
|
|
}
|