@jcode.labs/ragmir 2.5.0 → 2.7.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.
- package/README.md +4 -2
- package/dist/chunking.d.ts.map +1 -1
- package/dist/chunking.js +48 -4
- package/dist/chunking.js.map +1 -1
- package/dist/cli-options.d.ts +2 -0
- package/dist/cli-options.d.ts.map +1 -1
- package/dist/cli-options.js +8 -0
- package/dist/cli-options.js.map +1 -1
- package/dist/cli.js +37 -11
- package/dist/cli.js.map +1 -1
- package/dist/defaults.d.ts +1 -0
- package/dist/defaults.d.ts.map +1 -1
- package/dist/defaults.js +1 -0
- package/dist/defaults.js.map +1 -1
- package/dist/evaluate.d.ts.map +1 -1
- package/dist/evaluate.js +43 -2
- package/dist/evaluate.js.map +1 -1
- package/dist/index-diagnostics.d.ts +1 -1
- package/dist/index-diagnostics.d.ts.map +1 -1
- package/dist/index-diagnostics.js +7 -2
- package/dist/index-diagnostics.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ingest.d.ts.map +1 -1
- package/dist/ingest.js +8 -0
- package/dist/ingest.js.map +1 -1
- package/dist/mcp.d.ts +2 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +17 -8
- package/dist/mcp.js.map +1 -1
- package/dist/parsing.d.ts.map +1 -1
- package/dist/parsing.js +27 -4
- package/dist/parsing.js.map +1 -1
- package/dist/query-sanitizer.d.ts +8 -0
- package/dist/query-sanitizer.d.ts.map +1 -0
- package/dist/query-sanitizer.js +170 -0
- package/dist/query-sanitizer.js.map +1 -0
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +105 -8
- package/dist/query.js.map +1 -1
- package/dist/research.d.ts.map +1 -1
- package/dist/research.js +9 -0
- package/dist/research.js.map +1 -1
- package/dist/setup.d.ts +1 -0
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +15 -0
- package/dist/setup.js.map +1 -1
- package/dist/store.d.ts +1 -0
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +38 -6
- package/dist/store.js.map +1 -1
- package/dist/types.d.ts +37 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/examples/document-evidence-benchmark/.ragmir/config.json +21 -0
- package/examples/document-evidence-benchmark/README.md +33 -0
- package/examples/document-evidence-benchmark/golden-queries.json +35 -0
- package/examples/document-evidence-benchmark/raw/contracts/master-services-agreement.md +11 -0
- package/examples/document-evidence-benchmark/raw/legal-tax/residency-review-note.md +10 -0
- package/examples/document-evidence-benchmark/raw/rfp/security-questionnaire.md +12 -0
- package/examples/document-evidence-benchmark/raw/runbooks/incident-response-runbook.md +11 -0
- package/examples/document-evidence-benchmark/raw/specs/agent-integration-spec.md +11 -0
- package/package.json +3 -3
- package/skills/ragmir-audio-summary/SKILL.md +8 -5
- package/skills/ragmir-audio-summary/listening-style.md +3 -2
package/dist/store.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mkdir, readFile, rm, writeFile } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import * as lancedb from "@lancedb/lancedb";
|
|
4
|
+
import { VECTOR_DISTANCE_METRIC } from "./defaults.js";
|
|
4
5
|
import { isRecord } from "./guards.js";
|
|
5
6
|
const EMPTY_TEXT_FILES_MANIFEST = "empty-text-files.json";
|
|
6
7
|
const INDEX_MANIFEST = "index-manifest.json";
|
|
@@ -26,7 +27,7 @@ export async function writeRows(rows, config) {
|
|
|
26
27
|
await db.dropTable(config.tableName);
|
|
27
28
|
}
|
|
28
29
|
await rm(path.join(config.storageDir, INDEX_MANIFEST), { force: true });
|
|
29
|
-
return { vectorIndexWarning: null };
|
|
30
|
+
return { vectorIndexWarning: null, lexicalIndexWarning: null };
|
|
30
31
|
}
|
|
31
32
|
const records = rows.map((row) => ({ ...row }));
|
|
32
33
|
const table = await db.createTable(config.tableName, records, {
|
|
@@ -37,10 +38,15 @@ export async function writeRows(rows, config) {
|
|
|
37
38
|
// falls back to an exact flat scan, which is faster for small corpora and
|
|
38
39
|
// avoids wasting work training an index on too few vectors.
|
|
39
40
|
if (rows.length < MIN_INDEX_ROWS) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
const lexicalResult = await ensureLexicalIndex(table);
|
|
42
|
+
return { vectorIndexWarning: null, lexicalIndexWarning: lexicalResult.warning };
|
|
43
|
+
}
|
|
44
|
+
const vectorResult = await ensureVectorIndex(table, rows.length);
|
|
45
|
+
const lexicalResult = await ensureLexicalIndex(table);
|
|
46
|
+
return {
|
|
47
|
+
vectorIndexWarning: vectorResult.warning,
|
|
48
|
+
lexicalIndexWarning: lexicalResult.warning,
|
|
49
|
+
};
|
|
44
50
|
}
|
|
45
51
|
async function ensureVectorIndex(table, rowCount) {
|
|
46
52
|
const existing = await table.listIndices();
|
|
@@ -56,7 +62,11 @@ async function ensureVectorIndex(table, rowCount) {
|
|
|
56
62
|
const numPartitions = clampIvfPartitions(Math.round(Math.sqrt(rowCount)));
|
|
57
63
|
try {
|
|
58
64
|
await table.createIndex("vector", {
|
|
59
|
-
config: lancedb.Index.ivfPq({
|
|
65
|
+
config: lancedb.Index.ivfPq({
|
|
66
|
+
numPartitions,
|
|
67
|
+
numSubVectors,
|
|
68
|
+
distanceType: VECTOR_DISTANCE_METRIC,
|
|
69
|
+
}),
|
|
60
70
|
});
|
|
61
71
|
return { created: true, warning: null };
|
|
62
72
|
}
|
|
@@ -71,6 +81,26 @@ async function ensureVectorIndex(table, rowCount) {
|
|
|
71
81
|
};
|
|
72
82
|
}
|
|
73
83
|
}
|
|
84
|
+
async function ensureLexicalIndex(table) {
|
|
85
|
+
const existing = await table.listIndices();
|
|
86
|
+
const hasTextIndex = existing.some((index) => index.name === "text_idx");
|
|
87
|
+
if (hasTextIndex) {
|
|
88
|
+
return { created: false, warning: null };
|
|
89
|
+
}
|
|
90
|
+
try {
|
|
91
|
+
await table.createIndex("text", {
|
|
92
|
+
config: lancedb.Index.fts(),
|
|
93
|
+
});
|
|
94
|
+
return { created: true, warning: null };
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
const detail = error instanceof Error ? error.message : String(error);
|
|
98
|
+
return {
|
|
99
|
+
created: false,
|
|
100
|
+
warning: `Full-text index training failed (${detail}). Falling back to bounded lexical scans; keyword recall may be lower on large corpora.`,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
}
|
|
74
104
|
function clampIvfPartitions(value) {
|
|
75
105
|
return Math.min(MAX_IVF_PARTITIONS, Math.max(MIN_IVF_PARTITIONS, value));
|
|
76
106
|
}
|
|
@@ -109,6 +139,8 @@ function isIndexManifest(value) {
|
|
|
109
139
|
typeof value.ragmirVersion === "string" &&
|
|
110
140
|
(value.embeddingProvider === "local-hash" || value.embeddingProvider === "transformers") &&
|
|
111
141
|
typeof value.embeddingModel === "string" &&
|
|
142
|
+
(!("vectorDimension" in value) || typeof value.vectorDimension === "number") &&
|
|
143
|
+
(!("vectorDistanceMetric" in value) || typeof value.vectorDistanceMetric === "string") &&
|
|
112
144
|
typeof value.chunkSize === "number" &&
|
|
113
145
|
typeof value.chunkOverlap === "number" &&
|
|
114
146
|
typeof value.fileCount === "number" &&
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAGtC,MAAM,yBAAyB,GAAG,uBAAuB,CAAA;AACzD,MAAM,cAAc,GAAG,qBAAqB,CAAA;AAC5C;;;;GAIG;AACH,MAAM,cAAc,GAAG,GAAG,CAAA;AAC1B;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAC5B,MAAM,kBAAkB,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -59,6 +59,8 @@ export interface IndexManifest {
|
|
|
59
59
|
ragmirVersion: string;
|
|
60
60
|
embeddingProvider: EmbeddingProvider;
|
|
61
61
|
embeddingModel: string;
|
|
62
|
+
vectorDimension?: number;
|
|
63
|
+
vectorDistanceMetric?: string;
|
|
62
64
|
chunkSize: number;
|
|
63
65
|
chunkOverlap: number;
|
|
64
66
|
fileCount: number;
|
|
@@ -114,6 +116,10 @@ export interface TextChunk {
|
|
|
114
116
|
relativePath: string;
|
|
115
117
|
chunkIndex: number;
|
|
116
118
|
text: string;
|
|
119
|
+
charStart: number;
|
|
120
|
+
charEnd: number;
|
|
121
|
+
lineStart: number;
|
|
122
|
+
lineEnd: number;
|
|
117
123
|
checksum: string;
|
|
118
124
|
bytes: number;
|
|
119
125
|
mtimeMs: number;
|
|
@@ -145,6 +151,7 @@ export interface IngestResult {
|
|
|
145
151
|
}>;
|
|
146
152
|
redactions: number;
|
|
147
153
|
vectorIndexWarning: string | null;
|
|
154
|
+
lexicalIndexWarning: string | null;
|
|
148
155
|
errors: Array<{
|
|
149
156
|
path: string;
|
|
150
157
|
message: string;
|
|
@@ -153,20 +160,39 @@ export interface IngestResult {
|
|
|
153
160
|
export interface SearchOptions {
|
|
154
161
|
cwd?: PathLike;
|
|
155
162
|
topK?: number;
|
|
163
|
+
contextRadius?: number;
|
|
164
|
+
}
|
|
165
|
+
export interface SearchContextChunk {
|
|
166
|
+
chunkIndex: number;
|
|
167
|
+
text: string;
|
|
168
|
+
charStart: number | null;
|
|
169
|
+
charEnd: number | null;
|
|
170
|
+
lineStart: number | null;
|
|
171
|
+
lineEnd: number | null;
|
|
172
|
+
citation: string;
|
|
156
173
|
}
|
|
157
174
|
export interface SearchResult {
|
|
158
175
|
source: string;
|
|
159
176
|
relativePath: string;
|
|
160
177
|
chunkIndex: number;
|
|
178
|
+
citation: string;
|
|
161
179
|
text: string;
|
|
162
180
|
distance: number | null;
|
|
181
|
+
charStart: number | null;
|
|
182
|
+
charEnd: number | null;
|
|
183
|
+
lineStart: number | null;
|
|
184
|
+
lineEnd: number | null;
|
|
185
|
+
context: SearchContextChunk[];
|
|
163
186
|
}
|
|
164
187
|
export interface CompactSearchResult {
|
|
165
188
|
source: string;
|
|
166
189
|
relativePath: string;
|
|
167
190
|
chunkIndex: number;
|
|
191
|
+
citation: string;
|
|
168
192
|
snippet: string;
|
|
169
193
|
distance: number | null;
|
|
194
|
+
lineStart: number | null;
|
|
195
|
+
lineEnd: number | null;
|
|
170
196
|
}
|
|
171
197
|
export interface SourceDuplicateCandidate {
|
|
172
198
|
key: string;
|
|
@@ -190,8 +216,11 @@ export interface ResearchEvidence {
|
|
|
190
216
|
source: string;
|
|
191
217
|
relativePath: string;
|
|
192
218
|
chunkIndex: number;
|
|
219
|
+
citation: string;
|
|
193
220
|
text: string;
|
|
194
221
|
distance: number | null;
|
|
222
|
+
lineStart: number | null;
|
|
223
|
+
lineEnd: number | null;
|
|
195
224
|
queries: string[];
|
|
196
225
|
}
|
|
197
226
|
export interface CodeEvidence {
|
|
@@ -225,6 +254,7 @@ export interface GoldenQuery {
|
|
|
225
254
|
id?: string;
|
|
226
255
|
query: string;
|
|
227
256
|
expectedPaths: string[];
|
|
257
|
+
expectedCitations?: string[];
|
|
228
258
|
topK?: number;
|
|
229
259
|
}
|
|
230
260
|
export interface EvaluationOptions {
|
|
@@ -239,9 +269,14 @@ export interface EvaluationCaseResult {
|
|
|
239
269
|
expectedPaths: string[];
|
|
240
270
|
topK: number;
|
|
241
271
|
returnedPaths: string[];
|
|
272
|
+
returnedCitations: string[];
|
|
242
273
|
matchedPaths: string[];
|
|
274
|
+
matchedCitations: string[];
|
|
275
|
+
expectedCitations?: string[];
|
|
243
276
|
hit: boolean;
|
|
244
277
|
bestRank: number | null;
|
|
278
|
+
reciprocalRank: number;
|
|
279
|
+
ndcg: number;
|
|
245
280
|
}
|
|
246
281
|
export interface EvaluationResult {
|
|
247
282
|
goldenPath: string;
|
|
@@ -252,6 +287,8 @@ export interface EvaluationResult {
|
|
|
252
287
|
hits: number;
|
|
253
288
|
misses: number;
|
|
254
289
|
recall: number;
|
|
290
|
+
meanReciprocalRank: number;
|
|
291
|
+
ndcg: number;
|
|
255
292
|
cases: EvaluationCaseResult[];
|
|
256
293
|
}
|
|
257
294
|
export interface AskResult {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "2.
|
|
1
|
+
export declare const VERSION = "2.7.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "2.
|
|
1
|
+
export const VERSION = "2.7.0";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"rawDir": "raw",
|
|
3
|
+
"storageDir": ".ragmir/storage",
|
|
4
|
+
"sourcesFile": ".ragmir/sources.txt",
|
|
5
|
+
"accessLogPath": ".ragmir/access.log",
|
|
6
|
+
"embeddingModelPath": ".ragmir/models",
|
|
7
|
+
"tableName": "chunks",
|
|
8
|
+
"embeddingProvider": "local-hash",
|
|
9
|
+
"embeddingModel": "mixedbread-ai/mxbai-embed-xsmall-v1",
|
|
10
|
+
"transformersAllowRemoteModels": false,
|
|
11
|
+
"redaction": {
|
|
12
|
+
"enabled": true,
|
|
13
|
+
"builtIn": true,
|
|
14
|
+
"patterns": []
|
|
15
|
+
},
|
|
16
|
+
"accessLog": true,
|
|
17
|
+
"mcpMaxTopK": 10,
|
|
18
|
+
"topK": 5,
|
|
19
|
+
"chunkSize": 1800,
|
|
20
|
+
"chunkOverlap": 120
|
|
21
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Document Evidence Benchmark
|
|
2
|
+
|
|
3
|
+
Synthetic document benchmark for Ragmir retrieval. It is intentionally safe to commit: the contract,
|
|
4
|
+
RFP, runbook, spec, and legal/tax notes are fictional and contain no customer data.
|
|
5
|
+
|
|
6
|
+
This benchmark checks two things:
|
|
7
|
+
|
|
8
|
+
- `recall@k`: each query retrieves the expected source file.
|
|
9
|
+
- exact citations: each query retrieves the expected `relative/path:Lx-Ly#chunkIndex` citation.
|
|
10
|
+
|
|
11
|
+
The corpus is small on purpose so every source file fits in a single chunk. That keeps the expected
|
|
12
|
+
citations deterministic while exercising the same CLI path used for private dogfooding.
|
|
13
|
+
|
|
14
|
+
## Run From This Repository Checkout
|
|
15
|
+
|
|
16
|
+
Build Ragmir once from the repository root:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
pnpm build
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Then run the benchmark from this folder:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
cd packages/ragmir-core/examples/document-evidence-benchmark
|
|
26
|
+
node ../../dist/cli.js ingest
|
|
27
|
+
node ../../dist/cli.js evaluate --golden golden-queries.json --json
|
|
28
|
+
node ../../dist/cli.js evaluate --golden golden-queries.json --fail-under 1
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use this example as a public-safe template for private document evaluations. Keep real contracts,
|
|
32
|
+
RFPs, runbooks, tax notes, golden queries, and generated JSON reports outside Git or under ignored
|
|
33
|
+
local Ragmir state.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"topK": 3,
|
|
3
|
+
"queries": [
|
|
4
|
+
{
|
|
5
|
+
"id": "contract-data-export-residency",
|
|
6
|
+
"query": "MSA client data export residency renewal notice DOCBENCH-MSA-001",
|
|
7
|
+
"expectedPaths": ["raw/contracts/master-services-agreement.md"],
|
|
8
|
+
"expectedCitations": ["raw/contracts/master-services-agreement.md:L1-L11#0"]
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"id": "rfp-no-hosted-account",
|
|
12
|
+
"query": "security questionnaire no hosted account no telemetry read focused MCP",
|
|
13
|
+
"expectedPaths": ["raw/rfp/security-questionnaire.md"],
|
|
14
|
+
"expectedCitations": ["raw/rfp/security-questionnaire.md:L1-L12#0"]
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"id": "runbook-evidence-pack",
|
|
18
|
+
"query": "What runbook evidence must be collected after a payment incident?",
|
|
19
|
+
"expectedPaths": ["raw/runbooks/incident-response-runbook.md"],
|
|
20
|
+
"expectedCitations": ["raw/runbooks/incident-response-runbook.md:L1-L11#0"]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "spec-complements-agent-memory",
|
|
24
|
+
"query": "agent integration spec complements agent memory conversation state",
|
|
25
|
+
"expectedPaths": ["raw/specs/agent-integration-spec.md"],
|
|
26
|
+
"expectedCitations": ["raw/specs/agent-integration-spec.md:L1-L11#0"]
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"id": "legal-tax-professional-review",
|
|
30
|
+
"query": "legal tax residency review professional review filing positions",
|
|
31
|
+
"expectedPaths": ["raw/legal-tax/residency-review-note.md"],
|
|
32
|
+
"expectedCitations": ["raw/legal-tax/residency-review-note.md:L1-L10#0"]
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Synthetic Master Services Agreement
|
|
2
|
+
|
|
3
|
+
Agreement ID: DOCBENCH-MSA-001. This fictional contract is for retrieval testing only.
|
|
4
|
+
|
|
5
|
+
The supplier may process implementation notes, support tickets, and project specifications only from
|
|
6
|
+
the customer-designated workstation. Client data exports must remain in the agreed local evidence
|
|
7
|
+
folder and may not be copied to a hosted account without written approval from the customer owner.
|
|
8
|
+
|
|
9
|
+
Renewal notice window: either party may stop automatic renewal by sending written notice at least
|
|
10
|
+
60 days before the renewal date. The contract owner must attach the local export residency evidence
|
|
11
|
+
to the renewal review.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Synthetic Legal And Tax Review Note
|
|
2
|
+
|
|
3
|
+
Matter: fictional cross-border founder residency review for benchmark testing.
|
|
4
|
+
|
|
5
|
+
The note compares board minutes, travel calendars, service contracts, and tax residency assumptions.
|
|
6
|
+
It is not legal advice. Professional review is required before relying on residency analysis,
|
|
7
|
+
changing filing positions, or sending a client-facing recommendation.
|
|
8
|
+
|
|
9
|
+
The cited evidence package must separate facts, assumptions, and uncertainty. Missing documents
|
|
10
|
+
should be listed explicitly instead of filled with model guesses.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Synthetic RFP Security Questionnaire
|
|
2
|
+
|
|
3
|
+
Question: Does the proposed retrieval layer require a hosted account, product telemetry, or broad
|
|
4
|
+
write access to the repository?
|
|
5
|
+
|
|
6
|
+
Answer: No hosted account is required. The default mode runs locally with no telemetry. MCP access is
|
|
7
|
+
read-focused: the agent can ask for status, prompt-routing advice, search results, cited answers,
|
|
8
|
+
audits, evaluation results, usage summaries, and security posture, but it does not receive a
|
|
9
|
+
destructive repository tool from Ragmir.
|
|
10
|
+
|
|
11
|
+
Follow-up: customer-specific evidence stays on disk and is reviewed by a human before an RFP response
|
|
12
|
+
is sent.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Synthetic Payment Incident Runbook
|
|
2
|
+
|
|
3
|
+
Trigger: payment queue latency above the internal threshold for ten minutes.
|
|
4
|
+
|
|
5
|
+
The on-call engineer opens the local incident template and collects a payment incident evidence pack:
|
|
6
|
+
timeline, customer impact summary, rollback decision, command transcript, and links to cited runbook
|
|
7
|
+
sections. The evidence pack remains under the local Ragmir reports folder until the incident lead
|
|
8
|
+
approves external sharing.
|
|
9
|
+
|
|
10
|
+
Do not paste raw customer records into an agent prompt. Use cited retrieval snippets and summarize
|
|
11
|
+
uncertainty separately from confirmed evidence.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Synthetic Agent Integration Spec
|
|
2
|
+
|
|
3
|
+
Goal: let external coding agents use local project evidence without turning Ragmir into another chat
|
|
4
|
+
memory system.
|
|
5
|
+
|
|
6
|
+
Ragmir complements agent memory. It does not replace the agent conversation state, task plan, or
|
|
7
|
+
native code index. The agent keeps its normal reasoning loop, then calls Ragmir when it needs cited
|
|
8
|
+
evidence from local documents such as contracts, RFPs, runbooks, or specs.
|
|
9
|
+
|
|
10
|
+
The MCP surface stays read-focused and bounded by topK. This is a security advantage: agents receive
|
|
11
|
+
verifiable passages and audit data without gaining a broad document mutation channel.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jcode.labs/ragmir",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.7.0",
|
|
4
4
|
"description": "Ragmir Core: open-source sovereign local RAG for confidential datasets and AI agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -69,8 +69,8 @@
|
|
|
69
69
|
"unpdf": "^1.4.0",
|
|
70
70
|
"yaml": "^2.9.0",
|
|
71
71
|
"zod": "^4.1.13",
|
|
72
|
-
"@jcode.labs/ragmir-
|
|
73
|
-
"@jcode.labs/ragmir-
|
|
72
|
+
"@jcode.labs/ragmir-chat": "2.7.0",
|
|
73
|
+
"@jcode.labs/ragmir-tts": "2.7.0"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@types/html-to-text": "^9.0.4",
|
|
@@ -53,7 +53,8 @@ Capture four things:
|
|
|
53
53
|
- **Purpose** — what the listener will do with this: decide, learn, monitor, compare, or plan.
|
|
54
54
|
- **Subject** — the precise question or topic, narrower than "summarize everything".
|
|
55
55
|
- **Depth** — a quick scan or a deep dossier. Let the user steer, but default from the material.
|
|
56
|
-
- **Language** — the spoken language, passed later to `--lang` (`fr` default, `en`, `es`
|
|
56
|
+
- **Language** — the spoken language, passed later to `--lang` (`fr` default, `en`, `es`, `ja`,
|
|
57
|
+
`th`, `zh`).
|
|
57
58
|
|
|
58
59
|
This is the guardrail against superfluous data: anything that does not advance the captured intent
|
|
59
60
|
gets dropped at the drafting step, not added because it was "also in the documents".
|
|
@@ -170,16 +171,18 @@ Create the output directory and write the narration to a temp file outside the r
|
|
|
170
171
|
mkdir -p .ragmir/audio
|
|
171
172
|
```
|
|
172
173
|
|
|
173
|
-
Select the narration language with `--lang en|es|fr` (default `fr`).
|
|
174
|
-
self-contained offline
|
|
175
|
-
|
|
174
|
+
Select the narration language with `--lang en|es|fr|ja|th|zh` (default `fr`). English, Spanish, and
|
|
175
|
+
French pick matching self-contained offline models for the Transformers.js path and native neural
|
|
176
|
+
voices for the Edge path. Japanese, Thai, and Mandarin Chinese currently pick native Edge voices; for
|
|
177
|
+
offline rendering in those languages, pass a Transformers.js-compatible model explicitly. Write the
|
|
178
|
+
narration in the same language you pass to `--lang`.
|
|
176
179
|
|
|
177
180
|
For global Voice Forge quality on non-confidential text, render with Edge MP3:
|
|
178
181
|
|
|
179
182
|
```bash
|
|
180
183
|
pnpm exec rgr audio /tmp/RAGMIR-SUMMARY-<subject-kebab>.txt \
|
|
181
184
|
--engine edge \
|
|
182
|
-
--lang <en|es|fr> \
|
|
185
|
+
--lang <en|es|fr|ja|th|zh> \
|
|
183
186
|
--out .ragmir/audio/RAGMIR-SUMMARY-<subject-kebab>.mp3
|
|
184
187
|
```
|
|
185
188
|
|
|
@@ -79,8 +79,9 @@ Avoid these — they are the main causes of "imbuvable" audio.
|
|
|
79
79
|
|
|
80
80
|
## Language
|
|
81
81
|
|
|
82
|
-
- Write the narration in the same language passed to `--lang` (`fr` default, `en`, `es`
|
|
83
|
-
|
|
82
|
+
- Write the narration in the same language passed to `--lang` (`fr` default, `en`, `es`, `ja`, `th`,
|
|
83
|
+
`zh`).
|
|
84
|
+
- Match the working language the user used when asking for the summary when it is one of the
|
|
84
85
|
supported languages.
|
|
85
86
|
- Keep numerals, units, and proper nouns pronounceable in the target language.
|
|
86
87
|
|