@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.
- package/dist/cli/initConfig.js +4 -0
- package/dist/cli/initConfig.js.map +1 -1
- package/dist/cli/projectSelect.js +51 -0
- package/dist/cli/projectSelect.js.map +1 -0
- package/dist/cli/projects.js +119 -0
- package/dist/cli/projects.js.map +1 -0
- package/dist/cli.js +171 -15
- package/dist/cli.js.map +1 -1
- package/dist/config.js +40 -2
- package/dist/config.js.map +1 -1
- package/dist/cost/pricing.js +5 -0
- package/dist/cost/pricing.js.map +1 -1
- package/dist/daemon/index.js +4 -2
- package/dist/daemon/index.js.map +1 -1
- package/dist/daemon/launchd.js +57 -5
- package/dist/daemon/launchd.js.map +1 -1
- package/dist/diagnostics/doctor.js +81 -2
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/pipeline/distiller.js +18 -0
- package/dist/pipeline/distiller.js.map +1 -1
- package/dist/pipeline/parser.js +11 -0
- package/dist/pipeline/parser.js.map +1 -1
- package/dist/pipeline/projects.js +189 -0
- package/dist/pipeline/projects.js.map +1 -0
- package/dist/pipeline/run.js +328 -16
- package/dist/pipeline/run.js.map +1 -1
- package/dist/state/db.js +72 -5
- package/dist/state/db.js.map +1 -1
- package/package.json +2 -1
package/dist/pipeline/run.js
CHANGED
|
@@ -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
|
-
|
|
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 =
|
|
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 =
|
|
291
|
-
const distillModel =
|
|
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
|
-
|
|
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
|
-
|
|
499
|
+
const dryStats = {
|
|
328
500
|
sessions: { value: estimated, color: ui.info },
|
|
329
501
|
"filtered out": { value: filteredOut, color: ui.dim },
|
|
330
|
-
|
|
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
|
-
|
|
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: {
|
package/dist/pipeline/run.js.map
CHANGED
|
@@ -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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"}
|