ghagga-core 2.9.0 → 3.0.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 (206) hide show
  1. package/LICENSE +21 -0
  2. package/dist/acp/adapter.d.ts.map +1 -1
  3. package/dist/acp/adapter.js +1 -1
  4. package/dist/acp/adapter.js.map +1 -1
  5. package/dist/acp/index.d.ts +1 -1
  6. package/dist/acp/index.d.ts.map +1 -1
  7. package/dist/acp/index.js.map +1 -1
  8. package/dist/acp/types.d.ts.map +1 -1
  9. package/dist/agents/consensus.d.ts.map +1 -1
  10. package/dist/agents/consensus.js +7 -2
  11. package/dist/agents/consensus.js.map +1 -1
  12. package/dist/agents/diagnostic.d.ts.map +1 -1
  13. package/dist/agents/diagnostic.js +7 -2
  14. package/dist/agents/diagnostic.js.map +1 -1
  15. package/dist/agents/fan-out-lenses.d.ts.map +1 -1
  16. package/dist/agents/fan-out-lenses.js +7 -2
  17. package/dist/agents/fan-out-lenses.js.map +1 -1
  18. package/dist/agents/prompts.d.ts +49 -1
  19. package/dist/agents/prompts.d.ts.map +1 -1
  20. package/dist/agents/prompts.js +133 -5
  21. package/dist/agents/prompts.js.map +1 -1
  22. package/dist/agents/simple.d.ts +1 -1
  23. package/dist/agents/simple.d.ts.map +1 -1
  24. package/dist/agents/simple.js +6 -4
  25. package/dist/agents/simple.js.map +1 -1
  26. package/dist/agents/workflow.d.ts.map +1 -1
  27. package/dist/agents/workflow.js +13 -4
  28. package/dist/agents/workflow.js.map +1 -1
  29. package/dist/critique/critique.d.ts.map +1 -1
  30. package/dist/critique/critique.js +14 -6
  31. package/dist/critique/critique.js.map +1 -1
  32. package/dist/critique/cross-model.d.ts.map +1 -1
  33. package/dist/critique/cross-model.js +1 -3
  34. package/dist/critique/cross-model.js.map +1 -1
  35. package/dist/critique/index.d.ts +1 -2
  36. package/dist/critique/index.d.ts.map +1 -1
  37. package/dist/critique/index.js +1 -2
  38. package/dist/critique/index.js.map +1 -1
  39. package/dist/diff/index.d.ts +12 -0
  40. package/dist/diff/index.d.ts.map +1 -0
  41. package/dist/diff/index.js +11 -0
  42. package/dist/diff/index.js.map +1 -0
  43. package/dist/diff/parse.d.ts +41 -0
  44. package/dist/diff/parse.d.ts.map +1 -0
  45. package/dist/diff/parse.js +303 -0
  46. package/dist/diff/parse.js.map +1 -0
  47. package/dist/diff/types.d.ts +106 -0
  48. package/dist/diff/types.d.ts.map +1 -0
  49. package/dist/diff/types.js +23 -0
  50. package/dist/diff/types.js.map +1 -0
  51. package/dist/embed.d.ts +5 -2
  52. package/dist/embed.d.ts.map +1 -1
  53. package/dist/embed.js +7 -3
  54. package/dist/embed.js.map +1 -1
  55. package/dist/enhance/prompt.d.ts +5 -1
  56. package/dist/enhance/prompt.d.ts.map +1 -1
  57. package/dist/enhance/prompt.js +9 -2
  58. package/dist/enhance/prompt.js.map +1 -1
  59. package/dist/format.d.ts +31 -0
  60. package/dist/format.d.ts.map +1 -1
  61. package/dist/format.js +256 -15
  62. package/dist/format.js.map +1 -1
  63. package/dist/index.d.ts +6 -7
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +4 -8
  66. package/dist/index.js.map +1 -1
  67. package/dist/memory/pageindex/chunker.d.ts +1 -1
  68. package/dist/memory/pageindex/chunker.d.ts.map +1 -1
  69. package/dist/memory/pageindex/chunker.js +5 -5
  70. package/dist/memory/pageindex/chunker.js.map +1 -1
  71. package/dist/memory/pageindex/example.d.ts +1 -1
  72. package/dist/memory/pageindex/example.d.ts.map +1 -1
  73. package/dist/memory/pageindex/example.js +1 -2
  74. package/dist/memory/pageindex/example.js.map +1 -1
  75. package/dist/memory/pageindex/index.d.ts +3 -3
  76. package/dist/memory/pageindex/index.d.ts.map +1 -1
  77. package/dist/memory/pageindex/index.js +1 -1
  78. package/dist/memory/pageindex/index.js.map +1 -1
  79. package/dist/memory/pageindex/service.d.ts +11 -2
  80. package/dist/memory/pageindex/service.d.ts.map +1 -1
  81. package/dist/memory/pageindex/service.js +12 -11
  82. package/dist/memory/pageindex/service.js.map +1 -1
  83. package/dist/memory/persist.d.ts.map +1 -1
  84. package/dist/memory/persist.js +10 -3
  85. package/dist/memory/persist.js.map +1 -1
  86. package/dist/memory/privacy.d.ts.map +1 -1
  87. package/dist/memory/privacy.js +45 -6
  88. package/dist/memory/privacy.js.map +1 -1
  89. package/dist/memory/sqlite.d.ts +1 -13
  90. package/dist/memory/sqlite.d.ts.map +1 -1
  91. package/dist/memory/sqlite.js +45 -27
  92. package/dist/memory/sqlite.js.map +1 -1
  93. package/dist/memory/taxonomy.d.ts.map +1 -1
  94. package/dist/memory/taxonomy.js +6 -1
  95. package/dist/memory/taxonomy.js.map +1 -1
  96. package/dist/pipeline/degrade.d.ts +61 -0
  97. package/dist/pipeline/degrade.d.ts.map +1 -0
  98. package/dist/pipeline/degrade.js +58 -0
  99. package/dist/pipeline/degrade.js.map +1 -0
  100. package/dist/pipeline/enrich.d.ts +29 -0
  101. package/dist/pipeline/enrich.d.ts.map +1 -0
  102. package/dist/pipeline/enrich.js +271 -0
  103. package/dist/pipeline/enrich.js.map +1 -0
  104. package/dist/pipeline/execute.d.ts +22 -0
  105. package/dist/pipeline/execute.d.ts.map +1 -0
  106. package/dist/pipeline/execute.js +250 -0
  107. package/dist/pipeline/execute.js.map +1 -0
  108. package/dist/pipeline/finalize.d.ts +26 -0
  109. package/dist/pipeline/finalize.d.ts.map +1 -0
  110. package/dist/pipeline/finalize.js +52 -0
  111. package/dist/pipeline/finalize.js.map +1 -0
  112. package/dist/pipeline/gather-context.d.ts +25 -0
  113. package/dist/pipeline/gather-context.d.ts.map +1 -0
  114. package/dist/pipeline/gather-context.js +169 -0
  115. package/dist/pipeline/gather-context.js.map +1 -0
  116. package/dist/pipeline/gather-safe.d.ts +39 -0
  117. package/dist/pipeline/gather-safe.d.ts.map +1 -0
  118. package/dist/pipeline/gather-safe.js +127 -0
  119. package/dist/pipeline/gather-safe.js.map +1 -0
  120. package/dist/pipeline/prepare-graph.d.ts +54 -0
  121. package/dist/pipeline/prepare-graph.d.ts.map +1 -0
  122. package/dist/pipeline/prepare-graph.js +174 -0
  123. package/dist/pipeline/prepare-graph.js.map +1 -0
  124. package/dist/pipeline/prepare.d.ts +40 -0
  125. package/dist/pipeline/prepare.d.ts.map +1 -0
  126. package/dist/pipeline/prepare.js +233 -0
  127. package/dist/pipeline/prepare.js.map +1 -0
  128. package/dist/pipeline/providers.d.ts +54 -0
  129. package/dist/pipeline/providers.d.ts.map +1 -0
  130. package/dist/pipeline/providers.js +163 -0
  131. package/dist/pipeline/providers.js.map +1 -0
  132. package/dist/pipeline/results.d.ts +35 -0
  133. package/dist/pipeline/results.d.ts.map +1 -0
  134. package/dist/pipeline/results.js +122 -0
  135. package/dist/pipeline/results.js.map +1 -0
  136. package/dist/pipeline/state.d.ts +92 -0
  137. package/dist/pipeline/state.d.ts.map +1 -0
  138. package/dist/pipeline/state.js +13 -0
  139. package/dist/pipeline/state.js.map +1 -0
  140. package/dist/pipeline.d.ts +10 -9
  141. package/dist/pipeline.d.ts.map +1 -1
  142. package/dist/pipeline.js +36 -1213
  143. package/dist/pipeline.js.map +1 -1
  144. package/dist/providers/gateway.d.ts.map +1 -1
  145. package/dist/providers/gateway.js +8 -0
  146. package/dist/providers/gateway.js.map +1 -1
  147. package/dist/recursive/index.d.ts +1 -0
  148. package/dist/recursive/index.d.ts.map +1 -1
  149. package/dist/recursive/index.js +7 -3
  150. package/dist/recursive/index.js.map +1 -1
  151. package/dist/recursive/patch-extractor.d.ts +58 -6
  152. package/dist/recursive/patch-extractor.d.ts.map +1 -1
  153. package/dist/recursive/patch-extractor.js +207 -26
  154. package/dist/recursive/patch-extractor.js.map +1 -1
  155. package/dist/sanitize.d.ts +51 -0
  156. package/dist/sanitize.d.ts.map +1 -0
  157. package/dist/sanitize.js +90 -0
  158. package/dist/sanitize.js.map +1 -0
  159. package/dist/scope/diff-mapper.d.ts +12 -0
  160. package/dist/scope/diff-mapper.d.ts.map +1 -1
  161. package/dist/scope/diff-mapper.js +25 -18
  162. package/dist/scope/diff-mapper.js.map +1 -1
  163. package/dist/scope/entity-diff.d.ts +21 -4
  164. package/dist/scope/entity-diff.d.ts.map +1 -1
  165. package/dist/scope/entity-diff.js +132 -34
  166. package/dist/scope/entity-diff.js.map +1 -1
  167. package/dist/scope/types.d.ts +10 -0
  168. package/dist/scope/types.d.ts.map +1 -1
  169. package/dist/search/index.d.ts +1 -1
  170. package/dist/search/index.d.ts.map +1 -1
  171. package/dist/search/index.js.map +1 -1
  172. package/dist/search/indexer.d.ts.map +1 -1
  173. package/dist/search/indexer.js +33 -4
  174. package/dist/search/indexer.js.map +1 -1
  175. package/dist/search/searcher.d.ts.map +1 -1
  176. package/dist/search/searcher.js.map +1 -1
  177. package/dist/semantic-diff/index.d.ts +25 -2
  178. package/dist/semantic-diff/index.d.ts.map +1 -1
  179. package/dist/semantic-diff/index.js +147 -53
  180. package/dist/semantic-diff/index.js.map +1 -1
  181. package/dist/tools/gitleaks-config.toml +35 -0
  182. package/dist/tools/plugins/gitleaks.d.ts +10 -0
  183. package/dist/tools/plugins/gitleaks.d.ts.map +1 -1
  184. package/dist/tools/plugins/gitleaks.js +29 -2
  185. package/dist/tools/plugins/gitleaks.js.map +1 -1
  186. package/dist/tools/plugins/semgrep.d.ts +11 -0
  187. package/dist/tools/plugins/semgrep.d.ts.map +1 -1
  188. package/dist/tools/plugins/semgrep.js +30 -1
  189. package/dist/tools/plugins/semgrep.js.map +1 -1
  190. package/dist/tools/semgrep-rules.yml +305 -0
  191. package/dist/types.d.ts +51 -1
  192. package/dist/types.d.ts.map +1 -1
  193. package/dist/types.js.map +1 -1
  194. package/dist/utils/diff.d.ts +22 -2
  195. package/dist/utils/diff.d.ts.map +1 -1
  196. package/dist/utils/diff.js +36 -40
  197. package/dist/utils/diff.js.map +1 -1
  198. package/package.json +21 -22
  199. package/dist/providers/fallback.d.ts +0 -54
  200. package/dist/providers/fallback.d.ts.map +0 -1
  201. package/dist/providers/fallback.js +0 -102
  202. package/dist/providers/fallback.js.map +0 -1
  203. package/dist/providers/index.d.ts +0 -49
  204. package/dist/providers/index.d.ts.map +0 -1
  205. package/dist/providers/index.js +0 -146
  206. package/dist/providers/index.js.map +0 -1
@@ -19,14 +19,14 @@ export function extractTopics(content) {
19
19
  // Headers (### Topic)
20
20
  const headers = content.match(/^#{1,3}\s+(.+)$/gm);
21
21
  if (headers) {
22
- headers.slice(0, 5).forEach(h => {
22
+ headers.slice(0, 5).forEach((h) => {
23
23
  topics.push(h.replace(/^#+\s+/, '').slice(0, 50));
24
24
  });
25
25
  }
26
26
  // Bold text (**topic**)
27
27
  const bold = content.match(/\*\*(.+?)\*\*/g);
28
28
  if (bold && topics.length < 10) {
29
- bold.slice(0, 3).forEach(b => {
29
+ bold.slice(0, 3).forEach((b) => {
30
30
  const topic = b.replace(/\*\*/g, '').slice(0, 50);
31
31
  if (!topics.includes(topic))
32
32
  topics.push(topic);
@@ -40,9 +40,9 @@ export function extractTopics(content) {
40
40
  export function extractFileRefs(content) {
41
41
  const refs = [];
42
42
  // File paths (src/... or **/*.ts)
43
- const paths = content.match(/(?:src\/|apps\/|packages\/)[\w\/\-]+\.\w+/g);
43
+ const paths = content.match(/(?:src\/|apps\/|packages\/)[\w/-]+\.\w+/g);
44
44
  if (paths) {
45
- paths.slice(0, 10).forEach(p => {
45
+ paths.slice(0, 10).forEach((p) => {
46
46
  if (!refs.includes(p))
47
47
  refs.push(p);
48
48
  });
@@ -50,7 +50,7 @@ export function extractFileRefs(content) {
50
50
  // Glob patterns
51
51
  const globs = content.match(/\*\*\/\*\.\w+/g);
52
52
  if (globs) {
53
- globs.slice(0, 5).forEach(g => {
53
+ globs.slice(0, 5).forEach((g) => {
54
54
  if (!refs.includes(g))
55
55
  refs.push(g);
56
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"chunker.js","sourceRoot":"","sources":["../../../src/memory/pageindex/chunker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunker.js","sourceRoot":"","sources":["../../../src/memory/pageindex/chunker.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Demonstrates how to use ProjectPageIndexService in review workflows.
5
5
  */
6
- import { ProjectPageIndexService } from './index.js';
6
+ import { type ProjectPageIndexService } from './index.js';
7
7
  export declare function exampleReviewWorkflow(pageIndex: ProjectPageIndexService, projectId: string, pr: {
8
8
  title: string;
9
9
  description: string;
@@ -1 +1 @@
1
- {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/example.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAiB,MAAM,YAAY,CAAC;AAGpE,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,EAC3D,cAAc,GAAE,MAAa;;;;;GAmE9B;AAGD,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM;;;GAUtB;AAGD,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,UA2BnB"}
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/example.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAiB,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAGzE,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,EAC3D,cAAc,GAAE,MAAa;;;;;GAqE9B;AAGD,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM;;;GAUtB;AAGD,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,uBAAuB,EAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,UA+BnB"}
@@ -5,8 +5,7 @@
5
5
  */
6
6
  import { PageDirection } from './index.js';
7
7
  // Example: Using PageIndex in a review workflow
8
- export async function exampleReviewWorkflow(pageIndex, projectId, pr, modelMaxTokens = 4096 // Small model like llama-3.2-3b
9
- ) {
8
+ export async function exampleReviewWorkflow(pageIndex, projectId, pr, modelMaxTokens = 4096) {
10
9
  // Step 1: Check if we need pagination
11
10
  const compactionCheck = pageIndex.checkCompaction(projectId, modelMaxTokens);
12
11
  if (compactionCheck.shouldCompact) {
@@ -1 +1 @@
1
- {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../src/memory/pageindex/example.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../src/memory/pageindex/example.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,13 @@
3
3
  *
4
4
  * Exports all PageIndex components for navigable project memory.
5
5
  */
6
- export * from './types.js';
7
6
  export * from './chunker.js';
8
7
  export * from './service.js';
9
- import { ProjectPageIndexService } from './service.js';
8
+ export * from './types.js';
9
+ import { type DatabaseWithParams, ProjectPageIndexService } from './service.js';
10
10
  export { ProjectPageIndexService };
11
11
  /**
12
12
  * Quick factory function
13
13
  */
14
- export declare function createProjectPageIndex(db: any): ProjectPageIndexService;
14
+ export declare function createProjectPageIndex(db: DatabaseWithParams): ProjectPageIndexService;
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,GAAG,2BAE7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,OAAO,EAAE,KAAK,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,kBAAkB,2BAE5D"}
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Exports all PageIndex components for navigable project memory.
5
5
  */
6
- export * from './types.js';
7
6
  export * from './chunker.js';
8
7
  export * from './service.js';
8
+ export * from './types.js';
9
9
  import { ProjectPageIndexService } from './service.js';
10
10
  export { ProjectPageIndexService };
11
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/memory/pageindex/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAO;IAC5C,OAAO,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/memory/pageindex/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,OAAO,EAA2B,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAsB;IAC3D,OAAO,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC"}
@@ -4,10 +4,19 @@
4
4
  * Manages paginated project memory using GHAGGA's sql.js database.
5
5
  */
6
6
  import type { Database } from 'fts5-sql-bundle';
7
- import type { ProjectPageChunk, PageContextRequest, PageContextResponse, PageNavigationRequest, CompactionCheck, RelevantPageRequest } from './types.js';
7
+ import type { CompactionCheck, PageContextRequest, PageContextResponse, PageNavigationRequest, ProjectPageChunk, RelevantPageRequest } from './types.js';
8
+ /**
9
+ * Extended Database interface matching GHAGGA's sqlite.ts
10
+ */
11
+ export interface DatabaseWithParams extends Database {
12
+ exec(sql: string, params?: (string | number | Buffer | null)[]): Array<{
13
+ columns: string[];
14
+ values: unknown[][];
15
+ }>;
16
+ }
8
17
  export declare class ProjectPageIndexService {
9
18
  private db;
10
- constructor(db: Database);
19
+ constructor(db: DatabaseWithParams);
11
20
  private initSchema;
12
21
  /**
13
22
  * Create page index for project memory
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAcpB,qBAAa,uBAAuB;IAClC,OAAO,CAAC,EAAE,CAAqB;gBAEnB,EAAE,EAAE,QAAQ;IAKxB,OAAO,CAAC,UAAU;IA4BlB;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAwDrG;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAapE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,mBAAmB;IAiC5D;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,GAAG,IAAI;IAkBjE;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,gBAAgB,EAAE;IA4CnE;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,eAAe;IAO3E;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAoBrE;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOxC,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,gBAAgB;CAMzB"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/memory/pageindex/service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,QAAQ;IAClD,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,GAC3C,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAA;KAAE,CAAC,CAAC;CACtD;AAID,qBAAa,uBAAuB;IAClC,OAAO,CAAC,EAAE,CAAqB;gBAEnB,EAAE,EAAE,kBAAkB;IAKlC,OAAO,CAAC,UAAU;IA4BlB;;OAEG;IACG,eAAe,CACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAwD7C;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAapE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,mBAAmB;IAiC5D;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,GAAG,IAAI;IAmBjE;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,gBAAgB,EAAE;IA4CnE;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,eAAe;IAO3E;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAoBrE;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIxC,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,gBAAgB;CAMzB"}
@@ -58,7 +58,7 @@ export class ProjectPageIndexService {
58
58
  `;
59
59
  const pageIds = [];
60
60
  for (const chunk of chunks) {
61
- const result = this.db.exec(insertSql, [
61
+ this.db.exec(insertSql, [
62
62
  chunk.projectId,
63
63
  chunk.pageNum,
64
64
  chunk.totalPages,
@@ -105,8 +105,8 @@ export class ProjectPageIndexService {
105
105
  WHERE project_id = ? AND page_num BETWEEN ? AND ?
106
106
  ORDER BY page_num`, [projectId, startPage, endPage]);
107
107
  const pages = result[0] ? this.rowsToPageChunks(result[0]) : [];
108
- const previousPages = pages.filter(p => p.pageNum < pageNum);
109
- const nextPages = pages.filter(p => p.pageNum > pageNum);
108
+ const previousPages = pages.filter((p) => p.pageNum < pageNum);
109
+ const nextPages = pages.filter((p) => p.pageNum > pageNum);
110
110
  const totalTokens = pages.reduce((sum, p) => sum + p.tokenCount, 0);
111
111
  return {
112
112
  currentPage: current,
@@ -128,9 +128,10 @@ export class ProjectPageIndexService {
128
128
  return this.getPage(projectId, currentPageNum - 1);
129
129
  case PageDirection.FIRST:
130
130
  return this.getPage(projectId, 1);
131
- case PageDirection.LAST:
131
+ case PageDirection.LAST: {
132
132
  const stats = this.getProjectStats(projectId);
133
133
  return stats.pages > 0 ? this.getPage(projectId, stats.pages) : null;
134
+ }
134
135
  default:
135
136
  return null;
136
137
  }
@@ -144,30 +145,30 @@ export class ProjectPageIndexService {
144
145
  const keywords = [
145
146
  ...prContext.title.toLowerCase().split(/\s+/),
146
147
  ...prContext.description.toLowerCase().split(/\s+/),
147
- ...prContext.files.map(f => f.toLowerCase()),
148
- ].filter(k => k.length > 2);
148
+ ...prContext.files.map((f) => f.toLowerCase()),
149
+ ].filter((k) => k.length > 2);
149
150
  // Get all pages for project
150
151
  const result = this.db.exec(`SELECT * FROM project_page_index WHERE project_id = ? ORDER BY page_num`, [projectId]);
151
152
  if (!result[0])
152
153
  return [];
153
154
  const pages = this.rowsToPageChunks(result[0]);
154
155
  // Score pages by keyword matches
155
- const scored = pages.map(page => {
156
- const content = (page.content + ' ' + page.topics.join(' ')).toLowerCase();
156
+ const scored = pages.map((page) => {
157
+ const content = `${page.content} ${page.topics.join(' ')}`.toLowerCase();
157
158
  const score = keywords.reduce((sum, kw) => {
158
159
  const matches = (content.match(new RegExp(kw, 'g')) || []).length;
159
160
  return sum + matches;
160
161
  }, 0);
161
162
  // Bonus for file ref matches
162
- const fileMatches = page.fileRefs.filter(ref => prContext.files.some(f => f.includes(ref) || ref.includes(f))).length;
163
+ const fileMatches = page.fileRefs.filter((ref) => prContext.files.some((f) => f.includes(ref) || ref.includes(f))).length;
163
164
  return { page, score: score + fileMatches * 3 };
164
165
  });
165
166
  // Sort by score and return top N
166
167
  return scored
167
- .filter(s => s.score > 0)
168
+ .filter((s) => s.score > 0)
168
169
  .sort((a, b) => b.score - a.score)
169
170
  .slice(0, maxPages)
170
- .map(s => s.page);
171
+ .map((s) => s.page);
171
172
  }
172
173
  /**
173
174
  * Check if compaction is needed
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/memory/pageindex/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/memory/pageindex/service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"persist.d.ts","sourceRoot":"","sources":["../../src/memory/persist.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAkC,YAAY,EAAE,MAAM,aAAa,CAAC;AAwC/F;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA+Df"}
1
+ {"version":3,"file":"persist.d.ts","sourceRoot":"","sources":["../../src/memory/persist.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAkC,YAAY,EAAE,MAAM,aAAa,CAAC;AAwC/F;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAuEf"}
@@ -64,12 +64,17 @@ export async function persistReviewObservations(storage, project, prNumber, resu
64
64
  const sanitizedSuggestion = finding.suggestion
65
65
  ? stripPrivateData(finding.suggestion)
66
66
  : undefined;
67
+ // finding.file is attacker-influenceable (it ultimately derives from the
68
+ // PR diff) and is persisted verbatim. Strip secrets from it the same way
69
+ // message/suggestion are stripped, so a credential smuggled into a path
70
+ // (e.g. "src/sk-ant-.../x.ts") is redacted rather than stored.
71
+ const sanitizedFile = stripPrivateData(finding.file);
67
72
  const observationTitle = `${finding.category}: ${sanitizedMessage.slice(0, 80)}`;
68
73
  const taxonomyTag = classifyObservation(sanitizedMessage, observationTitle);
69
74
  const categoryLabel = taxonomyTag.category.toUpperCase().replace('_', ' ');
70
75
  const content = [
71
76
  `[${categoryLabel}] [${finding.severity.toUpperCase()}] ${finding.category}`,
72
- `File: ${finding.file}${finding.line ? `:${finding.line}` : ''}`,
77
+ `File: ${sanitizedFile}${finding.line ? `:${finding.line}` : ''}`,
73
78
  `Issue: ${sanitizedMessage}`,
74
79
  sanitizedSuggestion ? `Fix: ${sanitizedSuggestion}` : '',
75
80
  ]
@@ -81,7 +86,7 @@ export async function persistReviewObservations(storage, project, prNumber, resu
81
86
  type: findingToObservationType(finding),
82
87
  title: `[${categoryLabel}] ${observationTitle}`,
83
88
  content,
84
- filePaths: [finding.file],
89
+ filePaths: [sanitizedFile],
85
90
  severity: finding.severity,
86
91
  });
87
92
  }
@@ -93,7 +98,9 @@ export async function persistReviewObservations(storage, project, prNumber, resu
93
98
  title: `PR #${prNumber} review: ${result.status}`,
94
99
  content: stripPrivateData(result.summary),
95
100
  topicKey: `pr-${prNumber}-review`,
96
- filePaths: significantFindings.map((f) => f.file),
101
+ // Sanitize file paths here too — a secret smuggled into a path must not
102
+ // survive in the summary observation's filePaths array.
103
+ filePaths: significantFindings.map((f) => stripPrivateData(f.file)),
97
104
  });
98
105
  // End the session with a summary
99
106
  await storage.endSession(session.id, `Review of PR #${prNumber}: ${result.status} with ${significantFindings.length} significant findings.`);
@@ -1 +1 @@
1
- {"version":3,"file":"persist.js","sourceRoot":"","sources":["../../src/memory/persist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persist.js","sourceRoot":"","sources":["../../src/memory/persist.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"privacy.d.ts","sourceRoot":"","sources":["../../src/memory/privacy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuEH;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUrD"}
1
+ {"version":3,"file":"privacy.d.ts","sourceRoot":"","sources":["../../src/memory/privacy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuHH;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUrD"}
@@ -17,9 +17,11 @@ const SENSITIVE_PATTERNS = [
17
17
  { pattern: /sk-[a-zA-Z0-9_-]{20,}/g, replacement: '[REDACTED_OPENAI_KEY]' },
18
18
  // AWS Access Key IDs
19
19
  { pattern: /AKIA[0-9A-Z]{16}/g, replacement: '[REDACTED_AWS_KEY]' },
20
- // AWS Secret Access Keys (typically 40 chars, base64-ish)
20
+ // AWS Secret Access Keys (typically 40 chars, base64-ish).
21
+ // Supports `=` and `:` separators (env files vs YAML) and an optional
22
+ // opening quote — the previous lookbehind broke on quoted values.
21
23
  {
22
- pattern: /(?<=AWS_SECRET_ACCESS_KEY\s*=\s*)[A-Za-z0-9/+=]{40}/g,
24
+ pattern: /(?<=AWS_SECRET_ACCESS_KEY\s*[:=]\s*['"]?)[A-Za-z0-9/+=]{40}/g,
23
25
  replacement: '[REDACTED_AWS_SECRET]',
24
26
  },
25
27
  // GitHub tokens (classic and fine-grained)
@@ -28,10 +30,25 @@ const SENSITIVE_PATTERNS = [
28
30
  { pattern: /ghs_[a-zA-Z0-9]{36,}/g, replacement: '[REDACTED_GITHUB_APP]' },
29
31
  { pattern: /ghr_[a-zA-Z0-9]{36,}/g, replacement: '[REDACTED_GITHUB_REFRESH]' },
30
32
  { pattern: /github_pat_[a-zA-Z0-9_]{22,}/g, replacement: '[REDACTED_GITHUB_FINE_PAT]' },
33
+ // GitLab personal access tokens
34
+ { pattern: /glpat-[A-Za-z0-9_-]{20,}/g, replacement: '[REDACTED_GITLAB_PAT]' },
35
+ // npm tokens
36
+ { pattern: /npm_[A-Za-z0-9]{36,}/g, replacement: '[REDACTED_NPM_TOKEN]' },
37
+ // Stripe secret/restricted keys (sk_live_, sk_test_, rk_live_, rk_test_)
38
+ { pattern: /(?:sk|rk)_(?:live|test)_[A-Za-z0-9]{16,}/g, replacement: '[REDACTED_STRIPE_KEY]' },
39
+ // Stripe webhook signing secrets
40
+ { pattern: /whsec_[A-Za-z0-9]{16,}/g, replacement: '[REDACTED_STRIPE_WEBHOOK_SECRET]' },
41
+ // Hugging Face tokens
42
+ { pattern: /hf_[A-Za-z0-9]{30,}/g, replacement: '[REDACTED_HF_TOKEN]' },
43
+ // SendGrid API keys (SG.<id>.<secret>)
44
+ {
45
+ pattern: /SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,
46
+ replacement: '[REDACTED_SENDGRID_KEY]',
47
+ },
31
48
  // Google API keys
32
49
  { pattern: /AIza[0-9A-Za-z_-]{35}/g, replacement: '[REDACTED_GOOGLE_KEY]' },
33
- // Slack tokens
34
- { pattern: /xox[bpors]-[0-9a-zA-Z-]{10,}/g, replacement: '[REDACTED_SLACK_TOKEN]' },
50
+ // Slack tokens (bot/user/app-level: xoxb-, xoxp-, xoxa-, xapp-, etc.)
51
+ { pattern: /(?:xox[abpors]|xapp)-[0-9a-zA-Z-]{10,}/g, replacement: '[REDACTED_SLACK_TOKEN]' },
35
52
  // Generic Bearer tokens in headers
36
53
  { pattern: /Bearer\s+[a-zA-Z0-9._-]{20,}/gi, replacement: 'Bearer [REDACTED_TOKEN]' },
37
54
  // Generic "password" / "secret" / "token" assignments
@@ -46,9 +63,17 @@ const SENSITIVE_PATTERNS = [
46
63
  pattern: /(?<=(SECRET|KEY|TOKEN|CREDENTIAL|PASSWORD)\s*[:=]\s*['"]?)[A-Za-z0-9+/]{64,}={0,2}(?=['"]?)/gi,
47
64
  replacement: '[REDACTED_BASE64]',
48
65
  },
49
- // Private keys (PEM format)
66
+ // Private keys (PEM format). Broad label match covers RSA/EC/DSA as well as
67
+ // OPENSSH, PKCS8 ("PRIVATE KEY"), ENCRYPTED, and PGP ("PRIVATE KEY BLOCK")
68
+ // variants — the previous allowlist (RSA|EC|DSA) let modern formats through.
69
+ //
70
+ // The between-markers span is BOUNDED to {0,8192} (was an unbounded
71
+ // `[\s\S]*?`). A real PEM body is a few KB at most; an UNTERMINATED header
72
+ // in a large diff would otherwise make the lazy match scan all the way to
73
+ // EOF before failing. The bound makes an unterminated header fail fast while
74
+ // still covering every legitimate key. (4096-bit RSA PEM ≈ 3.2KB.)
50
75
  {
51
- pattern: /-----BEGIN (?:RSA |EC |DSA )?PRIVATE KEY-----[\s\S]*?-----END (?:RSA |EC |DSA )?PRIVATE KEY-----/g,
76
+ pattern: /-----BEGIN [A-Z0-9 ]*PRIVATE KEY(?: BLOCK)?-----[\s\S]{0,8192}?-----END [A-Z0-9 ]*PRIVATE KEY(?: BLOCK)?-----/g,
52
77
  replacement: '[REDACTED_PRIVATE_KEY]',
53
78
  },
54
79
  // JWT tokens (three base64url segments separated by dots)
@@ -56,6 +81,20 @@ const SENSITIVE_PATTERNS = [
56
81
  pattern: /eyJ[a-zA-Z0-9_-]{10,}\.eyJ[a-zA-Z0-9_-]{10,}\.[a-zA-Z0-9_-]{10,}/g,
57
82
  replacement: '[REDACTED_JWT]',
58
83
  },
84
+ // Unquoted `.env`-style assignments: SECRET=..., DB_PASSWORD: ..., MY_API_KEY=...
85
+ // Key part is case-insensitive; only the value is redacted. The 8-char floor
86
+ // and the (?!\[REDACTED) guard (don't re-redact labels already inserted by
87
+ // earlier, more specific patterns) keep false positives down.
88
+ {
89
+ pattern: /(?<=(?:SECRET|TOKEN|PASSWORD|API_?KEY|CREDENTIAL)[A-Z0-9_]*\s*[:=]\s*['"]?)(?!\[REDACTED)[^\s'"]{8,}/gi,
90
+ replacement: '[REDACTED]',
91
+ },
92
+ // Passwords embedded in URL userinfo: https://user:pass@host/...
93
+ // Redacts only the password portion, preserving scheme, user, and host.
94
+ {
95
+ pattern: /(?<=:\/\/[^:/\s]+:)[^@\s]+(?=@)/g,
96
+ replacement: '[REDACTED_URL_PASSWORD]',
97
+ },
59
98
  ];
60
99
  // ─── Main Function ──────────────────────────────────────────────
61
100
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"privacy.js","sourceRoot":"","sources":["../../src/memory/privacy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,mEAAmE;AAEnE;;;GAGG;AACH,MAAM,kBAAkB,GAAoD;IAC1E,qBAAqB;IACrB,EAAE,OAAO,EAAE,4BAA4B,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAElF,+EAA+E;IAC/E,EAAE,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAE3E,qBAAqB;IACrB,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,oBAAoB,EAAE;IAEnE,0DAA0D;IAC1D;QACE,OAAO,EAAE,sDAAsD;QAC/D,WAAW,EAAE,uBAAuB;KACrC;IAED,2CAA2C;IAC3C,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC1E,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC5E,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC1E,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,2BAA2B,EAAE;IAC9E,EAAE,OAAO,EAAE,+BAA+B,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAEvF,kBAAkB;IAClB,EAAE,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAE3E,eAAe;IACf,EAAE,OAAO,EAAE,+BAA+B,EAAE,WAAW,EAAE,wBAAwB,EAAE;IAEnF,mCAAmC;IACnC,EAAE,OAAO,EAAE,gCAAgC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAErF,sDAAsD;IACtD,yEAAyE;IACzE;QACE,OAAO,EAAE,sFAAsF;QAC/F,WAAW,EAAE,YAAY;KAC1B;IAED,0EAA0E;IAC1E,mEAAmE;IACnE;QACE,OAAO,EACL,+FAA+F;QACjG,WAAW,EAAE,mBAAmB;KACjC;IAED,4BAA4B;IAC5B;QACE,OAAO,EACL,mGAAmG;QACrG,WAAW,EAAE,wBAAwB;KACtC;IAED,0DAA0D;IAC1D;QACE,OAAO,EAAE,mEAAmE;QAC5E,WAAW,EAAE,gBAAgB;KAC9B;CACF,CAAC;AAEF,mEAAmE;AAEnE;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,KAAK,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,kBAAkB,EAAE,CAAC;QAC1D,oEAAoE;QACpE,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QACtB,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"privacy.js","sourceRoot":"","sources":["../../src/memory/privacy.ts"],"names":[],"mappings":"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"}
@@ -5,21 +5,10 @@
5
5
  * database with manual file persistence via close(). Designed for single-process
6
6
  * environments (CLI, GitHub Action).
7
7
  */
8
- import { type Database } from 'fts5-sql-bundle';
9
8
  import { type EmbeddingProvider } from '../embed.js';
10
9
  import type { AuthorTrustScore, ListObservationsOptions, MemoryObservationDetail, MemoryObservationRow, MemoryStats, MemoryStorage, NegativeExample } from '../types.js';
11
10
  import { type DecayConfig } from '../types.js';
12
- import { ProjectPageIndexService } from './pageindex/service.js';
13
- /**
14
- * Extended Database interface — fts5-sql-bundle types omit the params overload
15
- * for exec(), but the runtime (sql.js core) supports it.
16
- */
17
- interface DatabaseWithParams extends Database {
18
- exec(sql: string, params?: (string | number | Buffer | null)[]): Array<{
19
- columns: string[];
20
- values: unknown[][];
21
- }>;
22
- }
11
+ import { type DatabaseWithParams, ProjectPageIndexService } from './pageindex/service.js';
23
12
  export interface SqliteMemoryStorageOptions {
24
13
  /** Dedup window in minutes. Observations with the same content hash within this window are deduplicated. Defaults to 15. */
25
14
  dedupWindowMinutes?: number;
@@ -138,5 +127,4 @@ export declare class SqliteMemoryStorage implements MemoryStorage {
138
127
  deleteNegativeExample(findingHash: string): boolean;
139
128
  close(): Promise<void>;
140
129
  }
141
- export {};
142
130
  //# sourceMappingURL=sqlite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/memory/sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/memory/sqlite.ts"],"names":[],"mappings":"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"}