@codemem/core 0.29.0 → 0.29.2

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.
@@ -1,5 +1,6 @@
1
1
  import type { Database } from "../db.js";
2
2
  import { ObserverClient } from "../observer-client.js";
3
+ import { SecretScanner } from "../secret-scanner.js";
3
4
  type StructuredBackfillObserver = Pick<ObserverClient, "observe" | "observeStructuredJson" | "getStatus">;
4
5
  export interface AIBackfillStructuredContentResult {
5
6
  checked: number;
@@ -21,6 +22,13 @@ export interface AIBackfillStructuredContentOptions {
21
22
  dryRun?: boolean;
22
23
  overwrite?: boolean;
23
24
  observer?: StructuredBackfillObserver;
25
+ /**
26
+ * Secret scanner used to redact AI-generated narrative/facts/concepts
27
+ * before they are written back to memory_items. The summarizer can launder
28
+ * a secret past pattern-based detection on the source or invent new
29
+ * secret-shaped strings, so output must be re-scanned independent of input.
30
+ */
31
+ scanner?: SecretScanner;
24
32
  }
25
33
  /**
26
34
  * AI-powered backfill for older non-session-summary memories that still lack
@@ -1 +1 @@
1
- {"version":3,"file":"ai-structured.d.ts","sourceRoot":"","sources":["../../src/maintenance/ai-structured.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAOzC,OAAO,EAAsB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAqC3E,KAAK,0BAA0B,GAAG,IAAI,CACrC,cAAc,EACd,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACjD,CAAC;AAEF,MAAM,WAAW,iCAAiC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC,CAAC;CACH;AAED,MAAM,WAAW,kCAAkC;IAClD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,0BAA0B,CAAC;CACtC;AAyLD;;;;GAIG;AACH,wBAAsB,2BAA2B,CAChD,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,kCAAuC,GAC3C,OAAO,CAAC,iCAAiC,CAAC,CAiK5C"}
1
+ {"version":3,"file":"ai-structured.d.ts","sourceRoot":"","sources":["../../src/maintenance/ai-structured.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAOzC,OAAO,EAAsB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAqCrD,KAAK,0BAA0B,GAAG,IAAI,CACrC,cAAc,EACd,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACjD,CAAC;AAEF,MAAM,WAAW,iCAAiC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC,CAAC;CACH;AAED,MAAM,WAAW,kCAAkC;IAClD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,0BAA0B,CAAC;IACtC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB;AAyLD;;;;GAIG;AACH,wBAAsB,2BAA2B,CAChD,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,kCAAuC,GAC3C,OAAO,CAAC,iCAAiC,CAAC,CA4K5C"}
@@ -1,4 +1,5 @@
1
1
  import type { Database } from "../db.js";
2
+ import { SecretScanner } from "../secret-scanner.js";
2
3
  export interface BackfillNarrativeResult {
3
4
  checked: number;
4
5
  updated: number;
@@ -7,6 +8,12 @@ export interface BackfillNarrativeResult {
7
8
  export interface BackfillNarrativeOptions {
8
9
  limit?: number | null;
9
10
  dryRun?: boolean;
11
+ /**
12
+ * Secret scanner used to redact extracted narrative before persistence.
13
+ * Source body_text on legacy rows pre-dates the scanner, so the extracted
14
+ * narrative cannot be assumed redaction-derivative.
15
+ */
16
+ scanner?: SecretScanner;
10
17
  }
11
18
  /**
12
19
  * Backfill narrative for session_summary memories that have structured
@@ -1 +1 @@
1
- {"version":3,"file":"backfill-narrative.d.ts","sourceRoot":"","sources":["../../src/maintenance/backfill-narrative.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACxC,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,wBAA6B,GACjC,uBAAuB,CA8CzB"}
1
+ {"version":3,"file":"backfill-narrative.d.ts","sourceRoot":"","sources":["../../src/maintenance/backfill-narrative.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACxC,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,wBAA6B,GACjC,uBAAuB,CAgDzB"}
@@ -1,4 +1,5 @@
1
1
  import type { Database } from "../db.js";
2
+ import { SecretScanner } from "../secret-scanner.js";
2
3
  export interface BackfillTagsTextOptions {
3
4
  limit?: number | null;
4
5
  since?: string | null;
@@ -6,6 +7,16 @@ export interface BackfillTagsTextOptions {
6
7
  activeOnly?: boolean;
7
8
  dryRun?: boolean;
8
9
  memoryIds?: number[] | null;
10
+ /**
11
+ * Secret scanner used to redact derived tag values before persistence.
12
+ * Tags derive from kind/title/concepts/files which are persisted columns —
13
+ * but legacy rows pre-date the scanner so we cannot trust those columns to
14
+ * be redacted-derivative. Caveat: `deriveTags` lowercases tags before this
15
+ * scan runs, so case-sensitive rules (AWS AKIA*, Google AIza*, JWT eyJ*)
16
+ * won't fire on legacy-derived tags. Catching the long tail there is the
17
+ * job of the retroactive sweep (codemem-vb2s).
18
+ */
19
+ scanner?: SecretScanner;
9
20
  }
10
21
  export interface BackfillTagsTextResult {
11
22
  checked: number;
@@ -1 +1 @@
1
- {"version":3,"file":"backfill-tags.d.ts","sourceRoot":"","sources":["../../src/maintenance/backfill-tags.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIzC,MAAM,WAAW,uBAAuB;IACvC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,uBAA4B,GAChC,sBAAsB,CAwFxB"}
1
+ {"version":3,"file":"backfill-tags.d.ts","sourceRoot":"","sources":["../../src/maintenance/backfill-tags.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,MAAM,WAAW,uBAAuB;IACvC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,uBAA4B,GAChC,sBAAsB,CA0FxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"init-vacuum.d.ts","sourceRoot":"","sources":["../../src/maintenance/init-vacuum.ts"],"names":[],"mappings":"AAUA,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAejF;AAED,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAMnF"}
1
+ {"version":3,"file":"init-vacuum.d.ts","sourceRoot":"","sources":["../../src/maintenance/init-vacuum.ts"],"names":[],"mappings":"AASA,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAkBjF;AAED,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAMnF"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Retroactive secret-scan sweep over already-stored memories.
3
+ *
4
+ * Day-one users of the scanner have an unscanned backlog: memories written
5
+ * before the scanner shipped retain whatever secret-shaped content was in
6
+ * their bodies, titles, narratives, etc. This sweep walks `memory_items`,
7
+ * scans every content-bearing column, writes redacted versions back, and
8
+ * refreshes junction tables (`memory_concept_refs`, `memory_file_refs`)
9
+ * derived from the redacted columns so they cannot retain stale unredacted
10
+ * concept strings.
11
+ *
12
+ * Idempotent — scanning an already-redacted string yields the same string
13
+ * (the `[REDACTED:<kind>]` markers do not match any default rule), so a
14
+ * second run is a no-op except for the work of reading rows.
15
+ *
16
+ * Concurrency — each row is updated in its own transaction with a
17
+ * `WHERE rev = ?` guard so a concurrent legitimate write that bumped `rev`
18
+ * is not silently clobbered. The local-only sweep does not bump `rev` or
19
+ * record a replication op; peers redact their own copies via the
20
+ * sync-receive scanner.
21
+ */
22
+ import type { Database } from "../db.js";
23
+ import { type ScanDetection, SecretScanner } from "../secret-scanner.js";
24
+ export interface ScanSecretsRetroactiveOptions {
25
+ /** Max rows to scan in this run. Omit (or pass null/0) for "everything". */
26
+ limit?: number | null;
27
+ /** Preview redactions without writing. */
28
+ dryRun?: boolean;
29
+ /** Custom scanner. Defaults to a fresh `SecretScanner` with built-in rules. */
30
+ scanner?: SecretScanner;
31
+ /**
32
+ * Per-row content length above which we skip and count rather than spend
33
+ * scanner CPU on a single huge body. Default 1 MiB. Note: this is a CPU
34
+ * cap, not a memory cap — the row's columns are already loaded into Node
35
+ * before this check.
36
+ */
37
+ maxRowBytes?: number;
38
+ }
39
+ /**
40
+ * Per-row summary of what got redacted. The redacted title is safe to display
41
+ * (markers, not the original value) and lets a caller manually look the
42
+ * memory up in the DB to confirm a hit was a real secret vs. a false positive
43
+ * before committing to a non-dry-run sweep.
44
+ */
45
+ export interface ScanSecretsRetroactiveSample {
46
+ id: number;
47
+ redactedTitle: string | null;
48
+ detections: ScanDetection[];
49
+ }
50
+ export interface ScanSecretsRetroactiveResult {
51
+ checked: number;
52
+ updated: number;
53
+ skippedOversized: number;
54
+ staleWrites: number;
55
+ detections: ScanDetection[];
56
+ samples: ScanSecretsRetroactiveSample[];
57
+ }
58
+ export declare function scanSecretsRetroactive(db: Database, opts?: ScanSecretsRetroactiveOptions): ScanSecretsRetroactiveResult;
59
+ //# sourceMappingURL=scan-secrets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-secrets.d.ts","sourceRoot":"","sources":["../../src/maintenance/scan-secrets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAmB,KAAK,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1F,MAAM,WAAW,6BAA6B;IAC7C,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,OAAO,EAAE,4BAA4B,EAAE,CAAC;CACxC;AA2JD,wBAAgB,sBAAsB,CACrC,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE,6BAAkC,GACtC,4BAA4B,CAkM9B"}
@@ -18,4 +18,6 @@ export { applyMemoryDedupKeyUpdates, backfillMemoryDedupKeys, planMemoryDedupKey
18
18
  export { extractNarrativeFromBody } from "./maintenance/narrative-extract.js";
19
19
  export type { AIBackfillStructuredContentOptions, AIBackfillStructuredContentResult, } from "./maintenance/ai-structured.js";
20
20
  export { aiBackfillStructuredContent } from "./maintenance/ai-structured.js";
21
+ export type { ScanSecretsRetroactiveOptions, ScanSecretsRetroactiveResult, } from "./maintenance/scan-secrets.js";
22
+ export { scanSecretsRetroactive } from "./maintenance/scan-secrets.js";
21
23
  //# sourceMappingURL=maintenance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../src/maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EACN,wBAAwB,EACxB,mBAAmB,GACnB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACN,uBAAuB,EACvB,6BAA6B,EAC7B,qBAAqB,EACrB,uBAAuB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACnF,YAAY,EACX,UAAU,EACV,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,0BAA0B,EAC1B,iCAAiC,EACjC,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,wBAAwB,CAAC;AAMhC,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAMpF,YAAY,EACX,uBAAuB,EACvB,sBAAsB,GACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,YAAY,EACX,kCAAkC,EAClC,yBAAyB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,2BAA2B,EAC3B,+BAA+B,GAC/B,MAAM,6BAA6B,CAAC;AAMrC,YAAY,EACX,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAMpE,YAAY,EACX,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACX,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,0BAA0B,EAC1B,uBAAuB,EACvB,mBAAmB,GACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAM9E,YAAY,EACX,kCAAkC,EAClC,iCAAiC,GACjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../src/maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EACN,wBAAwB,EACxB,mBAAmB,GACnB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACN,uBAAuB,EACvB,6BAA6B,EAC7B,qBAAqB,EACrB,uBAAuB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACnF,YAAY,EACX,UAAU,EACV,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,0BAA0B,EAC1B,iCAAiC,EACjC,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,wBAAwB,CAAC;AAMhC,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAMpF,YAAY,EACX,uBAAuB,EACvB,sBAAsB,GACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,YAAY,EACX,kCAAkC,EAClC,yBAAyB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,2BAA2B,EAC3B,+BAA+B,GAC/B,MAAM,6BAA6B,CAAC;AAMrC,YAAY,EACX,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAMpE,YAAY,EACX,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACX,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,0BAA0B,EAC1B,uBAAuB,EACvB,mBAAmB,GACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAM9E,YAAY,EACX,kCAAkC,EAClC,iCAAiC,GACjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,YAAY,EACX,6BAA6B,EAC7B,4BAA4B,GAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"observer-auth.d.ts","sourceRoot":"","sources":["../src/observer-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observer-auth.d.ts","sourceRoot":"","sources":["../src/observer-auth.ts"],"names":[],"mappings":"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"}
@@ -18,4 +18,5 @@ export declare function bootstrapSchema(db: Database): void;
18
18
  * already-initialized databases are left untouched.
19
19
  */
20
20
  export declare function ensureSchemaBootstrapped(db: Database): void;
21
+ export declare function canAutoBootstrapSchema(db: Database): boolean;
21
22
  //# sourceMappingURL=schema-bootstrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-bootstrap.d.ts","sourceRoot":"","sources":["../src/schema-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAmHxC;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAUrD;AAWD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAKlD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAI3D"}
1
+ {"version":3,"file":"schema-bootstrap.d.ts","sourceRoot":"","sources":["../src/schema-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAyHxC;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAUrD;AAWD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAYlD;AA2BD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAI3D;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAE5D"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Write-time secret scanner for the codemem store.
3
+ *
4
+ * Detects common secrets in memory write payloads (titles, bodies, narratives,
5
+ * structured fields, and free-form metadata) and replaces them with
6
+ * `[REDACTED:<kind>]` markers before persistence. There is no override flag:
7
+ * codemem has no legitimate use case for storing live secrets, so any escape
8
+ * hatch becomes the bypass that makes scanning theater.
9
+ *
10
+ * Scope of this foundation: the local-write chokepoint inside `MemoryStore.remember`.
11
+ * Other writers into `memory_items` (sync-replication apply, sync-bootstrap
12
+ * snapshot apply, AI/maintenance backfills of narrative/facts/concepts/tags)
13
+ * are NOT scanned by this module yet — they are addressed by dependent bd
14
+ * issues (codemem-hflk for sync-receive, codemem-tzrn for compaction/AI output,
15
+ * codemem-vb2s for retroactive sweep over already-stored content). Workspace-level
16
+ * rule overrides (codemem-ben8) and the test-fixture allowlist (codemem-jasn)
17
+ * plug in via `ScannerOptions` without changing this module's shape.
18
+ */
19
+ export interface SecretRule {
20
+ /** Stable identifier surfaced in the redaction marker and detection log. */
21
+ kind: string;
22
+ /** Regex used to find candidate matches. Must be a global regex. */
23
+ pattern: RegExp;
24
+ /**
25
+ * Optional minimum Shannon entropy (bits/char) the matched substring must
26
+ * meet to be redacted. Filters out low-entropy false positives like
27
+ * common words that happen to look like a secret.
28
+ */
29
+ minEntropy?: number;
30
+ /**
31
+ * If set, only the indicated capture group (1-based) is replaced. Useful
32
+ * for context-aware rules where the match includes a known prefix that
33
+ * should be preserved.
34
+ */
35
+ redactGroup?: number;
36
+ }
37
+ export interface ScanDetection {
38
+ kind: string;
39
+ count: number;
40
+ }
41
+ export interface ScanResult {
42
+ redacted: string;
43
+ detections: ScanDetection[];
44
+ }
45
+ export interface ScannerOptions {
46
+ /** Additional rules merged with `DEFAULT_RULES`. */
47
+ rules?: SecretRule[];
48
+ /**
49
+ * Strings or regexes that bypass redaction even when matched. NOTE: string
50
+ * entries match by exact equality against the matched substring; regex
51
+ * entries are tested with `RegExp.test()` (partial match by default; use
52
+ * anchors for exact match).
53
+ */
54
+ allowlist?: Array<string | RegExp>;
55
+ }
56
+ /**
57
+ * Built-in default rules. Conservative: prefer well-known prefixes and
58
+ * structural patterns over raw entropy to keep the false-positive rate low.
59
+ *
60
+ * Rule precedence is order-dependent. More-specific rules MUST come before
61
+ * more-general ones — see the OpenAI rule, which uses a negative lookahead to
62
+ * avoid swallowing Anthropic keys regardless of order.
63
+ */
64
+ export declare const DEFAULT_RULES: SecretRule[];
65
+ export declare class SecretScanner {
66
+ private readonly rules;
67
+ private readonly allowlist;
68
+ constructor(opts?: ScannerOptions);
69
+ /** Scan a single string. Returns the redacted form and per-kind detection counts. */
70
+ scan(text: string): ScanResult;
71
+ /**
72
+ * Recursively walk a value, scanning every string. String values whose
73
+ * containing key name matches a secret-bearing field are redacted whole if
74
+ * non-trivial. Non-plain objects (Date, Map, Set, RegExp, Buffer, typed
75
+ * arrays, class instances) are returned as-is to avoid silent corruption.
76
+ * Cycles are detected via a `seen` set so misbehaving callers cannot
77
+ * stack-overflow the scanner.
78
+ */
79
+ redactValue(value: unknown, parentKey?: string): {
80
+ value: unknown;
81
+ detections: ScanDetection[];
82
+ };
83
+ private redactValueInternal;
84
+ private looksLikeSecretValue;
85
+ }
86
+ /**
87
+ * Build `ScannerOptions` from a parsed codemem config object's
88
+ * `secret_scanner` block. Workspace-scoped rule overrides and an allowlist
89
+ * for known-safe matches are accepted under a single config key so a team
90
+ * can tighten or loosen the default policy without forking codemem.
91
+ *
92
+ * Expected shape (all keys optional):
93
+ * ```jsonc
94
+ * {
95
+ * "secret_scanner": {
96
+ * "rules": [
97
+ * { "kind": "internal_token", "pattern": "\\bACME-[A-Z0-9]{10}\\b", "flags": "g", "minEntropy": 3.0 }
98
+ * ],
99
+ * "allowlist": [
100
+ * "AKIAFAKEFIXTURE0001", // string entries match by exact equality
101
+ * "/^test-fixture-.*$/i" // strings of the form /pattern/flags become regexes
102
+ * ]
103
+ * }
104
+ * }
105
+ * ```
106
+ *
107
+ * Malformed entries are silently dropped — config errors should never block
108
+ * a workspace from opening.
109
+ */
110
+ export declare function loadScannerOptionsFromConfig(config: Record<string, unknown> | null | undefined): ScannerOptions;
111
+ /** Merge multiple detection lists into a single per-kind summary. */
112
+ export declare function mergeDetections(...lists: ScanDetection[][]): ScanDetection[];
113
+ /**
114
+ * Shape of a parsed inbound memory payload (sync-replication or sync-bootstrap).
115
+ * Any field that is `undefined` is left untouched. The struct is mutated in
116
+ * place by `redactMemoryFields` so callers can redact-then-insert without
117
+ * cloning.
118
+ */
119
+ export interface MemoryFieldRedactionTarget {
120
+ title?: string | null;
121
+ subtitle?: string | null;
122
+ body_text?: string | null;
123
+ tags_text?: string | null;
124
+ narrative?: string | null;
125
+ facts?: unknown;
126
+ concepts?: unknown;
127
+ files_read?: unknown;
128
+ files_modified?: unknown;
129
+ metadata_json?: unknown;
130
+ /**
131
+ * Peer-controlled identity strings persisted alongside content. They show
132
+ * up in the viewer and exports verbatim, so a malicious peer could smuggle
133
+ * a secret in a display name. Scanned for the same well-known patterns as
134
+ * everything else; not subject to context_secret heuristics since they
135
+ * legitimately contain free-form text.
136
+ */
137
+ actor_display_name?: string | null;
138
+ origin_source?: string | null;
139
+ }
140
+ /**
141
+ * Redact secrets from a parsed inbound memory payload before persistence.
142
+ * Used by sync-receive (sync-replication.ts) and bootstrap-snapshot apply
143
+ * (sync-bootstrap.ts) so peer-shipped content goes through the same scanner
144
+ * as locally-authored writes. Mutates the target in place; returns the merged
145
+ * detection summary across all scanned fields.
146
+ */
147
+ export declare function redactMemoryFields<T extends MemoryFieldRedactionTarget>(target: T, scanner: SecretScanner): {
148
+ target: T;
149
+ detections: ScanDetection[];
150
+ };
151
+ //# sourceMappingURL=secret-scanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret-scanner.d.ts","sourceRoot":"","sources":["../src/secret-scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,UAAU;IAC1B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC9B,oDAAoD;IACpD,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CACnC;AAMD;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,EAsDrC,CAAC;AA+CF,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEvC,IAAI,GAAE,cAAmB;IAKrC,qFAAqF;IACrF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;IA0B9B;;;;;;;OAOG;IACH,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,aAAa,EAAE,CAAA;KAAE;IAIhG,OAAO,CAAC,mBAAmB;IAoD3B,OAAO,CAAC,oBAAoB;CAU5B;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAChD,cAAc,CAoDhB;AAqBD,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,EAAE,EAAE,GAAG,aAAa,EAAE,CAM5E;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,0BAA0B,EACtE,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,aAAa,GACpB;IAAE,MAAM,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,aAAa,EAAE,CAAA;CAAE,CAyD5C"}
package/dist/store.d.ts CHANGED
@@ -11,6 +11,7 @@
11
11
  import type { Database } from "./db.js";
12
12
  import type { RefQueryOptions, RefQueryResult } from "./ref-queries.js";
13
13
  import { type ExplainOptions } from "./search.js";
14
+ import { SecretScanner } from "./secret-scanner.js";
14
15
  import type { ExplainResponse, MemoryFilters, MemoryItem, MemoryItemResponse, MemoryResult, PackRenderOptions, PackResponse, PackTrace, StoreStats, TimelineItemResponse } from "./types.js";
15
16
  export declare class MemoryStore {
16
17
  readonly db: Database;
@@ -19,6 +20,13 @@ export declare class MemoryStore {
19
20
  readonly actorId: string;
20
21
  readonly actorDisplayName: string;
21
22
  readonly crossSessionDedupWindowMs: number;
23
+ /**
24
+ * Per-store secret scanner. Lives on the instance (not as a module global)
25
+ * so workspace-level rule overrides and allowlists can be wired without
26
+ * coupling between stores in the same process. Mutable so tests and
27
+ * follow-on issues (codemem-ben8, codemem-jasn) can swap it.
28
+ */
29
+ scanner: SecretScanner;
22
30
  private readonly pendingVectorWrites;
23
31
  /** Lazy Drizzle ORM wrapper — shares the same better-sqlite3 connection. */
24
32
  private _drizzle;
@@ -79,6 +87,13 @@ export declare class MemoryStore {
79
87
  * _resolve_memory_provenance logic.
80
88
  */
81
89
  remember(sessionId: number, kind: string, title: string, bodyText: string, confidence?: number, tags?: string[], metadata?: Record<string, unknown>): number;
90
+ /**
91
+ * Log secret-redaction events for observability. Records the kind and
92
+ * count only — never the matched value. Gated on CODEMEM_DEBUG so normal
93
+ * use stays quiet, but the call site always runs so test coverage and
94
+ * future structured-logging hooks have a single chokepoint to grow into.
95
+ */
96
+ private logSecretRedactions;
82
97
  /**
83
98
  * Resolve provenance fields for a new memory, matching Python's
84
99
  * _resolve_memory_provenance. Uses metadata overrides when present,
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@
10
10
  * update replication cursor to baseline_cursor, bump generation
11
11
  */
12
12
  import type { Database } from "./db.js";
13
+ import { SecretScanner } from "./secret-scanner.js";
13
14
  import type { SyncMemorySnapshotItem, SyncResetRequired } from "./types.js";
14
15
  export interface BootstrapResult {
15
16
  ok: boolean;
@@ -47,5 +48,5 @@ export declare function fetchAllSnapshotPages(baseUrl: string, resetInfo: SyncRe
47
48
  * 3. Update the replication cursor to baseline_cursor
48
49
  * 4. Bump the local generation + snapshot_id to match the peer
49
50
  */
50
- export declare function applyBootstrapSnapshot(db: Database, peerDeviceId: string, items: SyncMemorySnapshotItem[], resetInfo: SyncResetRequired): BootstrapResult;
51
+ export declare function applyBootstrapSnapshot(db: Database, peerDeviceId: string, items: SyncMemorySnapshotItem[], resetInfo: SyncResetRequired, scanner?: SecretScanner): BootstrapResult;
51
52
  //# sourceMappingURL=sync-bootstrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync-bootstrap.d.ts","sourceRoot":"","sources":["../src/sync-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAMxC,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAO5E,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAgBD;;;GAGG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC;IACV,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC,CAsED;AAkED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACrC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,sBAAsB,EAAE,EAC/B,SAAS,EAAE,iBAAiB,GAC1B,eAAe,CAmHjB"}
1
+ {"version":3,"file":"sync-bootstrap.d.ts","sourceRoot":"","sources":["../src/sync-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,OAAO,EAAsB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAO5E,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAgBD;;;GAGG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC;IACV,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC,CAsED;AAkED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACrC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,sBAAsB,EAAE,EAC/B,SAAS,EAAE,iBAAiB,EAC5B,OAAO,CAAC,EAAE,aAAa,GACrB,eAAe,CAyHjB"}
@@ -6,6 +6,7 @@
6
6
  * to the viewer-server Hono routes.
7
7
  */
8
8
  import type { Database } from "./db.js";
9
+ import type { SecretScanner } from "./secret-scanner.js";
9
10
  export interface SyncDaemonOptions {
10
11
  host?: string;
11
12
  port?: number;
@@ -49,7 +50,7 @@ export declare function refreshCoordinatorPresenceForDaemon(db: Database, dbPath
49
50
  * Returns per-peer results. Peers in backoff or with expired coordinator
50
51
  * presence are skipped.
51
52
  */
52
- export declare function syncDaemonTick(db: Database, keysDir?: string, stalePeers?: Set<string>): Promise<SyncTickResult[]>;
53
+ export declare function syncDaemonTick(db: Database, keysDir?: string, stalePeers?: Set<string>, scanner?: SecretScanner): Promise<SyncTickResult[]>;
53
54
  /**
54
55
  * Run the sync daemon loop.
55
56
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sync-daemon.d.ts","sourceRoot":"","sources":["../src/sync-daemon.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAWxC,MAAM,WAAW,iBAAiB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,KAAK,IAAI,CAAC;CACrE;AAED,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAUlD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAmBxF;AAED,gEAAgE;AAChE,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,IAAI,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,CAUhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,GAAG,IAAI,CAS7E;AAED,wBAAsB,mCAAmC,CACxD,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAKlB;AAMD;;;;;GAKG;AACH,wBAAsB,cAAc,CACnC,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,OAAO,CAAC,cAAc,EAAE,CAAC,CA6C3B;AAMD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgE9E;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BjF"}
1
+ {"version":3,"file":"sync-daemon.d.ts","sourceRoot":"","sources":["../src/sync-daemon.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASzD,MAAM,WAAW,iBAAiB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,KAAK,IAAI,CAAC;CACrE;AAED,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAUlD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAmBxF;AAED,gEAAgE;AAChE,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,IAAI,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,CAUhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,GAAG,IAAI,CAS7E;AAED,wBAAsB,mCAAmC,CACxD,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAKlB;AAMD;;;;;GAKG;AACH,wBAAsB,cAAc,CACnC,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACxB,OAAO,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,EAAE,CAAC,CAiD3B;AAMD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgE9E;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BjF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync-identity.d.ts","sourceRoot":"","sources":["../src/sync-identity.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAKxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAmD7D,uEAAuE;AACvE,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAqCrF;AAED,4EAA4E;AAC5E,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA4BtE;AAMD,iDAAiD;AACjD,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGlE;AAMD,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK7D;AAED,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW/E;AAqCD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAoC7E;AAyCD,uDAAuD;AACvD,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAkBxF;AAMD,MAAM,WAAW,2BAA2B;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CACnC,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE,2BAA2B,GACnC,CAAC,MAAM,EAAE,MAAM,CAAC,CA2ElB"}
1
+ {"version":3,"file":"sync-identity.d.ts","sourceRoot":"","sources":["../src/sync-identity.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAMxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAsD7D,uEAAuE;AACvE,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAqCrF;AAED,4EAA4E;AAC5E,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA4BtE;AAMD,iDAAiD;AACjD,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGlE;AAMD,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK7D;AAED,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW/E;AAqCD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAoC7E;AAyCD,uDAAuD;AACvD,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAkBxF;AAMD,MAAM,WAAW,2BAA2B;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CACnC,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE,2BAA2B,GACnC,CAAC,MAAM,EAAE,MAAM,CAAC,CA2ElB"}
@@ -6,6 +6,7 @@
6
6
  * Ported from codemem/sync/sync_pass.py.
7
7
  */
8
8
  import type { Database } from "./db.js";
9
+ import type { SecretScanner } from "./secret-scanner.js";
9
10
  import type { SyncResetRequired } from "./types.js";
10
11
  export interface SyncResult {
11
12
  ok: boolean;
@@ -22,6 +23,13 @@ export interface SyncResult {
22
23
  export interface SyncPassOptions {
23
24
  limit?: number;
24
25
  keysDir?: string;
26
+ /**
27
+ * Secret scanner used to redact peer-shipped content on apply. Callers that
28
+ * own a `MemoryStore` should pass `store.scanner` so workspace-level rule
29
+ * overrides apply uniformly to local writes and sync-receive. Omitting it
30
+ * falls back to default rules only and prints a one-time warning.
31
+ */
32
+ scanner?: SecretScanner;
25
33
  }
26
34
  /**
27
35
  * Check if a cursor candidate advances beyond the current position.
@@ -1 +1 @@
1
- {"version":3,"file":"sync-pass.d.ts","sourceRoot":"","sources":["../src/sync-pass.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAmBxC,OAAO,KAAK,EAAiB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA8BnE,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,aAAa,CAAC,EAAE,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKxF;AA2JD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErE;AA4DD,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAGpD;AAMD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC7B,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,UAAU,CAAC,CA+VrB;AAMD;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAuBD,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAIjE;AAED,sEAAsE;AACtE,wBAAgB,+BAA+B,CAC9C,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,SAAK,GACR,MAAM,CAoBR;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAwBjF"}
1
+ {"version":3,"file":"sync-pass.d.ts","sourceRoot":"","sources":["../src/sync-pass.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAkBzD,OAAO,KAAK,EAAiB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAqCnE,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,aAAa,CAAC,EAAE,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKxF;AA2JD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErE;AA4DD,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAGpD;AAMD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC7B,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,UAAU,CAAC,CAkXrB;AAMD;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAuBD,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAIjE;AAED,sEAAsE;AACtE,wBAAgB,+BAA+B,CAC9C,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,SAAK,GACR,MAAM,CAoBR;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAwBjF"}
@@ -8,6 +8,7 @@
8
8
  * a raw Database handle. Ported from codemem/sync/replication.py.
9
9
  */
10
10
  import type { Database } from "./db.js";
11
+ import { SecretScanner } from "./secret-scanner.js";
11
12
  import type { ReplicationOp, ReplicationOpsAgePrunePlan, ReplicationOpsPruneResult, SyncDirtyLocalState, SyncMemorySnapshotItem } from "./types.js";
12
13
  export interface SyncResetBoundary {
13
14
  generation: number;
@@ -216,5 +217,5 @@ export declare function backfillReplicationOps(db: Database, limit?: number): nu
216
217
  * - For delete: soft-deletes (active=0, deleted_at) by import_key
217
218
  * - Records the applied op in replication_ops
218
219
  */
219
- export declare function applyReplicationOps(db: Database, ops: ReplicationOp[], localDeviceId: string): ApplyResult;
220
+ export declare function applyReplicationOps(db: Database, ops: ReplicationOp[], localDeviceId: string, scanner?: SecretScanner): ApplyResult;
220
221
  //# sourceMappingURL=sync-replication.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync-replication.d.ts","sourceRoot":"","sources":["../src/sync-replication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-replication.d.ts","sourceRoot":"","sources":["../src/sync-replication.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codemem/core",
3
- "version": "0.29.0",
3
+ "version": "0.29.2",
4
4
  "type": "module",
5
5
  "types": "./dist/index.d.ts",
6
6
  "exports": {