@djolex999/vir-cli 0.13.0 → 0.14.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.
@@ -3,7 +3,7 @@ import { appendFileSync } from "node:fs";
3
3
  import { DAEMON_LOG_PATH, ensureVirDir } from "../config.js";
4
4
  import { StateDb } from "../state/db.js";
5
5
  import * as ui from "../ui/display.js";
6
- import { Distiller, normalizeModelName, resolveModelShorthand, } from "./distiller.js";
6
+ import { Distiller, maybeAnthropicClient, normalizeModelName, probeProvider, resolveModelShorthand, } from "./distiller.js";
7
7
  import { computeCost } from "../cost/pricing.js";
8
8
  import { scoreSession } from "./filter.js";
9
9
  import { parseSession } from "./parser.js";
@@ -12,6 +12,19 @@ import { scanArticles } from "./articleReader.js";
12
12
  import { distillArticle } from "./articleDistiller.js";
13
13
  import { parsePdf, scanPdfs } from "./pdfReader.js";
14
14
  import { distillPdf } from "./pdfDistiller.js";
15
+ import { classifyTranscript, decideProject, groupByProject, estimateSessionCost, readTranscriptHead, sniffAgentEntrypoint, } from "./projects.js";
16
+ // A row that holds a successfully distilled note. Neither filter may
17
+ // overwrite one: flipping it to skipped=1 would silently hide the note from
18
+ // listDistilled/embeddings/rewrite — a semi-prune, and both filters are
19
+ // forward-looking only. (Excluding stops FUTURE distills; it never touches
20
+ // what already exists.)
21
+ function isDistilledRow(row) {
22
+ return (row !== undefined &&
23
+ row.skipped === 0 &&
24
+ row.error === null &&
25
+ row.content !== null &&
26
+ row.content !== "");
27
+ }
15
28
  import { scrub } from "./scrubber.js";
16
29
  import { summarizeProject } from "./summarizer.js";
17
30
  import { filterToolCalls } from "./toolCallFilter.js";
@@ -37,6 +50,12 @@ export async function runPipeline(cfg, opts = {}) {
37
50
  distilled: 0,
38
51
  lowConfidence: 0,
39
52
  errored: 0,
53
+ projectExcluded: 0,
54
+ projectPending: 0,
55
+ flagSkipped: 0,
56
+ workflowSkipped: 0,
57
+ sidechainSkipped: 0,
58
+ agentSkipped: 0,
40
59
  rewritten: 0,
41
60
  notesWritten: [],
42
61
  articlesScanned: 0,
@@ -248,16 +267,145 @@ export async function runPipeline(cfg, opts = {}) {
248
267
  fileLog(`scanned ${discovered.length} jsonl files`);
249
268
  if (interactive)
250
269
  ui.blank();
270
+ // ── transcript-category filter (SCAN phase, upstream of projects) ────────
271
+ // Nested workflow/sidechain transcripts are agent-internal execution, not
272
+ // user knowledge — with the default "exclude" they're gated out before
273
+ // grouping, so they never count as project sessions, pending spend, or
274
+ // paid work. Rows are recorded (never silent) except under --dry-run,
275
+ // which must stay side-effect free.
276
+ let sessionsInScope = discovered;
277
+ if (cfg.workflowTranscripts !== "include") {
278
+ sessionsInScope = [];
279
+ for (const s of discovered) {
280
+ const cat = classifyTranscript(s.path, cfg.claudeProjectsDir);
281
+ if (cat === "session") {
282
+ sessionsInScope.push(s);
283
+ continue;
284
+ }
285
+ const reason = cat === "workflow" ? "workflow-transcript" : "sidechain-transcript";
286
+ if (cat === "workflow")
287
+ summary.workflowSkipped += 1;
288
+ else
289
+ summary.sidechainSkipped += 1;
290
+ if (!opts.dryRun) {
291
+ const existing = db.getByPath(s.path);
292
+ if (!isDistilledRow(existing) &&
293
+ (existing?.hash !== s.hash || existing?.skip_reason !== reason)) {
294
+ db.record({
295
+ path: s.path,
296
+ hash: s.hash,
297
+ skipped: true,
298
+ notePaths: [],
299
+ skipReason: reason,
300
+ });
301
+ }
302
+ }
303
+ }
304
+ const filtered = summary.workflowSkipped + summary.sidechainSkipped;
305
+ if (filtered > 0) {
306
+ const msg = `${filtered} agent-internal transcript(s) excluded (${summary.workflowSkipped} workflow, ${summary.sidechainSkipped} sidechain) — workflowTranscripts: exclude`;
307
+ if (interactive)
308
+ ui.line(ui.dim(` ${msg}`));
309
+ fileLog(msg);
310
+ }
311
+ }
312
+ // ── agent-transcript filter (SCAN phase, its own knob) ───────────────────
313
+ // Top-level SDK-launched harness agents (review/verify) — detected by the
314
+ // first user line's entrypoint starting with "sdk". Head-read only; a
315
+ // truncated or unreadable head falls through to the parser backstop below,
316
+ // still before any paid call.
317
+ if (cfg.agentTranscripts !== "include") {
318
+ const stillHuman = [];
319
+ for (const s of sessionsInScope) {
320
+ const entrypoint = sniffAgentEntrypoint(readTranscriptHead(s.path));
321
+ if (entrypoint === null) {
322
+ stillHuman.push(s);
323
+ continue;
324
+ }
325
+ summary.agentSkipped += 1;
326
+ if (!opts.dryRun) {
327
+ const existing = db.getByPath(s.path);
328
+ if (!isDistilledRow(existing) &&
329
+ (existing?.hash !== s.hash ||
330
+ existing?.skip_reason !== "agent-transcript")) {
331
+ db.record({
332
+ path: s.path,
333
+ hash: s.hash,
334
+ skipped: true,
335
+ notePaths: [],
336
+ skipReason: "agent-transcript",
337
+ entrypoint,
338
+ });
339
+ }
340
+ }
341
+ }
342
+ sessionsInScope = stillHuman;
343
+ if (summary.agentSkipped > 0) {
344
+ const msg = `${summary.agentSkipped} SDK-launched agent transcript(s) excluded — agentTranscripts: exclude`;
345
+ if (interactive)
346
+ ui.line(ui.dim(` ${msg}`));
347
+ fileLog(msg);
348
+ }
349
+ }
350
+ // ── project filter (SCAN phase — before any paid call) ───────────────────
351
+ // Decisions live in cfg.projects; absent = undecided, a real visible state.
352
+ // Filtering here is load-bearing: classify is a paid Haiku call per new
353
+ // session, so excluded/pending sessions must never reach the distiller.
354
+ const projectFlags = {
355
+ only: opts.onlyProjects,
356
+ excludeProject: opts.excludeProjects,
357
+ };
358
+ const projectGroups = groupByProject(sessionsInScope, cfg.claudeProjectsDir);
359
+ const projectOf = new Map();
360
+ for (const group of projectGroups.values()) {
361
+ for (const s of group.sessions)
362
+ projectOf.set(s.path, group.name);
363
+ }
364
+ let projectDecisions = {
365
+ ...cfg.projects,
366
+ };
367
+ const decisionFor = (path) => decideProject(projectOf.get(path) ?? "", projectDecisions, projectFlags);
368
+ // Undecided projects holding NEW sessions are a spend decision with a
369
+ // deadline (Claude Code prunes transcripts at ~30 days). Interactive
370
+ // callers inject onUndecidedProjects and get asked once; the daemon path
371
+ // records pending rows and notifies instead — it must never prompt.
372
+ const classifyModelId = normalizeModelName(cfg.models.classify, cfg.provider);
373
+ const distillModelId = normalizeModelName(resolveModelShorthand(opts.forceDistillModel ?? cfg.models.distill), cfg.provider);
374
+ const pendingProjects = [];
375
+ for (const group of projectGroups.values()) {
376
+ if (decideProject(group.name, projectDecisions, projectFlags) !== "pending")
377
+ continue;
378
+ const fresh = group.sessions.filter((s) => opts.full === true || !db.isProcessed(s.path, s.hash));
379
+ if (fresh.length === 0)
380
+ continue;
381
+ const totalBytes = fresh.reduce((sum, s) => sum + s.size, 0);
382
+ pendingProjects.push({
383
+ name: group.name,
384
+ sessionCount: fresh.length,
385
+ totalBytes,
386
+ estCost: fresh.reduce((sum, s) => sum +
387
+ estimateSessionCost(cfg.provider, classifyModelId, distillModelId, s.size, cfg.pricing, cfg.kieTopUpTier), 0),
388
+ });
389
+ }
390
+ if (pendingProjects.length > 0 && opts.onUndecidedProjects && !opts.dryRun) {
391
+ const answers = await opts.onUndecidedProjects(pendingProjects.sort((a, b) => b.estCost - a.estCost));
392
+ projectDecisions = { ...projectDecisions, ...answers };
393
+ }
251
394
  // Precompute how many sessions actually need LLM work so the CLI can show
252
395
  // an accurate cost confirmation before we hit the API. Also surfaces the
253
396
  // found/cached/new breakdown so a fresh DB never silently looks like a
254
397
  // stale-cache no-op (the symptom of the state.db → vir.db rename bug).
255
398
  let preflightNew = 0;
256
- for (const found of discovered) {
399
+ let preflightFiltered = 0;
400
+ for (const found of sessionsInScope) {
401
+ if (decisionFor(found.path) !== "include") {
402
+ preflightFiltered += 1;
403
+ continue;
404
+ }
257
405
  if (opts.full || !db.isProcessed(found.path, found.hash))
258
406
  preflightNew += 1;
259
407
  }
260
- const cached = discovered.length - preflightNew;
408
+ const cached = sessionsInScope.length - preflightNew - preflightFiltered;
261
409
  // Notes distilled but never embedded (write-time Ollama outage) — surfaced so
262
410
  // a retrieval blind spot is visible, not silent. Counts all three embeddable
263
411
  // layers (sessions + topics + articles) so the preflight matches exactly what
@@ -268,12 +416,23 @@ export async function runPipeline(cfg, opts = {}) {
268
416
  db.listPdfEmbeddingTargets().length;
269
417
  if (interactive) {
270
418
  ui.line(ui.dim(` ${discovered.length} files found · ${cached} cached · ${preflightNew} new` +
419
+ (preflightFiltered > 0
420
+ ? ` · ${preflightFiltered} project-filtered`
421
+ : "") +
271
422
  (pendingEmbedding > 0
272
423
  ? ` · ${pendingEmbedding} pending embedding`
273
424
  : "")));
274
425
  ui.blank();
275
426
  }
276
- fileLog(`preflight: found=${discovered.length} cached=${cached} new=${preflightNew} pendingEmbedding=${pendingEmbedding}`);
427
+ fileLog(`preflight: found=${discovered.length} cached=${cached} new=${preflightNew} projectFiltered=${preflightFiltered} pendingEmbedding=${pendingEmbedding}`);
428
+ // 0.14.0 changed the default provider to anthropic (claude-sonnet-5). A kie
429
+ // config keeps working exactly as configured — someone's config is not ours
430
+ // to change — but surface the default change once per interactive run so
431
+ // users who only ever accepted the old init default know the ground moved.
432
+ if (interactive && cfg.provider === "kie") {
433
+ ui.line(ui.dim(" Note: the default provider is now anthropic (claude-sonnet-5). Your 'kie' setting is unchanged — run vir init to switch."));
434
+ ui.blank();
435
+ }
277
436
  // Nudge session-only installs toward hybrid routing. interactive is already
278
437
  // false under --quiet/--daemon, so this never prints on the daemon path.
279
438
  if (interactive && !cfg.models.distillFast) {
@@ -287,15 +446,28 @@ export async function runPipeline(cfg, opts = {}) {
287
446
  // the estimate lands in the right ballpark instead of ~5x low. Still rough —
288
447
  // deep sessions vary, and low-confidence drops aren't knowable without the LLM.
289
448
  if (opts.dryRun) {
290
- const classifyModel = normalizeModelName(cfg.models.classify, cfg.provider);
291
- const distillModel = normalizeModelName(resolveModelShorthand(opts.forceDistillModel ?? cfg.models.distill), cfg.provider);
449
+ const classifyModel = classifyModelId;
450
+ const distillModel = distillModelId;
292
451
  const CLASSIFY_OUTPUT_TOKENS = 350;
293
452
  const DISTILL_OUTPUT_TOKENS = 4500;
294
453
  const CHARS_PER_TOKEN = 3;
295
454
  let totalCost = 0;
296
455
  let estimated = 0;
297
456
  let filteredOut = 0;
298
- for (const found of discovered) {
457
+ let dryExcluded = 0;
458
+ let dryPending = 0;
459
+ for (const found of sessionsInScope) {
460
+ // Project-filtered sessions are outside the estimate: they will not be
461
+ // distilled as things stand. Counted separately so they're never a
462
+ // silent omission from the preview.
463
+ const decision = decisionFor(found.path);
464
+ if (decision !== "include") {
465
+ if (decision === "exclude")
466
+ dryExcluded += 1;
467
+ else if (decision === "pending")
468
+ dryPending += 1;
469
+ continue;
470
+ }
299
471
  if (!opts.full && db.isProcessed(found.path, found.hash))
300
472
  continue;
301
473
  let parsed;
@@ -324,12 +496,31 @@ export async function runPipeline(cfg, opts = {}) {
324
496
  if (interactive) {
325
497
  ui.blank();
326
498
  ui.divider();
327
- ui.summary({
499
+ const dryStats = {
328
500
  sessions: { value: estimated, color: ui.info },
329
501
  "filtered out": { value: filteredOut, color: ui.dim },
330
- "est. total": { value: ui.formatUsd(totalCost), color: ui.warn },
331
- });
502
+ };
503
+ if (dryExcluded > 0) {
504
+ dryStats.excluded = { value: dryExcluded, color: ui.dim };
505
+ }
506
+ if (dryPending > 0) {
507
+ dryStats.undecided = { value: dryPending, color: ui.warn };
508
+ }
509
+ if (summary.workflowSkipped + summary.sidechainSkipped > 0) {
510
+ dryStats.workflow = {
511
+ value: summary.workflowSkipped + summary.sidechainSkipped,
512
+ color: ui.dim,
513
+ };
514
+ }
515
+ if (summary.agentSkipped > 0) {
516
+ dryStats.agent = { value: summary.agentSkipped, color: ui.dim };
517
+ }
518
+ dryStats["est. total"] = { value: ui.formatUsd(totalCost), color: ui.warn };
519
+ ui.summary(dryStats);
332
520
  ui.divider();
521
+ if (dryPending > 0) {
522
+ ui.line(ui.dim(` ${dryPending} session(s) in undecided projects — run vir projects to include/exclude them`));
523
+ }
333
524
  ui.line(ui.dim(" estimates assume typical output sizes; actuals may vary ±30%"));
334
525
  }
335
526
  // PDFs are estimated separately: papers exceed the 24k-char distill cap, so
@@ -345,7 +536,7 @@ export async function runPipeline(cfg, opts = {}) {
345
536
  fileLog(`dry-run: newPdfs=${newPdfs} perPdf=${ui.formatUsd(perPdf)} estTotal=${ui.formatUsd(perPdf * newPdfs)}`);
346
537
  }
347
538
  }
348
- fileLog(`dry-run: sessions=${estimated} filtered=${filteredOut} estTotal=${ui.formatUsd(totalCost)}`);
539
+ fileLog(`dry-run: sessions=${estimated} filtered=${filteredOut} excluded=${dryExcluded} pending=${dryPending} estTotal=${ui.formatUsd(totalCost)}`);
349
540
  db.close();
350
541
  return summary;
351
542
  }
@@ -357,8 +548,52 @@ export async function runPipeline(cfg, opts = {}) {
357
548
  return summary;
358
549
  }
359
550
  }
360
- for (const found of discovered) {
551
+ // One cheap probe before the loop: a provider-wide outage should be ONE
552
+ // clear failure, not N sessions each burning full retry chains and
553
+ // attempt-counter increments. Skipped when there is nothing to distill.
554
+ if (preflightNew > 0) {
361
555
  try {
556
+ await probeProvider(cfg, maybeAnthropicClient(cfg));
557
+ }
558
+ catch (err) {
559
+ const msg = err.message ?? String(err);
560
+ fileLog(`provider preflight failed: ${msg}`);
561
+ if (interactive) {
562
+ ui.row(ui.errorColor(ui.CROSS), ui.text(`provider ${cfg.provider} unreachable — ${msg}`));
563
+ }
564
+ db.close();
565
+ throw new Error(`provider ${cfg.provider} unreachable (preflight probe failed): ${msg}`);
566
+ }
567
+ }
568
+ for (const found of sessionsInScope) {
569
+ try {
570
+ // Project filter FIRST — before the cache check and long before any
571
+ // paid call. Every config-driven skip gets its DB row and reason;
572
+ // one-off flag skips record nothing (they say nothing about state).
573
+ const decision = decisionFor(found.path);
574
+ if (decision === "flag-skip") {
575
+ summary.flagSkipped += 1;
576
+ continue;
577
+ }
578
+ if (decision === "exclude" || decision === "pending") {
579
+ const reason = decision === "exclude" ? "project-excluded" : "project-pending";
580
+ if (decision === "exclude")
581
+ summary.projectExcluded += 1;
582
+ else
583
+ summary.projectPending += 1;
584
+ const existing = db.getByPath(found.path);
585
+ if (!isDistilledRow(existing) &&
586
+ (existing?.hash !== found.hash || existing?.skip_reason !== reason)) {
587
+ db.record({
588
+ path: found.path,
589
+ hash: found.hash,
590
+ skipped: true,
591
+ notePaths: [],
592
+ skipReason: reason,
593
+ });
594
+ }
595
+ continue;
596
+ }
362
597
  if (!opts.full && db.isProcessed(found.path, found.hash)) {
363
598
  summary.alreadyProcessed += 1;
364
599
  continue;
@@ -373,6 +608,45 @@ export async function runPipeline(cfg, opts = {}) {
373
608
  continue;
374
609
  }
375
610
  const parsed = parseSession(found.path, found.hash);
611
+ // Parser backstop for the transcript-category filter: a sidechain by
612
+ // CONTENT (isSidechain in the JSONL) that structural detection missed
613
+ // — e.g. a future layout change — still stops before any paid call.
614
+ if (cfg.workflowTranscripts !== "include" && parsed.isSidechain) {
615
+ summary.sidechainSkipped += 1;
616
+ // Same no-overwrite rule as the structural gate: a changed transcript
617
+ // whose row already holds a distilled note keeps that note visible.
618
+ if (!isDistilledRow(db.getByPath(found.path))) {
619
+ db.record({
620
+ path: found.path,
621
+ hash: found.hash,
622
+ skipped: true,
623
+ notePaths: [],
624
+ skipReason: "sidechain-transcript",
625
+ });
626
+ }
627
+ fileLog(`sidechain by content, skipping: ${found.path}`);
628
+ continue;
629
+ }
630
+ // Agent-transcript backstop: the SDK launch signature seen by the full
631
+ // parse when the scan-time head sniff missed it (truncated head, field
632
+ // moved). Still pre-classify, so still free.
633
+ if (cfg.agentTranscripts !== "include" &&
634
+ typeof parsed.entrypoint === "string" &&
635
+ parsed.entrypoint.startsWith("sdk")) {
636
+ summary.agentSkipped += 1;
637
+ if (!isDistilledRow(db.getByPath(found.path))) {
638
+ db.record({
639
+ path: found.path,
640
+ hash: found.hash,
641
+ skipped: true,
642
+ notePaths: [],
643
+ skipReason: "agent-transcript",
644
+ entrypoint: parsed.entrypoint,
645
+ });
646
+ }
647
+ fileLog(`sdk agent by content, skipping: ${found.path}`);
648
+ continue;
649
+ }
376
650
  const filter = scoreSession(parsed, cfg.filterThreshold);
377
651
  if (!filter.passes) {
378
652
  summary.skippedByFilter += 1;
@@ -421,12 +695,13 @@ export async function runPipeline(cfg, opts = {}) {
421
695
  project: note.classification.project,
422
696
  confidence: note.classification.confidence,
423
697
  startedAt: parsed.startedAt,
698
+ entrypoint: parsed.entrypoint,
424
699
  });
425
700
  if (interactive) {
426
701
  ui.categoryRow(note.classification.category, note.classification.topic);
427
702
  }
428
703
  fileLog(`distilled ${parsed.sessionId.slice(0, 8)} → ${note.classification.category}/${note.classification.topic}`);
429
- if (note.classification.confidence >= 0.8) {
704
+ if (note.classification.confidence >= 0.8 && cfg.notifications !== false) {
430
705
  notify(`Vir — new ${note.classification.category}`, `${note.classification.topic} · ${note.classification.project}`);
431
706
  }
432
707
  const slug = kebab(note.classification.project);
@@ -469,6 +744,24 @@ export async function runPipeline(cfg, opts = {}) {
469
744
  fileLog(`summary failed for project/${slug}: ${msg}`);
470
745
  }
471
746
  }
747
+ // Surface undecided projects — one log line and (config-gated) one macOS
748
+ // notification. Never a prompt: this is the daemon-safe path. Recomputed
749
+ // post-loop so interactively answered projects don't re-notify.
750
+ if (summary.projectPending > 0) {
751
+ const stillPending = new Set();
752
+ for (const group of projectGroups.values()) {
753
+ if (decideProject(group.name, projectDecisions, projectFlags) === "pending") {
754
+ stillPending.add(group.name);
755
+ }
756
+ }
757
+ const msg = `${summary.projectPending} session(s) across ${stillPending.size} project(s) awaiting include/exclude decision — run vir projects`;
758
+ fileLog(msg);
759
+ if (interactive)
760
+ ui.line(ui.dim(` ${msg}`));
761
+ if (cfg.notifications !== false && process.platform === "darwin") {
762
+ notify("vir — projects awaiting decision", `${stillPending.size} project(s), ${summary.projectPending} session(s) pending — run vir projects`);
763
+ }
764
+ }
472
765
  // Second input source: web articles. Gated on config; a session-only install
473
766
  // (no articlesDir) skips this entirely and behaves exactly as before.
474
767
  if (cfg.articlesDir && cfg.distillArticles) {
@@ -483,7 +776,7 @@ export async function runPipeline(cfg, opts = {}) {
483
776
  // (Ollama down during distill). Without this a transient outage is permanent
484
777
  // — the note never enters the embedding-search candidate set.
485
778
  await runEmbeddingSweep(db, writer, fileLog, interactive);
486
- fileLog(`vir run done — scanned=${summary.scanned} new=${summary.scanned - summary.alreadyProcessed} distilled=${summary.distilled} skipped=${summary.skippedByFilter} lowConf=${summary.lowConfidence} errored=${summary.errored} articles=${summary.articlesDistilled} pdfs=${summary.pdfsDistilled}`);
779
+ fileLog(`vir run done — scanned=${summary.scanned} new=${summary.scanned - summary.alreadyProcessed} distilled=${summary.distilled} skipped=${summary.skippedByFilter} lowConf=${summary.lowConfidence} errored=${summary.errored} projectExcluded=${summary.projectExcluded} projectPending=${summary.projectPending} flagSkipped=${summary.flagSkipped} workflowSkipped=${summary.workflowSkipped} sidechainSkipped=${summary.sidechainSkipped} agentSkipped=${summary.agentSkipped} articles=${summary.articlesDistilled} pdfs=${summary.pdfsDistilled}`);
487
780
  if (interactive) {
488
781
  ui.blank();
489
782
  ui.divider();
@@ -500,6 +793,21 @@ export async function runPipeline(cfg, opts = {}) {
500
793
  color: summary.errored > 0 ? ui.errorColor : ui.dim,
501
794
  },
502
795
  };
796
+ if (summary.projectExcluded > 0) {
797
+ stats.excluded = { value: summary.projectExcluded, color: ui.dim };
798
+ }
799
+ if (summary.projectPending > 0) {
800
+ stats.undecided = { value: summary.projectPending, color: ui.warn };
801
+ }
802
+ if (summary.workflowSkipped + summary.sidechainSkipped > 0) {
803
+ stats.workflow = {
804
+ value: summary.workflowSkipped + summary.sidechainSkipped,
805
+ color: ui.dim,
806
+ };
807
+ }
808
+ if (summary.agentSkipped > 0) {
809
+ stats.agent = { value: summary.agentSkipped, color: ui.dim };
810
+ }
503
811
  if (cfg.articlesDir && cfg.distillArticles) {
504
812
  stats.articles = { value: summary.articlesDistilled, color: ui.success };
505
813
  }
@@ -630,7 +938,8 @@ async function runArticlePhase(cfg, db, writer, summary, fileLog, interactive) {
630
938
  ui.categoryRow(distilled.classification.category, article.title);
631
939
  }
632
940
  fileLog(`distilled article → ${distilled.classification.category}/${article.title}`);
633
- if (distilled.classification.confidence >= 0.8) {
941
+ if (distilled.classification.confidence >= 0.8 &&
942
+ cfg.notifications !== false) {
634
943
  notify(`Vir — new ${distilled.classification.category}`, article.title);
635
944
  }
636
945
  await new Promise((r) => setTimeout(r, 2000));
@@ -715,7 +1024,8 @@ async function runPdfPhase(cfg, db, writer, summary, fileLog, interactive) {
715
1024
  ui.categoryRow(distilled.classification.category, parsed.title);
716
1025
  }
717
1026
  fileLog(`distilled pdf → ${distilled.classification.category}/${parsed.title}`);
718
- if (distilled.classification.confidence >= 0.8) {
1027
+ if (distilled.classification.confidence >= 0.8 &&
1028
+ cfg.notifications !== false) {
719
1029
  notify(`Vir — new ${distilled.classification.category}`, parsed.title);
720
1030
  }
721
1031
  await new Promise((r) => setTimeout(r, 2000));
@@ -758,6 +1068,8 @@ async function rewriteOne(writer, row) {
758
1068
  userText: "",
759
1069
  rawSummary: "",
760
1070
  transcriptText: "",
1071
+ isSidechain: false,
1072
+ entrypoint: null,
761
1073
  };
762
1074
  const note = {
763
1075
  classification: {
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/pipeline/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/pipeline/run.ts"],"names":[],"mappings":"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"}