📝 Fix policy test and doc

This commit is contained in:
Nanaloveyuki
2026-07-07 10:28:16 +08:00
parent d3bff1305d
commit 3bac025acf
20 changed files with 844 additions and 60 deletions
+7 -3
View File
@@ -2,7 +2,7 @@
name: runtime-sink-file-available
group: api
category: runtime
update-time: 20260613
update-time: 20260707
description: Read whether a RuntimeSink currently has an available file sink behind its runtime sink shape.
key-word:
- runtime
@@ -36,6 +36,8 @@ Detailed rules explaining key parameters and behaviors
- Plain `File` runtime variants report actual file availability.
- `QueuedFile` runtime variants expose the availability of their wrapped inner file sink.
- Non-file runtime variants return `false`.
- This means `false` currently merges two different situations: “not file-backed” and “file-backed but currently unavailable”.
- Use `file_path_or_none()`, `file_policy_or_none()`, `file_default_policy_or_none()`, `file_state_or_none()`, or `file_runtime_state()` when callers need truthful file-semantics detection.
- This helper does not mutate runtime sink state.
### How to Use
@@ -67,10 +69,12 @@ In this example, callers can decide whether a recovery action is needed.
e.g.:
- If the runtime sink is not file-backed, the method returns `false`.
- If callers need detailed failure counters rather than a simple availability flag, `file_state()` or `file_runtime_state()` is the better API.
- If callers need to distinguish “not file-backed” from “file-backed but unavailable”, use one of the truthful `*_or_none()` helpers or `file_runtime_state()`.
- If callers need detailed failure counters rather than a simple availability flag, `file_state_or_none()` or `file_runtime_state()` is the better API.
### Notes
1. Use this helper for lightweight file sink health checks on direct `RuntimeSink` values.
2. Pair it with reopen and failure-counter APIs when diagnosing file sink problems.
2. Pair it with reopen and failure-counter APIs when diagnosing file sink problems, but prefer the truthful `*_or_none()` helpers when file semantics themselves must be checked.