Define cached threshold behavior for isEnabled
Document and test explicit refresh boundaries for isEnabled guards, and only read the shared root threshold when no namespace threshold applies. Include the portable Nimble configuration loader.
This commit is contained in:
1 parent
14e71c72ca
commit
011780e6ab
5 files changed
+88
-10
No files matched your search
+7
-3
@@ -84,7 +84,11 @@ the unsafe forms are tested as compilation failures.
|
||||
|
||||
The in-process regression tests are deterministic. The lifetime suite checks
|
||||
copying, self-assignment, replacement, moving, container copies, and exporting a
|
||||
handle from a local service. Refresh tests verify that repeated clone failures
|
||||
handle from a local service. `isEnabled` tests verify that namespace thresholds
|
||||
remain cached until an explicit refresh, a logging call, or `getLogger`, while
|
||||
the root fallback is read from shared state. This behavior is intentional so
|
||||
guards can avoid configuration refresh work.
|
||||
Refresh tests verify that repeated clone failures
|
||||
preserve the old appenders and thresholds, release partial replacements, and
|
||||
allow a later retry without another configuration change. A successful refresh
|
||||
releases the replaced cache and installs both appenders and thresholds.
|
||||
@@ -113,8 +117,8 @@ The suite provides targeted regressions; it does not exhaust thread scheduling
|
||||
or ORC cycle-collector interleavings.
|
||||
|
||||
The ownership scenarios, lifetime suite, and appender-state cleanup regression
|
||||
exercise the new ownership contracts. `isEnabled` freshness,
|
||||
local-time timestamp construction, and allocator reports remain for
|
||||
exercise the new ownership contracts. Local-time timestamp construction and
|
||||
allocator reports remain for
|
||||
subsequent work.
|
||||
|
||||
The standalone `ownership.nim` regression suite passed AddressSanitizer and
|
||||
|
||||
Reference in new issue
Block a user