@jigyasudham/veto 3.4.0 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +36 -0
  2. package/dist/agents/llm-runner.d.ts.map +1 -1
  3. package/dist/agents/llm-runner.js +61 -4
  4. package/dist/agents/llm-runner.js.map +1 -1
  5. package/dist/cli/lessons.d.ts +17 -0
  6. package/dist/cli/lessons.d.ts.map +1 -0
  7. package/dist/cli/lessons.js +448 -0
  8. package/dist/cli/lessons.js.map +1 -0
  9. package/dist/cli/statusline-hosts.js +1 -1
  10. package/dist/cli/statusline-hosts.js.map +1 -1
  11. package/dist/cli/statusline.d.ts +1 -0
  12. package/dist/cli/statusline.d.ts.map +1 -1
  13. package/dist/cli/statusline.js +18 -1
  14. package/dist/cli/statusline.js.map +1 -1
  15. package/dist/cli.js +10 -0
  16. package/dist/cli.js.map +1 -1
  17. package/dist/lessons/classify.d.ts +3 -0
  18. package/dist/lessons/classify.d.ts.map +1 -1
  19. package/dist/lessons/classify.js +12 -5
  20. package/dist/lessons/classify.js.map +1 -1
  21. package/dist/lessons/consent.d.ts +30 -0
  22. package/dist/lessons/consent.d.ts.map +1 -0
  23. package/dist/lessons/consent.js +86 -0
  24. package/dist/lessons/consent.js.map +1 -0
  25. package/dist/lessons/discover.d.ts +7 -0
  26. package/dist/lessons/discover.d.ts.map +1 -1
  27. package/dist/lessons/discover.js +5 -5
  28. package/dist/lessons/discover.js.map +1 -1
  29. package/dist/lessons/harvest.d.ts +40 -4
  30. package/dist/lessons/harvest.d.ts.map +1 -1
  31. package/dist/lessons/harvest.js +192 -17
  32. package/dist/lessons/harvest.js.map +1 -1
  33. package/dist/lessons/manage.d.ts +163 -0
  34. package/dist/lessons/manage.d.ts.map +1 -0
  35. package/dist/lessons/manage.js +337 -0
  36. package/dist/lessons/manage.js.map +1 -0
  37. package/dist/lessons/on-save.d.ts +18 -0
  38. package/dist/lessons/on-save.d.ts.map +1 -0
  39. package/dist/lessons/on-save.js +53 -0
  40. package/dist/lessons/on-save.js.map +1 -0
  41. package/dist/lessons/select.d.ts +1 -1
  42. package/dist/lessons/select.d.ts.map +1 -1
  43. package/dist/lessons/select.js +8 -6
  44. package/dist/lessons/select.js.map +1 -1
  45. package/dist/lessons/store.d.ts +80 -1
  46. package/dist/lessons/store.d.ts.map +1 -1
  47. package/dist/lessons/store.js +147 -10
  48. package/dist/lessons/store.js.map +1 -1
  49. package/dist/memory/config.d.ts +13 -0
  50. package/dist/memory/config.d.ts.map +1 -1
  51. package/dist/memory/config.js +24 -0
  52. package/dist/memory/config.js.map +1 -1
  53. package/dist/memory/local.d.ts.map +1 -1
  54. package/dist/memory/local.js +6 -3
  55. package/dist/memory/local.js.map +1 -1
  56. package/dist/memory/schema.d.ts +1 -1
  57. package/dist/memory/schema.d.ts.map +1 -1
  58. package/dist/memory/schema.js +50 -0
  59. package/dist/memory/schema.js.map +1 -1
  60. package/dist/server/handlers/council.d.ts.map +1 -1
  61. package/dist/server/handlers/council.js +36 -3
  62. package/dist/server/handlers/council.js.map +1 -1
  63. package/dist/server/handlers/session.d.ts.map +1 -1
  64. package/dist/server/handlers/session.js +10 -0
  65. package/dist/server/handlers/session.js.map +1 -1
  66. package/package.json +1 -1
  67. package/server.json +2 -2
@@ -6,7 +6,7 @@ import { STOPWORDS } from '../transcripts/stopwords.js';
6
6
  import { isLessonsSharingEnabled } from '../memory/config.js';
7
7
  import { resolveProjectIdentity } from './identity.js';
8
8
  import { claudeProjectSlug, sameClaudeSlug } from './source-project.js';
9
- import { disabledLessonSources } from './store.js';
9
+ import { disabledLessonSources, isProjectExcluded, lessonEntryKey } from './store.js';
10
10
  const K1 = 1.2;
11
11
  const B = 0.75;
12
12
  const TOKEN_CAP = 500;
@@ -80,6 +80,8 @@ export function selectLessonsForShadow(input) {
80
80
  if (!isLessonsSharingEnabled())
81
81
  return { lessonIds: [], estimatedTokens: 0, targetProjectIdentity: null, reason: 'consent_off' };
82
82
  const targetIdentity = resolveProjectIdentity(input.targetProjectDir);
83
+ if (isProjectExcluded(targetIdentity))
84
+ return { lessonIds: [], estimatedTokens: 0, targetProjectIdentity: targetIdentity, reason: 'project_excluded' };
83
85
  const now = input.now ?? Date.now();
84
86
  const disabled = disabledLessonSources();
85
87
  const all = getDb().prepare('SELECT * FROM lessons').all();
@@ -95,19 +97,19 @@ export function selectLessonsForShadow(input) {
95
97
  // Newest wins on conflict: the same entry held in several places (one memory
96
98
  // file copied into the D:, F: and G: checkouts' folders) counts once, as its
97
99
  // newest version, even when an older copy ranks higher. Identical text from
98
- // different entries is served once too.
99
- const entryKey = (row) => `${basename(row.source_path).toLowerCase()}#${row.section_anchor}`;
100
+ // different entries is served once too. Same-named files of two different
101
+ // projects are two entries.
100
102
  const newestByEntry = new Map();
101
103
  for (const row of candidates) {
102
- const held = newestByEntry.get(entryKey(row));
104
+ const held = newestByEntry.get(lessonEntryKey(row));
103
105
  if (!held || Date.parse(row.source_mtime) > Date.parse(held.source_mtime))
104
- newestByEntry.set(entryKey(row), row);
106
+ newestByEntry.set(lessonEntryKey(row), row);
105
107
  }
106
108
  const chosen = [];
107
109
  const seenText = new Set();
108
110
  let tokens = 0;
109
111
  for (const { row } of ranked) {
110
- if (newestByEntry.get(entryKey(row)) !== row || seenText.has(row.text_masked))
112
+ if (newestByEntry.get(lessonEntryKey(row)) !== row || seenText.has(row.text_masked))
111
113
  continue;
112
114
  const estimate = estimateTokens(row.text_masked);
113
115
  if (tokens + estimate > TOKEN_CAP)
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/lessons/select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/lessons/select.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { LessonSource } from './adapters/index.js';
2
- import type { LessonScope } from './classify.js';
2
+ import type { LessonScope, ScopeReason } from './classify.js';
3
3
  export type LessonRow = {
4
4
  id: string;
5
5
  source_cli: LessonSource;
@@ -8,6 +8,7 @@ export type LessonRow = {
8
8
  project_identity: string;
9
9
  project_label: string | null;
10
10
  scope: LessonScope;
11
+ scope_reason: ScopeReason | null;
11
12
  kind: string;
12
13
  text_masked: string;
13
14
  source_hash: string;
@@ -22,6 +23,7 @@ export type HarvestedSection = {
22
23
  anchor: string;
23
24
  textMasked: string;
24
25
  scope: LessonScope;
26
+ scopeReason: ScopeReason;
25
27
  kind: string;
26
28
  quarantineReason: string | null;
27
29
  };
@@ -33,24 +35,101 @@ export type SyncLessonsInput = {
33
35
  sourceMtime: string;
34
36
  sections: HarvestedSection[];
35
37
  };
38
+ /** A note's text, compared the way a person would: case and spacing do not make it a different note. */
39
+ export declare function lessonSignature(textMasked: string): string;
40
+ /**
41
+ * One memory entry wherever it is kept: the same file name and section in any
42
+ * checkout of the same project (the D:, F: and G: copies of one Claude memory
43
+ * folder) is one entry, held in several places.
44
+ */
45
+ export declare function lessonEntryKey(row: {
46
+ source_cli: string;
47
+ project_identity: string;
48
+ source_path: string;
49
+ section_anchor: string;
50
+ }): string;
51
+ /**
52
+ * Tombstone a note and delete it with every version and copy of it. Each row
53
+ * removed gets a tombstone of its own, so a copy's later edits stay forgotten,
54
+ * and so does text identical to a copy (not only to the note picked). Returns
55
+ * how many rows were removed, the note itself included.
56
+ */
57
+ export declare function tombstoneLesson(row: LessonRow): number;
58
+ export declare function isProjectExcluded(projectIdentity: string): boolean;
59
+ export type ProjectExclusion = {
60
+ project_identity: string;
61
+ project_label: string | null;
62
+ created_at: string;
63
+ };
64
+ export declare function excludedProjects(): ProjectExclusion[];
65
+ /** Keep a project out of sharing, and delete what was already harvested from it. */
66
+ export declare function excludeProject(projectIdentity: string, projectLabel: string | null): {
67
+ added: boolean;
68
+ removed: number;
69
+ };
70
+ export declare function includeProject(projectIdentity: string): boolean;
36
71
  /**
37
72
  * Make a source's rows exactly its current sections: insert new ones, update
38
73
  * changed ones, delete the rest (lifetime = source). A source that failed to
39
74
  * parse never reaches this function, so a malformed file cannot erase rows;
40
75
  * an empty section list is a successful parse of nothing and clears them.
76
+ * A forgotten section counts as absent: it is deleted, never re-added.
41
77
  */
42
78
  export declare function syncLessons(input: SyncLessonsInput): {
43
79
  inserted: number;
44
80
  updated: number;
45
81
  removed: number;
46
82
  };
83
+ /** Delete every row harvested from one source file. */
84
+ export declare function deleteLessonSource(source: LessonSource, sourcePath: string): number;
47
85
  /** Delete every row whose source file is no longer among the discovered ones. */
48
86
  export declare function purgeVanishedLessonSources(present: Array<{
49
87
  source: LessonSource;
50
88
  sourcePath: string;
51
89
  }>): number;
90
+ export type LessonFileState = {
91
+ mtime: string | null;
92
+ size: number | null;
93
+ content_hash: string | null;
94
+ project_identity: string | null;
95
+ harvester_version: number;
96
+ unavailable_streak: number;
97
+ };
98
+ /** What this file looked like when it was last harvested, or null if never. */
99
+ export declare function lessonFileState(source: LessonSource, sourcePath: string): LessonFileState | null;
100
+ /** Remember a successful look at a file. Clears any unavailable streak. */
101
+ export declare function recordLessonFileState(input: {
102
+ source: LessonSource;
103
+ sourcePath: string;
104
+ mtime: string;
105
+ size: number;
106
+ contentHash: string;
107
+ projectIdentity: string;
108
+ harvesterVersion: number;
109
+ }): void;
110
+ /**
111
+ * A file that could not be read. The streak grows so a source that is gone —
112
+ * an unplugged drive, most often — is probed less and less on the save path,
113
+ * where a multi-second stat would be paid by the user for nothing.
114
+ */
115
+ export declare function recordLessonFileUnavailable(source: LessonSource, sourcePath: string): number;
116
+ /** Drop remembered state for files no longer discovered, so it cannot outlive them. */
117
+ export declare function purgeVanishedLessonFileState(present: Array<{
118
+ source: LessonSource;
119
+ sourcePath: string;
120
+ }>): number;
121
+ /**
122
+ * Projects whose Claude folder was never traced back to a directory on this
123
+ * machine - an unplugged drive, most often. Counted from what is stored rather
124
+ * than from a pass, because a pass that changed nothing resolves no projects.
125
+ */
126
+ export declare function unresolvedProjectCount(): number;
127
+ /** `veto lessons off` and a forced refresh both need the memory of files cleared. */
128
+ export declare function clearLessonFileState(): number;
129
+ export declare function enableLessonSource(source: LessonSource): boolean;
52
130
  export declare function disableLessonSource(source: LessonSource, reason: string): void;
53
131
  export declare function isLessonSourceEnabled(source: LessonSource): boolean;
54
132
  /** Hosts whose adapter tripped the format-drift canary; their rows are not served. */
55
133
  export declare function disabledLessonSources(): Set<LessonSource>;
134
+ export declare function disabledLessonSourceReasons(): Map<LessonSource, string>;
56
135
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/lessons/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,YAAY,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,YAAY,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B,CAAC;AAgBF;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CA6B3G;AAED,iFAAiF;AACjF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,KAAK,CAAC;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,CAU/G;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAI9E;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAGnE;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,IAAI,GAAG,CAAC,YAAY,CAAC,CAGzD"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/lessons/store.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,79 @@
1
1
  import { createHash, randomUUID } from 'node:crypto';
2
+ import { basename } from 'node:path';
2
3
  import { getDb } from '../memory/local.js';
3
4
  /** Per SECTION, over everything stored: an edit elsewhere in the file leaves this row alone. */
4
5
  function sectionHash(input, section) {
5
6
  return createHash('sha256')
6
- .update(JSON.stringify([input.projectIdentity, input.projectLabel, section.scope, section.kind, section.quarantineReason, section.textMasked]))
7
+ .update(JSON.stringify([input.projectIdentity, input.projectLabel, section.scope, section.scopeReason, section.kind, section.quarantineReason, section.textMasked]))
7
8
  .digest('hex');
8
9
  }
10
+ /** A note's text, compared the way a person would: case and spacing do not make it a different note. */
11
+ export function lessonSignature(textMasked) {
12
+ return createHash('sha256').update(textMasked.toLowerCase().replace(/\s+/g, ' ').trim()).digest('hex');
13
+ }
14
+ /**
15
+ * One memory entry wherever it is kept: the same file name and section in any
16
+ * checkout of the same project (the D:, F: and G: copies of one Claude memory
17
+ * folder) is one entry, held in several places.
18
+ */
19
+ export function lessonEntryKey(row) {
20
+ return [row.source_cli, row.project_identity, basename(row.source_path).toLowerCase(), row.section_anchor].join('\n');
21
+ }
22
+ function tombstoneMatcher() {
23
+ const stmt = getDb().prepare(`SELECT 1 FROM lesson_tombstones
24
+ WHERE (source_cli = ? AND source_path = ? AND section_anchor = ?) OR entry_key = ? OR signature = ? LIMIT 1`);
25
+ return probe => stmt.get(probe.source_cli, probe.source_path, probe.section_anchor, lessonEntryKey(probe), lessonSignature(probe.text_masked)) !== undefined;
26
+ }
27
+ /**
28
+ * Tombstone a note and delete it with every version and copy of it. Each row
29
+ * removed gets a tombstone of its own, so a copy's later edits stay forgotten,
30
+ * and so does text identical to a copy (not only to the note picked). Returns
31
+ * how many rows were removed, the note itself included.
32
+ */
33
+ export function tombstoneLesson(row) {
34
+ return inTransaction(() => {
35
+ const db = getDb();
36
+ const forgetId = randomUUID();
37
+ const now = new Date().toISOString();
38
+ const insert = db.prepare(`INSERT INTO lesson_tombstones (id, forget_id, source_cli, source_path, section_anchor, entry_key, signature, created_at)
39
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?)`);
40
+ const del = db.prepare('DELETE FROM lessons WHERE id = ?');
41
+ const forgotten = tombstoneMatcher();
42
+ const tombstoned = new Set();
43
+ let pending = [row];
44
+ let removed = 0;
45
+ while (pending.length) {
46
+ for (const r of pending) {
47
+ tombstoned.add(r.id);
48
+ insert.run(randomUUID(), forgetId, r.source_cli, r.source_path, r.section_anchor, lessonEntryKey(r), lessonSignature(r.text_masked), now);
49
+ }
50
+ const matches = db.prepare('SELECT * FROM lessons').all().filter(forgotten);
51
+ for (const r of matches)
52
+ removed += Number(del.run(r.id).changes);
53
+ pending = matches.filter(r => !tombstoned.has(r.id));
54
+ }
55
+ return removed;
56
+ });
57
+ }
58
+ export function isProjectExcluded(projectIdentity) {
59
+ return getDb().prepare('SELECT 1 FROM lesson_project_exclusions WHERE project_identity = ?').get(projectIdentity) !== undefined;
60
+ }
61
+ export function excludedProjects() {
62
+ return getDb().prepare('SELECT project_identity, project_label, created_at FROM lesson_project_exclusions ORDER BY created_at').all();
63
+ }
64
+ /** Keep a project out of sharing, and delete what was already harvested from it. */
65
+ export function excludeProject(projectIdentity, projectLabel) {
66
+ return inTransaction(() => {
67
+ const db = getDb();
68
+ const added = Number(db.prepare('INSERT OR IGNORE INTO lesson_project_exclusions (project_identity, project_label, created_at) VALUES (?, ?, ?)')
69
+ .run(projectIdentity, projectLabel, new Date().toISOString()).changes) > 0;
70
+ const removed = Number(db.prepare('DELETE FROM lessons WHERE project_identity = ?').run(projectIdentity).changes);
71
+ return { added, removed };
72
+ });
73
+ }
74
+ export function includeProject(projectIdentity) {
75
+ return Number(getDb().prepare('DELETE FROM lesson_project_exclusions WHERE project_identity = ?').run(projectIdentity).changes) > 0;
76
+ }
9
77
  function inTransaction(run) {
10
78
  const db = getDb();
11
79
  db.exec('BEGIN');
@@ -24,37 +92,47 @@ function inTransaction(run) {
24
92
  * changed ones, delete the rest (lifetime = source). A source that failed to
25
93
  * parse never reaches this function, so a malformed file cannot erase rows;
26
94
  * an empty section list is a successful parse of nothing and clears them.
95
+ * A forgotten section counts as absent: it is deleted, never re-added.
27
96
  */
28
97
  export function syncLessons(input) {
29
98
  return inTransaction(() => {
30
99
  const db = getDb();
31
100
  const existing = db.prepare('SELECT id, source_hash FROM lessons WHERE source_cli = ? AND source_path = ? AND section_anchor = ?');
32
- const insert = db.prepare(`INSERT INTO lessons (id, source_cli, source_path, section_anchor, project_identity, project_label, scope, kind, text_masked, source_hash, source_mtime, quarantined, quarantine_reason, created_at, updated_at)
33
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
34
- const update = db.prepare(`UPDATE lessons SET project_identity = ?, project_label = ?, scope = ?, kind = ?, text_masked = ?, source_hash = ?, source_mtime = ?, quarantined = ?, quarantine_reason = ?, updated_at = ? WHERE id = ?`);
101
+ const insert = db.prepare(`INSERT INTO lessons (id, source_cli, source_path, section_anchor, project_identity, project_label, scope, scope_reason, kind, text_masked, source_hash, source_mtime, quarantined, quarantine_reason, created_at, updated_at)
102
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
103
+ const update = db.prepare(`UPDATE lessons SET project_identity = ?, project_label = ?, scope = ?, scope_reason = ?, kind = ?, text_masked = ?, source_hash = ?, source_mtime = ?, quarantined = ?, quarantine_reason = ?, updated_at = ? WHERE id = ?`);
104
+ const forgotten = tombstoneMatcher();
35
105
  const now = new Date().toISOString();
36
106
  let inserted = 0;
37
107
  let updated = 0;
38
- for (const section of input.sections) {
108
+ const kept = input.sections.filter(section => !forgotten({
109
+ source_cli: input.sourceCli, source_path: input.sourcePath, section_anchor: section.anchor,
110
+ project_identity: input.projectIdentity, text_masked: section.textMasked,
111
+ }));
112
+ for (const section of kept) {
39
113
  const hash = sectionHash(input, section);
40
114
  const quarantined = section.quarantineReason ? 1 : 0;
41
115
  const row = existing.get(input.sourceCli, input.sourcePath, section.anchor);
42
116
  if (!row) {
43
- insert.run(randomUUID(), input.sourceCli, input.sourcePath, section.anchor, input.projectIdentity, input.projectLabel, section.scope, section.kind, section.textMasked, hash, input.sourceMtime, quarantined, section.quarantineReason, now, now);
117
+ insert.run(randomUUID(), input.sourceCli, input.sourcePath, section.anchor, input.projectIdentity, input.projectLabel, section.scope, section.scopeReason, section.kind, section.textMasked, hash, input.sourceMtime, quarantined, section.quarantineReason, now, now);
44
118
  inserted++;
45
119
  }
46
120
  else if (row.source_hash !== hash) {
47
- update.run(input.projectIdentity, input.projectLabel, section.scope, section.kind, section.textMasked, hash, input.sourceMtime, quarantined, section.quarantineReason, now, row.id);
121
+ update.run(input.projectIdentity, input.projectLabel, section.scope, section.scopeReason, section.kind, section.textMasked, hash, input.sourceMtime, quarantined, section.quarantineReason, now, row.id);
48
122
  updated++;
49
123
  }
50
124
  }
51
- const anchors = input.sections.map(section => section.anchor);
125
+ const anchors = kept.map(section => section.anchor);
52
126
  const keep = anchors.length ? ` AND section_anchor NOT IN (${anchors.map(() => '?').join(', ')})` : '';
53
127
  const removed = Number(db.prepare(`DELETE FROM lessons WHERE source_cli = ? AND source_path = ?${keep}`)
54
128
  .run(input.sourceCli, input.sourcePath, ...anchors).changes);
55
129
  return { inserted, updated, removed };
56
130
  });
57
131
  }
132
+ /** Delete every row harvested from one source file. */
133
+ export function deleteLessonSource(source, sourcePath) {
134
+ return Number(getDb().prepare('DELETE FROM lessons WHERE source_cli = ? AND source_path = ?').run(source, sourcePath).changes);
135
+ }
58
136
  /** Delete every row whose source file is no longer among the discovered ones. */
59
137
  export function purgeVanishedLessonSources(present) {
60
138
  const keep = new Set(present.map(p => `${p.source}\u0000${p.sourcePath}`));
@@ -68,6 +146,62 @@ export function purgeVanishedLessonSources(present) {
68
146
  }
69
147
  return removed;
70
148
  }
149
+ /** What this file looked like when it was last harvested, or null if never. */
150
+ export function lessonFileState(source, sourcePath) {
151
+ const row = getDb().prepare('SELECT mtime, size, content_hash, project_identity, harvester_version, unavailable_streak FROM lesson_file_state WHERE source_cli = ? AND source_path = ?')
152
+ .get(source, sourcePath);
153
+ return row ?? null;
154
+ }
155
+ /** Remember a successful look at a file. Clears any unavailable streak. */
156
+ export function recordLessonFileState(input) {
157
+ getDb().prepare(`INSERT INTO lesson_file_state (source_cli, source_path, mtime, size, content_hash, project_identity, harvester_version, unavailable_streak, unavailable_at, checked_at)
158
+ VALUES (?, ?, ?, ?, ?, ?, ?, 0, NULL, ?)
159
+ ON CONFLICT(source_cli, source_path) DO UPDATE SET mtime = excluded.mtime, size = excluded.size, content_hash = excluded.content_hash,
160
+ project_identity = excluded.project_identity, harvester_version = excluded.harvester_version, unavailable_streak = 0, unavailable_at = NULL, checked_at = excluded.checked_at`)
161
+ .run(input.source, input.sourcePath, input.mtime, input.size, input.contentHash, input.projectIdentity, input.harvesterVersion, new Date().toISOString());
162
+ }
163
+ /**
164
+ * A file that could not be read. The streak grows so a source that is gone —
165
+ * an unplugged drive, most often — is probed less and less on the save path,
166
+ * where a multi-second stat would be paid by the user for nothing.
167
+ */
168
+ export function recordLessonFileUnavailable(source, sourcePath) {
169
+ const now = new Date().toISOString();
170
+ getDb().prepare(`INSERT INTO lesson_file_state (source_cli, source_path, harvester_version, unavailable_streak, unavailable_at, checked_at)
171
+ VALUES (?, ?, 0, 1, ?, ?)
172
+ ON CONFLICT(source_cli, source_path) DO UPDATE SET unavailable_streak = lesson_file_state.unavailable_streak + 1, unavailable_at = excluded.unavailable_at, checked_at = excluded.checked_at`)
173
+ .run(source, sourcePath, now, now);
174
+ return lessonFileState(source, sourcePath)?.unavailable_streak ?? 1;
175
+ }
176
+ /** Drop remembered state for files no longer discovered, so it cannot outlive them. */
177
+ export function purgeVanishedLessonFileState(present) {
178
+ const keep = new Set(present.map(p => `${p.source}\u0000${p.sourcePath}`));
179
+ const db = getDb();
180
+ const rows = db.prepare('SELECT source_cli, source_path FROM lesson_file_state').all();
181
+ const del = db.prepare('DELETE FROM lesson_file_state WHERE source_cli = ? AND source_path = ?');
182
+ let removed = 0;
183
+ for (const row of rows) {
184
+ if (!keep.has(`${row.source_cli}\u0000${row.source_path}`))
185
+ removed += Number(del.run(row.source_cli, row.source_path).changes);
186
+ }
187
+ return removed;
188
+ }
189
+ /**
190
+ * Projects whose Claude folder was never traced back to a directory on this
191
+ * machine - an unplugged drive, most often. Counted from what is stored rather
192
+ * than from a pass, because a pass that changed nothing resolves no projects.
193
+ */
194
+ export function unresolvedProjectCount() {
195
+ const row = getDb().prepare("SELECT COUNT(DISTINCT project_identity) AS n FROM lessons WHERE project_identity LIKE 'claude-slug:%'").get();
196
+ return row.n;
197
+ }
198
+ /** `veto lessons off` and a forced refresh both need the memory of files cleared. */
199
+ export function clearLessonFileState() {
200
+ return Number(getDb().prepare('DELETE FROM lesson_file_state').run().changes);
201
+ }
202
+ export function enableLessonSource(source) {
203
+ return Number(getDb().prepare('DELETE FROM lesson_source_state WHERE source_cli = ?').run(source).changes) > 0;
204
+ }
71
205
  export function disableLessonSource(source, reason) {
72
206
  getDb().prepare(`INSERT INTO lesson_source_state (source_cli, enabled, disabled_reason, checked_at) VALUES (?, 0, ?, ?)
73
207
  ON CONFLICT(source_cli) DO UPDATE SET enabled = 0, disabled_reason = excluded.disabled_reason, checked_at = excluded.checked_at`)
@@ -79,7 +213,10 @@ export function isLessonSourceEnabled(source) {
79
213
  }
80
214
  /** Hosts whose adapter tripped the format-drift canary; their rows are not served. */
81
215
  export function disabledLessonSources() {
82
- const rows = getDb().prepare('SELECT source_cli FROM lesson_source_state WHERE enabled = 0').all();
83
- return new Set(rows.map(row => row.source_cli));
216
+ return new Set(disabledLessonSourceReasons().keys());
217
+ }
218
+ export function disabledLessonSourceReasons() {
219
+ const rows = getDb().prepare('SELECT source_cli, disabled_reason FROM lesson_source_state WHERE enabled = 0').all();
220
+ return new Map(rows.map(row => [row.source_cli, row.disabled_reason ?? 'format drift']));
84
221
  }
85
222
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/lessons/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/lessons/store.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,15 @@ export type LessonsConfig = {
12
12
  consent_at: string | null;
13
13
  cross_project: boolean;
14
14
  cross_vendor: boolean;
15
+ /**
16
+ * Whether saving a session also re-reads each AI's memory. On by default:
17
+ * recording notes by hand is the thing that never happens. Turning it off
18
+ * leaves consent and every `veto lessons` command working, so a problem in
19
+ * the field is one setting away from being stopped (council 534e2bd5).
20
+ */
21
+ harvest_on_save: boolean;
22
+ /** When saving a session first harvested; the one-time note is shown once. */
23
+ first_harvest_at: string | null;
15
24
  };
16
25
  export declare const LESSONS_CONSENT_VERSION = 2;
17
26
  export declare const DEFAULT_LESSONS: LessonsConfig;
@@ -35,5 +44,9 @@ export declare function setConfig(partial: Partial<VetoConfig>): void;
35
44
  /** Explicit v2 opt-in. No version upgrade can silently enable sharing. */
36
45
  export declare function enableLessonsSharing(): LessonsConfig;
37
46
  export declare function disableLessonsSharing(): void;
47
+ /** True once, the first time a save harvests, so the user is told it happens. */
48
+ export declare function firstHarvestOnSave(): boolean;
49
+ /** Whether a session save should also re-read each AI's memory. */
50
+ export declare function isHarvestOnSaveEnabled(config?: LessonsConfig): boolean;
38
51
  export declare function isLessonsSharingEnabled(config?: LessonsConfig): boolean;
39
52
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAIF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,eAAe,EAAE,aAM7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,YAAY,EAAE,cAAc,GAAG,KAAK,CAAC;IAGrC,mBAAmB,EAAE,OAAO,CAAC;IAI7B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,OAAO,EAAE,aAAa,CAAC;CACxB,CAAC;AAYF,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC,kBAAkB,CAK1D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,iBAOjC,CAAC;AAyBF,wBAAgB,SAAS,IAAI,UAAU,CAoCtC;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAc5D;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,IAAI,aAAa,CAUpD;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAED,wBAAgB,uBAAuB,CAAC,MAAM,GAAE,aAAmC,GAAG,OAAO,CAK5F"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAIF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,8EAA8E;IAC9E,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAMF,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,eAAe,EAAE,aAQ7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,YAAY,EAAE,cAAc,GAAG,KAAK,CAAC;IAGrC,mBAAmB,EAAE,OAAO,CAAC;IAI7B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,OAAO,EAAE,aAAa,CAAC;CACxB,CAAC;AAYF,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC,kBAAkB,CAK1D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,iBAOjC,CAAC;AA2BF,wBAAgB,SAAS,IAAI,UAAU,CAoCtC;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAc5D;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,IAAI,aAAa,CAcpD;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,IAAI,OAAO,CAK5C;AAED,mEAAmE;AACnE,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,aAAmC,GAAG,OAAO,CAE3F;AAED,wBAAgB,uBAAuB,CAAC,MAAM,GAAE,aAAmC,GAAG,OAAO,CAK5F"}
@@ -1,6 +1,10 @@
1
1
  import { join, dirname } from 'node:path';
2
2
  import { homedir } from 'node:os';
3
3
  import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'node:fs';
4
+ // Consent v2 covers the trial only: reading notes and logging what would have
5
+ // been shared. Its disclosure PROMISES to ask again before any note is given to
6
+ // an AI (owner, 2026-09-20), so the release that starts delivery must bump this
7
+ // to 3, which pauses sharing until each user accepts the new disclosure.
4
8
  export const LESSONS_CONSENT_VERSION = 2;
5
9
  export const DEFAULT_LESSONS = {
6
10
  enabled: false,
@@ -8,6 +12,8 @@ export const DEFAULT_LESSONS = {
8
12
  consent_at: null,
9
13
  cross_project: false,
10
14
  cross_vendor: false,
15
+ harvest_on_save: true,
16
+ first_harvest_at: null,
11
17
  };
12
18
  // VETO_CONFIG_PATH overrides the config location (tests isolate here, mirroring
13
19
  // VETO_TEST_DB). Read per-call so the override applies even after this module
@@ -51,6 +57,8 @@ function normalizeLessons(raw) {
51
57
  consent_at: typeof raw?.consent_at === 'string' ? raw.consent_at : null,
52
58
  cross_project: raw?.cross_project === true,
53
59
  cross_vendor: raw?.cross_vendor === true,
60
+ harvest_on_save: raw?.harvest_on_save !== false,
61
+ first_harvest_at: typeof raw?.first_harvest_at === 'string' ? raw.first_harvest_at : null,
54
62
  };
55
63
  }
56
64
  export function getConfig() {
@@ -114,6 +122,10 @@ export function enableLessonsSharing() {
114
122
  consent_at: new Date().toISOString(),
115
123
  cross_project: true,
116
124
  cross_vendor: true,
125
+ // Turning sharing on keeps the switch the user last chose, so a machine
126
+ // that had harvest-on-save off does not silently get it back.
127
+ harvest_on_save: getConfig().lessons.harvest_on_save,
128
+ first_harvest_at: getConfig().lessons.first_harvest_at,
117
129
  };
118
130
  setConfig({ lessons });
119
131
  return lessons;
@@ -122,6 +134,18 @@ export function disableLessonsSharing() {
122
134
  const current = getConfig().lessons;
123
135
  setConfig({ lessons: { ...current, enabled: false, cross_project: false, cross_vendor: false } });
124
136
  }
137
+ /** True once, the first time a save harvests, so the user is told it happens. */
138
+ export function firstHarvestOnSave() {
139
+ const current = getConfig().lessons;
140
+ if (current.first_harvest_at)
141
+ return false;
142
+ setConfig({ lessons: { ...current, first_harvest_at: new Date().toISOString() } });
143
+ return true;
144
+ }
145
+ /** Whether a session save should also re-read each AI's memory. */
146
+ export function isHarvestOnSaveEnabled(config = getConfig().lessons) {
147
+ return isLessonsSharingEnabled(config) && config.harvest_on_save !== false;
148
+ }
125
149
  export function isLessonsSharingEnabled(config = getConfig().lessons) {
126
150
  return config.enabled
127
151
  && config.consent_version === LESSONS_CONSENT_VERSION
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/memory/local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/memory/local.ts"],"names":[],"mappings":"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"}