linkedparticles-core 1.138.1
linkedparticles-core 1.138.1 — the Particles Client layer
The store-free Client layer of the Particles reference
implementation: schema models with calibrated-confidence
invariants, extraction of claim-granularity candidate particles,
conformance validation, and the pure interchange codec.
This repository is a published view of a private development upstream,
advanced by per-release scrubbed exports. Pull requests are reviewed here
and land by import, with each author's identity and sign-off preserved
verbatim; CONTRIBUTING.md documents the flow.
Changes in 1.138.1:
Added
- The memory benchmark's ablation knobs are now flags —
particles benchmark memorygains--top-k,--qa/--no-qa,
--consolidation,--dedup-judgeand--reuse-stores, so each ablation
named in deferred list is one re-run with one knob flipped.
--consolidationruns the dream cycle's pass list against each
scratch store before retrieval (the §11 controlled instrument);
--dedup-judgeapplies the co-evidential judge so the ranker collapses
paraphrase pairs inside top-k. Both are recorded on the run tuple, so an
ablation arm can never be mistaken for a headline run. --reuse-storesreplays a persisted store set instead of re-extracting,
turning a read-side ablation arm from a full re-extraction into zero
write-time LLM calls. A run given--store-dirnow stamps that set with the
write-side tuple that produced it, and--reuse-storesrefuses a set built
under a different dataset, question selection, extraction/embedding model, or
write-time reconciliation config — a replay is only cheap if it is still
comparable.--no-qareports the retrieval stage alone, which over reused stores
makes no LLM call at all.
Changed
- The benchmark's cost estimate covers the ablation passes. A
--consolidationrun projects its capped probe ceiling; a--dedup-judge
run discloses the judge fan-out as an unbounded component it cannot project,
and now requires confirmation on that basis alone rather than sailing past
the call-count threshold at "~0 calls". - The recorded run tuple carries every knob an ablation can flip — the cap, extract-time duplicate suppression, exact-duplicate auto-merge,
and the content-age decay rule in effect forCONVERSATION. Two arms of one
ablation previously recorded byte-identical tuples.
Fixed
- A memory-benchmark run now discloses when decay is inert. The shipped
content_age_decay.sourcestable configures noCONVERSATIONrule, so every
particle the benchmark mints scored at recency factor 1.0 — a decay on/off
comparison would have read as "decay changes nothing" when decay never ran.
The run says so in its own quality notes. run_consolidationaccepts a per-store cycle-lock path. The lock's scope
is the store, but it defaulted to one global path — so a caller holding many
stores concurrently had every store after the first recordskipped.
Particles: provenance-tracked, calibrated-confidence knowledge for AI agent systems — https://linkedparticles.org