@vivantel/virage-core 0.2.5 → 0.2.7

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 (84) hide show
  1. package/dist/core/git-tracker.js +1 -1
  2. package/dist/core/git-tracker.js.map +1 -1
  3. package/dist/core/orchestrator.d.ts +3 -0
  4. package/dist/core/orchestrator.d.ts.map +1 -1
  5. package/dist/core/orchestrator.js +8 -33
  6. package/dist/core/orchestrator.js.map +1 -1
  7. package/dist/core/virage-defaults.d.ts +1 -0
  8. package/dist/core/virage-defaults.d.ts.map +1 -1
  9. package/dist/core/virage-defaults.js +11 -0
  10. package/dist/core/virage-defaults.js.map +1 -1
  11. package/dist/index.d.ts +6 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +7 -1
  14. package/dist/index.js.map +1 -1
  15. package/dist/strategies/chunk/markdown-headers.d.ts.map +1 -1
  16. package/dist/strategies/chunk/markdown-headers.js +5 -2
  17. package/dist/strategies/chunk/markdown-headers.js.map +1 -1
  18. package/dist/strategies/chunk/semantic.d.ts.map +1 -1
  19. package/dist/strategies/chunk/semantic.js +7 -1
  20. package/dist/strategies/chunk/semantic.js.map +1 -1
  21. package/dist/strategies/chunk/token.d.ts.map +1 -1
  22. package/dist/strategies/chunk/token.js +14 -4
  23. package/dist/strategies/chunk/token.js.map +1 -1
  24. package/package.json +1 -10
  25. package/dist/bin/virage.d.ts +0 -3
  26. package/dist/bin/virage.d.ts.map +0 -1
  27. package/dist/bin/virage.js +0 -345
  28. package/dist/bin/virage.js.map +0 -1
  29. package/dist/cli/benchmark.d.ts +0 -6
  30. package/dist/cli/benchmark.d.ts.map +0 -1
  31. package/dist/cli/benchmark.js +0 -26
  32. package/dist/cli/benchmark.js.map +0 -1
  33. package/dist/cli/chunks-report.d.ts +0 -2
  34. package/dist/cli/chunks-report.d.ts.map +0 -1
  35. package/dist/cli/chunks-report.js +0 -74
  36. package/dist/cli/chunks-report.js.map +0 -1
  37. package/dist/cli/dashboard.d.ts +0 -7
  38. package/dist/cli/dashboard.d.ts.map +0 -1
  39. package/dist/cli/dashboard.js +0 -190
  40. package/dist/cli/dashboard.js.map +0 -1
  41. package/dist/cli/evaluate.d.ts +0 -9
  42. package/dist/cli/evaluate.d.ts.map +0 -1
  43. package/dist/cli/evaluate.js +0 -67
  44. package/dist/cli/evaluate.js.map +0 -1
  45. package/dist/cli/experiment.d.ts +0 -13
  46. package/dist/cli/experiment.d.ts.map +0 -1
  47. package/dist/cli/experiment.js +0 -99
  48. package/dist/cli/experiment.js.map +0 -1
  49. package/dist/cli/file-detect.d.ts +0 -10
  50. package/dist/cli/file-detect.d.ts.map +0 -1
  51. package/dist/cli/file-detect.js +0 -55
  52. package/dist/cli/file-detect.js.map +0 -1
  53. package/dist/cli/init.d.ts +0 -2
  54. package/dist/cli/init.d.ts.map +0 -1
  55. package/dist/cli/init.js +0 -382
  56. package/dist/cli/init.js.map +0 -1
  57. package/dist/cli/report.d.ts +0 -2
  58. package/dist/cli/report.d.ts.map +0 -1
  59. package/dist/cli/report.js +0 -96
  60. package/dist/cli/report.js.map +0 -1
  61. package/dist/cli/store-cmd.d.ts +0 -10
  62. package/dist/cli/store-cmd.d.ts.map +0 -1
  63. package/dist/cli/store-cmd.js +0 -50
  64. package/dist/cli/store-cmd.js.map +0 -1
  65. package/dist/cli/validate.d.ts +0 -2
  66. package/dist/cli/validate.d.ts.map +0 -1
  67. package/dist/cli/validate.js +0 -74
  68. package/dist/cli/validate.js.map +0 -1
  69. package/dist/cli/viz.d.ts +0 -7
  70. package/dist/cli/viz.d.ts.map +0 -1
  71. package/dist/cli/viz.js +0 -163
  72. package/dist/cli/viz.js.map +0 -1
  73. package/dist/logger/consola-logger.d.ts +0 -18
  74. package/dist/logger/consola-logger.d.ts.map +0 -1
  75. package/dist/logger/consola-logger.js +0 -76
  76. package/dist/logger/consola-logger.js.map +0 -1
  77. package/dist/logger/index.d.ts +0 -5
  78. package/dist/logger/index.d.ts.map +0 -1
  79. package/dist/logger/index.js +0 -7
  80. package/dist/logger/index.js.map +0 -1
  81. package/dist/progress/progress-bar.d.ts +0 -6
  82. package/dist/progress/progress-bar.d.ts.map +0 -1
  83. package/dist/progress/progress-bar.js +0 -23
  84. package/dist/progress/progress-bar.js.map +0 -1
@@ -1,345 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from "commander";
3
- import { config } from "dotenv";
4
- import { loadConfig } from "../config-loader.js";
5
- import { Orchestrator } from "../core/orchestrator.js";
6
- import { RagError } from "../core/errors.js";
7
- import { createLogger } from "../logger/index.js";
8
- import { runInit } from "../cli/init.js";
9
- import { runValidate } from "../cli/validate.js";
10
- import { runEvaluate } from "../cli/evaluate.js";
11
- import { runExperimentRun, runExperimentCompare, runExperimentList, } from "../cli/experiment.js";
12
- import { runBenchmarkEmbedder } from "../cli/benchmark.js";
13
- import { runStoreStats, runStorePerf } from "../cli/store-cmd.js";
14
- import { runReport } from "../cli/report.js";
15
- import { runChunksReport } from "../cli/chunks-report.js";
16
- import { runVizEmbeddings } from "../cli/viz.js";
17
- import { runDashboard } from "../cli/dashboard.js";
18
- import { defaultChunksFile, defaultEmbeddingsDb, getVirageDir, } from "../core/virage-defaults.js";
19
- config({ quiet: true });
20
- // Expand -vvv etc. into individual -v flags before commander parses
21
- const argv = process.argv.flatMap((arg) => /^-v+$/.test(arg)
22
- ? arg
23
- .slice(1)
24
- .split("")
25
- .map((c) => `-${c}`)
26
- : [arg]);
27
- const program = new Command();
28
- function handleError(error) {
29
- console.error("āŒ Error:", error instanceof Error ? error.message : error);
30
- if (error instanceof RagError && error.suggestion) {
31
- console.error(" šŸ’”", error.suggestion);
32
- }
33
- process.exit(1);
34
- }
35
- async function runOnce(options) {
36
- const cfg = await loadConfig(options.config, options.logger);
37
- const orchestrator = new Orchestrator({
38
- ...cfg,
39
- options: {
40
- ...cfg.options,
41
- force: options.force || cfg.options?.force,
42
- skipUpload: options.noUpload || cfg.options?.skipUpload,
43
- dryRun: options.dryRun || cfg.options?.dryRun,
44
- chunksFile: options.chunksOut || cfg.options?.chunksFile,
45
- embeddingsFile: options.embeddingsOut || cfg.options?.embeddingsFile,
46
- logger: options.logger,
47
- },
48
- });
49
- await orchestrator.run();
50
- }
51
- program
52
- .name("virage")
53
- .description("RAG pipeline CLI — run 'virage update' to index, or a subcommand for diagnostics")
54
- .version("2.0.0")
55
- .option("-v, --verbose", "Increase verbosity (stackable: -v, -vv … -vvvvv)", (_, prev) => prev + 1, 0)
56
- .action(() => program.outputHelp());
57
- program
58
- .command("update")
59
- .description("Run the RAG indexing pipeline")
60
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
61
- .option("-f, --force", "Force full rebuild", false)
62
- .option("--no-upload", "Skip upload to vector store")
63
- .option("--dry-run", "Show what would change without uploading", false)
64
- .option("--chunks-out <path>", "Output path for chunks.json")
65
- .option("--embeddings-out <path>", "Output path for embeddings.json")
66
- .option("--watch", "Re-run pipeline on file changes", false)
67
- .action(async (cmdOpts) => {
68
- const verbose = program.opts().verbose;
69
- const logger = createLogger(verbose);
70
- const runOptions = {
71
- config: cmdOpts.config,
72
- force: cmdOpts.force,
73
- noUpload: !cmdOpts.upload,
74
- dryRun: cmdOpts.dryRun,
75
- chunksOut: cmdOpts.chunksOut,
76
- embeddingsOut: cmdOpts.embeddingsOut,
77
- logger,
78
- };
79
- logger.info("šŸš€ Virage");
80
- try {
81
- await runOnce(runOptions);
82
- }
83
- catch (error) {
84
- handleError(error);
85
- }
86
- if (!cmdOpts.watch)
87
- return;
88
- // Watch mode
89
- const { default: chokidar } = await import("chokidar");
90
- const cfg = await loadConfig(cmdOpts.config, logger).catch(() => null);
91
- const patterns = cfg
92
- ? cfg.chunkers.flatMap((c) => c.patterns)
93
- : [];
94
- const watched = [cmdOpts.config, ...patterns];
95
- logger.info("šŸ‘ļø Watching for changes...");
96
- let debounce = null;
97
- chokidar
98
- .watch(watched, { ignoreInitial: true })
99
- .on("all", (event, path) => {
100
- if (debounce)
101
- clearTimeout(debounce);
102
- debounce = setTimeout(async () => {
103
- logger.info(`šŸ”„ Change detected (${event}: ${path}), re-running...`);
104
- try {
105
- await runOnce(runOptions);
106
- }
107
- catch (error) {
108
- logger.error(error instanceof Error ? error.message : String(error));
109
- }
110
- }, 500);
111
- });
112
- });
113
- program
114
- .command("init")
115
- .description("Generate a virage.config.json template interactively")
116
- .action(async () => {
117
- try {
118
- await runInit();
119
- }
120
- catch (error) {
121
- if (error.name === "ExitPromptError") {
122
- console.log("\nCancelled.");
123
- process.exit(0);
124
- }
125
- handleError(error);
126
- }
127
- });
128
- program
129
- .command("validate")
130
- .description("Validate config without running the pipeline")
131
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
132
- .action(async (opts) => {
133
- try {
134
- await runValidate(opts.config);
135
- }
136
- catch (error) {
137
- handleError(error);
138
- }
139
- });
140
- program
141
- .command("evaluate")
142
- .description("Evaluate retrieval quality against an eval dataset")
143
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
144
- .option("-d, --dataset <path>", "Eval dataset path", "./eval/queries.json")
145
- .option("--with-llm-judge", "Enable RAGAS LLM-as-judge metrics")
146
- .option("--threshold-mrr <n>", "Fail if MRR is below this threshold", parseFloat)
147
- .option("--ci", "Exit with code 1 if quality gate fails")
148
- .action(async (opts) => {
149
- try {
150
- await runEvaluate({
151
- config: opts.config,
152
- dataset: opts.dataset,
153
- withLlmJudge: opts.withLlmJudge ?? false,
154
- thresholdMrr: opts.thresholdMrr,
155
- ci: opts.ci ?? false,
156
- });
157
- }
158
- catch (error) {
159
- handleError(error);
160
- }
161
- });
162
- program
163
- .command("report")
164
- .description("Show observability report from telemetry files")
165
- .option("--dir <path>", "Directory containing telemetry.json files", getVirageDir())
166
- .action(async (opts) => {
167
- try {
168
- await runReport(opts.dir);
169
- }
170
- catch (error) {
171
- handleError(error);
172
- }
173
- });
174
- program
175
- .command("eval-generate")
176
- .description("Generate an eval dataset from existing chunks")
177
- .option("--chunks <path>", "Chunks file path", defaultChunksFile())
178
- .option("--output <path>", "Output dataset path", "./eval/queries.json")
179
- .option("--include-negatives", "Add negative examples")
180
- .option("--paraphrase-ratio <n>", "Fraction of queries to paraphrase (requires LLM judge)", parseFloat, 0)
181
- .action(async (opts) => {
182
- try {
183
- const { readFile } = await import("fs/promises");
184
- const raw = JSON.parse(await readFile(opts.chunks, "utf-8"));
185
- const chunks = Array.isArray(raw)
186
- ? raw
187
- : (raw.chunks ?? []);
188
- const { generateEvalDataset } = await import("../eval/generator.js");
189
- await generateEvalDataset(chunks, {
190
- includeNegatives: opts.includeNegatives ?? false,
191
- paraphraseRatio: opts.paraphraseRatio,
192
- }, opts.output);
193
- }
194
- catch (error) {
195
- handleError(error);
196
- }
197
- });
198
- const viz = program.command("viz").description("Visualization tools");
199
- viz
200
- .command("embeddings")
201
- .description("Generate a 2D visualization of the embedding space")
202
- .option("--embeddings <path>", "Embeddings DB path", defaultEmbeddingsDb())
203
- .option("--output <path>", "Output HTML file", "umap.html")
204
- .option("--projection <type>", "Projection type: umap or tsne", "umap")
205
- .action(async (opts) => {
206
- try {
207
- await runVizEmbeddings({
208
- dbPath: opts.embeddings,
209
- output: opts.output,
210
- projection: opts.projection,
211
- });
212
- }
213
- catch (error) {
214
- handleError(error);
215
- }
216
- });
217
- const chunks = program.command("chunks").description("Chunk analysis tools");
218
- chunks
219
- .command("report")
220
- .description("Show chunk cohesion report")
221
- .option("--file <path>", "Chunks file path", defaultChunksFile())
222
- .action(async (opts) => {
223
- try {
224
- await runChunksReport(opts.file);
225
- }
226
- catch (error) {
227
- handleError(error);
228
- }
229
- });
230
- program
231
- .command("dashboard")
232
- .description("Start a local RAG monitoring dashboard")
233
- .option("--port <n>", "Port to serve on", parseInt, 3000)
234
- .option("--chunks <path>", "Chunks file path", defaultChunksFile())
235
- .option("--embeddings <path>", "Embeddings DB path", defaultEmbeddingsDb())
236
- .action(async (opts) => {
237
- try {
238
- await runDashboard({
239
- port: opts.port,
240
- chunksFile: opts.chunks,
241
- dbPath: opts.embeddings,
242
- });
243
- }
244
- catch (error) {
245
- handleError(error);
246
- }
247
- });
248
- const benchmark = program
249
- .command("benchmark")
250
- .description("Performance benchmarking tools");
251
- benchmark
252
- .command("embedder")
253
- .description("Benchmark a local HuggingFace embedding model")
254
- .option("--model <id>", "HuggingFace model ID", "Xenova/all-MiniLM-L6-v2")
255
- .option("--device <device>", "'cpu' or 'webgpu'", "cpu")
256
- .action(async (opts) => {
257
- try {
258
- await runBenchmarkEmbedder({
259
- model: opts.model,
260
- device: opts.device,
261
- });
262
- }
263
- catch (error) {
264
- handleError(error);
265
- }
266
- });
267
- const store = program.command("store").description("Vector store diagnostics");
268
- store
269
- .command("stats")
270
- .description("Show vector index quality metrics")
271
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
272
- .action(async (opts) => {
273
- try {
274
- await runStoreStats({ config: opts.config });
275
- }
276
- catch (error) {
277
- handleError(error);
278
- }
279
- });
280
- store
281
- .command("perf")
282
- .description("Show query performance report")
283
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
284
- .option("--timeframe <hours>", "Timeframe in hours", parseInt, 24)
285
- .action(async (opts) => {
286
- try {
287
- await runStorePerf({
288
- config: opts.config,
289
- timeframeHours: opts.timeframe,
290
- });
291
- }
292
- catch (error) {
293
- handleError(error);
294
- }
295
- });
296
- const experiment = program
297
- .command("experiment")
298
- .description("Experiment tracking and statistical comparison");
299
- experiment
300
- .command("run")
301
- .description("Run an experiment and save results")
302
- .requiredOption("--name <name>", "Experiment name")
303
- .option("-c, --config <path>", "Path to config file", "./virage.config.json")
304
- .option("-d, --dataset <path>", "Eval dataset path", "./eval/queries.json")
305
- .action(async (opts) => {
306
- try {
307
- await runExperimentRun({
308
- name: opts.name,
309
- config: opts.config,
310
- dataset: opts.dataset,
311
- });
312
- }
313
- catch (error) {
314
- handleError(error);
315
- }
316
- });
317
- experiment
318
- .command("list")
319
- .description("List saved experiment runs")
320
- .action(async () => {
321
- try {
322
- await runExperimentList();
323
- }
324
- catch (error) {
325
- handleError(error);
326
- }
327
- });
328
- experiment
329
- .command("compare")
330
- .description("Compare two experiment runs with bootstrap significance test")
331
- .requiredOption("--baseline <id>", "Baseline run name or id")
332
- .requiredOption("--candidate <id>", "Candidate run name or id")
333
- .action(async (opts) => {
334
- try {
335
- await runExperimentCompare({
336
- baseline: opts.baseline,
337
- candidate: opts.candidate,
338
- });
339
- }
340
- catch (error) {
341
- handleError(error);
342
- }
343
- });
344
- program.parse(argv);
345
- //# sourceMappingURL=virage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"virage.js","sourceRoot":"","sources":["../../src/bin/virage.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export interface BenchmarkEmbedderOptions {
2
- model: string;
3
- device: "cpu" | "webgpu";
4
- }
5
- export declare function runBenchmarkEmbedder(opts: BenchmarkEmbedderOptions): Promise<void>;
6
- //# sourceMappingURL=benchmark.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../src/cli/benchmark.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAC;CAC1B;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAyCf"}
@@ -1,26 +0,0 @@
1
- export async function runBenchmarkEmbedder(opts) {
2
- console.log(`šŸ”¬ Benchmarking embedder: ${opts.model}`);
3
- console.log(` Device: ${opts.device}`);
4
- let benchmarkEmbedder;
5
- try {
6
- const pkg = "@vivantel/virage-embedder-transformers";
7
- const mod = await import(pkg);
8
- benchmarkEmbedder = mod.benchmarkEmbedder;
9
- }
10
- catch {
11
- console.error("āŒ @vivantel/virage-embedder-transformers is not installed.\n" +
12
- " Install it with: npm install @vivantel/virage-embedder-transformers");
13
- process.exit(1);
14
- }
15
- console.log("ā³ Running benchmark (this may take a moment for model download)...\n");
16
- const result = await benchmarkEmbedder(opts.model, { device: opts.device });
17
- console.log("šŸ“Š Benchmark Results");
18
- console.log("─".repeat(40));
19
- console.log(` Model : ${result.model}`);
20
- console.log(` Dimensions : ${result.dimensions}`);
21
- console.log(` Tokens/sec : ${result.tokensPerSec.toLocaleString()}`);
22
- console.log(` Memory delta : ${result.memoryMB} MB`);
23
- console.log(` First query latency: ${result.firstQueryLatencyMs} ms`);
24
- console.log("─".repeat(40));
25
- }
26
- //# sourceMappingURL=benchmark.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/cli/benchmark.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAA8B;IAE9B,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAEzC,IAAI,iBASF,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,wCAAwC,CAAC;QACrD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,iBAAiB,GAAG,GAAG,CAAC,iBAA6C,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CACX,8DAA8D;YAC5D,wEAAwE,CAC3E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,GAAG,CACT,sEAAsE,CACvE,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAE5E,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,mBAAmB,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9B,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function runChunksReport(chunksFile: string): Promise<void>;
2
- //# sourceMappingURL=chunks-report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks-report.d.ts","sourceRoot":"","sources":["../../src/cli/chunks-report.ts"],"names":[],"mappings":"AAmCA,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DvE"}
@@ -1,74 +0,0 @@
1
- import { readFile } from "fs/promises";
2
- function isChunkArray(val) {
3
- return (Array.isArray(val) &&
4
- val.length > 0 &&
5
- typeof val[0].content === "string");
6
- }
7
- function computeCohesion(chunks) {
8
- const sentenceEnd = /[.!?\n]\s*$/;
9
- const midSentence = chunks.filter((c) => !sentenceEnd.test(c.content));
10
- const cohesion = 1 - midSentence.length / chunks.length;
11
- const suggestion = cohesion < 0.5
12
- ? `Low cohesion — consider switching to 'semantic' strategy for better sentence boundaries`
13
- : cohesion < 0.8
14
- ? `Moderate cohesion — increase maxTokens or use 'markdown-headers' for structured content`
15
- : "Good cohesion";
16
- return { cohesion, midSentenceCuts: midSentence.length, suggestion };
17
- }
18
- export async function runChunksReport(chunksFile) {
19
- let raw;
20
- try {
21
- raw = await readFile(chunksFile, "utf-8");
22
- }
23
- catch {
24
- console.error(`āŒ Could not read chunks file "${chunksFile}".\n` +
25
- ` Run the pipeline first to generate chunks.`);
26
- process.exit(1);
27
- }
28
- let parsed;
29
- try {
30
- parsed = JSON.parse(raw);
31
- }
32
- catch {
33
- console.error(`āŒ "${chunksFile}" is not valid JSON`);
34
- process.exit(1);
35
- }
36
- // chunks.json can be a bare array or an object with a chunks property
37
- let chunks;
38
- if (isChunkArray(parsed)) {
39
- chunks = parsed;
40
- }
41
- else if (parsed &&
42
- typeof parsed === "object" &&
43
- "chunks" in parsed &&
44
- isChunkArray(parsed.chunks)) {
45
- chunks = parsed.chunks;
46
- }
47
- else {
48
- console.error(`āŒ Unexpected chunks file format in "${chunksFile}"`);
49
- process.exit(1);
50
- }
51
- // Group by strategy
52
- const byStrategy = new Map();
53
- for (const chunk of chunks) {
54
- const strategy = chunk.metadata?.strategy ?? "unknown";
55
- const group = byStrategy.get(strategy) ?? [];
56
- group.push(chunk);
57
- byStrategy.set(strategy, group);
58
- }
59
- console.log(`\nšŸ“Š Chunk Cohesion Report (${chunks.length} total chunks)`);
60
- console.log("─".repeat(60));
61
- for (const [strategy, group] of byStrategy) {
62
- const sizes = group.map((c) => c.content.length);
63
- const avgSize = Math.round(sizes.reduce((s, v) => s + v, 0) / sizes.length);
64
- const { cohesion, midSentenceCuts, suggestion } = computeCohesion(group);
65
- console.log(`\n Strategy: ${strategy}`);
66
- console.log(` Chunks : ${group.length}`);
67
- console.log(` Avg size : ${avgSize} chars`);
68
- console.log(` Cohesion : ${(cohesion * 100).toFixed(1)}%`);
69
- console.log(` Mid-sentence cuts: ${midSentenceCuts}`);
70
- console.log(` šŸ’” ${suggestion}`);
71
- }
72
- console.log("\n" + "─".repeat(60));
73
- }
74
- //# sourceMappingURL=chunks-report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks-report.js","sourceRoot":"","sources":["../../src/cli/chunks-report.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export interface DashboardOptions {
2
- port: number;
3
- chunksFile: string;
4
- dbPath: string;
5
- }
6
- export declare function runDashboard(opts: DashboardOptions): Promise<void>;
7
- //# sourceMappingURL=dashboard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AA2ED,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDxE"}