c0f4074a5d
Nineteen of the twenty findings were open, and they lived in an untracked audit.md at the repo root that no next session would have read. The one that is closed, the unauthenticated mavgpud proxy, went out as V-673. The report is now a frozen measurement under docs/evals/, dated and never edited again — including when a finding it names gets fixed. The live state moved to docs/caveats/, one entry per limit, each carrying its Vikunja id and the condition that makes it worth fixing. A caveat with no revisit trigger is a complaint, so every entry has one. Closing a limit deletes its entry rather than editing the measurement that found it. Two directory indexes come with it. docs/CLAUDE.md states the tier rule the repo already followed by convention: living docs corrected in place, evals frozen by date, caveats deleted when fixed. docs/caveats/CLAUDE.md indexes the nineteen by claim and severity, because an index of filenames adds nothing a directory listing does not. Tasks V-675 through V-693 carry the plans. The doc line and the tracker now join in both directions. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ESv8hqNPseYt1CnotZpqDz
24 lines
993 B
Markdown
24 lines
993 B
Markdown
# Background workers
|
|
|
|
Both entries are a tick doing expensive work it did not need to do.
|
|
|
|
## Fact enrichment is a 20-call serial waterfall [#680] {#enrichment}
|
|
|
|
Costs: each fact is resolved in turn and each ecosystem call can spend ten
|
|
seconds. A slow but reachable Nexus holds one tick for minutes, so the worker
|
|
stops observing its configured interval. V-647 covered the duplicate queue
|
|
scan, not this.
|
|
Revisit when: Nexus gets slow, or when a batch-resolution endpoint exists.
|
|
Workaround: an unreachable Nexus is fine. It is the slow-but-answering case
|
|
that hurts.
|
|
|
|
## A suppressed nudge is phrased anyway [#687] {#nudges}
|
|
|
|
Costs: `PhraseNudge` runs before the dedupe is known. The `continue` meant to
|
|
skip it is the last statement in the loop body. Every tick that
|
|
keeps suppressing the same rule pays the resident model again. The comment
|
|
above it claims the opposite.
|
|
Revisit when: digestion ticks show up in the model's load, or when nudge rules
|
|
grow past a handful.
|
|
Workaround: none.
|