@rbalchii/anchor-engine 4.8.0 → 4.8.1

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 (141) hide show
  1. package/LICENSE +608 -608
  2. package/README.md +177 -1
  3. package/anchor.bat +5 -5
  4. package/docs/AGENT_CONTROLLED_ENGINE.md +581 -0
  5. package/docs/API.md +314 -314
  6. package/docs/DEPLOYMENT.md +448 -448
  7. package/docs/INDEX.md +226 -226
  8. package/docs/MD_FILES_INVENTORY.md +166 -0
  9. package/docs/STAR_Whitepaper_Executive.md +216 -216
  10. package/docs/TROUBLESHOOTING.md +535 -535
  11. package/docs/arxiv/BIBLIOGRAPHY.bib +145 -145
  12. package/docs/arxiv/RELATED_WORK.tex +38 -38
  13. package/docs/arxiv/compile.bat +48 -48
  14. package/docs/arxiv/joss_response.md +32 -32
  15. package/docs/arxiv/prepare-submission.bat +46 -46
  16. package/docs/arxiv/review.md +127 -127
  17. package/docs/arxiv/star-whitepaper.tex +656 -656
  18. package/docs/code-patterns.md +289 -289
  19. package/docs/daily/TODAY_SUMMARY.md +245 -0
  20. package/docs/guides/BUILDING.md +64 -0
  21. package/docs/guides/INSTALL_NPM.md +160 -0
  22. package/docs/guides/NPM_PUBLISH_SUMMARY.md +231 -0
  23. package/docs/paper.md +124 -0
  24. package/docs/project/PROJECT_STATE_ASSESSMENT.md +312 -0
  25. package/docs/reviews/code-review-v4.8.1-decision-record.md +165 -0
  26. package/docs/testing/TESTING.md +213 -0
  27. package/docs/testing/TESTING_FRAMEWORK_COMPLETE.md +271 -0
  28. package/docs/testing/search-test-report.md +76 -0
  29. package/docs/whitepaper.md +445 -445
  30. package/engine/dist/commands/distill.js +21 -21
  31. package/engine/dist/config/index.d.ts +7 -0
  32. package/engine/dist/config/index.d.ts.map +1 -1
  33. package/engine/dist/config/index.js +22 -0
  34. package/engine/dist/config/index.js.map +1 -1
  35. package/engine/dist/config/paths.d.ts +1 -1
  36. package/engine/dist/config/paths.js +3 -3
  37. package/engine/dist/config/paths.js.map +1 -1
  38. package/engine/dist/core/db.js +131 -131
  39. package/engine/dist/mcp/server.d.ts +44 -0
  40. package/engine/dist/mcp/server.d.ts.map +1 -0
  41. package/engine/dist/mcp/server.js +427 -0
  42. package/engine/dist/mcp/server.js.map +1 -0
  43. package/engine/dist/native/index.d.ts +20 -21
  44. package/engine/dist/native/index.d.ts.map +1 -1
  45. package/engine/dist/profiling/atomization-profiling.js +3 -3
  46. package/engine/dist/profiling/bottleneck-identification.js +35 -35
  47. package/engine/dist/profiling/content-sanitization-profiling.js +86 -86
  48. package/engine/dist/routes/monitoring.js +8 -8
  49. package/engine/dist/routes/v1/admin.js +8 -8
  50. package/engine/dist/routes/v1/atoms.js +15 -15
  51. package/engine/dist/routes/v1/ingest.d.ts.map +1 -1
  52. package/engine/dist/routes/v1/ingest.js +39 -0
  53. package/engine/dist/routes/v1/ingest.js.map +1 -1
  54. package/engine/dist/routes/v1/system.d.ts.map +1 -1
  55. package/engine/dist/routes/v1/system.js +305 -6
  56. package/engine/dist/routes/v1/system.js.map +1 -1
  57. package/engine/dist/routes/v1/tags.js +2 -2
  58. package/engine/dist/services/backup/backup-restore.js +23 -23
  59. package/engine/dist/services/backup/backup.js +14 -14
  60. package/engine/dist/services/distillation/radial-distiller.d.ts +1 -0
  61. package/engine/dist/services/distillation/radial-distiller.d.ts.map +1 -1
  62. package/engine/dist/services/distillation/radial-distiller.js +23 -16
  63. package/engine/dist/services/distillation/radial-distiller.js.map +1 -1
  64. package/engine/dist/services/ingest/github-ingest-service.js +18 -18
  65. package/engine/dist/services/ingest/ingest-atomic.js +79 -79
  66. package/engine/dist/services/ingest/ingest.d.ts.map +1 -1
  67. package/engine/dist/services/ingest/ingest.js +28 -25
  68. package/engine/dist/services/ingest/ingest.js.map +1 -1
  69. package/engine/dist/services/ingest/watchdog.d.ts.map +1 -1
  70. package/engine/dist/services/ingest/watchdog.js +14 -24
  71. package/engine/dist/services/ingest/watchdog.js.map +1 -1
  72. package/engine/dist/services/llm/reader.js +9 -9
  73. package/engine/dist/services/mirror/mirror.js +5 -5
  74. package/engine/dist/services/mirror/mirror.js.map +1 -1
  75. package/engine/dist/services/research/researcher.js +8 -8
  76. package/engine/dist/services/scribe/scribe.js +27 -27
  77. package/engine/dist/services/search/context-inflator.js +34 -34
  78. package/engine/dist/services/search/explore.js +20 -20
  79. package/engine/dist/services/search/physics-tag-walker.js +208 -208
  80. package/engine/dist/services/search/query-parser.js +5 -5
  81. package/engine/dist/services/search/search-utils.js +3 -3
  82. package/engine/dist/services/search/search.js +36 -36
  83. package/engine/dist/services/search/sovereign-system-prompt.js +22 -22
  84. package/engine/dist/services/semantic/semantic-ingestion-service.js +47 -47
  85. package/engine/dist/services/semantic/semantic-search.js +21 -21
  86. package/engine/dist/services/synonyms/auto-synonym-generator.js +35 -35
  87. package/engine/dist/services/system-status.d.ts +34 -0
  88. package/engine/dist/services/system-status.d.ts.map +1 -1
  89. package/engine/dist/services/system-status.js +57 -1
  90. package/engine/dist/services/system-status.js.map +1 -1
  91. package/engine/dist/services/tags/discovery.js +5 -5
  92. package/engine/dist/services/tags/infector.js +6 -6
  93. package/engine/dist/services/tags/tag-auditor.js +51 -51
  94. package/engine/dist/services/taxonomy/taxonomy-manager.js +6 -6
  95. package/engine/dist/utils/tag-cleanup.js +5 -5
  96. package/engine/dist/utils/tag-modulation.js +1 -1
  97. package/engine/dist/utils/tag-modulation.js.map +1 -1
  98. package/engine/package.json +1 -2
  99. package/mcp-server/README.md +404 -0
  100. package/mcp-server/dist/index.d.ts +16 -0
  101. package/mcp-server/dist/index.d.ts.map +1 -0
  102. package/mcp-server/dist/index.js +709 -0
  103. package/mcp-server/dist/index.js.map +1 -0
  104. package/mcp-server/package.json +34 -0
  105. package/package.json +10 -2
  106. package/docs/archive/GIT_BACKUP_VERIFICATION.md +0 -297
  107. package/docs/archive/adoption-guide.md +0 -264
  108. package/docs/archive/adoption-preparation.md +0 -179
  109. package/docs/archive/agent-harness-integration.md +0 -227
  110. package/docs/archive/api-reference.md +0 -106
  111. package/docs/archive/api_flows_diagram.md +0 -118
  112. package/docs/archive/architecture.md +0 -410
  113. package/docs/archive/architecture_diagram.md +0 -174
  114. package/docs/archive/broader-adoption-preparation.md +0 -175
  115. package/docs/archive/browser-paradigm-architecture.md +0 -163
  116. package/docs/archive/chat-integration.md +0 -124
  117. package/docs/archive/community-adoption-materials.md +0 -103
  118. package/docs/archive/community-adoption.md +0 -147
  119. package/docs/archive/comparison-with-siloed-solutions.md +0 -192
  120. package/docs/archive/comprehensive-docs.md +0 -156
  121. package/docs/archive/data_flow_diagram.md +0 -251
  122. package/docs/archive/enhancement-implementation-summary.md +0 -146
  123. package/docs/archive/evolution-summary.md +0 -141
  124. package/docs/archive/ingestion_pipeline_diagram.md +0 -198
  125. package/docs/archive/native-module-profiling-results.md +0 -135
  126. package/docs/archive/positioning-document.md +0 -158
  127. package/docs/archive/positioning.md +0 -175
  128. package/docs/archive/query-builder-documentation.md +0 -218
  129. package/docs/archive/quick-reference.md +0 -40
  130. package/docs/archive/quickstart.md +0 -63
  131. package/docs/archive/relationship-narrative-discovery.md +0 -141
  132. package/docs/archive/search-logic-improvement-plan.md +0 -336
  133. package/docs/archive/search_architecture_diagram.md +0 -212
  134. package/docs/archive/semantic-architecture-guide.md +0 -97
  135. package/docs/archive/sequence-diagrams.md +0 -128
  136. package/docs/archive/system_components_diagram.md +0 -296
  137. package/docs/archive/test-framework-integration.md +0 -109
  138. package/docs/archive/testing-framework-documentation.md +0 -397
  139. package/docs/archive/testing-framework-summary.md +0 -121
  140. package/docs/archive/testing-framework.md +0 -377
  141. package/docs/archive/ui-architecture.md +0 -75
@@ -9,7 +9,7 @@ import * as fs from 'fs';
9
9
  import * as path from 'path';
10
10
  import * as crypto from 'crypto';
11
11
  import { db } from '../../core/db.js';
12
- import { NOTEBOOK_DIR, PROJECT_ROOT } from '../../config/paths.js';
12
+ import { NOTEBOOK_DIR, PATHS } from '../../config/paths.js';
13
13
  import { config } from '../../config/index.js';
14
14
  import { pathManager } from '../../utils/path-manager.js';
15
15
  import { systemStatus } from '../system-status.js';
@@ -50,8 +50,8 @@ export async function startWatchdog() {
50
50
  console.warn(`[Watchdog] Notebook directory not found: ${NOTEBOOK_DIR}. Skipping watch.`);
51
51
  return;
52
52
  }
53
- const inbox = path.join(PROJECT_ROOT, 'inbox');
54
- const externalInbox = path.join(PROJECT_ROOT, 'external-inbox');
53
+ const inbox = PATHS.INBOX_DIR;
54
+ const externalInbox = PATHS.EXTERNAL_INBOX_DIR;
55
55
  // Auto-create inbox directories if missing (Standard 051: Ephemeral Index)
56
56
  // These are gitignored and should be created on-demand
57
57
  if (!fs.existsSync(inbox)) {
@@ -91,14 +91,7 @@ export async function startWatchdog() {
91
91
  export function getWatchedPaths() {
92
92
  if (!watcher)
93
93
  return [];
94
- // chokidar.getWatched() returns an object where keys are paths
95
- // But it returns all subdirectories too. We mainly want the roots we added.
96
- // For simplicity, we can return the configured roots + static roots.
97
- // Better approach: Return the paths explicitly tracked
98
- const inbox = path.join(PROJECT_ROOT, 'inbox');
99
- const externalInbox = path.join(PROJECT_ROOT, 'external-inbox');
100
- const extraPaths = config.WATCHER_EXTRA_PATHS || [];
101
- return [inbox, externalInbox, ...extraPaths];
94
+ return [PATHS.INBOX_DIR, PATHS.EXTERNAL_INBOX_DIR, ...(config.WATCHER_EXTRA_PATHS || [])];
102
95
  }
103
96
  export async function addWatchPath(newPath) {
104
97
  if (!fs.existsSync(newPath)) {
@@ -185,12 +178,9 @@ export async function stopWatchdog() {
185
178
  * Get watchdog status
186
179
  */
187
180
  export function getWatcherStatus() {
188
- const inbox = path.join(PROJECT_ROOT, 'inbox');
189
- const externalInbox = path.join(PROJECT_ROOT, 'external-inbox');
190
- const extraPaths = config.WATCHER_EXTRA_PATHS || [];
191
181
  return {
192
182
  isRunning: watcher !== null,
193
- watchedPaths: [inbox, externalInbox, ...extraPaths]
183
+ watchedPaths: [PATHS.INBOX_DIR, PATHS.EXTERNAL_INBOX_DIR, ...(config.WATCHER_EXTRA_PATHS || [])]
194
184
  };
195
185
  }
196
186
  /**
@@ -198,8 +188,8 @@ export function getWatcherStatus() {
198
188
  */
199
189
  export async function triggerManualIngest() {
200
190
  try {
201
- const inbox = path.join(PROJECT_ROOT, 'inbox');
202
- const externalInbox = path.join(PROJECT_ROOT, 'external-inbox');
191
+ const inbox = PATHS.INBOX_DIR;
192
+ const externalInbox = PATHS.EXTERNAL_INBOX_DIR;
203
193
  if (!fs.existsSync(inbox)) {
204
194
  return { status: 'error', message: 'Inbox directory not found' };
205
195
  }
@@ -267,9 +257,9 @@ import { AtomicIngestService } from './ingest-atomic.js';
267
257
  const atomizer = new AtomizerService();
268
258
  const atomicIngest = new AtomicIngestService();
269
259
  async function processFile(filePath, event) {
270
- // Accept markdown, text, YAML, CSV, JSON, and HTML files
260
+ // Accept markdown, text, YAML, CSV, JSON, JSONL, and HTML files
271
261
  if (!filePath.endsWith('.md') && !filePath.endsWith('.txt') && !filePath.endsWith('.yaml') &&
272
- !filePath.endsWith('.csv') && !filePath.endsWith('.json') &&
262
+ !filePath.endsWith('.csv') && !filePath.endsWith('.json') && !filePath.endsWith('.jsonl') &&
273
263
  !filePath.endsWith('.html') && !filePath.endsWith('.htm'))
274
264
  return;
275
265
  if (filePath.includes('mirrored_brain'))
@@ -352,11 +342,11 @@ async function processFile(filePath, event) {
352
342
  // Use the specialized AtomicIngestService for efficiency
353
343
  await atomicIngest.ingestResult(compound, molecules, atoms, [bucket]);
354
344
  // 6. Update Source Table
355
- await db.run(`INSERT INTO sources (path, hash, total_atoms, last_ingest)
356
- VALUES ($1, $2, $3, $4)
357
- ON CONFLICT (path) DO UPDATE SET
358
- hash = EXCLUDED.hash,
359
- total_atoms = EXCLUDED.total_atoms,
345
+ await db.run(`INSERT INTO sources (path, hash, total_atoms, last_ingest)
346
+ VALUES ($1, $2, $3, $4)
347
+ ON CONFLICT (path) DO UPDATE SET
348
+ hash = EXCLUDED.hash,
349
+ total_atoms = EXCLUDED.total_atoms,
360
350
  last_ingest = EXCLUDED.last_ingest`, [
361
351
  relativePath,
362
352
  fileHash,
@@ -1 +1 @@
1
- {"version":3,"file":"watchdog.js","sourceRoot":"","sources":["../../../src/services/ingest/watchdog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watchdog.js","sourceRoot":"","sources":["../../../src/services/ingest/watchdog.ts"],"names":[],"mappings":"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"}
@@ -12,16 +12,16 @@ export async function summarizeContext(results, query) {
12
12
  return `[Source: ${r.source} ${time}]\n${r.content}`;
13
13
  }).join('\n\n---\n\n');
14
14
  // 2. Prepare the Reader Prompt
15
- const systemPrompt = `You are a Reader for the Sovereign Context Engine.
16
- Your goal is to read the provided Search Results and create a concise, factual summary that answers the User's Query.
17
- If the results are irrelevant, state that clearly.
18
- Focus on extracting dates, decisions, and key patterns.
15
+ const systemPrompt = `You are a Reader for the Sovereign Context Engine.
16
+ Your goal is to read the provided Search Results and create a concise, factual summary that answers the User's Query.
17
+ If the results are irrelevant, state that clearly.
18
+ Focus on extracting dates, decisions, and key patterns.
19
19
  Output ONLY the summary. Do not chat.`;
20
- const userPrompt = `USER QUERY: "${query}"
21
-
22
- SEARCH RESULTS:
23
- ${docs}
24
-
20
+ const userPrompt = `USER QUERY: "${query}"
21
+
22
+ SEARCH RESULTS:
23
+ ${docs}
24
+
25
25
  SUMMARY:`;
26
26
  try {
27
27
  console.log(`[Reader] Summarizing ${results.length} items for query: "${query}"`);
@@ -27,10 +27,10 @@ export async function createMirror() {
27
27
  fs.mkdirSync(MIRRORED_BRAIN_PATH, { recursive: true });
28
28
  }
29
29
  // Join sources with compounds to get cleaned content
30
- const sourcesQuery = `
31
- SELECT s.path, c.compound_body, c.provenance
32
- FROM sources s
33
- LEFT JOIN compounds c ON c.path = s.path
30
+ const sourcesQuery = `
31
+ SELECT s.path, c.compound_body, c.provenance
32
+ FROM sources s
33
+ LEFT JOIN compounds c ON c.path = s.path
34
34
  `;
35
35
  const result = await db.run(sourcesQuery);
36
36
  if (!result.rows || result.rows.length === 0) {
@@ -148,7 +148,7 @@ function getRelativePath(absolutePath) {
148
148
  if (!absolutePath)
149
149
  return 'unknown_file';
150
150
  const inboxDir = PATHS.INBOX_DIR;
151
- const externalDir = path.join(path.dirname(PATHS.INBOX_DIR), 'external-inbox');
151
+ const externalDir = PATHS.EXTERNAL_INBOX_DIR;
152
152
  if (absolutePath.startsWith(inboxDir)) {
153
153
  return path.relative(inboxDir, absolutePath);
154
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/services/mirror/mirror.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/services/mirror/mirror.ts"],"names":[],"mappings":"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"}
@@ -55,14 +55,14 @@ export async function fetchAndProcess(url, category = 'article') {
55
55
  // Convert
56
56
  const markdown = turndownService.turndown(contentHtml);
57
57
  // Frontmatter
58
- const fileContent = `# ${title}
59
- > **Source**: ${url}
60
- > **Date**: ${new Date().toISOString()}
61
- > **Description**: ${metaDesc}
62
-
63
- ---
64
-
65
- ${markdown}
58
+ const fileContent = `# ${title}
59
+ > **Source**: ${url}
60
+ > **Date**: ${new Date().toISOString()}
61
+ > **Description**: ${metaDesc}
62
+
63
+ ---
64
+
65
+ ${markdown}
66
66
  `;
67
67
  // Filename
68
68
  const safeTitle = title.replace(/[^a-zA-Z0-9-_]/g, '_').substring(0, 50);
@@ -35,18 +35,18 @@ export async function updateState(history) {
35
35
  return { status: 'skipped', message: 'No conversation history to analyze' };
36
36
  }
37
37
  // 2. Construct the state extraction prompt
38
- const prompt = `Analyze this conversation segment and produce a concise "Session State" summary.
39
-
40
- Keep it under 200 words. Focus on:
41
- - Current Goal: What is the user trying to accomplish?
42
- - Key Decisions: What has been decided or agreed upon?
43
- - Active Tasks: What work is in progress or pending?
44
- - Important Context: What background information is critical to remember?
45
-
46
- Conversation:
47
- ${recentText}
48
-
49
- ---
38
+ const prompt = `Analyze this conversation segment and produce a concise "Session State" summary.
39
+
40
+ Keep it under 200 words. Focus on:
41
+ - Current Goal: What is the user trying to accomplish?
42
+ - Key Decisions: What has been decided or agreed upon?
43
+ - Active Tasks: What work is in progress or pending?
44
+ - Important Context: What background information is critical to remember?
45
+
46
+ Conversation:
47
+ ${recentText}
48
+
49
+ ---
50
50
  Session State Summary:`;
51
51
  // 3. Generate the state summary
52
52
  const inf = getInference();
@@ -56,21 +56,21 @@ Session State Summary:`;
56
56
  }
57
57
  // 4. Persist to database with special ID
58
58
  const timestamp = Date.now();
59
- await db.run(`INSERT INTO atoms (id, timestamp, content, source_path, source_id, sequence, type, hash, buckets, epochs, tags, provenance, simhash, embedding)
60
- VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14)
61
- ON CONFLICT (id) DO UPDATE SET
62
- content = EXCLUDED.content,
63
- timestamp = EXCLUDED.timestamp,
64
- source_path = EXCLUDED.source_path,
65
- source_id = EXCLUDED.source_id,
66
- sequence = EXCLUDED.sequence,
67
- type = EXCLUDED.type,
68
- hash = EXCLUDED.hash,
69
- buckets = EXCLUDED.buckets,
70
- epochs = EXCLUDED.epochs,
71
- tags = EXCLUDED.tags,
72
- provenance = EXCLUDED.provenance,
73
- simhash = EXCLUDED.simhash,
59
+ await db.run(`INSERT INTO atoms (id, timestamp, content, source_path, source_id, sequence, type, hash, buckets, epochs, tags, provenance, simhash, embedding)
60
+ VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14)
61
+ ON CONFLICT (id) DO UPDATE SET
62
+ content = EXCLUDED.content,
63
+ timestamp = EXCLUDED.timestamp,
64
+ source_path = EXCLUDED.source_path,
65
+ source_id = EXCLUDED.source_id,
66
+ sequence = EXCLUDED.sequence,
67
+ type = EXCLUDED.type,
68
+ hash = EXCLUDED.hash,
69
+ buckets = EXCLUDED.buckets,
70
+ epochs = EXCLUDED.epochs,
71
+ tags = EXCLUDED.tags,
72
+ provenance = EXCLUDED.provenance,
73
+ simhash = EXCLUDED.simhash,
74
74
  embedding = EXCLUDED.embedding`, [
75
75
  SESSION_STATE_ID,
76
76
  timestamp,
@@ -293,14 +293,14 @@ export class ContextInflator {
293
293
  // Atoms are stored with # prefix, but we might search without
294
294
  const termWithHash = term.startsWith('#') ? term : `#${term}`;
295
295
  const termWithoutHash = term.startsWith('#') ? term.slice(1) : term;
296
- let query = `
297
- SELECT ap.compound_id, ap.byte_offset, c.path, c.timestamp, c.provenance
298
- FROM atom_positions ap
299
- JOIN compounds c ON ap.compound_id = c.id
300
- WHERE
301
- (LOWER(ap.atom_label) = LOWER($1)
302
- OR LOWER(ap.atom_label) = LOWER($2)
303
- OR ap.atom_label ILIKE $3)
296
+ let query = `
297
+ SELECT ap.compound_id, ap.byte_offset, c.path, c.timestamp, c.provenance
298
+ FROM atom_positions ap
299
+ JOIN compounds c ON ap.compound_id = c.id
300
+ WHERE
301
+ (LOWER(ap.atom_label) = LOWER($1)
302
+ OR LOWER(ap.atom_label) = LOWER($2)
303
+ OR ap.atom_label ILIKE $3)
304
304
  `;
305
305
  const params = [termWithHash, termWithoutHash, `${termWithoutHash}%`];
306
306
  // Apply Provenance Filter
@@ -313,12 +313,12 @@ export class ContextInflator {
313
313
  params.push(options.buckets);
314
314
  // We join atoms to check if any atom in this compound has the bucket
315
315
  // optimize: use EXISTS instead of joining widely
316
- query += ` AND EXISTS (
317
- SELECT 1 FROM atoms a
318
- WHERE a.compound_id = c.id
319
- AND EXISTS (
320
- SELECT 1 FROM unnest(a.buckets) as b WHERE b = ANY($${params.length})
321
- )
316
+ query += ` AND EXISTS (
317
+ SELECT 1 FROM atoms a
318
+ WHERE a.compound_id = c.id
319
+ AND EXISTS (
320
+ SELECT 1 FROM unnest(a.buckets) as b WHERE b = ANY($${params.length})
321
+ )
322
322
  )`;
323
323
  }
324
324
  query += ` ORDER BY c.timestamp DESC LIMIT $${params.length + 1}`;
@@ -357,11 +357,11 @@ export class ContextInflator {
357
357
  // So we search for both formats: "#Rob" and "Rob"
358
358
  const termWithHash = searchTerm.startsWith('#') ? searchTerm : `#${searchTerm}`;
359
359
  const termWithoutHash = searchTerm.startsWith('#') ? searchTerm.slice(1) : searchTerm;
360
- let query = `
361
- SELECT ap.compound_id, ap.byte_offset, c.path, c.timestamp, c.provenance
362
- FROM atom_positions ap
363
- JOIN compounds c ON ap.compound_id = c.id
364
- WHERE (LOWER(ap.atom_label) = LOWER($1) OR LOWER(ap.atom_label) = LOWER($2))
360
+ let query = `
361
+ SELECT ap.compound_id, ap.byte_offset, c.path, c.timestamp, c.provenance
362
+ FROM atom_positions ap
363
+ JOIN compounds c ON ap.compound_id = c.id
364
+ WHERE (LOWER(ap.atom_label) = LOWER($1) OR LOWER(ap.atom_label) = LOWER($2))
365
365
  `;
366
366
  const params = [termWithHash, termWithoutHash];
367
367
  // Apply Provenance Filter
@@ -372,12 +372,12 @@ export class ContextInflator {
372
372
  // Apply Bucket Filter
373
373
  if (options.buckets && options.buckets.length > 0) {
374
374
  params.push(options.buckets);
375
- query += ` AND EXISTS (
376
- SELECT 1 FROM atoms a
377
- WHERE a.compound_id = c.id
378
- AND EXISTS (
379
- SELECT 1 FROM unnest(a.buckets) as b WHERE b = ANY($${params.length})
380
- )
375
+ query += ` AND EXISTS (
376
+ SELECT 1 FROM atoms a
377
+ WHERE a.compound_id = c.id
378
+ AND EXISTS (
379
+ SELECT 1 FROM unnest(a.buckets) as b WHERE b = ANY($${params.length})
380
+ )
381
381
  )`;
382
382
  }
383
383
  query += ` ORDER BY c.timestamp DESC LIMIT $${params.length + 1}`;
@@ -552,26 +552,26 @@ export class ContextInflator {
552
552
  const tagsArray = Array.from(allTags);
553
553
  const bucketsArray = Array.from(allBuckets);
554
554
  // Query for related content that shares tags or buckets but wasn't in the original results
555
- let query = `
556
- SELECT id, content, source_path as source, timestamp,
557
- buckets, tags, epochs, provenance, simhash as molecular_signature,
558
- 100 as score --Lower score for less directly connected content
559
- FROM atoms
555
+ let query = `
556
+ SELECT id, content, source_path as source, timestamp,
557
+ buckets, tags, epochs, provenance, simhash as molecular_signature,
558
+ 100 as score --Lower score for less directly connected content
559
+ FROM atoms
560
560
  WHERE `;
561
561
  const params = [];
562
562
  const conditions = [];
563
563
  // Add conditions for tags if we have any
564
564
  if (tagsArray.length > 0) {
565
- conditions.push(`EXISTS(
566
- SELECT 1 FROM unnest(tags) as tag WHERE tag = ANY($${params.length + 1})
565
+ conditions.push(`EXISTS(
566
+ SELECT 1 FROM unnest(tags) as tag WHERE tag = ANY($${params.length + 1})
567
567
  )`);
568
568
  params.push(tagsArray);
569
569
  }
570
570
  // Add conditions for buckets if we have any
571
571
  if (bucketsArray.length > 0) {
572
572
  const bucketParamIndex = params.length + 1;
573
- conditions.push(`EXISTS(
574
- SELECT 1 FROM unnest(buckets) as bucket WHERE bucket = ANY($${bucketParamIndex})
573
+ conditions.push(`EXISTS(
574
+ SELECT 1 FROM unnest(buckets) as bucket WHERE bucket = ANY($${bucketParamIndex})
575
575
  )`);
576
576
  params.push(bucketsArray);
577
577
  }
@@ -38,8 +38,8 @@ async function resolveSeedsByQuery(query, limit) {
38
38
  if (!terms)
39
39
  return [];
40
40
  try {
41
- const result = await db.run(`SELECT id FROM atoms
42
- WHERE to_tsvector('simple', content) @@ to_tsquery('simple', $1)
41
+ const result = await db.run(`SELECT id FROM atoms
42
+ WHERE to_tsvector('simple', content) @@ to_tsquery('simple', $1)
43
43
  LIMIT $2`, [terms, limit]);
44
44
  return result.rows.map(r => r.id);
45
45
  }
@@ -64,8 +64,8 @@ async function bfsViaEdges(seeds, maxDepth, minWeight, maxNodes) {
64
64
  const nextFrontier = [];
65
65
  for (const chunk of chunks) {
66
66
  const placeholders = chunk.map((_, i) => `$${i + 2}`).join(', ');
67
- const result = await db.run(`SELECT source_id, target_id, weight FROM edges
68
- WHERE (source_id IN (${placeholders}) OR target_id IN (${placeholders}))
67
+ const result = await db.run(`SELECT source_id, target_id, weight FROM edges
68
+ WHERE (source_id IN (${placeholders}) OR target_id IN (${placeholders}))
69
69
  AND weight >= $1`, [minWeight, ...chunk]);
70
70
  for (const row of result.rows) {
71
71
  const neighbor = visited.has(row.source_id) ? row.target_id : row.source_id;
@@ -99,9 +99,9 @@ async function bfsViaTags(seeds, maxDepth, maxNodes) {
99
99
  const nextFrontier = [];
100
100
  for (const chunk of chunks) {
101
101
  const placeholders = chunk.map((_, i) => `$${i + 1}`).join(', ');
102
- const result = await db.run(`SELECT DISTINCT t2.atom_id
103
- FROM tags t1
104
- JOIN tags t2 ON t1.tag = t2.tag AND t1.atom_id != t2.atom_id
102
+ const result = await db.run(`SELECT DISTINCT t2.atom_id
103
+ FROM tags t1
104
+ JOIN tags t2 ON t1.tag = t2.tag AND t1.atom_id != t2.atom_id
105
105
  WHERE t1.atom_id IN (${placeholders})`, chunk);
106
106
  for (const row of result.rows) {
107
107
  if (!visited.has(row.atom_id)) {
@@ -165,14 +165,14 @@ async function edgesTableHasData() {
165
165
  * These are the most interconnected nodes in the entire corpus — the spine.
166
166
  */
167
167
  async function globalTopNodes(seedCount, minWeight) {
168
- const result = await db.run(`SELECT id, SUM(weight) AS total_weight
169
- FROM (
170
- SELECT source_id AS id, weight FROM edges WHERE weight >= $1
171
- UNION ALL
172
- SELECT target_id AS id, weight FROM edges WHERE weight >= $1
173
- ) all_edges
174
- GROUP BY id
175
- ORDER BY total_weight DESC
168
+ const result = await db.run(`SELECT id, SUM(weight) AS total_weight
169
+ FROM (
170
+ SELECT source_id AS id, weight FROM edges WHERE weight >= $1
171
+ UNION ALL
172
+ SELECT target_id AS id, weight FROM edges WHERE weight >= $1
173
+ ) all_edges
174
+ GROUP BY id
175
+ ORDER BY total_weight DESC
176
176
  LIMIT $2`, [minWeight, seedCount]);
177
177
  return result.rows.map(r => r.id);
178
178
  }
@@ -224,11 +224,11 @@ maxCount) {
224
224
  const chunk = hubIds.slice(i, i + PGLITE_CHUNK_IDS);
225
225
  const placeholders = chunk.map((_, j) => `$${j + 1}`).join(', ');
226
226
  const remaining = maxCount - allIds.length;
227
- const result = await db.run(`SELECT id FROM atoms
228
- WHERE compound_id IN (${placeholders})
229
- AND source_path != 'atom_source'
230
- AND id NOT LIKE 'mem_%'
231
- ORDER BY start_byte
227
+ const result = await db.run(`SELECT id FROM atoms
228
+ WHERE compound_id IN (${placeholders})
229
+ AND source_path != 'atom_source'
230
+ AND id NOT LIKE 'mem_%'
231
+ ORDER BY start_byte
232
232
  LIMIT ${Math.min(remaining, PGLITE_CHUNK_RESULT_IDS)}`, chunk);
233
233
  allIds.push(...result.rows.map((r) => r.id));
234
234
  }