v3.6.2 HN-2 — stderr warning is rate-limited to ONE message per
predicate string per process, so a single typo doesn't drown out logs
on a vault with 10k notes. The dedup Set is module-level (the daemon is
single-process).
v3.9.0-rc.15 — the original "one log line each" reasoning only held for a
FIXED set of predicates; a stream of DISTINCT malformed predicates
(attacker- or agent-controlled .base input) would grow the Set without
bound over a long-lived serve. MAX_WARNED_PREDICATES caps it (past the
cap a distinct predicate may re-warn — an acceptable trade vs. a leak).
v3.6.2 HN-2 — stderr warning is rate-limited to ONE message per predicate string per process, so a single typo doesn't drown out logs on a vault with 10k notes. The dedup Set is module-level (the daemon is single-process).
v3.9.0-rc.15 — the original "one log line each" reasoning only held for a FIXED set of predicates; a stream of DISTINCT malformed predicates (attacker- or agent-controlled
.baseinput) would grow the Set without bound over a long-livedserve.MAX_WARNED_PREDICATEScaps it (past the cap a distinct predicate may re-warn — an acceptable trade vs. a leak).