@atrib/recall 0.12.18 → 0.12.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -77,7 +77,7 @@ Every call to this tool (and every sibling tool below) writes a per-call jsonl e
77
77
 
78
78
  - `mcp__atrib-recall__recall_revisions({ record_hash })` - returns the forward revision chain for the target record. Each chain entry carries `record_hash`, `timestamp`, and the [D086](../../DECISIONS.md#d086-bm25-corpus-extended-from-annotations-to-per-event_type-record-content)-normative content fields (`new_position`, `reason`, `importance`) when present, so the agent can read the chain inline without follow-up `recall` calls per revision. The chain follows the first-by-timestamp revision at each step; when more than one revision targets the same record (sibling fan-out, common in multi-agent flows), the other branch heads are listed on that step's entry as `sibling_hashes`, so the agent can recursively call `recall_revisions` on a sibling to traverse a parallel branch instead of having to manually enumerate revisions via `recall_my_attribution_history`.
79
79
 
80
- - `mcp__atrib-recall__recall_by_content({ query, k? })` - BM25 free-form retrieval over each record's indexable text + the annotation summary + topic_tags (when present), then reranked by Park et al. weighted-sum scoring (recency + importance + relevance). Default k=10, max 50. Per [D086](../../DECISIONS.md#d086-bm25-corpus-extended-from-annotations-to-per-event_type-record-content) and [D118](../../DECISIONS.md#d118-primary-trace-path-is-a-presentation-rule-over-trace-and-chain), "indexable text" is per-event_type record content from the [D062](../../DECISIONS.md#d062-local-mirror-sidecar-two-tier-private-local--public-canonical-persistence) sidecar (observation: `what + why_noted + intent + rationale + topics`; tool_call: `tool_name + args excerpt + result excerpt`; annotation: `summary + topics`; revision: `prior_position + new_position + reason + topics`; transaction: counterparty + memo + protocol fields; directory_anchor: `tree_root + epoch_id`). Extension URIs fall back to a generic recursive string-walk (depth 4, field cap 2KB). OpenInference local sidecars add recall tokens for span kind/name, tool/agent/model, prompt identifiers and templates, inputs/outputs, usage, cost, score, and metadata when those fields are mirrored locally per [D108](../../DECISIONS.md#d108-observability-span-trees-are-intake-local-sidecars-are-cognitive-payload). BM25 contribution is clamped to [0, 1] in the parkScore site so the documented Park-component bound is honored. Layer 2 (sqlite-vec sidecar, separate ship) extends with embedding similarity over the same indexed text.
80
+ - `mcp__atrib-recall__recall_by_content({ query, k?, max_records? })` - BM25 free-form retrieval over the newest `max_records` records' indexable text + annotation summary + topic_tags when present, then reranked by Park et al. weighted-sum scoring (recency + importance + relevance). Default k=10, max 50. Default `max_records` is `ATRIB_RECALL_CONTENT_MAX_RECORDS` or 5000, max 50000. The cold path tail-loads that newest-first window instead of loading the whole mirror. The response includes `total_records`, `searched_records`, `candidate_records`, and `truncated_corpus`; `total_records` is `null` when recall served a partial tail-loaded snapshot instead of a full mirror snapshot. Per [D086](../../DECISIONS.md#d086-bm25-corpus-extended-from-annotations-to-per-event_type-record-content) and [D118](../../DECISIONS.md#d118-primary-trace-path-is-a-presentation-rule-over-trace-and-chain), "indexable text" is per-event_type record content from the [D062](../../DECISIONS.md#d062-local-mirror-sidecar-two-tier-private-local--public-canonical-persistence) sidecar (observation: `what + why_noted + intent + rationale + topics`; tool_call: `tool_name + args excerpt + result excerpt`; annotation: `summary + topics`; revision: `prior_position + new_position + reason + topics`; transaction: counterparty + memo + protocol fields; directory_anchor: `tree_root + epoch_id`). Extension URIs fall back to a generic recursive string-walk (depth <= 4, field cap 2KB). OpenInference local sidecars add recall tokens for span kind/name, tool/agent/model, prompt identifiers and templates, inputs/outputs, usage, cost, score, and metadata when those fields are mirrored locally per [D108](../../DECISIONS.md#d108-observability-span-trees-are-intake-local-sidecars-are-cognitive-payload). BM25 contribution is clamped to [0, 1] in the parkScore site so the documented Park-component bound is honored. Layer 2 (sqlite-vec sidecar, separate ship) extends with embedding similarity over the same indexed text.
81
81
 
82
82
  - `mcp__atrib-recall__recall_session_chain({ context_id?, limit?, include_content? })` - returns all records in a context_id, ordered chronologically (oldest-first). The natural traversal of the CHAIN_PRECEDES topology for a single session/trace. Each entry carries `record_hash`, `event_type`, `timestamp`, `display_summary`, `display_producer`, `age`, plus signed causal/tool fields when present (`informed_by`, `tool_name`, `args_hash`, `result_hash`). When `include_content` is true, each entry also includes the [D062](../../DECISIONS.md#d062-local-mirror-sidecar--two-tier-private-local--public-canonical-persistence) local mirror body as `local_content` and the local producer label as `local_producer`. Defaults false to keep the session chain cheap. When `context_id` is omitted, falls back to `resolveEnvContextId` (the same precedence as the other tools: `ATRIB_CONTEXT_ID` env, then a [D083](../../DECISIONS.md#d083-harness-session-id-discovery-extends-d078-for-cognitive-primitive-mcp-servers)-registered harness env like `CLAUDE_CODE_SESSION_ID`).
83
83
 
@@ -89,13 +89,14 @@ Every call to this tool (and every sibling tool below) writes a per-call jsonl e
89
89
 
90
90
  The Park et al. ranking weights and recency time constant are environment-tunable for per-axis sensitivity studies:
91
91
 
92
- | Env var | Default | Role |
93
- | -------------------------- | ------- | -------------------------------------------------------- |
94
- | `ATRIB_RECALL_ALPHA` | 0.3 | Recency component weight |
95
- | `ATRIB_RECALL_BETA` | 0.3 | Importance component weight |
96
- | `ATRIB_RECALL_GAMMA` | 0.4 | Relevance (BM25) component weight |
97
- | `ATRIB_RECALL_TAU_DAYS` | 7 | Exponential-decay time constant for recency |
98
- | `ATRIB_RECALL_NOISE_FLOOR` | 0.6 | Anti-noise threshold for `rank_by=relevance` (see below) |
92
+ | Env var | Default | Role |
93
+ | ---------------------------------- | ------- | ----------------------------------------------------------------- |
94
+ | `ATRIB_RECALL_ALPHA` | 0.3 | Recency component weight |
95
+ | `ATRIB_RECALL_BETA` | 0.3 | Importance component weight |
96
+ | `ATRIB_RECALL_GAMMA` | 0.4 | Relevance (BM25) component weight |
97
+ | `ATRIB_RECALL_TAU_DAYS` | 7 | Exponential-decay time constant for recency |
98
+ | `ATRIB_RECALL_NOISE_FLOOR` | 0.6 | Anti-noise threshold for `rank_by=relevance` (see below) |
99
+ | `ATRIB_RECALL_CONTENT_MAX_RECORDS` | 5000 | Newest-first corpus size for default `recall_by_content` searches |
99
100
 
100
101
  The implementation does not enforce that alpha + beta + gamma sum to 1.0; the operator-facing defaults do. See [D085](../../DECISIONS.md#d085-recall-calibration-defaults-survey-grounded-rationale) for the survey-grounded rationale: `ALPHA=0.3` matches CrewAI's `recency_weight=0.3` (the only normalized-weights peer in a 2026-05-23 OSS survey); `TAU_DAYS=7` produces a ~4.85-day half-life inside the field range and close to Park et al.'s ~5.75-day empirical anchor.
101
102
 
@@ -117,9 +118,9 @@ Recall treats `_local.content` as the preferred semantic payload. If older mirro
117
118
 
118
119
  ### Anti-noise threshold for `rank_by=relevance`
119
120
 
120
- When `rank_by=relevance` produces a top Park score below `ATRIB_RECALL_NOISE_FLOOR` (default 0.15), recall returns empty records plus a `quality: "below_threshold"` signal and the observed `top_score`. The default 0.15 is approximately `alpha * 0.5` with the default `alpha=0.3`: the score of a record with decent recency but no annotation, no topic match, no BM25 hit. Below that, results are effectively noise. Set the env var to 0 to disable. Threshold applies only to relevance ranking; timestamp + causal_distance modes are unaffected.
121
+ When `rank_by=relevance` produces a top Park score below `ATRIB_RECALL_NOISE_FLOOR` (default 0.6), recall returns empty records plus a `quality: "below_threshold"` signal and the observed `top_score`. The default sits above the recent-plus-annotated baseline from the [D086](../../DECISIONS.md#d086-bm25-corpus-extended-from-annotations-to-per-event_type-record-content) calibration and below the observed real-query minimum. Below that, results are effectively noise. Set the env var to 0 to disable. Threshold applies only to relevance ranking; timestamp + causal_distance modes are unaffected.
121
122
 
122
- **Novel in field.** The 2026-05-23 survey of comparable systems (Park et al., MemGPT/Letta, A-MEM, MemoryBank, Mem0, LangChain, LlamaIndex, CrewAI, Haystack, AutoGen) found no published or OSS implementation that returns "empty + quality:below_threshold" rather than top-K. The field convention is "always return something, let the agent decide it's noise." atrib's inversion is a deliberate protocol choice (lower hallucination risk from low-confidence context). See [D085](../../DECISIONS.md#d085-recall-calibration-defaults-survey-grounded-rationale) for the full survey. A caveat the derivation does not address: on active mirrors with constant fresh tool-call activity, the best record's recency component is ~1.0, so `alpha * 1.0 = 0.3` exceeds the 0.15 floor and the threshold never trips. The floor catches "stale mirror, nothing relevant" correctly per design, but not "active mirror, nonsense query." A gold-standard eval sweep is queued to either reaffirm or recommend revising this floor.
123
+ **Novel in field.** The 2026-05-23 survey of comparable systems (Park et al., MemGPT/Letta, A-MEM, MemoryBank, Mem0, LangChain, LlamaIndex, CrewAI, Haystack, AutoGen) found no published or OSS implementation that returns "empty + quality:below_threshold" rather than top-K. The field convention is "always return something, let the agent decide it's noise." atrib's inversion is a deliberate protocol choice (lower hallucination risk from low-confidence context). See [D085](../../DECISIONS.md#d085-recall-calibration-defaults-survey-grounded-rationale) for the full survey and [D086](../../DECISIONS.md#d086-bm25-corpus-extended-from-annotations-to-per-event_type-record-content) for the 0.6 recalibration.
123
124
 
124
125
  ## Trust scope
125
126
 
@@ -41,6 +41,8 @@ export declare function computeRecordHash(record: AtribRecord): string;
41
41
  * Malformed lines are silently skipped (same contract as `loadRecords`).
42
42
  */
43
43
  export declare function loadLoaded(path: string): LoadedRecord[];
44
+ export declare function loadLoadedAppend(path: string, startOffset: number): LoadedRecord[];
45
+ export declare function loadLoadedTail(path: string, maxRecords: number): LoadedRecord[];
44
46
  /**
45
47
  * Mirror-discovery variant of `loadLoaded` that scans a directory of
46
48
  * `*.jsonl` files. See loadRecordsFromDir in index.ts for the bare
@@ -52,6 +54,10 @@ export declare function loadLoadedFromDir(dir: string): {
52
54
  loaded: LoadedRecord[];
53
55
  files: string[];
54
56
  };
57
+ export declare function loadNewestLoadedFromDir(dir: string, maxRecords: number): {
58
+ loaded: LoadedRecord[];
59
+ files: string[];
60
+ };
55
61
  /**
56
62
  * LoadedRecord variant of `discoverRecords` in index.ts. Same priority
57
63
  * order: explicit `recordFile` arg > ATRIB_RECORD_FILE env > ATRIB_MIRROR_DIR
@@ -21,7 +21,7 @@
21
21
  * alongside; the structure here is designed to extend.
22
22
  */
23
23
  import { canonicalRecord, sha256, hexEncode, EVENT_TYPE_ANNOTATION_URI, EVENT_TYPE_REVISION_URI, deriveLocalContentFromSidecar, } from '@atrib/mcp';
24
- import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
24
+ import { closeSync, existsSync, openSync, readFileSync, readSync, readdirSync, statSync, } from 'node:fs';
25
25
  import { join } from 'node:path';
26
26
  import { IMPORTANCE_NUMERIC } from './index.js';
27
27
  /**
@@ -106,8 +106,95 @@ function extractLoaded(parsed) {
106
106
  export function loadLoaded(path) {
107
107
  if (!existsSync(path))
108
108
  return [];
109
+ return parseLoadedJsonl(readFileSync(path, 'utf8'));
110
+ }
111
+ export function loadLoadedAppend(path, startOffset) {
112
+ if (!existsSync(path))
113
+ return [];
114
+ let size = 0;
115
+ try {
116
+ const stat = statSync(path);
117
+ if (!stat.isFile())
118
+ return [];
119
+ size = stat.size;
120
+ }
121
+ catch {
122
+ return [];
123
+ }
124
+ if (startOffset >= size)
125
+ return [];
126
+ const readStart = startOffset > 0 ? startOffset - 1 : 0;
127
+ const length = size - readStart;
128
+ const fd = openSync(path, 'r');
129
+ try {
130
+ const buffer = Buffer.allocUnsafe(length);
131
+ const bytesRead = readSync(fd, buffer, 0, length, readStart);
132
+ let raw = buffer.subarray(0, bytesRead).toString('utf8');
133
+ if (readStart > 0) {
134
+ const firstNewline = raw.indexOf('\n');
135
+ if (firstNewline < 0)
136
+ return [];
137
+ raw = raw.slice(firstNewline + 1);
138
+ }
139
+ return parseLoadedJsonl(raw);
140
+ }
141
+ catch {
142
+ return [];
143
+ }
144
+ finally {
145
+ closeSync(fd);
146
+ }
147
+ }
148
+ export function loadLoadedTail(path, maxRecords) {
149
+ if (maxRecords <= 0 || !existsSync(path))
150
+ return [];
151
+ let size = 0;
152
+ try {
153
+ const stat = statSync(path);
154
+ if (!stat.isFile())
155
+ return [];
156
+ size = stat.size;
157
+ }
158
+ catch {
159
+ return [];
160
+ }
161
+ if (size === 0)
162
+ return [];
163
+ const fd = openSync(path, 'r');
164
+ try {
165
+ const chunks = [];
166
+ const chunkSize = 64 * 1024;
167
+ let position = size;
168
+ let newlineCount = 0;
169
+ while (position > 0 && newlineCount <= maxRecords) {
170
+ const readSize = Math.min(chunkSize, position);
171
+ position -= readSize;
172
+ const buffer = Buffer.allocUnsafe(readSize);
173
+ const bytesRead = readSync(fd, buffer, 0, readSize, position);
174
+ const chunk = buffer.subarray(0, bytesRead);
175
+ chunks.unshift(chunk);
176
+ for (let i = 0; i < chunk.length; i += 1) {
177
+ if (chunk[i] === 10)
178
+ newlineCount += 1;
179
+ }
180
+ }
181
+ const raw = Buffer.concat(chunks).toString('utf8');
182
+ const lines = raw
183
+ .split('\n')
184
+ .map((line) => line.trim())
185
+ .filter((line) => line.length > 0)
186
+ .slice(-maxRecords);
187
+ return parseLoadedJsonl(lines.join('\n'));
188
+ }
189
+ catch {
190
+ return [];
191
+ }
192
+ finally {
193
+ closeSync(fd);
194
+ }
195
+ }
196
+ function parseLoadedJsonl(raw) {
109
197
  const out = [];
110
- const raw = readFileSync(path, 'utf8');
111
198
  for (const line of raw.split('\n')) {
112
199
  const trimmed = line.trim();
113
200
  if (!trimmed)
@@ -167,6 +254,38 @@ export function loadLoadedFromDir(dir) {
167
254
  }
168
255
  return { loaded, files };
169
256
  }
257
+ export function loadNewestLoadedFromDir(dir, maxRecords) {
258
+ if (!existsSync(dir))
259
+ return { loaded: [], files: [] };
260
+ let entries = [];
261
+ try {
262
+ entries = readdirSync(dir)
263
+ .filter((name) => name.endsWith('.jsonl'))
264
+ .sort();
265
+ }
266
+ catch {
267
+ return { loaded: [], files: [] };
268
+ }
269
+ const loaded = [];
270
+ const files = [];
271
+ for (const name of entries) {
272
+ const full = join(dir, name);
273
+ try {
274
+ const stat = statSync(full);
275
+ if (!stat.isFile())
276
+ continue;
277
+ }
278
+ catch {
279
+ continue;
280
+ }
281
+ files.push(full);
282
+ const partial = loadLoadedTail(full, maxRecords);
283
+ if (partial.length > 0)
284
+ loaded.push(...partial);
285
+ }
286
+ loaded.sort((a, b) => b.record.timestamp - a.record.timestamp);
287
+ return { loaded: loaded.slice(0, maxRecords), files };
288
+ }
170
289
  /**
171
290
  * LoadedRecord variant of `discoverRecords` in index.ts. Same priority
172
291
  * order: explicit `recordFile` arg > ATRIB_RECORD_FILE env > ATRIB_MIRROR_DIR
@@ -1 +1 @@
1
- {"version":3,"file":"aggregations.js","sourceRoot":"","sources":["../src/aggregations.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACL,eAAe,EACf,MAAM,EACN,SAAS,EACT,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AA8B/C;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,OAAO,UAAU,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;AAC/D,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,aAAa,CAAC,OAAgB;IACrC,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAE,OAAmC,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7F,CAAC;AAED,SAAS,SAAS,CAAC,EAAgB,EAAE,KAA8B;IACjE,MAAM,QAAQ,GAAI,EAAE,CAAC,MAAmE,CAAC,KAAK,CAAC,CAAA;IAC/F,IAAI,WAAW,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAA;IAC1C,MAAM,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;IACzB,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;AACjD,CAAC;AAED,SAAS,cAAc,CACrB,OAAgC,EAChC,OAAgC;IAEhC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAA;IACrC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AACjF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,aAAa,CACpB,MAAe;IAEf,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IACtD,MAAM,GAAG,GAAG,MAAiC,CAAA;IAC7C,MAAM,cAAc,GAClB,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI;QACnD,CAAC,CAAE,GAAG,CAAC,MAAkC;QACzC,CAAC,CAAC,IAAI,CAAA;IACV,MAAM,SAAS,GAAG,cAAc,IAAI,GAAG,CAAA;IACvC,IACE,OAAO,SAAS,CAAC,YAAY,KAAK,QAAQ;QAC1C,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ;QACxC,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ;QACxC,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ;QACzC,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ;QACxC,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ;QACvC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC;QACrC,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EACvC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,SAAmC,CAAA;IAClD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAI,GAAG,CAAC,MAA8C,IAAI,SAAS,CAAA;QAC9E,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;YAChF,MAAM,OAAO,GAAG,6BAA6B,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;YACvE,IAAI,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACpD,OAAO;oBACL,MAAM;oBACN,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;oBACzC,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;iBAC5C,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,CAAA;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAA;IAChC,MAAM,GAAG,GAAmB,EAAE,CAAA;IAC9B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC3B,IAAI,CAAC,OAAO;YAAE,SAAQ;QACtB,IAAI,MAAe,CAAA;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QACD,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,SAAS;YAAE,SAAQ;QACxB,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,WAAW,EAAE,iBAAiB,CAAC,SAAS,CAAC,MAAM,CAAC;YAChD,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;SAC7B,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IACtD,IAAI,OAAO,GAAa,EAAE,CAAA;IAC1B,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IAClC,CAAC;IACD,MAAM,MAAM,GAAmB,EAAE,CAAA;IACjC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAAE,SAAQ;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,UAAmB;IAChD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;IAChG,MAAM,QAAQ,GAAG,UAAU,IAAI,OAAO,CAAA;IACtC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAA;IAC5D,CAAC;IACD,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAA;AAClC,CAAC;AAqBD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAsB;IAQtB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAe,CAAA;IAEnC,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,yBAAyB;YAAE,SAAQ;QAChE,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAA;QACzC,IAAI,CAAC,MAAM;YAAE,SAAQ;QACrB,MAAM,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC,CAAC;YAAE,SAAQ;QAEhB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;YAC9B,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,IAAI,GAAG,EAAU;YACzB,UAAU,EAAE,CAAC,QAAQ;SACtB,CAAA;QAED,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,IAAI,kBAAkB,EAAE,CAAC;YAC3E,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,UAA6B,CAAC,CAAA;QACvD,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,GAAG,cAAc,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;YACrF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;QACD,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YAC3E,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;YACvB,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAA;QACtC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,EAA6B,CAAA;IAChD,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,cAAc,GAClB,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;YAC1B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAChG,MAAM,OAAO,GAAsB,EAAE,CAAA;QACrC,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO,CAAC,cAAc,GAAG,cAAc,CAAA;QACzE,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAAE,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAA;QAChE,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;QAC5D,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1B,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAAsB;IAE/D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAmB,CAAA;IAEvC,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,uBAAuB;YAAE,SAAQ;QAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QACvC,IAAI,CAAC,MAAM;YAAE,SAAQ;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QACnC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;QAC5D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoB,CAAA;IACvC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAA;QACnC,GAAG,CAAC,GAAG,CACL,MAAM,EACN,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAC3B,CAAA;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"aggregations.js","sourceRoot":"","sources":["../src/aggregations.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -39,7 +39,9 @@ export declare const ATRIB_RECALL_BETA: number;
39
39
  export declare const ATRIB_RECALL_GAMMA: number;
40
40
  export declare const ATRIB_RECALL_TAU_DAYS: number;
41
41
  export declare const ATRIB_RECALL_NOISE_FLOOR: number;
42
+ export declare const ATRIB_RECALL_CONTENT_MAX_RECORDS: number;
42
43
  import type { AnnotationSummary as AggAnnotationSummary } from './aggregations.js';
44
+ export declare function clearRecallMirrorCache(): void;
43
45
  export declare function loadRecords(path: string): AtribRecord[];
44
46
  /**
45
47
  * Load every `*.jsonl` file in `dir` and merge their records. Files that
package/dist/index.js CHANGED
@@ -113,13 +113,14 @@ export const ATRIB_RECALL_TAU_DAYS = parseFloat(process.env.ATRIB_RECALL_TAU_DAY
113
113
  // defended as innovation, not assumed convention. See ADR D085 + D086.
114
114
  // Set the env var to 0 to disable entirely.
115
115
  export const ATRIB_RECALL_NOISE_FLOOR = parseFloat(process.env.ATRIB_RECALL_NOISE_FLOOR ?? '0.6');
116
+ export const ATRIB_RECALL_CONTENT_MAX_RECORDS = parseInt(process.env.ATRIB_RECALL_CONTENT_MAX_RECORDS ?? '5000', 10);
116
117
  import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
117
118
  import { homedir } from 'node:os';
118
119
  import { join } from 'node:path';
119
120
  import { pathToFileURL } from 'node:url';
120
121
  import { z } from 'zod';
121
- import { aggregateAnnotationsByRecord, aggregateRevisionsByRecord, discoverLoaded, } from './aggregations.js';
122
- import { recencyScore, importanceScore, parkScore, buildBM25Index, bm25Score, tokenize, indexableTokensForRecord, } from './scoring.js';
122
+ import { aggregateAnnotationsByRecord, aggregateRevisionsByRecord, discoverLoaded, loadLoaded, loadLoadedAppend, loadNewestLoadedFromDir, } from './aggregations.js';
123
+ import { recencyScore, importanceScore, parkScore, buildBM25Index, bm25Score, bm25ScoresForQuery, tokenize, indexableTokensForRecord, } from './scoring.js';
123
124
  import { buildLocalGraph, shortestDistances, walkFrom } from './graph.js';
124
125
  import { synthesizeDisplaySummary, resolveDisplayProducer, formatAge } from './legibility.js';
125
126
  const ATRIB_RECORD_FILE = process.env.ATRIB_RECORD_FILE;
@@ -129,6 +130,219 @@ const ATRIB_LOG_ORIGIN = process.env.ATRIB_LOG_ORIGIN ?? 'log.atrib.dev';
129
130
  // (D078 ATRIB_CONTEXT_ID + D083 harness-discovery precedence). Per-run
130
131
  // declaration; changing the env mid-process is not supported.
131
132
  const ATRIB_CONTEXT_ID_DEFAULT = resolveEnvContextId();
133
+ let loadedMirrorSnapshot;
134
+ let contentSearchMirrorSnapshot;
135
+ export function clearRecallMirrorCache() {
136
+ loadedMirrorSnapshot = undefined;
137
+ contentSearchMirrorSnapshot = undefined;
138
+ }
139
+ function readMirrorFingerprint(recordFile) {
140
+ const envFile = process.env.ATRIB_RECORD_FILE;
141
+ const envDir = process.env.ATRIB_MIRROR_DIR ?? join(process.env.HOME ?? '', '.atrib', 'records');
142
+ const explicit = recordFile ?? envFile;
143
+ if (explicit) {
144
+ const stat = statMirrorFile(explicit);
145
+ return {
146
+ files: [explicit],
147
+ stats: stat ? [stat] : [],
148
+ signature: JSON.stringify({
149
+ mode: 'file',
150
+ file: explicit,
151
+ stat,
152
+ }),
153
+ };
154
+ }
155
+ if (!existsSync(envDir)) {
156
+ return {
157
+ files: [],
158
+ stats: [],
159
+ signature: JSON.stringify({ mode: 'dir', dir: envDir, missing: true }),
160
+ };
161
+ }
162
+ let entries = [];
163
+ try {
164
+ entries = readdirSync(envDir)
165
+ .filter((name) => name.endsWith('.jsonl'))
166
+ .sort();
167
+ }
168
+ catch {
169
+ return {
170
+ files: [],
171
+ stats: [],
172
+ signature: JSON.stringify({ mode: 'dir', dir: envDir, unreadable: true }),
173
+ };
174
+ }
175
+ const stats = [];
176
+ for (const name of entries) {
177
+ const full = join(envDir, name);
178
+ const stat = statMirrorFile(full);
179
+ if (stat)
180
+ stats.push(stat);
181
+ }
182
+ return {
183
+ files: stats.map((stat) => stat.path),
184
+ stats,
185
+ signature: JSON.stringify({ mode: 'dir', dir: envDir, stats }),
186
+ };
187
+ }
188
+ function statMirrorFile(path) {
189
+ try {
190
+ const stat = statSync(path);
191
+ if (!stat.isFile())
192
+ return null;
193
+ return { path, size: stat.size, mtimeMs: stat.mtimeMs };
194
+ }
195
+ catch {
196
+ return null;
197
+ }
198
+ }
199
+ function getLoadedMirrorSnapshot(recordFile) {
200
+ const fingerprint = readMirrorFingerprint(recordFile);
201
+ if (loadedMirrorSnapshot?.signature === fingerprint.signature)
202
+ return loadedMirrorSnapshot;
203
+ const refreshed = tryAppendRefreshLoadedMirrorSnapshot(loadedMirrorSnapshot, fingerprint);
204
+ if (refreshed)
205
+ return refreshed;
206
+ const { loaded, files } = discoverLoaded(recordFile);
207
+ const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
208
+ const revisionsByRecord = aggregateRevisionsByRecord(loaded);
209
+ loadedMirrorSnapshot = {
210
+ signature: fingerprint.signature,
211
+ stats: fingerprint.stats,
212
+ loaded,
213
+ loadedByHash: new Map(loaded.map((lr) => [lr.record_hash, lr])),
214
+ newestLoaded: loaded.slice().sort((a, b) => b.record.timestamp - a.record.timestamp),
215
+ files,
216
+ annotationsByRecord,
217
+ revisionsByRecord,
218
+ bm25IndexesByNewestLimit: new Map(),
219
+ partial: false,
220
+ };
221
+ return loadedMirrorSnapshot;
222
+ }
223
+ function getContentSearchMirrorSnapshot(maxRecords) {
224
+ const fingerprint = readMirrorFingerprint();
225
+ if (loadedMirrorSnapshot?.signature === fingerprint.signature)
226
+ return loadedMirrorSnapshot;
227
+ if (contentSearchMirrorSnapshot?.signature === fingerprint.signature &&
228
+ contentSearchMirrorSnapshot.maxLoadedRecords === maxRecords) {
229
+ return contentSearchMirrorSnapshot;
230
+ }
231
+ const refreshed = tryAppendRefreshLoadedMirrorSnapshot(contentSearchMirrorSnapshot, fingerprint, maxRecords);
232
+ if (refreshed)
233
+ return refreshed;
234
+ const { loaded, files } = discoverNewestLoaded(maxRecords);
235
+ const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
236
+ const revisionsByRecord = aggregateRevisionsByRecord(loaded);
237
+ contentSearchMirrorSnapshot = {
238
+ signature: fingerprint.signature,
239
+ stats: fingerprint.stats,
240
+ loaded,
241
+ loadedByHash: new Map(loaded.map((lr) => [lr.record_hash, lr])),
242
+ newestLoaded: loaded.slice().sort((a, b) => b.record.timestamp - a.record.timestamp),
243
+ files,
244
+ annotationsByRecord,
245
+ revisionsByRecord,
246
+ bm25IndexesByNewestLimit: new Map(),
247
+ maxLoadedRecords: maxRecords,
248
+ partial: true,
249
+ };
250
+ return contentSearchMirrorSnapshot;
251
+ }
252
+ function discoverNewestLoaded(maxRecords) {
253
+ const envFile = process.env.ATRIB_RECORD_FILE;
254
+ const envDir = process.env.ATRIB_MIRROR_DIR ?? join(process.env.HOME ?? '', '.atrib', 'records');
255
+ if (envFile) {
256
+ return {
257
+ loaded: loadLoaded(envFile)
258
+ .sort((a, b) => b.record.timestamp - a.record.timestamp)
259
+ .slice(0, maxRecords),
260
+ files: [envFile],
261
+ };
262
+ }
263
+ return loadNewestLoadedFromDir(envDir, maxRecords);
264
+ }
265
+ function tryAppendRefreshLoadedMirrorSnapshot(previous, fingerprint, maxLoadedRecords) {
266
+ if (!previous)
267
+ return undefined;
268
+ if (!sameMirrorFiles(previous.stats, fingerprint.stats))
269
+ return undefined;
270
+ const previousByPath = new Map(previous.stats.map((stat) => [stat.path, stat]));
271
+ const appended = [];
272
+ for (const current of fingerprint.stats) {
273
+ const prior = previousByPath.get(current.path);
274
+ if (!prior)
275
+ return undefined;
276
+ if (current.size < prior.size)
277
+ return undefined;
278
+ if (current.size > prior.size) {
279
+ appended.push(...loadLoadedAppend(current.path, prior.size));
280
+ }
281
+ }
282
+ if (appended.length === 0) {
283
+ previous.signature = fingerprint.signature;
284
+ previous.stats = fingerprint.stats;
285
+ return previous;
286
+ }
287
+ let loaded = previous.loaded.concat(appended);
288
+ if (maxLoadedRecords !== undefined) {
289
+ loaded = loaded
290
+ .sort((a, b) => b.record.timestamp - a.record.timestamp)
291
+ .slice(0, maxLoadedRecords);
292
+ }
293
+ const loadedByHash = new Map(loaded.map((lr) => [lr.record_hash, lr]));
294
+ const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
295
+ const revisionsByRecord = aggregateRevisionsByRecord(loaded);
296
+ const refreshed = {
297
+ signature: fingerprint.signature,
298
+ stats: fingerprint.stats,
299
+ loaded,
300
+ loadedByHash,
301
+ newestLoaded: loaded.slice().sort((a, b) => b.record.timestamp - a.record.timestamp),
302
+ files: fingerprint.files,
303
+ annotationsByRecord,
304
+ revisionsByRecord,
305
+ bm25IndexesByNewestLimit: new Map(),
306
+ maxLoadedRecords,
307
+ partial: previous.partial,
308
+ };
309
+ if (previous.partial) {
310
+ contentSearchMirrorSnapshot = refreshed;
311
+ }
312
+ else {
313
+ loadedMirrorSnapshot = refreshed;
314
+ }
315
+ return refreshed;
316
+ }
317
+ function sameMirrorFiles(a, b) {
318
+ if (a.length !== b.length)
319
+ return false;
320
+ for (let i = 0; i < a.length; i += 1) {
321
+ if (a[i].path !== b[i].path)
322
+ return false;
323
+ }
324
+ return true;
325
+ }
326
+ function getBm25IndexForNewestLimit(snapshot, limit) {
327
+ const boundedLimit = Math.max(1, Math.min(snapshot.newestLoaded.length, limit));
328
+ const cached = snapshot.bm25IndexesByNewestLimit.get(boundedLimit);
329
+ if (cached)
330
+ return cached;
331
+ const corpus = snapshot.newestLoaded.slice(0, boundedLimit).map((lr) => ({
332
+ id: lr.record_hash,
333
+ tokens: indexableTokensForRecord(lr, snapshot.annotationsByRecord.get(lr.record_hash)),
334
+ }));
335
+ const index = buildBM25Index(corpus);
336
+ snapshot.bm25IndexesByNewestLimit.set(boundedLimit, index);
337
+ return index;
338
+ }
339
+ function resolveContentSearchLimit(requested, totalRecords) {
340
+ const raw = typeof requested === 'number' && Number.isFinite(requested)
341
+ ? requested
342
+ : ATRIB_RECALL_CONTENT_MAX_RECORDS;
343
+ const bounded = Math.max(1, Math.min(50000, Math.floor(raw)));
344
+ return Math.min(totalRecords, bounded);
345
+ }
132
346
  /**
133
347
  * Pull the inner AtribRecord out of either on-disk shape (D062 envelope or
134
348
  * legacy bare record). Returns null when the line is neither shape or is
@@ -236,7 +450,7 @@ export function loadRecordsFromDir(dir) {
236
450
  * level (two recall() calls in the same millisecond produce identical
237
451
  * scores given identical input).
238
452
  */
239
- function rankByRelevance(filtered, annotationsByRecord, rankAnchor) {
453
+ function rankByRelevance(filtered, annotationsByRecord, rankAnchor, bm25Index) {
240
454
  const now = Date.now();
241
455
  // Treat rank_anchor as a free-form query unless it parses as a record_hash
242
456
  // (sha256:<64-hex>). Future: when rank_by='causal_distance' wires up,
@@ -244,16 +458,11 @@ function rankByRelevance(filtered, annotationsByRecord, rankAnchor) {
244
458
  // contribute 0 relevance (recency + importance only).
245
459
  const looksLikeRecordHash = typeof rankAnchor === 'string' && /^sha256:[0-9a-f]{64}$/.test(rankAnchor);
246
460
  const queryTokens = rankAnchor && !looksLikeRecordHash ? tokenize(rankAnchor) : [];
247
- // Build the BM25 index over the filtered set's indexable text. Per
248
- // D086, indexable text is per-event_type record content (from the D062
249
- // sidecar) augmented by any annotation summary + topics when present.
250
- // Index construction is O(total token count); for Layer 1 corpus sizes
251
- // (a few hundred records × tens of tokens each) this is negligible.
252
- const corpus = filtered.map((lr) => ({
253
- id: lr.record_hash,
254
- tokens: indexableTokensForRecord(lr, annotationsByRecord.get(lr.record_hash)),
255
- }));
256
- const idx = buildBM25Index(corpus);
461
+ const idx = bm25Index ??
462
+ buildBM25Index(filtered.map((lr) => ({
463
+ id: lr.record_hash,
464
+ tokens: indexableTokensForRecord(lr, annotationsByRecord.get(lr.record_hash)),
465
+ })));
257
466
  const scores = new Map();
258
467
  let topScore = 0;
259
468
  for (const lr of filtered) {
@@ -454,9 +663,8 @@ export async function recall(args, recordFile) {
454
663
  // would otherwise treat tampered records as provable. Default to safe.
455
664
  const compact = args.compact !== false;
456
665
  const includeUnverified = args.include_unverified === true;
457
- const { loaded: all, files } = discoverLoaded(recordFile);
458
- const annotationsByRecord = aggregateAnnotationsByRecord(all);
459
- const revisionsByRecord = aggregateRevisionsByRecord(all);
666
+ const snapshot = getLoadedMirrorSnapshot(recordFile);
667
+ const { loaded: all, files, annotationsByRecord, revisionsByRecord } = snapshot;
460
668
  // Apply ATRIB_CONTEXT_ID env-var default when the caller omits the
461
669
  // context_id filter. Lets Inspect-style harnesses scope recall to a
462
670
  // per-arm context_id without threading it through every tool call;
@@ -782,7 +990,7 @@ export function registerAtribRecallTools(server) {
782
990
  .describe('Maximum hop count (NOT cumulative weight). Default 3. Higher values may return many records; paginate downstream if needed.'),
783
991
  },
784
992
  }, async (args) => logReadPrimitiveCall('recall_walk', args, async () => {
785
- const { loaded } = discoverLoaded();
993
+ const { loaded, annotationsByRecord } = getLoadedMirrorSnapshot();
786
994
  const graph = buildLocalGraph(loaded);
787
995
  const edgeTypes = args.edge_types ? new Set(args.edge_types) : undefined;
788
996
  const depth = typeof args.depth === 'number' ? args.depth : 3;
@@ -793,7 +1001,6 @@ export function registerAtribRecallTools(server) {
793
1001
  // O(N) lookup across the walk; for typical walks (depth=3, k<50)
794
1002
  // this is fast.
795
1003
  const byHash = new Map(loaded.map((lr) => [lr.record_hash, lr]));
796
- const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
797
1004
  const now = Date.now();
798
1005
  const enriched = walk.map((step) => {
799
1006
  // walk derives from graph (built from `loaded`); byHash always has a hit.
@@ -837,8 +1044,7 @@ export function registerAtribRecallTools(server) {
837
1044
  .describe('Record hash (sha256:<64-hex>) of the record whose annotations should be retrieved. Annotations are D058 records whose signed annotates field equals this hash.'),
838
1045
  },
839
1046
  }, async (args) => logReadPrimitiveCall('recall_annotations', args, async () => {
840
- const { loaded } = discoverLoaded();
841
- const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
1047
+ const { annotationsByRecord } = getLoadedMirrorSnapshot();
842
1048
  const summary = annotationsByRecord.get(args.record_hash) ?? null;
843
1049
  return {
844
1050
  content: [
@@ -857,11 +1063,10 @@ export function registerAtribRecallTools(server) {
857
1063
  .describe('Record hash (sha256:<64-hex>) of the record whose revision chain should be retrieved. Revisions are D059 records whose signed revises field equals this hash (or chain back to it).'),
858
1064
  },
859
1065
  }, async (args) => logReadPrimitiveCall('recall_revisions', args, async () => {
860
- const { loaded } = discoverLoaded();
1066
+ const { loaded, revisionsByRecord } = getLoadedMirrorSnapshot();
861
1067
  const byHash = new Map();
862
1068
  for (const lr of loaded)
863
1069
  byHash.set(lr.record_hash, lr);
864
- const revisionsByRecord = aggregateRevisionsByRecord(loaded);
865
1070
  const chain = [];
866
1071
  const seen = new Set();
867
1072
  let current = args.record_hash;
@@ -917,21 +1122,30 @@ export function registerAtribRecallTools(server) {
917
1122
  .number()
918
1123
  .optional()
919
1124
  .describe('Top-k results to return (default 10, max 50). Final ordering uses Park et al. weighted-sum scoring: alpha*recency + beta*importance + gamma*BM25_relevance. Weights are tunable via ATRIB_RECALL_ALPHA/BETA/GAMMA env vars.'),
1125
+ max_records: z
1126
+ .number()
1127
+ .optional()
1128
+ .describe('Maximum newest-first records to search before BM25 candidate scoring. Default ATRIB_RECALL_CONTENT_MAX_RECORDS or 5000, max 50000. Raise for explicit archival sweeps.'),
920
1129
  },
921
1130
  }, async (args) => logReadPrimitiveCall('recall_by_content', args, async () => {
922
- const { loaded } = discoverLoaded();
923
- const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
1131
+ const requestedLimit = resolveContentSearchLimit(args.max_records, Number.MAX_SAFE_INTEGER);
1132
+ const snapshot = getContentSearchMirrorSnapshot(requestedLimit);
1133
+ const { loaded, loadedByHash, annotationsByRecord } = snapshot;
1134
+ const searchLimit = Math.min(requestedLimit, loaded.length);
1135
+ const bm25Index = getBm25IndexForNewestLimit(snapshot, searchLimit);
924
1136
  const queryTokens = tokenize(args.query);
925
- const corpus = loaded.map((lr) => ({
926
- id: lr.record_hash,
927
- tokens: indexableTokensForRecord(lr, annotationsByRecord.get(lr.record_hash)),
928
- }));
929
- const idx = buildBM25Index(corpus);
1137
+ const relevanceByHash = bm25ScoresForQuery(bm25Index, queryTokens);
930
1138
  const now = Date.now();
931
- const scored = loaded.map((lr) => {
1139
+ const searchPool = queryTokens.length > 0
1140
+ ? Array.from(relevanceByHash.keys())
1141
+ .map((hash) => loadedByHash.get(hash))
1142
+ .filter((lr) => lr !== undefined)
1143
+ : snapshot.newestLoaded.slice(0, searchLimit);
1144
+ const scored = searchPool.map((lr) => {
932
1145
  const r = recencyScore(lr.record.timestamp, now, ATRIB_RECALL_TAU_DAYS);
933
1146
  const i = importanceScore(annotationsByRecord.get(lr.record_hash));
934
- const rel = queryTokens.length > 0 ? bm25Score(idx, lr.record_hash, queryTokens) : 0;
1147
+ const rawRel = queryTokens.length > 0 ? (relevanceByHash.get(lr.record_hash) ?? 0) : 0;
1148
+ const rel = Math.min(rawRel, 1);
935
1149
  const score = parkScore(r, i, rel, ATRIB_RECALL_ALPHA, ATRIB_RECALL_BETA, ATRIB_RECALL_GAMMA);
936
1150
  return { lr, score, recency: r, importance: i, relevance: rel };
937
1151
  });
@@ -949,6 +1163,10 @@ export function registerAtribRecallTools(server) {
949
1163
  text: JSON.stringify({
950
1164
  query: args.query,
951
1165
  k,
1166
+ total_records: snapshot.partial ? null : loaded.length,
1167
+ searched_records: searchLimit,
1168
+ candidate_records: searchPool.length,
1169
+ truncated_corpus: snapshot.partial || searchLimit < loaded.length,
952
1170
  count: top.length,
953
1171
  results: top.map(({ lr, score, recency, importance, relevance }) => {
954
1172
  const ann = annotationsByRecord.get(lr.record_hash);
@@ -1010,8 +1228,7 @@ export function registerAtribRecallTools(server) {
1010
1228
  ],
1011
1229
  };
1012
1230
  }
1013
- const { loaded } = discoverLoaded();
1014
- const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
1231
+ const { loaded, annotationsByRecord } = getLoadedMirrorSnapshot();
1015
1232
  const filtered = loaded
1016
1233
  .filter((lr) => lr.record.context_id === ctx)
1017
1234
  .sort((a, b) => a.record.timestamp - b.record.timestamp);
@@ -1085,7 +1302,7 @@ export function registerAtribRecallTools(server) {
1085
1302
  .describe('Maximum records to return (default 50, max 500), newest-first.'),
1086
1303
  },
1087
1304
  }, async (args) => logReadPrimitiveCall('recall_orphans', args, async () => {
1088
- const { loaded } = discoverLoaded();
1305
+ const { loaded, annotationsByRecord } = getLoadedMirrorSnapshot();
1089
1306
  // Build the set of all record_hashes that appear in any record's
1090
1307
  // informed_by field. Anything in `loaded` whose record_hash is
1091
1308
  // NOT in this set is an orphan.
@@ -1112,7 +1329,6 @@ export function registerAtribRecallTools(server) {
1112
1329
  orphans.sort((a, b) => b.record.timestamp - a.record.timestamp);
1113
1330
  const limit = Math.max(1, Math.min(500, args.limit ?? 50));
1114
1331
  const sliced = orphans.slice(0, limit);
1115
- const annotationsByRecord = aggregateAnnotationsByRecord(loaded);
1116
1332
  const now = Date.now();
1117
1333
  return {
1118
1334
  content: [
@@ -1153,7 +1369,7 @@ export function registerAtribRecallTools(server) {
1153
1369
  .describe('Optional minimum record count to include a creator in the result. Default 1 (include all).'),
1154
1370
  },
1155
1371
  }, async (args) => logReadPrimitiveCall('recall_by_signer', args, async () => {
1156
- const { loaded } = discoverLoaded();
1372
+ const { loaded } = getLoadedMirrorSnapshot();
1157
1373
  const byKey = new Map();
1158
1374
  for (const lr of loaded) {
1159
1375
  const key = lr.record.creator_key;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/scoring.d.ts CHANGED
@@ -64,6 +64,7 @@ export type BM25Index = {
64
64
  length: number;
65
65
  tf: Map<string, number>;
66
66
  }>;
67
+ postings: Map<string, Map<string, number>>;
67
68
  idf: Map<string, number>;
68
69
  avgdl: number;
69
70
  k1: number;
@@ -86,6 +87,14 @@ export declare function buildBM25Index(corpus: BM25Doc[], k1?: number, b?: numbe
86
87
  * since the recall flow may filter the corpus after indexing.
87
88
  */
88
89
  export declare function bm25Score(index: BM25Index, docId: string, queryTokens: string[]): number;
90
+ /**
91
+ * Compute BM25 scores for every document that contains at least one query
92
+ * token. This walks the inverted postings lists for the query terms instead
93
+ * of scanning every document in the corpus, which keeps interactive content
94
+ * search bounded once local mirrors grow past the original few-hundred-record
95
+ * Layer 1 assumption.
96
+ */
97
+ export declare function bm25ScoresForQuery(index: BM25Index, queryTokens: string[]): Map<string, number>;
89
98
  /**
90
99
  * Park et al. weighted-sum score. Caller supplies the three component
91
100
  * scores plus the alpha/beta/gamma weights; this function just combines.
package/dist/scoring.js CHANGED
@@ -48,6 +48,7 @@ export function tokenize(text) {
48
48
  export function buildBM25Index(corpus, k1 = 1.5, b = 0.75) {
49
49
  const docs = new Map();
50
50
  const df = new Map();
51
+ const postings = new Map();
51
52
  let totalLength = 0;
52
53
  for (const d of corpus) {
53
54
  const tf = new Map();
@@ -59,6 +60,11 @@ export function buildBM25Index(corpus, k1 = 1.5, b = 0.75) {
59
60
  for (const tok of new Set(d.tokens)) {
60
61
  df.set(tok, (df.get(tok) ?? 0) + 1);
61
62
  }
63
+ for (const [tok, count] of tf) {
64
+ const posting = postings.get(tok) ?? new Map();
65
+ posting.set(d.id, count);
66
+ postings.set(tok, posting);
67
+ }
62
68
  }
63
69
  const N = corpus.length;
64
70
  const avgdl = N > 0 ? totalLength / N : 0;
@@ -69,7 +75,7 @@ export function buildBM25Index(corpus, k1 = 1.5, b = 0.75) {
69
75
  // corpus. Returns ln((N - df + 0.5) / (df + 0.5) + 1).
70
76
  idf.set(tok, Math.log((N - count + 0.5) / (count + 0.5) + 1));
71
77
  }
72
- return { docs, idf, avgdl, k1, b };
78
+ return { docs, postings, idf, avgdl, k1, b };
73
79
  }
74
80
  /**
75
81
  * Compute the BM25 score of one document against a query. The document
@@ -97,6 +103,33 @@ export function bm25Score(index, docId, queryTokens) {
97
103
  }
98
104
  return score;
99
105
  }
106
+ /**
107
+ * Compute BM25 scores for every document that contains at least one query
108
+ * token. This walks the inverted postings lists for the query terms instead
109
+ * of scanning every document in the corpus, which keeps interactive content
110
+ * search bounded once local mirrors grow past the original few-hundred-record
111
+ * Layer 1 assumption.
112
+ */
113
+ export function bm25ScoresForQuery(index, queryTokens) {
114
+ const scores = new Map();
115
+ if (queryTokens.length === 0 || index.avgdl === 0)
116
+ return scores;
117
+ for (const qt of new Set(queryTokens)) {
118
+ const posting = index.postings.get(qt);
119
+ if (!posting)
120
+ continue;
121
+ const idf = index.idf.get(qt) ?? 0;
122
+ for (const [docId, tf] of posting) {
123
+ const doc = index.docs.get(docId);
124
+ if (!doc)
125
+ continue;
126
+ const numerator = tf * (index.k1 + 1);
127
+ const denominator = tf + index.k1 * (1 - index.b + index.b * (doc.length / index.avgdl));
128
+ scores.set(docId, (scores.get(docId) ?? 0) + idf * (numerator / denominator));
129
+ }
130
+ }
131
+ return scores;
132
+ }
100
133
  /**
101
134
  * Park et al. weighted-sum score. Caller supplies the three component
102
135
  * scores plus the alpha/beta/gamma weights; this function just combines.
@@ -1 +1 @@
1
- {"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atrib/recall",
3
- "version": "0.12.18",
3
+ "version": "0.12.19",
4
4
  "description": "MCP server for atrib. Lets agents query their own provable past from the local signed-record mirror with per-record signature verification.",
5
5
  "author": "atrib <hello@atrib.dev>",
6
6
  "keywords": [
@@ -27,7 +27,7 @@
27
27
  "@atrib/mcp": "0.18.0"
28
28
  },
29
29
  "devDependencies": {
30
- "@types/node": "^25.9.2",
30
+ "@types/node": "^25.9.3",
31
31
  "typescript": "^6.0.3",
32
32
  "vitest": "^4.1.8"
33
33
  },