@noyrax/5d-database-plugin 0.1.13-beta.1 → 0.1.14-beta.10

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 (147) hide show
  1. package/README.md +25 -0
  2. package/out/api/adr-api.d.ts +0 -6
  3. package/out/api/adr-api.d.ts.map +1 -1
  4. package/out/api/adr-api.js +14 -49
  5. package/out/api/adr-api.js.map +1 -1
  6. package/out/api/bootstrap-api.d.ts +4 -1
  7. package/out/api/bootstrap-api.d.ts.map +1 -1
  8. package/out/api/bootstrap-api.js +27 -4
  9. package/out/api/bootstrap-api.js.map +1 -1
  10. package/out/api/context-builder.d.ts.map +1 -1
  11. package/out/api/context-builder.js +21 -5
  12. package/out/api/context-builder.js.map +1 -1
  13. package/out/api/evidence-grader.d.ts +83 -0
  14. package/out/api/evidence-grader.d.ts.map +1 -0
  15. package/out/api/evidence-grader.js +161 -0
  16. package/out/api/evidence-grader.js.map +1 -0
  17. package/out/api/index.d.ts +5 -0
  18. package/out/api/index.d.ts.map +1 -1
  19. package/out/api/index.js +11 -1
  20. package/out/api/index.js.map +1 -1
  21. package/out/api/learning-path-api.d.ts +3 -0
  22. package/out/api/learning-path-api.d.ts.map +1 -1
  23. package/out/api/learning-path-api.js +15 -2
  24. package/out/api/learning-path-api.js.map +1 -1
  25. package/out/api/module-api.d.ts +0 -1
  26. package/out/api/module-api.d.ts.map +1 -1
  27. package/out/api/module-api.js +4 -38
  28. package/out/api/module-api.js.map +1 -1
  29. package/out/api/self-explanation-api.d.ts +11 -1
  30. package/out/api/self-explanation-api.d.ts.map +1 -1
  31. package/out/api/self-explanation-api.js +285 -19
  32. package/out/api/self-explanation-api.js.map +1 -1
  33. package/out/api/semantic-search-api.d.ts +3 -0
  34. package/out/api/semantic-search-api.d.ts.map +1 -1
  35. package/out/api/semantic-search-api.js +41 -4
  36. package/out/api/semantic-search-api.js.map +1 -1
  37. package/out/api/source-access-contract-api.d.ts +60 -0
  38. package/out/api/source-access-contract-api.d.ts.map +1 -0
  39. package/out/api/source-access-contract-api.js +231 -0
  40. package/out/api/source-access-contract-api.js.map +1 -0
  41. package/out/api/source-snippet-api.d.ts +58 -0
  42. package/out/api/source-snippet-api.d.ts.map +1 -0
  43. package/out/api/source-snippet-api.js +187 -0
  44. package/out/api/source-snippet-api.js.map +1 -0
  45. package/out/api/vector-backend-status-api.d.ts +68 -0
  46. package/out/api/vector-backend-status-api.d.ts.map +1 -0
  47. package/out/api/vector-backend-status-api.js +241 -0
  48. package/out/api/vector-backend-status-api.js.map +1 -0
  49. package/out/cli/debug-embedding-strategies.d.ts +3 -0
  50. package/out/cli/debug-embedding-strategies.d.ts.map +1 -0
  51. package/out/cli/debug-embedding-strategies.js +255 -0
  52. package/out/cli/debug-embedding-strategies.js.map +1 -0
  53. package/out/cli/debug-plugin-id.d.ts +9 -0
  54. package/out/cli/debug-plugin-id.d.ts.map +1 -0
  55. package/out/cli/debug-plugin-id.js +188 -0
  56. package/out/cli/debug-plugin-id.js.map +1 -0
  57. package/out/cli/ingest-cli.js +44 -5
  58. package/out/cli/ingest-cli.js.map +1 -1
  59. package/out/cli/tool-cli.js +1 -1
  60. package/out/cli/tool-cli.js.map +1 -1
  61. package/out/core/chromadb-vector-database.d.ts.map +1 -1
  62. package/out/core/chromadb-vector-database.js +10 -12
  63. package/out/core/chromadb-vector-database.js.map +1 -1
  64. package/out/core/migration-manager.d.ts.map +1 -1
  65. package/out/core/migration-manager.js +61 -32
  66. package/out/core/migration-manager.js.map +1 -1
  67. package/out/core/multi-db-manager.d.ts +26 -0
  68. package/out/core/multi-db-manager.d.ts.map +1 -1
  69. package/out/core/multi-db-manager.js +143 -2
  70. package/out/core/multi-db-manager.js.map +1 -1
  71. package/out/core/path-normalizer.d.ts +46 -0
  72. package/out/core/path-normalizer.d.ts.map +1 -0
  73. package/out/core/path-normalizer.js +152 -0
  74. package/out/core/path-normalizer.js.map +1 -0
  75. package/out/core/vector-database-factory.js +5 -5
  76. package/out/core/vector-database-factory.js.map +1 -1
  77. package/out/core/vss-vector-database.js +8 -8
  78. package/out/core/vss-vector-database.js.map +1 -1
  79. package/out/embedding/embedding-pipeline.d.ts +18 -0
  80. package/out/embedding/embedding-pipeline.d.ts.map +1 -1
  81. package/out/embedding/embedding-pipeline.js +192 -3
  82. package/out/embedding/embedding-pipeline.js.map +1 -1
  83. package/out/embedding/module-summarizer.d.ts +25 -0
  84. package/out/embedding/module-summarizer.d.ts.map +1 -0
  85. package/out/embedding/module-summarizer.js +104 -0
  86. package/out/embedding/module-summarizer.js.map +1 -0
  87. package/out/ingestors/adr-ingestor.d.ts.map +1 -1
  88. package/out/ingestors/adr-ingestor.js +7 -8
  89. package/out/ingestors/adr-ingestor.js.map +1 -1
  90. package/out/ingestors/module-ingestor.d.ts.map +1 -1
  91. package/out/ingestors/module-ingestor.js +17 -0
  92. package/out/ingestors/module-ingestor.js.map +1 -1
  93. package/out/ingestors/symbol-ingestor.d.ts.map +1 -1
  94. package/out/ingestors/symbol-ingestor.js +24 -2
  95. package/out/ingestors/symbol-ingestor.js.map +1 -1
  96. package/out/mcp/tools/gap-analysis.d.ts +21 -2
  97. package/out/mcp/tools/gap-analysis.d.ts.map +1 -1
  98. package/out/mcp/tools/gap-analysis.js +326 -27
  99. package/out/mcp/tools/gap-analysis.js.map +1 -1
  100. package/out/mcp/tools/learning-path.d.ts.map +1 -1
  101. package/out/mcp/tools/learning-path.js +19 -5
  102. package/out/mcp/tools/learning-path.js.map +1 -1
  103. package/out/mcp/tools/semantic-discovery.d.ts.map +1 -1
  104. package/out/mcp/tools/semantic-discovery.js +110 -22
  105. package/out/mcp/tools/semantic-discovery.js.map +1 -1
  106. package/out/mcp/tools/source-access-contract.d.ts +26 -0
  107. package/out/mcp/tools/source-access-contract.d.ts.map +1 -0
  108. package/out/mcp/tools/source-access-contract.js +45 -0
  109. package/out/mcp/tools/source-access-contract.js.map +1 -0
  110. package/out/mcp/tools/source-snippet.d.ts +71 -0
  111. package/out/mcp/tools/source-snippet.d.ts.map +1 -0
  112. package/out/mcp/tools/source-snippet.js +82 -0
  113. package/out/mcp/tools/source-snippet.js.map +1 -0
  114. package/out/models/action-hint.d.ts +36 -0
  115. package/out/models/action-hint.d.ts.map +1 -0
  116. package/out/models/action-hint.js +38 -0
  117. package/out/models/action-hint.js.map +1 -0
  118. package/out/models/evidence.d.ts +68 -0
  119. package/out/models/evidence.d.ts.map +1 -0
  120. package/out/models/evidence.js +91 -0
  121. package/out/models/evidence.js.map +1 -0
  122. package/out/models/module.d.ts +2 -0
  123. package/out/models/module.d.ts.map +1 -1
  124. package/out/models/reason-codes.d.ts +52 -0
  125. package/out/models/reason-codes.d.ts.map +1 -0
  126. package/out/models/reason-codes.js +83 -0
  127. package/out/models/reason-codes.js.map +1 -0
  128. package/out/models/symbol.d.ts +6 -0
  129. package/out/models/symbol.d.ts.map +1 -1
  130. package/out/repositories/adr-repository.d.ts.map +1 -1
  131. package/out/repositories/adr-repository.js +2 -1
  132. package/out/repositories/adr-repository.js.map +1 -1
  133. package/out/repositories/module-repository.d.ts.map +1 -1
  134. package/out/repositories/module-repository.js +9 -3
  135. package/out/repositories/module-repository.js.map +1 -1
  136. package/out/repositories/symbol-repository.d.ts.map +1 -1
  137. package/out/repositories/symbol-repository.js +22 -4
  138. package/out/repositories/symbol-repository.js.map +1 -1
  139. package/out/services/cross-dimension-linker.d.ts.map +1 -1
  140. package/out/services/cross-dimension-linker.js +27 -3
  141. package/out/services/cross-dimension-linker.js.map +1 -1
  142. package/package.json +196 -195
  143. package/schemas/sqlite/001_add_source_code_spans_modules.sql +7 -0
  144. package/schemas/sqlite/001_z_add_source_code_spans_modules.sql +13 -0
  145. package/schemas/sqlite/002_add_source_code_spans_symbols.sql +15 -0
  146. package/schemas/sqlite/002_z_add_source_code_spans_symbols.sql +21 -0
  147. package/schemas/sqlite/006_add_source_access_config.sql +33 -0
package/README.md CHANGED
@@ -110,6 +110,31 @@ Für AI-Agenten und Entwickler stehen CLI-Tools für direkten Datenbank-Zugriff
110
110
 
111
111
  **Hinweis:** Die Embedding-Pipeline wird automatisch bei der Ingestion ausgeführt, kann aber auch manuell via `noyrax-5d-database-embedding` ausgeführt werden (z.B. wenn ChromaDB nachträglich gestartet wurde).
112
112
 
113
+ ### Environment Variables
114
+
115
+ Das System nutzt folgende Environment Variables (können in `.env` Datei oder als System-Environment-Variablen gesetzt werden):
116
+
117
+ - **`OPENAI_API_KEY`** (erforderlich für Embeddings):
118
+ - API-Key für OpenAI (für Embedding-Generierung und optional Summarization)
119
+ - Wird automatisch aus `.env` Datei geladen
120
+ - Beispiel: `OPENAI_API_KEY=sk-...`
121
+
122
+ - **`EMBEDDING_STRATEGY`** (optional, default: `optimize`):
123
+ - Strategie für große Module-Dokumentationen (>8000 Tokens)
124
+ - Mögliche Werte:
125
+ - `optimize` (default): Intelligente Kürzung - behält Struktur, entfernt Details
126
+ - `hierarchical`: Nur Struktur (Header, Namen, Signaturen) - Details in Y-Dimension
127
+ - `summarize`: LLM-basierte Summarization (erfordert `OPENAI_API_KEY`)
128
+ - Beispiel: `EMBEDDING_STRATEGY=summarize`
129
+
130
+ **Token-Limit-Handling:**
131
+ - OpenAI text-embedding-3-small hat ein Context-Length-Limit von 8192 Tokens
132
+ - Große Module-Dokumentationen werden automatisch erkannt (>8000 Tokens)
133
+ - Die gewählte Strategie wird automatisch angewendet
134
+ - Bei Summarization-Fehlern: Automatischer Fallback auf Optimize-Strategie
135
+
136
+ Siehe `docs/adr/021-embedding-system-generator-pipeline.md` für Details zu den Strategien.
137
+
113
138
  **Gap Analysis Tool:**
114
139
 
115
140
  Das `gap_analysis` Tool identifiziert systematisch Dokumentationslücken:
@@ -25,11 +25,5 @@ export declare class AdrApi {
25
25
  * Supports various path formats (similar to ModuleApi.getModuleByPath).
26
26
  */
27
27
  getAdrsByFilePath(filePath: string, pluginId: string): Promise<Adr[]>;
28
- /**
29
- * Normalizes a file path to generate possible variants for flexible matching.
30
- * Returns an array of path variants in order of preference.
31
- * (Same logic as ModuleApi.normalizeFilePath)
32
- */
33
- private normalizeFilePath;
34
28
  }
35
29
  //# sourceMappingURL=adr-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adr-api.d.ts","sourceRoot":"","sources":["../../src/api/adr-api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC;;GAEG;AACH,qBAAa,MAAM;IACf,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;;OAGG;IACU,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAwBrF;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAqC1B;;OAEG;IACU,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAMzD;;;OAGG;IACU,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAwBlF;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CA6C5B"}
1
+ {"version":3,"file":"adr-api.d.ts","sourceRoot":"","sources":["../../src/api/adr-api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGpC;;GAEG;AACH,qBAAa,MAAM;IACf,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;;OAGG;IACU,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAwBrF;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA2C1B;;OAEG;IACU,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAMzD;;;OAGG;IACU,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;CAwBrF"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AdrApi = void 0;
4
4
  const adr_repository_1 = require("../repositories/adr-repository");
5
+ const path_normalizer_1 = require("../core/path-normalizer");
5
6
  /**
6
7
  * API for W-Dimension: ADRs
7
8
  */
@@ -38,26 +39,31 @@ class AdrApi {
38
39
  */
39
40
  normalizeAdrNumber(adrNumber) {
40
41
  const variants = [];
42
+ // Normalize: Remove "ADR-" prefix if present (case-insensitive)
43
+ let normalizedInput = adrNumber.replace(/^ADR-/i, '').trim();
44
+ if (normalizedInput === '') {
45
+ normalizedInput = adrNumber; // Fallback to original if normalization resulted in empty string
46
+ }
41
47
  // Remove any non-numeric prefix/suffix
42
- const numericMatch = adrNumber.match(/(\d+)/);
48
+ const numericMatch = normalizedInput.match(/(\d+)/);
43
49
  if (!numericMatch) {
44
- return [adrNumber]; // Return original if no number found
50
+ return [normalizedInput]; // Return normalized if no number found
45
51
  }
46
52
  const numericPart = numericMatch[1];
47
53
  const numValue = parseInt(numericPart, 10);
48
- // Original
49
- variants.push(adrNumber);
54
+ // Original (normalized)
55
+ variants.push(normalizedInput);
50
56
  // With leading zeros (3 digits: "001", "020", "042")
51
57
  const withLeadingZeros = numValue.toString().padStart(3, '0');
52
58
  if (withLeadingZeros !== numericPart) {
53
- variants.push(adrNumber.replace(numericPart, withLeadingZeros));
59
+ variants.push(normalizedInput.replace(numericPart, withLeadingZeros));
54
60
  }
55
61
  // Without leading zeros (if original had them)
56
62
  if (numericPart !== numValue.toString()) {
57
- variants.push(adrNumber.replace(numericPart, numValue.toString()));
63
+ variants.push(normalizedInput.replace(numericPart, numValue.toString()));
58
64
  }
59
65
  // Just the number (if original had prefix/suffix)
60
- if (adrNumber !== numericPart) {
66
+ if (normalizedInput !== numericPart) {
61
67
  variants.push(numericPart);
62
68
  variants.push(withLeadingZeros);
63
69
  variants.push(numValue.toString());
@@ -86,7 +92,7 @@ class AdrApi {
86
92
  return adrs;
87
93
  }
88
94
  // Generate normalized path variants
89
- const pathVariants = this.normalizeFilePath(filePath);
95
+ const pathVariants = path_normalizer_1.PathNormalizer.generateLookupVariants(filePath);
90
96
  // Try each variant
91
97
  for (const variant of pathVariants) {
92
98
  adrs = await repository.findByFilePath(variant, pluginId);
@@ -96,47 +102,6 @@ class AdrApi {
96
102
  }
97
103
  return [];
98
104
  }
99
- /**
100
- * Normalizes a file path to generate possible variants for flexible matching.
101
- * Returns an array of path variants in order of preference.
102
- * (Same logic as ModuleApi.normalizeFilePath)
103
- */
104
- normalizeFilePath(filePath) {
105
- const variants = [];
106
- // Normalize separators to forward slashes
107
- let normalized = filePath.replace(/\\/g, '/');
108
- variants.push(normalized);
109
- // Remove leading slashes
110
- const withoutLeadingSlash = normalized.replace(/^\/+/, '');
111
- if (withoutLeadingSlash !== normalized) {
112
- variants.push(withoutLeadingSlash);
113
- }
114
- const pluginPrefixes = ['5d-database-plugin/', 'documentation-system-plugin/', 'mcp-server/'];
115
- // Remove common plugin prefixes (e.g., "5d-database-plugin/")
116
- for (const prefix of pluginPrefixes) {
117
- if (normalized.startsWith(prefix)) {
118
- const withoutPrefix = normalized.substring(prefix.length);
119
- variants.push(withoutPrefix);
120
- }
121
- // Also try without leading slash
122
- if (withoutLeadingSlash.startsWith(prefix)) {
123
- const withoutPrefix = withoutLeadingSlash.substring(prefix.length);
124
- variants.push(withoutPrefix);
125
- }
126
- }
127
- // ADD variants WITH plugin prefixes (if path doesn't already have one)
128
- // This handles cases where file mappings are stored with plugin prefix but queried without
129
- const hasPluginPrefix = pluginPrefixes.some(prefix => normalized.startsWith(prefix) || withoutLeadingSlash.startsWith(prefix));
130
- if (!hasPluginPrefix) {
131
- // Add variants with each plugin prefix
132
- for (const prefix of pluginPrefixes) {
133
- variants.push(`${prefix}${withoutLeadingSlash}`);
134
- variants.push(`${prefix}${normalized}`);
135
- }
136
- }
137
- // Remove duplicates and return
138
- return Array.from(new Set(variants));
139
- }
140
105
  }
141
106
  exports.AdrApi = AdrApi;
142
107
  //# sourceMappingURL=adr-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adr-api.js","sourceRoot":"","sources":["../../src/api/adr-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adr-api.js","sourceRoot":"","sources":["../../src/api/adr-api.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { MultiDbManager } from '../core/multi-db-manager';
2
2
  import { EntityReference } from '../models/entity-reference';
3
+ import { Evidence } from '../models/evidence';
3
4
  /**
4
5
  * Bootstrap information for first-time system understanding.
5
6
  * Provides everything an agent needs to start without prior knowledge.
@@ -14,7 +15,7 @@ export interface BootstrapInfo {
14
15
  how_to_navigate: string;
15
16
  example_queries: string[];
16
17
  dimensions_overview: Array<{
17
- id: 'X' | 'Y' | 'Z' | 'W' | 'T';
18
+ id: 'X' | 'Y' | 'Z' | 'W' | 'T' | 'V';
18
19
  name: string;
19
20
  description: string;
20
21
  }>;
@@ -23,6 +24,7 @@ export interface BootstrapInfo {
23
24
  description: string;
24
25
  example: any;
25
26
  }>;
27
+ evidence?: Evidence;
26
28
  }
27
29
  /**
28
30
  * Bootstrap API - first point of contact for agents without prior knowledge.
@@ -31,6 +33,7 @@ export interface BootstrapInfo {
31
33
  export declare class BootstrapApi {
32
34
  private dbManager;
33
35
  private selfExplanationApi;
36
+ private evidenceGrader;
34
37
  constructor(dbManager: MultiDbManager);
35
38
  /**
36
39
  * Gets bootstrap information for first-time system understanding.
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-api.d.ts","sourceRoot":"","sources":["../../src/api/bootstrap-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,KAAK,CAAC;QAClB,MAAM,EAAE,eAAe,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,EAAE,KAAK,CAAC;QACvB,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QAChC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,GAAG,CAAC;KAChB,CAAC,CAAC;CACN;AAED;;;GAGG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,kBAAkB,CAAqB;gBAEnC,SAAS,EAAE,cAAc;IAKrC;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAoEnE"}
1
+ {"version":3,"file":"bootstrap-api.d.ts","sourceRoot":"","sources":["../../src/api/bootstrap-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,KAAK,CAAC;QAClB,MAAM,EAAE,eAAe,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,EAAE,KAAK,CAAC;QACvB,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACtC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,GAAG,CAAC;KAChB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACvB;AAID;;;GAGG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,cAAc,CAAiB;gBAE3B,SAAS,EAAE,cAAc;IAMrC;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CA8FnE"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BootstrapApi = void 0;
4
4
  const self_explanation_api_1 = require("./self-explanation-api");
5
+ const evidence_grader_1 = require("./evidence-grader");
5
6
  /**
6
7
  * Bootstrap API - first point of contact for agents without prior knowledge.
7
8
  * Provides system description, entry points, and example queries.
@@ -10,6 +11,7 @@ class BootstrapApi {
10
11
  constructor(dbManager) {
11
12
  this.dbManager = dbManager;
12
13
  this.selfExplanationApi = new self_explanation_api_1.SelfExplanationApi(dbManager);
14
+ this.evidenceGrader = new evidence_grader_1.EvidenceGrader();
13
15
  }
14
16
  /**
15
17
  * Gets bootstrap information for first-time system understanding.
@@ -20,6 +22,9 @@ class BootstrapApi {
20
22
  async getBootstrapInfo(pluginId) {
21
23
  // Get system explanation
22
24
  const systemExplanation = await this.selfExplanationApi.explainSystem(pluginId);
25
+ // Prüfung: Sind Daten vorhanden? (entry_points ODER dimensions entity_count > 0)
26
+ const hasData = systemExplanation.entry_points.length > 0 ||
27
+ systemExplanation.dimensions.some(d => (d.entity_count || 0) > 0);
23
28
  // Get entry points with reasons
24
29
  const entryPoints = systemExplanation.entry_points.map(ep => ({
25
30
  entity: {
@@ -29,11 +34,28 @@ class BootstrapApi {
29
34
  },
30
35
  reason: ep.reason || 'Entry point'
31
36
  }));
37
+ // how_to_navigate beschreibt den Mechanismus (5D views + Tools), nicht die Identität
38
+ let howToNavigate;
39
+ if (hasData) {
40
+ // Mode B: Has Data - Mechanismus-Beschreibung
41
+ howToNavigate = `Use semantic_discovery tool with natural language queries. The system will find relevant entities and provide structured context from all 6 dimensions (X: Modules, Y: Symbols, Z: Dependencies, W: ADRs, T: Changes, V: Embeddings).`;
42
+ }
43
+ else {
44
+ // Mode A: No Data (First Run) - Initialisierungs-Anweisungen
45
+ howToNavigate = `To get started, use 'workflow_ensure_ready' to automatically generate documentation and populate the databases. Alternatively, use 'workflow_full_cycle' for a complete workflow (Scan → Generate → Validate → Ingest → Embeddings) or 'workflow_generate_and_ingest' for a simpler workflow (Generate → Ingest).`;
46
+ }
47
+ // Create evidence: INFERRED from system explanation (which is derived from DB queries)
48
+ const evidence = this.evidenceGrader.gradeAsInferred([
49
+ {
50
+ type: 'DB_QUERY',
51
+ path: 'system_explanation'
52
+ }
53
+ ], 'Bootstrap information derived from system explanation, which aggregates data from multiple database queries');
32
54
  return {
33
- what_am_i: systemExplanation.what_am_i,
34
- how_do_i_work: systemExplanation.how_do_i_work,
55
+ what_am_i: systemExplanation.what_am_i, // Die Codebase (Name/Desc)
56
+ how_do_i_work: systemExplanation.how_do_i_work, // System facts (was ist in der Codebase)
35
57
  where_to_start: entryPoints,
36
- how_to_navigate: 'Use semantic_discovery tool with natural language queries. The system will find relevant entities and provide structured context from all 5 dimensions.',
58
+ how_to_navigate: howToNavigate, // Mechanismus (5D-System als Tool), nicht Identität
37
59
  example_queries: [
38
60
  'How does ingestion work?',
39
61
  'What are the main components?',
@@ -80,7 +102,8 @@ class BootstrapApi {
80
102
  pluginId
81
103
  }
82
104
  }
83
- ]
105
+ ],
106
+ evidence
84
107
  };
85
108
  }
86
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-api.js","sourceRoot":"","sources":["../../src/api/bootstrap-api.ts"],"names":[],"mappings":";;;AACA,iEAA4D;AA4B5D;;;GAGG;AACH,MAAa,YAAY;IAIrB,YAAY,SAAyB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,yCAAkB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACnC,yBAAyB;QACzB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEhF,gCAAgC;QAChC,MAAM,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1D,MAAM,EAAE;gBACJ,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,WAAW,EAAE,EAAE,CAAC,WAAW;aAC9B;YACD,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,aAAa;SACrC,CAAC,CAAC,CAAC;QAEJ,OAAO;YACH,SAAS,EAAE,iBAAiB,CAAC,SAAS;YACtC,aAAa,EAAE,iBAAiB,CAAC,aAAa;YAC9C,cAAc,EAAE,WAAW;YAC3B,eAAe,EAAE,yJAAyJ;YAC1K,eAAe,EAAE;gBACb,0BAA0B;gBAC1B,+BAA+B;gBAC/B,+BAA+B;gBAC/B,2BAA2B;gBAC3B,2BAA2B;gBAC3B,oCAAoC;gBACpC,4BAA4B;gBAC5B,iCAAiC;aACpC;YACD,mBAAmB,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1D,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,WAAW,EAAE,GAAG,CAAC,WAAW;aAC/B,CAAC,CAAC;YACH,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,oBAAoB;oBAC1B,WAAW,EAAE,6DAA6D;oBAC1E,OAAO,EAAE;wBACL,KAAK,EAAE,0BAA0B;wBACjC,QAAQ;qBACX;iBACJ;gBACD;oBACI,IAAI,EAAE,oBAAoB;oBAC1B,WAAW,EAAE,0DAA0D;oBACvE,OAAO,EAAE;wBACL,QAAQ;qBACX;iBACJ;gBACD;oBACI,IAAI,EAAE,eAAe;oBACrB,WAAW,EAAE,yDAAyD;oBACtE,OAAO,EAAE;wBACL,KAAK,EAAE,WAAW;wBAClB,QAAQ;qBACX;iBACJ;gBACD;oBACI,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,6FAA6F;oBAC1G,OAAO,EAAE;wBACL,QAAQ;qBACX;iBACJ;aACJ;SACJ,CAAC;IACN,CAAC;CACJ;AAnFD,oCAmFC"}
1
+ {"version":3,"file":"bootstrap-api.js","sourceRoot":"","sources":["../../src/api/bootstrap-api.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"context-builder.d.ts","sourceRoot":"","sources":["../../src/api/context-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAQ7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,KAAK,CAAC;QACZ,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACvC,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,GAAG,CAAC;KAChB,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,eAAe,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,IAAI,EAAE,KAAK,CAAC;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;IACH,YAAY,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAY;gBAEjB,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ;IAUzD;;;;;;OAMG;IACG,YAAY,CACd,UAAU,EAAE,eAAe,EAAE,EAC7B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,CAAC;IAiD7B;;OAEG;YACW,gBAAgB;IA4B9B;;OAEG;YACW,kBAAkB;IAwEhC;;OAEG;YACW,eAAe;IAoC7B;;OAEG;YACW,eAAe;IA4C7B;;OAEG;YACW,cAAc;IAY5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAgBlC"}
1
+ {"version":3,"file":"context-builder.d.ts","sourceRoot":"","sources":["../../src/api/context-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAQ7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,KAAK,CAAC;QACZ,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACvC,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,GAAG,CAAC;KAChB,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,eAAe,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,IAAI,EAAE,KAAK,CAAC;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;IACH,YAAY,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAY;gBAEjB,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ;IAUzD;;;;;;OAMG;IACG,YAAY,CACd,UAAU,EAAE,eAAe,EAAE,EAC7B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,CAAC;IAiD7B;;OAEG;YACW,gBAAgB;IA4B9B;;OAEG;YACW,kBAAkB;IAwEhC;;OAEG;YACW,eAAe;IAoC7B;;OAEG;YACW,eAAe;IA4C7B;;OAEG;YACW,cAAc;IA6B5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAgBlC"}
@@ -248,11 +248,27 @@ class ContextBuilder {
248
248
  const db = await this.dbManager.getDatabase('V');
249
249
  const navRepo = new navigation_repository_1.NavigationRepository(db);
250
250
  const entryPoints = await navRepo.getEntryPoints('X', pluginId);
251
- return entryPoints.map(ep => ({
252
- dimension: ep.dimension,
253
- entity_id: ep.entity_id,
254
- external_id: '' // Will be resolved from module
255
- }));
251
+ const result = [];
252
+ // ✅ Fix: Use existing this.moduleApi (already initialized in constructor)
253
+ for (const ep of entryPoints) {
254
+ try {
255
+ const module = await this.moduleApi.getModuleById(ep.entity_id, pluginId);
256
+ if (module) {
257
+ result.push({
258
+ dimension: ep.dimension,
259
+ entity_id: ep.entity_id,
260
+ external_id: module.file_path // ✅ Fix: Use actual file_path instead of ''
261
+ });
262
+ }
263
+ // Skip entry points without corresponding module
264
+ }
265
+ catch (error) {
266
+ // Skip entry points that cause errors (e.g., module not found)
267
+ // This ensures we don't break the entire context building process
268
+ continue;
269
+ }
270
+ }
271
+ return result;
256
272
  }
257
273
  /**
258
274
  * Deduplicates ADRs by adr_number.
@@ -1 +1 @@
1
- {"version":3,"file":"context-builder.js","sourceRoot":"","sources":["../../src/api/context-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-builder.js","sourceRoot":"","sources":["../../src/api/context-builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import { Evidence, EvidenceSource } from '../models/evidence';
2
+ /**
3
+ * Evidence grader for determining evidence grades and managing sources.
4
+ * Implements the No-Claim-Without-Source rule.
5
+ */
6
+ export declare class EvidenceGrader {
7
+ /**
8
+ * Grades evidence as FACT.
9
+ * FACT: directly derivable from DB/ADR/Code-Symbol/Toolcall (with structured sources).
10
+ *
11
+ * @param sources Structured sources
12
+ * @param description Optional description
13
+ * @returns FACT evidence
14
+ */
15
+ gradeAsFact(sources: EvidenceSource[], description?: string): Evidence;
16
+ /**
17
+ * Grades evidence as INFERRED.
18
+ * INFERRED: derived from multiple facts (all sources must be listed as structured sources).
19
+ *
20
+ * @param sources Structured sources (all facts used for inference)
21
+ * @param description Optional description
22
+ * @returns INFERRED evidence
23
+ */
24
+ gradeAsInferred(sources: EvidenceSource[], description?: string): Evidence;
25
+ /**
26
+ * Grades evidence as HEURISTIC.
27
+ * HEURISTIC: best-practice without system evidence (must be explicitly marked).
28
+ *
29
+ * @param sources Optional structured sources (may be empty for pure heuristics)
30
+ * @param description Description of the heuristic
31
+ * @returns HEURISTIC evidence
32
+ */
33
+ gradeAsHeuristic(sources?: EvidenceSource[], description?: string): Evidence;
34
+ /**
35
+ * Automatically grades evidence based on source count and type.
36
+ *
37
+ * Rules:
38
+ * - Single direct source (DB_QUERY, STATUS_CHECK, ADR, MODULE, SYMBOL) → FACT
39
+ * - Multiple sources → INFERRED
40
+ * - No sources → HEURISTIC (with warning)
41
+ *
42
+ * @param sources Structured sources
43
+ * @param description Optional description
44
+ * @returns Graded evidence
45
+ */
46
+ autoGrade(sources: EvidenceSource[], description?: string): Evidence;
47
+ /**
48
+ * Validates evidence and throws if invalid.
49
+ *
50
+ * @param evidence Evidence to validate
51
+ * @throws Error if evidence is invalid
52
+ */
53
+ validate(evidence: Evidence): void;
54
+ /**
55
+ * Checks if text claims "from documentation" without sources.
56
+ * This violates the No-Claim-Without-Source rule.
57
+ *
58
+ * @param text Text to check
59
+ * @param evidence Evidence attached to the text
60
+ * @returns true if violation detected
61
+ */
62
+ checkNoClaimWithoutSource(text: string, evidence?: Evidence): boolean;
63
+ /**
64
+ * Ensures HEURISTIC evidence is explicitly marked.
65
+ *
66
+ * @param evidence Evidence to check
67
+ * @returns true if HEURISTIC is properly marked
68
+ */
69
+ isHeuristicMarked(evidence: Evidence): boolean;
70
+ /**
71
+ * Grade code analysis evidence.
72
+ * DETERMINISTIC only when source code was retrieved and verified.
73
+ *
74
+ * @param args Analysis arguments
75
+ * @returns Graded evidence
76
+ */
77
+ gradeCodeAnalysis(args: {
78
+ source_snippet_retrieved: boolean;
79
+ source_hash_verified: boolean;
80
+ analysis: string;
81
+ }): Evidence;
82
+ }
83
+ //# sourceMappingURL=evidence-grader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-grader.d.ts","sourceRoot":"","sources":["../../src/api/evidence-grader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAwG,MAAM,oBAAoB,CAAC;AAEpK;;;GAGG;AACH,qBAAa,cAAc;IACvB;;;;;;;OAOG;IACH,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;IAStE;;;;;;;OAOG;IACH,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;IAS1E;;;;;;;OAOG;IACH,gBAAgB,CAAC,OAAO,GAAE,cAAc,EAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;IAIhF;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;IAiBpE;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOlC;;;;;;;OAOG;IACH,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO;IAyBrE;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAQ9C;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE;QACpB,wBAAwB,EAAE,OAAO,CAAC;QAClC,oBAAoB,EAAE,OAAO,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC;KACpB,GAAG,QAAQ;CAuBf"}
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EvidenceGrader = void 0;
4
+ const evidence_1 = require("../models/evidence");
5
+ /**
6
+ * Evidence grader for determining evidence grades and managing sources.
7
+ * Implements the No-Claim-Without-Source rule.
8
+ */
9
+ class EvidenceGrader {
10
+ /**
11
+ * Grades evidence as FACT.
12
+ * FACT: directly derivable from DB/ADR/Code-Symbol/Toolcall (with structured sources).
13
+ *
14
+ * @param sources Structured sources
15
+ * @param description Optional description
16
+ * @returns FACT evidence
17
+ */
18
+ gradeAsFact(sources, description) {
19
+ const evidence = (0, evidence_1.createFactEvidence)(sources, description);
20
+ const validation = (0, evidence_1.validateEvidence)(evidence);
21
+ if (!validation.valid) {
22
+ throw new Error(`Invalid FACT evidence: ${validation.error}`);
23
+ }
24
+ return evidence;
25
+ }
26
+ /**
27
+ * Grades evidence as INFERRED.
28
+ * INFERRED: derived from multiple facts (all sources must be listed as structured sources).
29
+ *
30
+ * @param sources Structured sources (all facts used for inference)
31
+ * @param description Optional description
32
+ * @returns INFERRED evidence
33
+ */
34
+ gradeAsInferred(sources, description) {
35
+ const evidence = (0, evidence_1.createInferredEvidence)(sources, description);
36
+ const validation = (0, evidence_1.validateEvidence)(evidence);
37
+ if (!validation.valid) {
38
+ throw new Error(`Invalid INFERRED evidence: ${validation.error}`);
39
+ }
40
+ return evidence;
41
+ }
42
+ /**
43
+ * Grades evidence as HEURISTIC.
44
+ * HEURISTIC: best-practice without system evidence (must be explicitly marked).
45
+ *
46
+ * @param sources Optional structured sources (may be empty for pure heuristics)
47
+ * @param description Description of the heuristic
48
+ * @returns HEURISTIC evidence
49
+ */
50
+ gradeAsHeuristic(sources = [], description) {
51
+ return (0, evidence_1.createHeuristicEvidence)(sources, description);
52
+ }
53
+ /**
54
+ * Automatically grades evidence based on source count and type.
55
+ *
56
+ * Rules:
57
+ * - Single direct source (DB_QUERY, STATUS_CHECK, ADR, MODULE, SYMBOL) → FACT
58
+ * - Multiple sources → INFERRED
59
+ * - No sources → HEURISTIC (with warning)
60
+ *
61
+ * @param sources Structured sources
62
+ * @param description Optional description
63
+ * @returns Graded evidence
64
+ */
65
+ autoGrade(sources, description) {
66
+ if (sources.length === 0) {
67
+ return this.gradeAsHeuristic([], description || 'No sources provided - marked as HEURISTIC');
68
+ }
69
+ if (sources.length === 1) {
70
+ const source = sources[0];
71
+ // Direct sources are FACT
72
+ if (['DB_QUERY', 'STATUS_CHECK', 'ADR', 'MODULE', 'SYMBOL'].includes(source.type)) {
73
+ return this.gradeAsFact(sources, description);
74
+ }
75
+ }
76
+ // Multiple sources → INFERRED
77
+ return this.gradeAsInferred(sources, description);
78
+ }
79
+ /**
80
+ * Validates evidence and throws if invalid.
81
+ *
82
+ * @param evidence Evidence to validate
83
+ * @throws Error if evidence is invalid
84
+ */
85
+ validate(evidence) {
86
+ const validation = (0, evidence_1.validateEvidence)(evidence);
87
+ if (!validation.valid) {
88
+ throw new Error(`Invalid evidence: ${validation.error}`);
89
+ }
90
+ }
91
+ /**
92
+ * Checks if text claims "from documentation" without sources.
93
+ * This violates the No-Claim-Without-Source rule.
94
+ *
95
+ * @param text Text to check
96
+ * @param evidence Evidence attached to the text
97
+ * @returns true if violation detected
98
+ */
99
+ checkNoClaimWithoutSource(text, evidence) {
100
+ // Check for common phrases that claim documentation without sources
101
+ const claimPhrases = [
102
+ 'in den Dokumenten gefunden',
103
+ 'aus der Dokumentation',
104
+ 'in der Doku',
105
+ 'found in documentation',
106
+ 'from documentation',
107
+ 'in the docs'
108
+ ];
109
+ const hasClaim = claimPhrases.some(phrase => text.toLowerCase().includes(phrase.toLowerCase()));
110
+ if (hasClaim) {
111
+ // If text claims documentation but no evidence or no sources
112
+ if (!evidence || evidence.sources.length === 0) {
113
+ return true; // Violation
114
+ }
115
+ }
116
+ return false; // No violation
117
+ }
118
+ /**
119
+ * Ensures HEURISTIC evidence is explicitly marked.
120
+ *
121
+ * @param evidence Evidence to check
122
+ * @returns true if HEURISTIC is properly marked
123
+ */
124
+ isHeuristicMarked(evidence) {
125
+ if (evidence.grade === 'HEURISTIC') {
126
+ // HEURISTIC should have description or be explicitly marked
127
+ return !!(evidence.description || evidence.sources.length === 0);
128
+ }
129
+ return true; // Not HEURISTIC, so marking is not required
130
+ }
131
+ /**
132
+ * Grade code analysis evidence.
133
+ * DETERMINISTIC only when source code was retrieved and verified.
134
+ *
135
+ * @param args Analysis arguments
136
+ * @returns Graded evidence
137
+ */
138
+ gradeCodeAnalysis(args) {
139
+ if (!args.source_snippet_retrieved) {
140
+ // Code not retrieved - INFERRED
141
+ return this.gradeAsInferred([
142
+ { type: 'SYMBOL' }, // Signature analysis
143
+ { type: 'DEPENDENCY' } // Dependency graph analysis
144
+ ], args.analysis + '\n\n⚠️ WARNING: Analysis based on signatures only. ' +
145
+ 'Source code not retrieved. Confidence: LOW.');
146
+ }
147
+ if (args.source_snippet_retrieved && !args.source_hash_verified) {
148
+ // Code retrieved but not verified - INFERRED
149
+ return this.gradeAsInferred([
150
+ { type: 'STATUS_CHECK', metadata: { check: 'source_code_unverified' } }
151
+ ], args.analysis + '\n\n⚠️ WARNING: Source code retrieved but hash not verified. ' +
152
+ 'Code may have changed since scan. Confidence: MEDIUM.');
153
+ }
154
+ // Code retrieved and verified - FACT (DETERMINISTIC)
155
+ return this.gradeAsFact([
156
+ { type: 'STATUS_CHECK', metadata: { check: 'source_code_verified' } }
157
+ ], args.analysis + '\n\n✅ Analysis based on verified source code. Confidence: HIGH.');
158
+ }
159
+ }
160
+ exports.EvidenceGrader = EvidenceGrader;
161
+ //# sourceMappingURL=evidence-grader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-grader.js","sourceRoot":"","sources":["../../src/api/evidence-grader.ts"],"names":[],"mappings":"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"}