fastrmemory 0.5.0 → 0.6.0

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.
Files changed (128) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +2 -2
  3. package/.cursor/skills/skills.json +1 -1
  4. package/README.md +40 -30
  5. package/dist/bin/fastr.js +122 -14
  6. package/dist/bin/fastr.js.map +1 -1
  7. package/dist/src/bench/harness.d.ts.map +1 -1
  8. package/dist/src/bench/harness.js +4 -0
  9. package/dist/src/bench/harness.js.map +1 -1
  10. package/dist/src/bench/marker-corpus.d.ts +98 -0
  11. package/dist/src/bench/marker-corpus.d.ts.map +1 -0
  12. package/dist/src/bench/marker-corpus.js +306 -0
  13. package/dist/src/bench/marker-corpus.js.map +1 -0
  14. package/dist/src/bench/mcp-stdio.d.ts +55 -0
  15. package/dist/src/bench/mcp-stdio.d.ts.map +1 -0
  16. package/dist/src/bench/mcp-stdio.js +146 -0
  17. package/dist/src/bench/mcp-stdio.js.map +1 -0
  18. package/dist/src/bench/public-datasets.d.ts +2 -0
  19. package/dist/src/bench/public-datasets.d.ts.map +1 -1
  20. package/dist/src/bench/public-datasets.js +2 -1
  21. package/dist/src/bench/public-datasets.js.map +1 -1
  22. package/dist/src/bench/public-harness.d.ts +14 -0
  23. package/dist/src/bench/public-harness.d.ts.map +1 -1
  24. package/dist/src/bench/public-harness.js +83 -8
  25. package/dist/src/bench/public-harness.js.map +1 -1
  26. package/dist/src/bench/public-pins.js +5 -5
  27. package/dist/src/bench/public-pins.js.map +1 -1
  28. package/dist/src/bench/split.d.ts +33 -0
  29. package/dist/src/bench/split.d.ts.map +1 -0
  30. package/dist/src/bench/split.js +56 -0
  31. package/dist/src/bench/split.js.map +1 -0
  32. package/dist/src/bench/stats.d.ts +40 -0
  33. package/dist/src/bench/stats.d.ts.map +1 -0
  34. package/dist/src/bench/stats.js +99 -0
  35. package/dist/src/bench/stats.js.map +1 -0
  36. package/dist/src/bench/vs-engines.d.ts +51 -0
  37. package/dist/src/bench/vs-engines.d.ts.map +1 -0
  38. package/dist/src/bench/vs-engines.js +121 -0
  39. package/dist/src/bench/vs-engines.js.map +1 -0
  40. package/dist/src/config.d.ts +33 -0
  41. package/dist/src/config.d.ts.map +1 -1
  42. package/dist/src/config.js +84 -1
  43. package/dist/src/config.js.map +1 -1
  44. package/dist/src/db/doctor.d.ts +8 -0
  45. package/dist/src/db/doctor.d.ts.map +1 -1
  46. package/dist/src/db/doctor.js +65 -1
  47. package/dist/src/db/doctor.js.map +1 -1
  48. package/dist/src/db/fts-queue.d.ts +35 -0
  49. package/dist/src/db/fts-queue.d.ts.map +1 -0
  50. package/dist/src/db/fts-queue.js +78 -0
  51. package/dist/src/db/fts-queue.js.map +1 -0
  52. package/dist/src/db/repository.d.ts +63 -1
  53. package/dist/src/db/repository.d.ts.map +1 -1
  54. package/dist/src/db/repository.js +244 -50
  55. package/dist/src/db/repository.js.map +1 -1
  56. package/dist/src/db/schema.d.ts +1 -1
  57. package/dist/src/db/schema.d.ts.map +1 -1
  58. package/dist/src/db/schema.js +63 -2
  59. package/dist/src/db/schema.js.map +1 -1
  60. package/dist/src/installer/copilot.d.ts +21 -0
  61. package/dist/src/installer/copilot.d.ts.map +1 -1
  62. package/dist/src/installer/copilot.js +72 -1
  63. package/dist/src/installer/copilot.js.map +1 -1
  64. package/dist/src/installer/gemini.d.ts +13 -0
  65. package/dist/src/installer/gemini.d.ts.map +1 -1
  66. package/dist/src/installer/gemini.js +64 -1
  67. package/dist/src/installer/gemini.js.map +1 -1
  68. package/dist/src/installer/hooks.d.ts +42 -5
  69. package/dist/src/installer/hooks.d.ts.map +1 -1
  70. package/dist/src/installer/hooks.js +270 -62
  71. package/dist/src/installer/hooks.js.map +1 -1
  72. package/dist/src/installer/json-config.d.ts +25 -1
  73. package/dist/src/installer/json-config.d.ts.map +1 -1
  74. package/dist/src/installer/json-config.js +95 -2
  75. package/dist/src/installer/json-config.js.map +1 -1
  76. package/dist/src/installer/mcp-init.d.ts.map +1 -1
  77. package/dist/src/installer/mcp-init.js +5 -6
  78. package/dist/src/installer/mcp-init.js.map +1 -1
  79. package/dist/src/installer/opencode.d.ts +18 -0
  80. package/dist/src/installer/opencode.d.ts.map +1 -1
  81. package/dist/src/installer/opencode.js +81 -1
  82. package/dist/src/installer/opencode.js.map +1 -1
  83. package/dist/src/installer/setup.d.ts +7 -0
  84. package/dist/src/installer/setup.d.ts.map +1 -1
  85. package/dist/src/installer/setup.js +32 -0
  86. package/dist/src/installer/setup.js.map +1 -1
  87. package/dist/src/mcp/profiles.d.ts +9 -6
  88. package/dist/src/mcp/profiles.d.ts.map +1 -1
  89. package/dist/src/mcp/profiles.js +12 -9
  90. package/dist/src/mcp/profiles.js.map +1 -1
  91. package/dist/src/mcp/server.d.ts +1 -1
  92. package/dist/src/mcp/server.d.ts.map +1 -1
  93. package/dist/src/mcp/server.js +80 -0
  94. package/dist/src/mcp/server.js.map +1 -1
  95. package/dist/src/search/aggregate.d.ts +24 -0
  96. package/dist/src/search/aggregate.d.ts.map +1 -0
  97. package/dist/src/search/aggregate.js +59 -0
  98. package/dist/src/search/aggregate.js.map +1 -0
  99. package/dist/src/search/backfill.d.ts.map +1 -1
  100. package/dist/src/search/backfill.js +7 -2
  101. package/dist/src/search/backfill.js.map +1 -1
  102. package/dist/src/search/budget.d.ts +2 -0
  103. package/dist/src/search/budget.d.ts.map +1 -1
  104. package/dist/src/search/budget.js.map +1 -1
  105. package/dist/src/search/embeddings.d.ts +35 -2
  106. package/dist/src/search/embeddings.d.ts.map +1 -1
  107. package/dist/src/search/embeddings.js +128 -5
  108. package/dist/src/search/embeddings.js.map +1 -1
  109. package/dist/src/search/hybrid-rrf.d.ts +45 -0
  110. package/dist/src/search/hybrid-rrf.d.ts.map +1 -1
  111. package/dist/src/search/hybrid-rrf.js +212 -56
  112. package/dist/src/search/hybrid-rrf.js.map +1 -1
  113. package/dist/src/search/static-model-install.d.ts +43 -0
  114. package/dist/src/search/static-model-install.d.ts.map +1 -0
  115. package/dist/src/search/static-model-install.js +112 -0
  116. package/dist/src/search/static-model-install.js.map +1 -0
  117. package/dist/src/search/static-model.d.ts +63 -0
  118. package/dist/src/search/static-model.d.ts.map +1 -0
  119. package/dist/src/search/static-model.js +244 -0
  120. package/dist/src/search/static-model.js.map +1 -0
  121. package/dist/src/search/temporal.d.ts +32 -0
  122. package/dist/src/search/temporal.d.ts.map +1 -0
  123. package/dist/src/search/temporal.js +164 -0
  124. package/dist/src/search/temporal.js.map +1 -0
  125. package/llms-install.md +3 -3
  126. package/package.json +5 -1
  127. package/server.json +1 -1
  128. package/skills/skills.json +1 -1
@@ -0,0 +1,306 @@
1
+ /**
2
+ * Deterministic marker corpus for the cross-engine comparison.
3
+ *
4
+ * LongMemEval cannot be used for the cross-engine run: its haystack is 29.8 MB for 60
5
+ * cases (p50 document 10,445 characters, max 42,929), so ingesting it through the MCP
6
+ * stdio surface costs roughly 2,900 round trips per engine, and truncating the sessions
7
+ * to make that affordable would destroy answerability. This corpus keeps the property
8
+ * that matters for a retrieval comparison - one identifiable memory among many - while
9
+ * staying small enough to run through the same surface an agent actually uses.
10
+ *
11
+ * Every document starts with a unique marker. Scoring asks one question: did the marker
12
+ * for the gold document appear in the context the engine returned? That works across
13
+ * three engines whose output formats have nothing in common, and putting the marker at
14
+ * position 0 means an engine that truncates content still returns it.
15
+ *
16
+ * Three query tiers, reported separately and never collapsed into one headline:
17
+ *
18
+ * exact - the system name and the problem word, both present in the gold document.
19
+ * multi - the system name, a symptom shared by ~22 documents, and an event shared
20
+ * by ~171 documents. Only the gold document has all three.
21
+ * paraphrase - the system name and a synonym that appears in no document at all, so a
22
+ * lexical engine has no signal for the discriminating term.
23
+ */
24
+ import { createHash } from 'node:crypto';
25
+ export const MARKER_TIERS = ['exact', 'multi', 'paraphrase'];
26
+ /** 30 systems. Every system name is unique and appears in exactly 40 documents. */
27
+ export const MARKER_SYSTEMS = [
28
+ 'auth-service',
29
+ 'billing-worker',
30
+ 'checkout-api',
31
+ 'search-indexer',
32
+ 'notification-hub',
33
+ 'user-profile',
34
+ 'admin-console',
35
+ 'payment-gateway',
36
+ 'inventory-sync',
37
+ 'order-pipeline',
38
+ 'analytics-collector',
39
+ 'report-builder',
40
+ 'file-uploader',
41
+ 'image-resizer',
42
+ 'email-dispatcher',
43
+ 'sms-gateway',
44
+ 'webhook-relay',
45
+ 'session-store',
46
+ 'cache-proxy',
47
+ 'rate-limiter',
48
+ 'audit-logger',
49
+ 'feature-flags',
50
+ 'cron-scheduler',
51
+ 'job-queue',
52
+ 'metrics-agent',
53
+ 'trace-collector',
54
+ 'config-loader',
55
+ 'secret-rotator',
56
+ 'backup-runner',
57
+ 'migration-tool'
58
+ ];
59
+ /** 40 problem words. The synonym is used only in paraphrase queries and in no document. */
60
+ export const MARKER_PROBLEMS = [
61
+ { term: 'timeout', synonym: 'standstill' },
62
+ { term: 'crash', synonym: 'implosion' },
63
+ { term: 'leak', synonym: 'seepage' },
64
+ { term: 'race', synonym: 'contretemps' },
65
+ { term: 'deadlock', synonym: 'gridlock' },
66
+ { term: 'corruption', synonym: 'mangling' },
67
+ { term: 'overflow', synonym: 'spillover' },
68
+ { term: 'regression', synonym: 'backslide' },
69
+ { term: 'latency', synonym: 'sluggishness' },
70
+ { term: 'backlog', synonym: 'pileup' },
71
+ { term: 'throttling', synonym: 'strangling' },
72
+ { term: 'retry', synonym: 'reattempt' },
73
+ { term: 'duplication', synonym: 'cloning' },
74
+ { term: 'truncation', synonym: 'clipping' },
75
+ { term: 'encoding', synonym: 'transliteration' },
76
+ { term: 'ordering', synonym: 'sequencing' },
77
+ { term: 'staleness', synonym: 'decrepitude' },
78
+ { term: 'exhaustion', synonym: 'depletion' },
79
+ { term: 'mismatch', synonym: 'divergence' },
80
+ { term: 'rollback', synonym: 'reversion' },
81
+ { term: 'migration', synonym: 'transplant' },
82
+ { term: 'partition', synonym: 'segmentation' },
83
+ { term: 'replication', synonym: 'mirroring' },
84
+ { term: 'serialization', synonym: 'marshalling' },
85
+ { term: 'authentication', synonym: 'credentialing' },
86
+ { term: 'authorization', synonym: 'entitlement' },
87
+ { term: 'validation', synonym: 'vetting' },
88
+ { term: 'sanitization', synonym: 'scrubbing' },
89
+ { term: 'pagination', synonym: 'leafing' },
90
+ { term: 'caching', synonym: 'hoarding' },
91
+ { term: 'batching', synonym: 'bundling' },
92
+ { term: 'compression', synonym: 'squeezing' },
93
+ { term: 'encryption', synonym: 'ciphering' },
94
+ { term: 'indexing', synonym: 'cataloguing' },
95
+ { term: 'scheduling', synonym: 'timetabling' },
96
+ { term: 'routing', synonym: 'wayfinding' },
97
+ { term: 'sharding', synonym: 'fragmenting' },
98
+ { term: 'checkpointing', synonym: 'bookmarking' },
99
+ { term: 'reconciliation', synonym: 'rebalancing' },
100
+ { term: 'observability', synonym: 'instrumentation' }
101
+ ];
102
+ /**
103
+ * 54 symptom phrases, assigned so each one lands in about 22 documents. None of these
104
+ * words appears in a paraphrase synonym.
105
+ */
106
+ export const MARKER_SYMPTOMS = [
107
+ 'intermittent 502 responses from the edge',
108
+ 'a slow rise in resident memory',
109
+ 'spiky garbage collection pauses',
110
+ 'connection pool saturation',
111
+ 'a queue that never drains',
112
+ 'repeated leader elections',
113
+ 'stale reads from the replica',
114
+ 'duplicate downstream deliveries',
115
+ 'a widening lag on the consumer group',
116
+ 'bursts of socket resets',
117
+ 'a growing number of parked threads',
118
+ 'lock waits above two seconds',
119
+ 'a hot partition on the primary key',
120
+ 'checksum failures on the archive',
121
+ 'a silent drop in throughput',
122
+ 'unexpected restarts at low load',
123
+ 'a backlog that doubles overnight',
124
+ 'elevated disk wait on the writer',
125
+ 'a scatter of half-written rows',
126
+ 'a sudden jump in p99 response time',
127
+ 'missing spans in the trace',
128
+ 'an abrupt change in row counts',
129
+ 'a retry storm from one caller',
130
+ 'a cold cache after every deploy',
131
+ 'a handshake that never completes',
132
+ 'an orphaned background process',
133
+ 'a mismatched schema version',
134
+ 'a partially applied batch',
135
+ 'a flood of timeout errors',
136
+ 'a quiet failure in the sidecar',
137
+ 'a slow leak of file handles',
138
+ 'a periodic freeze in the scheduler',
139
+ 'a flood of duplicate jobs',
140
+ 'a persistent skew between regions',
141
+ 'a degraded read path',
142
+ 'a slow handoff between nodes',
143
+ 'a burst of 429 responses',
144
+ 'an index that stops advancing',
145
+ 'a long tail of abandoned requests',
146
+ 'a growing set of unacked messages',
147
+ 'a routing table that flaps',
148
+ 'a cron entry that fires twice',
149
+ 'a credential that expires early',
150
+ 'a write that lands out of order',
151
+ 'a snapshot that never finishes',
152
+ 'a spike in rejected connections',
153
+ 'a slow drain during shutdown',
154
+ 'a stuck transaction on the writer',
155
+ 'a broken health check',
156
+ 'a backlog of undelivered webhooks',
157
+ 'a mismatch between shard counts',
158
+ 'a burst of disk pressure',
159
+ 'a stalled compaction run',
160
+ 'a partial rollout that never completes'
161
+ ];
162
+ /**
163
+ * 7 event phrases, so each one is shared by about 171 documents.
164
+ *
165
+ * The count is 7, not 8, on purpose: with 30 systems, 54 symptoms, and 7 events the
166
+ * least common multiple is 1890, so no two documents in a 1200-document corpus can share
167
+ * the same (system, symptom, event) triple. With 8 events the lcm drops to 1080 and every
168
+ * gold document below index 120 would have a twin that ties on the multi-tier query.
169
+ */
170
+ export const MARKER_EVENTS = [
171
+ 'the quarterly release window',
172
+ 'the Monday morning traffic spike',
173
+ 'the overnight batch run',
174
+ 'the regional failover drill',
175
+ 'the black Friday load test',
176
+ 'the database version upgrade',
177
+ 'the certificate rotation'
178
+ ];
179
+ /** mulberry32: 32-bit seeded PRNG, so the corpus is identical on every machine. */
180
+ export function mulberry32(seed) {
181
+ let state = seed >>> 0;
182
+ return () => {
183
+ state = (state + 0x6d2b79f5) >>> 0;
184
+ let t = state;
185
+ t = Math.imul(t ^ (t >>> 15), t | 1);
186
+ t ^= t + Math.imul(t ^ (t >>> 7), t | 61);
187
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
188
+ };
189
+ }
190
+ function markerFor(seed, system, problem) {
191
+ const digest = createHash('sha256').update(`${seed}:${system}:${problem}`, 'utf8').digest('hex');
192
+ return `MKR-${digest.slice(0, 10).toUpperCase()}`;
193
+ }
194
+ function renderDoc(doc) {
195
+ const { marker, system, problem, symptom, event } = doc;
196
+ return [
197
+ `${marker} incident record for ${system} / ${problem}`,
198
+ '',
199
+ `System: ${system}`,
200
+ `Problem: ${problem}`,
201
+ `Symptom: ${symptom}`,
202
+ `Event: ${event}`,
203
+ '',
204
+ `The ${system} team opened an incident after ${problem} appeared during ${event}. On-call correlated it with ${symptom} and captured a trace before the process restarted. Replaying the ${event} window against a snapshot of ${system} reproduced the ${problem} within minutes, which ruled out the upstream vendor.`,
205
+ '',
206
+ `Notes: ${symptom} only showed up when ${system} was under sustained load; single-request runs looked healthy. The working theory is that ${problem} compounds once the queue depth passes the soft limit, so the fix targets backpressure rather than the ${problem} site itself.`,
207
+ '',
208
+ `Owner: platform-oncall. Status: mitigated, follow-up test added to ${system}.`
209
+ ].join('\n');
210
+ }
211
+ /**
212
+ * Builds the corpus. Document order, marker assignment, gold selection, and query wording
213
+ * depend only on the seed and the counts, so two machines produce byte-identical text.
214
+ */
215
+ export function buildMarkerCorpus(options = {}) {
216
+ const seed = options.seed ?? 20261026;
217
+ const total = MARKER_SYSTEMS.length * MARKER_PROBLEMS.length;
218
+ const docCount = Math.min(options.docs ?? total, total);
219
+ const goldCount = Math.min(options.golds ?? 40, docCount);
220
+ const docs = [];
221
+ for (let i = 0; i < docCount; i++) {
222
+ const system = MARKER_SYSTEMS[i % MARKER_SYSTEMS.length];
223
+ const problem = MARKER_PROBLEMS[Math.floor(i / MARKER_SYSTEMS.length) % MARKER_PROBLEMS.length].term;
224
+ const symptom = MARKER_SYMPTOMS[i % MARKER_SYMPTOMS.length];
225
+ const event = MARKER_EVENTS[i % MARKER_EVENTS.length];
226
+ const marker = markerFor(seed, system, problem);
227
+ const base = {
228
+ id: `doc-${String(i).padStart(4, '0')}`,
229
+ marker,
230
+ system,
231
+ problem,
232
+ symptom,
233
+ event
234
+ };
235
+ docs.push({ ...base, content: renderDoc(base) });
236
+ }
237
+ // Seeded shuffle, then take the first `golds`, so the gold set is not biased toward the
238
+ // first systems in the list.
239
+ const random = mulberry32(seed);
240
+ const order = docs.map((_, index) => index);
241
+ for (let i = order.length - 1; i > 0; i--) {
242
+ const j = Math.floor(random() * (i + 1));
243
+ const swap = order[i];
244
+ order[i] = order[j];
245
+ order[j] = swap;
246
+ }
247
+ const golds = order.slice(0, goldCount).map((index) => docs[index]);
248
+ const synonyms = {};
249
+ for (const entry of MARKER_PROBLEMS)
250
+ synonyms[entry.term] = entry.synonym;
251
+ const queries = [];
252
+ for (const doc of golds) {
253
+ const slug = doc.id.replace(/^doc-/, '');
254
+ queries.push({
255
+ id: `q-exact-${slug}`,
256
+ tier: 'exact',
257
+ query: `${doc.system} ${doc.problem}`,
258
+ goldDocId: doc.id,
259
+ goldMarker: doc.marker
260
+ });
261
+ queries.push({
262
+ id: `q-multi-${slug}`,
263
+ tier: 'multi',
264
+ query: `${doc.system} ${doc.symptom} ${doc.event}`,
265
+ goldDocId: doc.id,
266
+ goldMarker: doc.marker
267
+ });
268
+ queries.push({
269
+ id: `q-paraphrase-${slug}`,
270
+ tier: 'paraphrase',
271
+ query: `${doc.system} ${synonyms[doc.problem]}`,
272
+ goldDocId: doc.id,
273
+ goldMarker: doc.marker
274
+ });
275
+ }
276
+ return {
277
+ seed,
278
+ docs,
279
+ queries,
280
+ systems: [...MARKER_SYSTEMS],
281
+ problems: MARKER_PROBLEMS.map((entry) => entry.term),
282
+ synonyms,
283
+ symptoms: [...MARKER_SYMPTOMS],
284
+ events: [...MARKER_EVENTS]
285
+ };
286
+ }
287
+ /**
288
+ * Case-level scoring: where did the gold document land?
289
+ *
290
+ * Every document begins with a unique marker, so the order in which markers first appear
291
+ * in the returned text is the engine's rank order. That works across JSON, Markdown, and
292
+ * plain text without parsing any of them, and it does not reward an engine for padding the
293
+ * budget with extra documents: the gold still has to come first.
294
+ *
295
+ * Returns 1 for the top document, null when the marker is absent.
296
+ */
297
+ export function markerRank(context, goldMarker) {
298
+ const index = context.indexOf(goldMarker);
299
+ if (index < 0)
300
+ return null;
301
+ const seen = new Set();
302
+ for (const match of context.slice(0, index).matchAll(/MKR-[0-9A-F]{10}/g))
303
+ seen.add(match[0]);
304
+ return seen.size + 1;
305
+ }
306
+ //# sourceMappingURL=marker-corpus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marker-corpus.js","sourceRoot":"","sources":["../../../src/bench/marker-corpus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Minimal MCP stdio client.
3
+ *
4
+ * The cross-engine comparison drives every engine over MCP stdio on purpose. Accuracy,
5
+ * ingest cost, and returned-context size are measured through the surface an agent
6
+ * actually uses, not through three unrelated internal APIs that would each need their own
7
+ * adapter assumptions. The only shared contract is JSON-RPC 2.0 over newline-delimited
8
+ * stdio, which is what the MCP stdio transport specifies.
9
+ *
10
+ * Deliberately small: `initialize`, `notifications/initialized`, `tools/call`, `close`.
11
+ * Anything an engine prints to stdout that is not JSON is skipped, because at least one of
12
+ * them writes a banner before the first response.
13
+ */
14
+ export interface McpServerSpec {
15
+ /** Executable, always `node` in this harness. */
16
+ command: string;
17
+ args: string[];
18
+ cwd: string;
19
+ env?: Record<string, string>;
20
+ }
21
+ export interface McpCallResult {
22
+ /** Concatenated text content blocks. This is the context the agent would receive. */
23
+ text: string;
24
+ /** Raw result object, kept for diagnostics. */
25
+ raw: unknown;
26
+ /** Wall-clock duration of the tools/call round trip, in milliseconds. */
27
+ durationMs: number;
28
+ }
29
+ export declare class McpStdioClient {
30
+ private readonly child;
31
+ private readonly pending;
32
+ private buffer;
33
+ private nextId;
34
+ private stderr;
35
+ private closed;
36
+ readonly serverInfo: {
37
+ name?: string;
38
+ version?: string;
39
+ };
40
+ private constructor();
41
+ static connect(spec: McpServerSpec, options?: {
42
+ initTimeoutMs?: number;
43
+ }): Promise<McpStdioClient>;
44
+ private attach;
45
+ private handleLine;
46
+ private notify;
47
+ private request;
48
+ callTool(name: string, args: Record<string, unknown>, timeoutMs?: number): Promise<McpCallResult>;
49
+ listTools(timeoutMs?: number): Promise<Array<{
50
+ name: string;
51
+ description?: string;
52
+ }>>;
53
+ close(graceMs?: number): Promise<void>;
54
+ }
55
+ //# sourceMappingURL=mcp-stdio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-stdio.d.ts","sourceRoot":"","sources":["../../../src/bench/mcp-stdio.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,MAAM,WAAW,aAAa;IAC5B,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,qFAAqF;IACrF,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,GAAG,EAAE,OAAO,CAAC;IACb,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;CACpB;AAQD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,MAAM,CAAS;IACvB,QAAQ,CAAC,UAAU,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEzD,OAAO;WAKM,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,GAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IA2B5G,OAAO,CAAC,MAAM;IA4Bd,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,OAAO;IAaT,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,SAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBlG,SAAS,CAAC,SAAS,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAOrF,KAAK,CAAC,OAAO,SAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAe5C"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Minimal MCP stdio client.
3
+ *
4
+ * The cross-engine comparison drives every engine over MCP stdio on purpose. Accuracy,
5
+ * ingest cost, and returned-context size are measured through the surface an agent
6
+ * actually uses, not through three unrelated internal APIs that would each need their own
7
+ * adapter assumptions. The only shared contract is JSON-RPC 2.0 over newline-delimited
8
+ * stdio, which is what the MCP stdio transport specifies.
9
+ *
10
+ * Deliberately small: `initialize`, `notifications/initialized`, `tools/call`, `close`.
11
+ * Anything an engine prints to stdout that is not JSON is skipped, because at least one of
12
+ * them writes a banner before the first response.
13
+ */
14
+ import { spawn } from 'node:child_process';
15
+ export class McpStdioClient {
16
+ child;
17
+ pending = new Map();
18
+ buffer = '';
19
+ nextId = 1;
20
+ stderr = '';
21
+ closed = false;
22
+ serverInfo;
23
+ constructor(child, serverInfo) {
24
+ this.child = child;
25
+ this.serverInfo = serverInfo;
26
+ }
27
+ static async connect(spec, options = {}) {
28
+ const child = spawn(spec.command, spec.args, {
29
+ cwd: spec.cwd,
30
+ env: { ...process.env, ...spec.env },
31
+ stdio: ['pipe', 'pipe', 'pipe'],
32
+ windowsHide: true
33
+ });
34
+ const client = new McpStdioClient(child, {});
35
+ client.attach();
36
+ const result = (await client.request('initialize', {
37
+ protocolVersion: '2025-06-18',
38
+ capabilities: {},
39
+ clientInfo: { name: 'fastrmemory-bench', version: '1.0.0' }
40
+ }, options.initTimeoutMs ?? 120_000));
41
+ client.serverInfo.name = result?.serverInfo?.name;
42
+ client.serverInfo.version = result?.serverInfo?.version;
43
+ client.notify('notifications/initialized', {});
44
+ return client;
45
+ }
46
+ attach() {
47
+ this.child.stdout.setEncoding('utf8');
48
+ this.child.stderr.setEncoding('utf8');
49
+ this.child.stderr.on('data', (chunk) => {
50
+ // Keep the tail only; some engines log every write.
51
+ this.stderr = (this.stderr + chunk).slice(-8_000);
52
+ });
53
+ this.child.stdout.on('data', (chunk) => {
54
+ this.buffer += chunk;
55
+ let index = this.buffer.indexOf('\n');
56
+ while (index >= 0) {
57
+ const line = this.buffer.slice(0, index).trim();
58
+ this.buffer = this.buffer.slice(index + 1);
59
+ if (line)
60
+ this.handleLine(line);
61
+ index = this.buffer.indexOf('\n');
62
+ }
63
+ });
64
+ this.child.on('exit', (code) => {
65
+ this.closed = true;
66
+ const error = new Error(`mcp server exited with code ${code}: ${this.stderr.slice(-400)}`);
67
+ for (const [, entry] of this.pending) {
68
+ clearTimeout(entry.timer);
69
+ entry.reject(error);
70
+ }
71
+ this.pending.clear();
72
+ });
73
+ }
74
+ handleLine(line) {
75
+ let message;
76
+ try {
77
+ message = JSON.parse(line);
78
+ }
79
+ catch {
80
+ return;
81
+ }
82
+ if (typeof message.id !== 'number')
83
+ return;
84
+ const entry = this.pending.get(message.id);
85
+ if (!entry)
86
+ return;
87
+ this.pending.delete(message.id);
88
+ clearTimeout(entry.timer);
89
+ if (message.error)
90
+ entry.reject(new Error(JSON.stringify(message.error)));
91
+ else
92
+ entry.resolve(message.result);
93
+ }
94
+ notify(method, params) {
95
+ if (this.closed)
96
+ return;
97
+ this.child.stdin.write(`${JSON.stringify({ jsonrpc: '2.0', method, params })}\n`);
98
+ }
99
+ request(method, params, timeoutMs = 60_000) {
100
+ if (this.closed)
101
+ return Promise.reject(new Error('mcp server is closed'));
102
+ const id = this.nextId++;
103
+ return new Promise((resolve, reject) => {
104
+ const timer = setTimeout(() => {
105
+ this.pending.delete(id);
106
+ reject(new Error(`${method} timed out after ${timeoutMs} ms`));
107
+ }, timeoutMs);
108
+ this.pending.set(id, { resolve, reject, timer });
109
+ this.child.stdin.write(`${JSON.stringify({ jsonrpc: '2.0', id, method, params })}\n`);
110
+ });
111
+ }
112
+ async callTool(name, args, timeoutMs = 120_000) {
113
+ const started = performance.now();
114
+ const result = (await this.request('tools/call', { name, arguments: args }, timeoutMs));
115
+ const durationMs = performance.now() - started;
116
+ const text = (result?.content ?? [])
117
+ .filter((block) => block?.type === 'text' && typeof block.text === 'string')
118
+ .map((block) => block.text)
119
+ .join('\n');
120
+ if (result?.isError) {
121
+ throw new Error(`tool ${name} returned an error: ${text.slice(0, 400)}`);
122
+ }
123
+ return { text, raw: result, durationMs };
124
+ }
125
+ async listTools(timeoutMs = 60_000) {
126
+ const result = (await this.request('tools/list', {}, timeoutMs));
127
+ return result?.tools ?? [];
128
+ }
129
+ async close(graceMs = 2_000) {
130
+ if (this.closed)
131
+ return;
132
+ this.closed = true;
133
+ this.child.stdin.end();
134
+ await new Promise((resolve) => {
135
+ const timer = setTimeout(() => {
136
+ this.child.kill('SIGKILL');
137
+ resolve();
138
+ }, graceMs);
139
+ this.child.once('exit', () => {
140
+ clearTimeout(timer);
141
+ resolve();
142
+ });
143
+ });
144
+ }
145
+ }
146
+ //# sourceMappingURL=mcp-stdio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-stdio.js","sourceRoot":"","sources":["../../../src/bench/mcp-stdio.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,EAAuC,MAAM,oBAAoB,CAAC;AAyBhF,MAAM,OAAO,cAAc;IACR,KAAK,CAAiC;IACtC,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC9C,MAAM,GAAG,EAAE,CAAC;IACZ,MAAM,GAAG,CAAC,CAAC;IACX,MAAM,GAAG,EAAE,CAAC;IACZ,MAAM,GAAG,KAAK,CAAC;IACd,UAAU,CAAsC;IAEzD,YAAoB,KAAqC,EAAE,UAA+C;QACxG,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAmB,EAAE,UAAsC,EAAE;QAChF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;YAC3C,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE;YACpC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAClC,YAAY,EACZ;YACE,eAAe,EAAE,YAAY;YAC7B,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE;SAC5D,EACD,OAAO,CAAC,aAAa,IAAI,OAAO,CACjC,CAAyD,CAAC;QAE3D,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC;QAClD,MAAM,CAAC,UAAU,CAAC,OAAO,GAAG,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;QAC/C,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,MAAM;QACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YAC7C,oDAAoD;YACpD,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YAC7C,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;YACrB,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBAC3C,IAAI,IAAI;oBAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAChC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,+BAA+B,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3F,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,IAAY;QAC7B,IAAI,OAA4D,CAAC;QACjE,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;;YACrE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAEO,MAAM,CAAC,MAAc,EAAE,MAAe;QAC5C,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IACpF,CAAC;IAEO,OAAO,CAAC,MAAc,EAAE,MAAe,EAAE,SAAS,GAAG,MAAM;QACjE,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC1E,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxB,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,MAAM,oBAAoB,SAAS,KAAK,CAAC,CAAC,CAAC;YACjE,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAA6B,EAAE,SAAS,GAAG,OAAO;QAC7E,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,CAGrF,CAAC;QACF,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;QAC/C,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;aACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;aAC3E,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAc,CAAC;aACpC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,uBAAuB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM;QAChC,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,EAAE,SAAS,CAAC,CAE9D,CAAC;QACF,OAAO,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK;QACzB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC3B,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -21,6 +21,8 @@ export interface PublicCase {
21
21
  goldIds: string[];
22
22
  goldCount: number;
23
23
  missingGoldCount: number;
24
+ /** ISO timestamp of the question, when the dataset provides one. Anchors temporal windows. */
25
+ questionDate?: string;
24
26
  }
25
27
  export interface PublicDataset {
26
28
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"public-datasets.d.ts","sourceRoot":"","sources":["../../../src/bench/public-datasets.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,wFAAwF;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAwFD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CA0ExF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CAkFnF;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,EAAE,EACjB,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,GAAE,gBAAqB,GAC7B,aAAa,CAgEf"}
1
+ {"version":3,"file":"public-datasets.d.ts","sourceRoot":"","sources":["../../../src/bench/public-datasets.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,wFAAwF;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAyFD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CA2ExF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CAkFnF;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,EAAE,EACjB,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,GAAE,gBAAqB,GAC7B,aAAa,CAgEf"}
@@ -115,7 +115,8 @@ export function parseLongMemEval(raw, options = {}) {
115
115
  category: item.question_type ?? 'unknown',
116
116
  goldIds,
117
117
  goldCount: goldSessionIds.size,
118
- missingGoldCount: goldSessionIds.size - goldIds.length
118
+ missingGoldCount: goldSessionIds.size - goldIds.length,
119
+ questionDate: typeof item.question_date === 'string' ? longMemEvalDate(item.question_date) : undefined
119
120
  });
120
121
  }
121
122
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"public-datasets.js","sourceRoot":"","sources":["../../../src/bench/public-datasets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-datasets.js","sourceRoot":"","sources":["../../../src/bench/public-datasets.ts"],"names":[],"mappings":"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"}