diff --git a/11-Features.md b/11-Features.md index 91f434b..c42f1fa 100644 --- a/11-Features.md +++ b/11-Features.md @@ -4819,6 +4819,12 @@ subscription is the thing that actually runs out. - **Armed is not correct.** `exhaustionDetectionArmed: true` means a pattern is configured, not that it matches what this backend prints. A wrong pattern reports as armed. +- **After a reload, the field lies — fleetd #404, open.** `exhaustedPattern` is a **deferred** key: + the patterns are compiled once into a map at startup and a reload never re-reads them. The field + reads the *live* config instead. So if you add a pattern to `fleetd.yaml` and reload, the field + flips to `true` while detection stays off until the daemon restarts. Until #404 lands, trust the + field only on a freshly started daemon, and **restart after editing `exhaustedPattern`** — the + reload report is the honest door here, and it names `profiles` as needing a restart. - **`errorPattern` has the same opt-in shape** and is not covered by this report. It is less severe: with none set, the code falls back to a narrow built-in pattern rather than going inert. - **The startup call site is not pinned by a test.** Deleting `reportExhaustedPatternGap(cfg)` from