# fix\(notifications\): keep baselines across degraded usage observations · lucenx/codexbar-plasma

[View on GitCafe](https://git.cafe/lucenx/codexbar-plasma/commit/da4a114b2d7ddcb196d66c856d00b3806bb56b26)

Repository: [lucenx/codexbar-plasma](https://git.cafe/lucenx/codexbar-plasma)

Visibility: public

Requested revision: da4a114b2d7ddcb196d66c856d00b3806bb56b26

Requested commit: da4a114b2d7ddcb196d66c856d00b3806bb56b26

Commit: da4a114b2d7ddcb196d66c856d00b3806bb56b26

Tree: 0381b5c6bb5f187ce4cf63854cd53a19daccc8ff

Author: Simone

Committer: Simone

## Message

```
fix(notifications): keep baselines across degraded usage observations

Three planner defects shared one root cause: a degraded observation was
treated as an authoritative quiet state, dropping threshold baselines.

- processReset skipped a present row whose percentage was unknown, so a
  single unreadable window disarmed an armed reset and the promised
  reset notice could never fire.
- processQuota dropped the row baseline for the same unknown-percentage
  rows, so the next refresh re-announced an unchanged condition.
- an error observation with zero rows still wiped quota/pace/reset state
  when a status incident was present (observationPending only preserved
  it without an incident), so recovery re-announced the ongoing level;
  a failed first observation also primed the scope empty, announcing
  the first healthy level. The observation now carries errorPresent and
  transition leaves threshold state untouched for such passes while
  status keeps processing.

Red/green: the four new QtTests fail on the previous module (433 pass,
4 fail) and pass with the fix (437 pass, 0 fail).

```

## Parents

- [70a595bce6df847e86603ea11cd37536c0257c4f](https://git.cafe/lucenx/codexbar-plasma/commit/70a595bce6df847e86603ea11cd37536c0257c4f?format=markdown)

[Source at this commit](https://git.cafe/lucenx/codexbar-plasma/tree/da4a114b2d7ddcb196d66c856d00b3806bb56b26?format=markdown)
