trace-mcp 1.14.0 → 1.15.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.
package/dist/index.d.ts CHANGED
@@ -63,6 +63,8 @@ interface RawSymbol {
63
63
  metadata?: Record<string, unknown>;
64
64
  }
65
65
  type SymbolKind = 'class' | 'method' | 'function' | 'constant' | 'property' | 'interface' | 'trait' | 'enum' | 'type' | 'variable' | 'enum_case' | 'namespace' | 'decorator';
66
+ /** How an edge was resolved during indexing — tiers from highest to lowest confidence */
67
+ type EdgeResolution = 'lsp_resolved' | 'ast_resolved' | 'ast_inferred' | 'text_matched';
66
68
  interface RawEdge {
67
69
  sourceSymbolId?: string;
68
70
  sourceNodeType?: string;
@@ -72,6 +74,8 @@ interface RawEdge {
72
74
  targetRefId?: number;
73
75
  edgeType: string;
74
76
  resolved?: boolean;
77
+ /** How this edge was resolved: ast_resolved (direct AST), ast_inferred (import graph), text_matched (heuristic) */
78
+ resolution?: EdgeResolution;
75
79
  metadata?: Record<string, unknown>;
76
80
  }
77
81
  interface RawRoute {
@@ -274,6 +278,7 @@ interface EdgeRow {
274
278
  resolved: number;
275
279
  metadata: string | null;
276
280
  is_cross_ws: number;
281
+ resolution_tier: string;
277
282
  }
278
283
  interface RouteRow {
279
284
  id: number;
@@ -462,7 +467,7 @@ declare class GraphRepository {
462
467
  constructor(db: Database.Database);
463
468
  createNode(nodeType: string, refId: number): number;
464
469
  getNodeId(nodeType: string, refId: number): number | undefined;
465
- insertEdge(sourceNodeId: number, targetNodeId: number, edgeTypeName: string, resolved?: boolean, metadata?: Record<string, unknown>, isCrossWs?: boolean): TraceMcpResult<number>;
470
+ insertEdge(sourceNodeId: number, targetNodeId: number, edgeTypeName: string, resolved?: boolean, metadata?: Record<string, unknown>, isCrossWs?: boolean, resolutionTier?: string): TraceMcpResult<number>;
466
471
  deleteEdgesForFileNodes(fileId: number): void;
467
472
  deleteOutgoingImportEdges(fileId: number): void;
468
473
  deleteOutgoingEdgesForFileNodes(fileId: number): void;
@@ -621,6 +626,7 @@ declare class Store {
621
626
  insertSymbols(fileId: number, syms: RawSymbol[]): number[];
622
627
  deleteSymbolsByFile(fileId: number): void;
623
628
  getSymbolsByFile(fileId: number): SymbolRow[];
629
+ getSymbolsByFileIds(fileIds: number[]): SymbolRow[];
624
630
  getSymbolBySymbolId(symbolId: string): SymbolRow | undefined;
625
631
  getSymbolByFqn(fqn: string): SymbolRow | undefined;
626
632
  getSymbolById(id: number): SymbolRow | undefined;
@@ -647,7 +653,7 @@ declare class Store {
647
653
  }[];
648
654
  createNode(nodeType: string, refId: number): number;
649
655
  getNodeId(nodeType: string, refId: number): number | undefined;
650
- insertEdge(sourceNodeId: number, targetNodeId: number, edgeTypeName: string, resolved?: boolean, metadata?: Record<string, unknown>, isCrossWs?: boolean): TraceMcpResult<number>;
656
+ insertEdge(sourceNodeId: number, targetNodeId: number, edgeTypeName: string, resolved?: boolean, metadata?: Record<string, unknown>, isCrossWs?: boolean, resolutionTier?: string): TraceMcpResult<number>;
651
657
  deleteEdgesForFileNodes(fileId: number): void;
652
658
  deleteOutgoingImportEdges(fileId: number): void;
653
659
  deleteOutgoingEdgesForFileNodes(fileId: number): void;
@@ -816,7 +822,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
816
822
  }>>;
817
823
  ai: z.ZodOptional<z.ZodObject<{
818
824
  enabled: z.ZodDefault<z.ZodBoolean>;
819
- provider: z.ZodDefault<z.ZodEnum<["ollama", "openai"]>>;
825
+ provider: z.ZodDefault<z.ZodEnum<["onnx", "ollama", "openai"]>>;
820
826
  base_url: z.ZodOptional<z.ZodString>;
821
827
  api_key: z.ZodOptional<z.ZodString>;
822
828
  inference_model: z.ZodOptional<z.ZodString>;
@@ -834,7 +840,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
834
840
  reranker_model: z.ZodOptional<z.ZodString>;
835
841
  }, "strip", z.ZodTypeAny, {
836
842
  enabled: boolean;
837
- provider: "ollama" | "openai";
843
+ provider: "onnx" | "ollama" | "openai";
838
844
  summarize_on_index: boolean;
839
845
  summarize_batch_size: number;
840
846
  summarize_kinds: string[];
@@ -848,7 +854,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
848
854
  reranker_model?: string | undefined;
849
855
  }, {
850
856
  enabled?: boolean | undefined;
851
- provider?: "ollama" | "openai" | undefined;
857
+ provider?: "onnx" | "ollama" | "openai" | undefined;
852
858
  base_url?: string | undefined;
853
859
  api_key?: string | undefined;
854
860
  inference_model?: string | undefined;
@@ -1155,6 +1161,58 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1155
1161
  route_patterns?: string[] | undefined;
1156
1162
  } | undefined;
1157
1163
  }>>;
1164
+ lsp: z.ZodOptional<z.ZodObject<{
1165
+ enabled: z.ZodDefault<z.ZodBoolean>;
1166
+ servers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
1167
+ command: z.ZodString;
1168
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1169
+ initializationOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1170
+ rootUri: z.ZodOptional<z.ZodString>;
1171
+ timeout_ms: z.ZodDefault<z.ZodNumber>;
1172
+ }, "strip", z.ZodTypeAny, {
1173
+ command: string;
1174
+ args: string[];
1175
+ timeout_ms: number;
1176
+ initializationOptions?: Record<string, unknown> | undefined;
1177
+ rootUri?: string | undefined;
1178
+ }, {
1179
+ command: string;
1180
+ args?: string[] | undefined;
1181
+ initializationOptions?: Record<string, unknown> | undefined;
1182
+ rootUri?: string | undefined;
1183
+ timeout_ms?: number | undefined;
1184
+ }>>>;
1185
+ auto_detect: z.ZodDefault<z.ZodBoolean>;
1186
+ max_concurrent_servers: z.ZodDefault<z.ZodNumber>;
1187
+ enrichment_timeout_ms: z.ZodDefault<z.ZodNumber>;
1188
+ batch_size: z.ZodDefault<z.ZodNumber>;
1189
+ }, "strip", z.ZodTypeAny, {
1190
+ enabled: boolean;
1191
+ servers: Record<string, {
1192
+ command: string;
1193
+ args: string[];
1194
+ timeout_ms: number;
1195
+ initializationOptions?: Record<string, unknown> | undefined;
1196
+ rootUri?: string | undefined;
1197
+ }>;
1198
+ auto_detect: boolean;
1199
+ max_concurrent_servers: number;
1200
+ enrichment_timeout_ms: number;
1201
+ batch_size: number;
1202
+ }, {
1203
+ enabled?: boolean | undefined;
1204
+ servers?: Record<string, {
1205
+ command: string;
1206
+ args?: string[] | undefined;
1207
+ initializationOptions?: Record<string, unknown> | undefined;
1208
+ rootUri?: string | undefined;
1209
+ timeout_ms?: number | undefined;
1210
+ }> | undefined;
1211
+ auto_detect?: boolean | undefined;
1212
+ max_concurrent_servers?: number | undefined;
1213
+ enrichment_timeout_ms?: number | undefined;
1214
+ batch_size?: number | undefined;
1215
+ }>>;
1158
1216
  topology: z.ZodOptional<z.ZodObject<{
1159
1217
  enabled: z.ZodDefault<z.ZodBoolean>;
1160
1218
  repos: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -1163,14 +1221,14 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1163
1221
  contract_globs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1164
1222
  }, "strip", z.ZodTypeAny, {
1165
1223
  enabled: boolean;
1166
- repos: string[];
1167
1224
  auto_detect: boolean;
1225
+ repos: string[];
1168
1226
  auto_federation: boolean;
1169
1227
  contract_globs?: string[] | undefined;
1170
1228
  }, {
1171
1229
  enabled?: boolean | undefined;
1172
- repos?: string[] | undefined;
1173
1230
  auto_detect?: boolean | undefined;
1231
+ repos?: string[] | undefined;
1174
1232
  auto_federation?: boolean | undefined;
1175
1233
  contract_globs?: string[] | undefined;
1176
1234
  }>>;
@@ -1522,12 +1580,12 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1522
1580
  /** Server instructions verbosity: full (default ~2K tokens), minimal (~200 tokens), none (empty) */
1523
1581
  instructions_verbosity: z.ZodDefault<z.ZodEnum<["full", "minimal", "none"]>>;
1524
1582
  /** Control which meta fields appear in responses. true = all (default), false = none, or list specific fields to include */
1525
- meta_fields: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["_hints", "_budget_warning", "_budget_level", "_duplicate_warning", "_dedup", "_optimization_hint", "_meta", "_duplication_warnings"]>, "many">]>>;
1583
+ meta_fields: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["_hints", "_budget_warning", "_budget_level", "_duplicate_warning", "_dedup", "_optimization_hint", "_meta", "_duplication_warnings", "_methodology"]>, "many">]>>;
1526
1584
  }, "strip", z.ZodTypeAny, {
1527
1585
  preset: string;
1528
1586
  description_verbosity: "none" | "full" | "minimal";
1529
1587
  instructions_verbosity: "none" | "full" | "minimal";
1530
- meta_fields: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings")[];
1588
+ meta_fields: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings" | "_methodology")[];
1531
1589
  include?: string[] | undefined;
1532
1590
  exclude?: string[] | undefined;
1533
1591
  descriptions?: Record<string, string | Record<string, string>> | undefined;
@@ -1538,7 +1596,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1538
1596
  descriptions?: Record<string, string | Record<string, string>> | undefined;
1539
1597
  description_verbosity?: "none" | "full" | "minimal" | undefined;
1540
1598
  instructions_verbosity?: "none" | "full" | "minimal" | undefined;
1541
- meta_fields?: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings")[] | undefined;
1599
+ meta_fields?: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings" | "_methodology")[] | undefined;
1542
1600
  }>>;
1543
1601
  watch: z.ZodDefault<z.ZodObject<{
1544
1602
  enabled: z.ZodDefault<z.ZodBoolean>;
@@ -1566,6 +1624,13 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1566
1624
  level?: "error" | "trace" | "debug" | "info" | "warn" | "fatal" | undefined;
1567
1625
  max_size_mb?: number | undefined;
1568
1626
  }>>;
1627
+ git: z.ZodDefault<z.ZodObject<{
1628
+ defaultBaseBranch: z.ZodOptional<z.ZodString>;
1629
+ }, "strip", z.ZodTypeAny, {
1630
+ defaultBaseBranch?: string | undefined;
1631
+ }, {
1632
+ defaultBaseBranch?: string | undefined;
1633
+ }>>;
1569
1634
  children: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1570
1635
  }, "strip", z.ZodTypeAny, {
1571
1636
  root: string;
@@ -1589,6 +1654,9 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1589
1654
  level: "error" | "trace" | "debug" | "info" | "warn" | "fatal";
1590
1655
  max_size_mb: number;
1591
1656
  };
1657
+ git: {
1658
+ defaultBaseBranch?: string | undefined;
1659
+ };
1592
1660
  frameworks?: {
1593
1661
  laravel?: {
1594
1662
  graceful_degradation: boolean;
@@ -1600,7 +1668,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1600
1668
  } | undefined;
1601
1669
  ai?: {
1602
1670
  enabled: boolean;
1603
- provider: "ollama" | "openai";
1671
+ provider: "onnx" | "ollama" | "openai";
1604
1672
  summarize_on_index: boolean;
1605
1673
  summarize_batch_size: number;
1606
1674
  summarize_kinds: string[];
@@ -1676,10 +1744,24 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1676
1744
  route_patterns: string[];
1677
1745
  };
1678
1746
  } | undefined;
1747
+ lsp?: {
1748
+ enabled: boolean;
1749
+ servers: Record<string, {
1750
+ command: string;
1751
+ args: string[];
1752
+ timeout_ms: number;
1753
+ initializationOptions?: Record<string, unknown> | undefined;
1754
+ rootUri?: string | undefined;
1755
+ }>;
1756
+ auto_detect: boolean;
1757
+ max_concurrent_servers: number;
1758
+ enrichment_timeout_ms: number;
1759
+ batch_size: number;
1760
+ } | undefined;
1679
1761
  topology?: {
1680
1762
  enabled: boolean;
1681
- repos: string[];
1682
1763
  auto_detect: boolean;
1764
+ repos: string[];
1683
1765
  auto_federation: boolean;
1684
1766
  contract_globs?: string[] | undefined;
1685
1767
  } | undefined;
@@ -1741,7 +1823,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1741
1823
  preset: string;
1742
1824
  description_verbosity: "none" | "full" | "minimal";
1743
1825
  instructions_verbosity: "none" | "full" | "minimal";
1744
- meta_fields: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings")[];
1826
+ meta_fields: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings" | "_methodology")[];
1745
1827
  include?: string[] | undefined;
1746
1828
  exclude?: string[] | undefined;
1747
1829
  descriptions?: Record<string, string | Record<string, string>> | undefined;
@@ -1769,7 +1851,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1769
1851
  } | undefined;
1770
1852
  ai?: {
1771
1853
  enabled?: boolean | undefined;
1772
- provider?: "ollama" | "openai" | undefined;
1854
+ provider?: "onnx" | "ollama" | "openai" | undefined;
1773
1855
  base_url?: string | undefined;
1774
1856
  api_key?: string | undefined;
1775
1857
  inference_model?: string | undefined;
@@ -1846,10 +1928,24 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1846
1928
  route_patterns?: string[] | undefined;
1847
1929
  } | undefined;
1848
1930
  } | undefined;
1931
+ lsp?: {
1932
+ enabled?: boolean | undefined;
1933
+ servers?: Record<string, {
1934
+ command: string;
1935
+ args?: string[] | undefined;
1936
+ initializationOptions?: Record<string, unknown> | undefined;
1937
+ rootUri?: string | undefined;
1938
+ timeout_ms?: number | undefined;
1939
+ }> | undefined;
1940
+ auto_detect?: boolean | undefined;
1941
+ max_concurrent_servers?: number | undefined;
1942
+ enrichment_timeout_ms?: number | undefined;
1943
+ batch_size?: number | undefined;
1944
+ } | undefined;
1849
1945
  topology?: {
1850
1946
  enabled?: boolean | undefined;
1851
- repos?: string[] | undefined;
1852
1947
  auto_detect?: boolean | undefined;
1948
+ repos?: string[] | undefined;
1853
1949
  auto_federation?: boolean | undefined;
1854
1950
  contract_globs?: string[] | undefined;
1855
1951
  } | undefined;
@@ -1914,7 +2010,7 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1914
2010
  descriptions?: Record<string, string | Record<string, string>> | undefined;
1915
2011
  description_verbosity?: "none" | "full" | "minimal" | undefined;
1916
2012
  instructions_verbosity?: "none" | "full" | "minimal" | undefined;
1917
- meta_fields?: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings")[] | undefined;
2013
+ meta_fields?: boolean | ("_hints" | "_budget_warning" | "_budget_level" | "_duplicate_warning" | "_dedup" | "_optimization_hint" | "_meta" | "_duplication_warnings" | "_methodology")[] | undefined;
1918
2014
  } | undefined;
1919
2015
  watch?: {
1920
2016
  enabled?: boolean | undefined;
@@ -1926,6 +2022,9 @@ declare const TraceMcpConfigSchema: z.ZodObject<{
1926
2022
  level?: "error" | "trace" | "debug" | "info" | "warn" | "fatal" | undefined;
1927
2023
  max_size_mb?: number | undefined;
1928
2024
  } | undefined;
2025
+ git?: {
2026
+ defaultBaseBranch?: string | undefined;
2027
+ } | undefined;
1929
2028
  children?: string[] | undefined;
1930
2029
  }>;
1931
2030
  type TraceMcpConfig = z.infer<typeof TraceMcpConfigSchema>;
@@ -1961,12 +2060,16 @@ interface ProgressSnapshot {
1961
2060
  summarization: PipelineProgressSnapshot;
1962
2061
  embedding: PipelineProgressSnapshot;
1963
2062
  }
2063
+ type ProgressListener = (name: PipelineName, progress: PipelineProgress) => void;
1964
2064
  declare class ProgressState {
1965
2065
  indexing: PipelineProgress;
1966
2066
  summarization: PipelineProgress;
1967
2067
  embedding: PipelineProgress;
1968
2068
  private db;
2069
+ private listeners;
1969
2070
  constructor(db?: Database.Database);
2071
+ /** Register a callback for progress updates. Returns unsubscribe function. */
2072
+ onUpdate(listener: ProgressListener): () => void;
1970
2073
  update(name: PipelineName, partial: Partial<PipelineProgress>): void;
1971
2074
  snapshot(): ProgressSnapshot;
1972
2075
  private persist;