Fix DB-less ServiceLevel freshness and authorization remarks #724
Reference in New Issue
Block a user
Delete Branch "fix/dbless-servicelevel-freshness"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
DB-less nodes could keep advertising a healthy ServiceLevel after role snapshots stopped arriving because freshness polling required a DB probe. Start the existing timer for DB-less nodes and recompute without a null-probe Ask. With no new messages, healthy follower/Primary levels age from 240/250 to 200/210 using the existing calculator; fresh snapshots restore them. DB-backed polling/timeouts, legacy behavior, elections and mutation policies are preserved.
Correct AllowAnonymous XML remarks to describe the current enabled per-node authorization, including anonymous Read denial. The documentation change leaves admission defaults and executable bytes unchanged.
Validation: latest affected Runtime suite passed 837 tests with zero failures and three existing retired-v3 skips; final cached build had zero warnings/errors. Integrated actor regression suite previously passed 35 tests. Real-timer tests cover strict age boundaries, recovery, peer-verdict expiry, shutdown and DB polling/timeout. Added direct missing-local-entry zero/retry/recovery coverage and a virtual-timer absent-snapshot startup case with a positive timer control, preserving the current no-publication startup policy. Removing snapshot guards or timer registration made both new tests fail as intended. Independent integration and test review found no actionable P1/P2 issues. Hosted run 986 passed all ten steps on final head
c4b4046832: 62 TRX files, 14,656 executed tests, 573 individual skips, the 12,000-test floor and artifact upload. Superseded run 985 encountered the independently reproduced intermittent ConditionRefresh failure tracked in #728; that issue remains open. No live calls or Warm policy implementation.Resolves #721
Resolves #722
Authoritative Actions API20:58UTC: prerequisite main run984/job3605 completed success at1bf8c614, including all solution tests, executed-test floor and artifact upload. Retained guard reports62TRX/14648executed/573individual skips>=12000; Runtime829passed/3existing skips/0failed. Required final-head run985/job3606 is now in progress at exact PR head
e1feb9fbb6. Main success does not substitute for this final-head gate. PR remains open/unmerged; #721/#722 remain open. No cancellation/restart/rerun performed.Supporting run985/job3606 at earlier
e1feb9fhead now reports123 OPC UA integration passed/1failed: ConditionRefresh wire test observed extra Unspecified before expected Acknowledge. This is tracked separately in#728; read-only source triage and bounded unchanged local loopback reproduction are in progress. Cause is not yet proven and no assertion/product behavior has been changed. Job3606 is still active; required exactc4b40468run986/job3607 remains waiting. PR#724 stays open and its own final-head CI remains required before merge. No CI cancellation/restart/rerun.Authoritative Actions API21:59UTC: supporting run985/job3606 completed FAILURE at21:58:35, exact earlier
e1feb9fhead. The one failed test is ConditionRefresh wire fact tracked in#728 (123integration passed/1failed); Runtime835passed/3existing skips and other suites passed. The always-run test-count guard succeeded:62TRX,14654executed,573individual skips, minimum12000. Artifact unit-trx upload succeeded. Floor/artifact success does not make the failed test run green.Required run986/job3607 STARTED at21:58:38, exact final PR#724 head
c4b4046832. It is in_progress with no conclusion. This new run is the required merge gate; no result is assumed. #728 unchanged local reproduction FAIL/PASS/FAIL and source hypotheses remain recorded; a bounded metadata probe awaits design approval. No product/test instrumentation or CI rerun/cancel/restart. PR remains open/unmerged;#721/#722 remain open, and local #725/#726 publication remains held until#724 clears its gate.