sdl-mcp 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +116 -9
- package/config/sdlmcp.config.example.json +57 -92
- package/config/sdlmcp.config.schema.json +3 -2
- package/dist/config/types.d.ts +56 -56
- package/dist/config/types.js +8 -8
- package/dist/config/types.js.map +1 -1
- package/dist/graph/prefetch-model.d.ts.map +1 -1
- package/dist/graph/prefetch-model.js +18 -1
- package/dist/graph/prefetch-model.js.map +1 -1
- package/dist/graph/prefetch.d.ts +2 -1
- package/dist/graph/prefetch.d.ts.map +1 -1
- package/dist/graph/prefetch.js +16 -0
- package/dist/graph/prefetch.js.map +1 -1
- package/dist/indexer/indexer.d.ts +3 -0
- package/dist/indexer/indexer.d.ts.map +1 -1
- package/dist/indexer/indexer.js +205 -24
- package/dist/indexer/indexer.js.map +1 -1
- package/dist/indexer/rustIndexer.d.ts.map +1 -1
- package/dist/indexer/rustIndexer.js +3 -4
- package/dist/indexer/rustIndexer.js.map +1 -1
- package/dist/indexer/treesitter/grammarLoader.d.ts.map +1 -1
- package/dist/indexer/treesitter/grammarLoader.js +32 -46
- package/dist/indexer/treesitter/grammarLoader.js.map +1 -1
- package/dist/mcp/tools/code.d.ts.map +1 -1
- package/dist/mcp/tools/code.js +25 -0
- package/dist/mcp/tools/code.js.map +1 -1
- package/dist/mcp/tools/delta.d.ts.map +1 -1
- package/dist/mcp/tools/delta.js +11 -1
- package/dist/mcp/tools/delta.js.map +1 -1
- package/dist/mcp/tools/prRisk.d.ts.map +1 -1
- package/dist/mcp/tools/prRisk.js +6 -0
- package/dist/mcp/tools/prRisk.js.map +1 -1
- package/dist/mcp/tools/repo.d.ts.map +1 -1
- package/dist/mcp/tools/repo.js +10 -0
- package/dist/mcp/tools/repo.js.map +1 -1
- package/dist/mcp/tools/slice.d.ts.map +1 -1
- package/dist/mcp/tools/slice.js +19 -0
- package/dist/mcp/tools/slice.js.map +1 -1
- package/dist/mcp/tools/symbol.d.ts.map +1 -1
- package/dist/mcp/tools/symbol.js +12 -1
- package/dist/mcp/tools/symbol.js.map +1 -1
- package/dist/ts/diagnostics.js +1 -1
- package/dist/ts/diagnostics.js.map +1 -1
- package/package.json +125 -122
package/README.md
CHANGED
|
@@ -6,7 +6,12 @@
|
|
|
6
6
|
|
|
7
7
|
# SDL-MCP
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
  
|
|
10
|
+
 
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
10
15
|
|
|
11
16
|
<div align="right">
|
|
12
17
|
<details>
|
|
@@ -42,20 +47,122 @@ Instead of opening large files first, SDL-MCP indexes repositories into symbol c
|
|
|
42
47
|
- Faster iteration through incremental indexing and refresh workflows
|
|
43
48
|
- Works across TypeScript, JavaScript, Python, Go, Java, C#, C, C++, PHP, Rust, Kotlin, and Shell
|
|
44
49
|
|
|
45
|
-
##
|
|
50
|
+
## Claude Opus 4.6 High Overview
|
|
51
|
+
|
|
52
|
+
Question: "Review the code for SDL-MCP and explain to potential new users what this MCP server does and the benefits of
|
|
53
|
+
using it."
|
|
54
|
+
|
|
55
|
+
Response: "# What is SDL-MCP?
|
|
56
|
+
|
|
57
|
+
**SDL-MCP** (Symbol Delta Ledger - Model Context Protocol) is an MCP server that fundamentally changes how AI coding
|
|
58
|
+
assistants interact with your codebase. Instead of dumping entire files into the AI's context window, SDL-MCP provides
|
|
59
|
+
a structured, token-efficient way to give AI agents exactly the code context they need — and nothing more.
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## The Problem It Solves
|
|
64
|
+
|
|
65
|
+
When AI assistants like Claude work with code, they typically read entire files — sometimes many files — to understand
|
|
66
|
+
enough context to help you. This is wasteful:
|
|
67
|
+
|
|
68
|
+
- **Context windows fill up fast.** A modest codebase can easily exceed token limits.
|
|
69
|
+
- **Irrelevant code dilutes focus.** The AI spends tokens processing code unrelated to your task.
|
|
70
|
+
- **No awareness of what changed.** Every interaction starts from scratch with no incremental understanding.
|
|
71
|
+
|
|
72
|
+
SDL-MCP addresses all three by maintaining a **persistent, indexed understanding** of your codebase and serving
|
|
73
|
+
context through a 4-rung escalation ladder.
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## How It Works
|
|
78
|
+
|
|
79
|
+
### 1. Symbol Indexing
|
|
80
|
+
|
|
81
|
+
SDL-MCP parses your TypeScript/JavaScript codebase using tree-sitter (or an optional Rust native indexer) and extracts
|
|
82
|
+
every function, class, interface, type, and variable into **Symbol Cards** — compact metadata records containing the
|
|
83
|
+
symbol's signature, a brief summary, dependency edges, and metrics like fan-in/out.
|
|
84
|
+
|
|
85
|
+
The stats speak for themselves: this repository has **11,475 symbols** across **1,553 files** with **261,813
|
|
86
|
+
dependency edges** tracked. A full card dump would cost ~2.3M tokens. The overview costs **825 tokens** — a **2,782x
|
|
87
|
+
compression ratio**.
|
|
88
|
+
|
|
89
|
+
### 2. The Context Ladder (4 Rungs)
|
|
90
|
+
|
|
91
|
+
Instead of "here's the whole file," SDL-MCP provides context in escalating detail:
|
|
92
|
+
|
|
93
|
+
| Rung | What You Get | Token Cost | When Used |
|
|
94
|
+
|------|-------------|------------|-----------|
|
|
95
|
+
| **Symbol Cards** | Name, signature, summary, dependencies | ~50 tokens | Always start here |
|
|
96
|
+
| **Skeleton IR** | Signatures + control flow, bodies elided | ~200 tokens | Understanding structure |
|
|
97
|
+
| **Hot-Path Excerpt** | Only lines matching specific identifiers | ~500 tokens | Finding specific logic |
|
|
98
|
+
| **Full Code Window** | Complete source (gated, requires justification) | ~2,000 tokens | Last resort |
|
|
99
|
+
|
|
100
|
+
Most questions can be answered at rungs 1-2 without ever reading raw code.
|
|
101
|
+
|
|
102
|
+
### 3. Graph Slices
|
|
103
|
+
|
|
104
|
+
When an AI needs to understand context around a task, SDL-MCP builds a **task-scoped subgraph** — a slice of related
|
|
105
|
+
symbols connected by call, import, and config edges, scored by relevance and bounded by a token budget. This means the
|
|
106
|
+
AI gets the 20-30 most relevant symbols for a task, not an arbitrary directory listing.
|
|
107
|
+
|
|
108
|
+
### 4. Delta Packs
|
|
109
|
+
|
|
110
|
+
When code changes, SDL-MCP computes **diffs at the symbol level** — not line-level diffs, but semantic changes to
|
|
111
|
+
signatures, invariants, and side effects. It also computes a **blast radius**: which other symbols are affected by the
|
|
112
|
+
change, ranked by proximity and importance.
|
|
113
|
+
|
|
114
|
+
### 5. Proof-of-Need Gating
|
|
115
|
+
|
|
116
|
+
Raw code access requires justification. The AI must specify *why* it needs the code, *what identifiers* it expects to
|
|
117
|
+
find, and *how many lines* it needs. Requests are audited. This prevents lazy "just read the whole file" patterns and
|
|
118
|
+
keeps token usage disciplined.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Key Benefits
|
|
123
|
+
|
|
124
|
+
**For AI-assisted development:**
|
|
125
|
+
|
|
126
|
+
- **10-50x fewer tokens** per coding task compared to reading raw files
|
|
127
|
+
- **More relevant context** — graph-based slicing finds related code that directory-based approaches miss
|
|
128
|
+
- **Incremental understanding** — delta packs mean the AI doesn't re-read unchanged code
|
|
129
|
+
- **Audit trail** — every raw code access is logged with justification
|
|
130
|
+
|
|
131
|
+
**For large codebases:**
|
|
132
|
+
|
|
133
|
+
- Scales to thousands of files without blowing context windows
|
|
134
|
+
- Symbol-level tracking survives whitespace changes and trivial refactors
|
|
135
|
+
- SQLite-backed persistence means indexing happens once, not every session
|
|
136
|
+
|
|
137
|
+
**For teams:**
|
|
138
|
+
|
|
139
|
+
- Consistent context governance via configurable policies
|
|
140
|
+
- Blast radius analysis shows the ripple effects of changes before they land
|
|
141
|
+
- Works as a standard MCP server — compatible with any MCP-capable client
|
|
142
|
+
|
|
143
|
+
---
|
|
46
144
|
|
|
47
|
-
|
|
145
|
+
## Practical Setup
|
|
48
146
|
|
|
49
|
-
|
|
147
|
+
SDL-MCP runs as a CLI with 5 commands:
|
|
50
148
|
|
|
51
|
-
|
|
149
|
+
```bash
|
|
150
|
+
sdl-mcp init # Create config + database
|
|
151
|
+
sdl-mcp index # Index your repositories
|
|
152
|
+
sdl-mcp serve # Start the MCP server (stdio or HTTP)
|
|
153
|
+
sdl-mcp doctor # Health check
|
|
154
|
+
sdl-mcp version # Version info
|
|
52
155
|
|
|
53
|
-
|
|
54
|
-
|
|
156
|
+
Once running, any MCP client (Claude Code, Claude Desktop, etc.) connects to it and gains access to 13 tools for
|
|
157
|
+
navigating your codebase efficiently.
|
|
55
158
|
|
|
56
|
-
|
|
159
|
+
---
|
|
160
|
+
In Summary
|
|
57
161
|
|
|
58
|
-
|
|
162
|
+
SDL-MCP is a code context server that treats your codebase like a searchable knowledge graph rather than a pile of
|
|
163
|
+
text files. It gives AI assistants surgical access to exactly what they need, dramatically reducing token waste while
|
|
164
|
+
improving the quality of code understanding. Think of it as giving your AI a proper IDE-level understanding of your
|
|
165
|
+
code, rather than having it grep through files."
|
|
59
166
|
|
|
60
167
|
## Quick Start
|
|
61
168
|
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "./sdlmcp.config.schema.json",
|
|
3
|
+
|
|
2
4
|
"repos": [
|
|
3
5
|
{
|
|
4
6
|
"repoId": "my-repo",
|
|
@@ -12,118 +14,43 @@
|
|
|
12
14
|
"**/coverage/**"
|
|
13
15
|
],
|
|
14
16
|
"languages": [
|
|
15
|
-
"ts",
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"py",
|
|
20
|
-
"go",
|
|
21
|
-
"java",
|
|
22
|
-
"cs",
|
|
23
|
-
"c",
|
|
24
|
-
"cpp",
|
|
25
|
-
"php",
|
|
26
|
-
"rs",
|
|
27
|
-
"kt",
|
|
28
|
-
"sh"
|
|
17
|
+
"ts", "tsx", "js", "jsx",
|
|
18
|
+
"py", "go", "java", "cs",
|
|
19
|
+
"c", "cpp", "php", "rs",
|
|
20
|
+
"kt", "sh"
|
|
29
21
|
],
|
|
30
22
|
"maxFileBytes": 2000000,
|
|
31
|
-
"includeNodeModulesTypes": true
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"
|
|
35
|
-
"rootPath": ".tmp/external-benchmarks/zod-oss",
|
|
36
|
-
"ignore": [
|
|
37
|
-
"**/node_modules/**",
|
|
38
|
-
"**/dist/**",
|
|
39
|
-
"**/lib/**",
|
|
40
|
-
"**/coverage/**",
|
|
41
|
-
"**/*.test.ts",
|
|
42
|
-
"**/*.spec.ts"
|
|
43
|
-
],
|
|
44
|
-
"languages": [
|
|
45
|
-
"ts",
|
|
46
|
-
"tsx",
|
|
47
|
-
"js"
|
|
48
|
-
]
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"repoId": "preact-oss",
|
|
52
|
-
"rootPath": ".tmp/external-benchmarks/preact-oss",
|
|
53
|
-
"ignore": [
|
|
54
|
-
"**/node_modules/**",
|
|
55
|
-
"**/dist/**",
|
|
56
|
-
"**/build/**",
|
|
57
|
-
"**/coverage/**",
|
|
58
|
-
"**/*.test.ts",
|
|
59
|
-
"**/*.spec.ts",
|
|
60
|
-
"**/*.test.tsx",
|
|
61
|
-
"**/*.spec.tsx"
|
|
62
|
-
],
|
|
63
|
-
"languages": [
|
|
64
|
-
"ts",
|
|
65
|
-
"tsx",
|
|
66
|
-
"js",
|
|
67
|
-
"jsx"
|
|
68
|
-
]
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
"repoId": "flask-oss",
|
|
72
|
-
"rootPath": ".tmp/external-benchmarks/flask-oss",
|
|
73
|
-
"ignore": [
|
|
74
|
-
"**/.venv/**",
|
|
75
|
-
"**/venv/**",
|
|
76
|
-
"**/__pycache__/**",
|
|
77
|
-
"**/.pytest_cache/**",
|
|
78
|
-
"**/build/**",
|
|
79
|
-
"**/dist/**",
|
|
80
|
-
"**/*.pyc",
|
|
81
|
-
"**/tests/**"
|
|
82
|
-
],
|
|
83
|
-
"languages": [
|
|
84
|
-
"py"
|
|
85
|
-
]
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"repoId": "ansible-lint-oss",
|
|
89
|
-
"rootPath": ".tmp/external-benchmarks/ansible-lint-oss",
|
|
90
|
-
"ignore": [
|
|
91
|
-
"**/.venv/**",
|
|
92
|
-
"**/venv/**",
|
|
93
|
-
"**/__pycache__/**",
|
|
94
|
-
"**/.pytest_cache/**",
|
|
95
|
-
"**/build/**",
|
|
96
|
-
"**/dist/**",
|
|
97
|
-
"**/*.pyc",
|
|
98
|
-
"**/test/**",
|
|
99
|
-
"**/tests/**",
|
|
100
|
-
"**/.tox/**"
|
|
101
|
-
],
|
|
102
|
-
"languages": [
|
|
103
|
-
"py",
|
|
104
|
-
"sh"
|
|
105
|
-
]
|
|
23
|
+
"includeNodeModulesTypes": true,
|
|
24
|
+
"packageJsonPath": null,
|
|
25
|
+
"tsconfigPath": null,
|
|
26
|
+
"workspaceGlobs": null
|
|
106
27
|
}
|
|
107
28
|
],
|
|
29
|
+
|
|
108
30
|
"dbPath": "./data/sdlmcp.sqlite",
|
|
31
|
+
|
|
109
32
|
"policy": {
|
|
110
33
|
"maxWindowLines": 180,
|
|
111
34
|
"maxWindowTokens": 1400,
|
|
112
35
|
"requireIdentifiers": true,
|
|
113
36
|
"allowBreakGlass": true
|
|
114
37
|
},
|
|
38
|
+
|
|
115
39
|
"redaction": {
|
|
116
40
|
"enabled": true,
|
|
117
41
|
"includeDefaults": true,
|
|
118
42
|
"patterns": []
|
|
119
43
|
},
|
|
44
|
+
|
|
120
45
|
"indexing": {
|
|
121
|
-
"concurrency":
|
|
46
|
+
"concurrency": 8,
|
|
122
47
|
"enableFileWatching": true,
|
|
123
48
|
"maxWatchedFiles": 25000,
|
|
49
|
+
"workerPoolSize": null,
|
|
124
50
|
"engine": "typescript",
|
|
125
51
|
"watchDebounceMs": 300
|
|
126
52
|
},
|
|
53
|
+
|
|
127
54
|
"slice": {
|
|
128
55
|
"defaultMaxCards": 60,
|
|
129
56
|
"defaultMaxTokens": 12000,
|
|
@@ -133,6 +60,15 @@
|
|
|
133
60
|
"config": 0.8
|
|
134
61
|
}
|
|
135
62
|
},
|
|
63
|
+
|
|
64
|
+
"diagnostics": {
|
|
65
|
+
"enabled": true,
|
|
66
|
+
"mode": "tsLS",
|
|
67
|
+
"maxErrors": 50,
|
|
68
|
+
"timeoutMs": 2000,
|
|
69
|
+
"scope": "changedFiles"
|
|
70
|
+
},
|
|
71
|
+
|
|
136
72
|
"cache": {
|
|
137
73
|
"enabled": true,
|
|
138
74
|
"symbolCardMaxEntries": 2000,
|
|
@@ -140,8 +76,15 @@
|
|
|
140
76
|
"graphSliceMaxEntries": 1000,
|
|
141
77
|
"graphSliceMaxSizeBytes": 52428800
|
|
142
78
|
},
|
|
79
|
+
|
|
80
|
+
"plugins": {
|
|
81
|
+
"paths": [],
|
|
82
|
+
"enabled": true,
|
|
83
|
+
"strictVersioning": true
|
|
84
|
+
},
|
|
85
|
+
|
|
143
86
|
"semantic": {
|
|
144
|
-
"enabled":
|
|
87
|
+
"enabled": true,
|
|
145
88
|
"alpha": 0.6,
|
|
146
89
|
"provider": "mock",
|
|
147
90
|
"model": "all-MiniLM-L6-v2",
|
|
@@ -150,11 +93,33 @@
|
|
|
150
93
|
"summaryApiKey": null,
|
|
151
94
|
"summaryApiBaseUrl": null,
|
|
152
95
|
"summaryMaxConcurrency": 5,
|
|
153
|
-
"summaryBatchSize": 20
|
|
96
|
+
"summaryBatchSize": 20,
|
|
97
|
+
"ann": {
|
|
98
|
+
"enabled": false,
|
|
99
|
+
"m": 16,
|
|
100
|
+
"efConstruction": 200,
|
|
101
|
+
"efSearch": 50,
|
|
102
|
+
"maxElements": 200000
|
|
103
|
+
}
|
|
154
104
|
},
|
|
105
|
+
|
|
155
106
|
"prefetch": {
|
|
156
107
|
"enabled": true,
|
|
157
108
|
"maxBudgetPercent": 20,
|
|
158
109
|
"warmTopN": 50
|
|
110
|
+
},
|
|
111
|
+
|
|
112
|
+
"tracing": {
|
|
113
|
+
"enabled": false,
|
|
114
|
+
"serviceName": "sdl-mcp",
|
|
115
|
+
"exporterType": "console",
|
|
116
|
+
"otlpEndpoint": null,
|
|
117
|
+
"sampleRate": 1.0
|
|
118
|
+
},
|
|
119
|
+
|
|
120
|
+
"parallelScorer": {
|
|
121
|
+
"enabled": false,
|
|
122
|
+
"poolSize": null,
|
|
123
|
+
"minBatchSize": null
|
|
159
124
|
}
|
|
160
125
|
}
|
|
@@ -410,7 +410,8 @@
|
|
|
410
410
|
"properties": {
|
|
411
411
|
"enabled": {
|
|
412
412
|
"type": "boolean",
|
|
413
|
-
"
|
|
413
|
+
"description": "Enable semantic reranking in symbol search",
|
|
414
|
+
"default": true
|
|
414
415
|
},
|
|
415
416
|
"alpha": {
|
|
416
417
|
"type": "number",
|
|
@@ -506,7 +507,7 @@
|
|
|
506
507
|
}
|
|
507
508
|
},
|
|
508
509
|
"default": {
|
|
509
|
-
"enabled":
|
|
510
|
+
"enabled": true,
|
|
510
511
|
"alpha": 0.6,
|
|
511
512
|
"provider": "mock",
|
|
512
513
|
"model": "all-MiniLM-L6-v2",
|
package/dist/config/types.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ export declare const RepoConfigSchema: z.ZodObject<{
|
|
|
7
7
|
languages: z.ZodDefault<z.ZodArray<z.ZodEnum<["ts", "tsx", "js", "jsx", "py", "go", "java", "cs", "c", "cpp", "php", "rs", "kt", "sh"]>, "many">>;
|
|
8
8
|
maxFileBytes: z.ZodDefault<z.ZodNumber>;
|
|
9
9
|
includeNodeModulesTypes: z.ZodDefault<z.ZodBoolean>;
|
|
10
|
-
packageJsonPath: z.ZodOptional<z.ZodString
|
|
11
|
-
tsconfigPath: z.ZodOptional<z.ZodString
|
|
12
|
-
workspaceGlobs: z.ZodOptional<z.ZodArray<z.ZodString, "many"
|
|
10
|
+
packageJsonPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
11
|
+
tsconfigPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
12
|
+
workspaceGlobs: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
|
|
13
13
|
}, "strip", z.ZodTypeAny, {
|
|
14
14
|
repoId: string;
|
|
15
15
|
rootPath: string;
|
|
@@ -17,9 +17,9 @@ export declare const RepoConfigSchema: z.ZodObject<{
|
|
|
17
17
|
languages: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[];
|
|
18
18
|
maxFileBytes: number;
|
|
19
19
|
includeNodeModulesTypes: boolean;
|
|
20
|
-
packageJsonPath?: string | undefined;
|
|
21
|
-
tsconfigPath?: string | undefined;
|
|
22
|
-
workspaceGlobs?: string[] | undefined;
|
|
20
|
+
packageJsonPath?: string | null | undefined;
|
|
21
|
+
tsconfigPath?: string | null | undefined;
|
|
22
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
23
23
|
}, {
|
|
24
24
|
repoId: string;
|
|
25
25
|
rootPath: string;
|
|
@@ -27,9 +27,9 @@ export declare const RepoConfigSchema: z.ZodObject<{
|
|
|
27
27
|
languages?: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[] | undefined;
|
|
28
28
|
maxFileBytes?: number | undefined;
|
|
29
29
|
includeNodeModulesTypes?: boolean | undefined;
|
|
30
|
-
packageJsonPath?: string | undefined;
|
|
31
|
-
tsconfigPath?: string | undefined;
|
|
32
|
-
workspaceGlobs?: string[] | undefined;
|
|
30
|
+
packageJsonPath?: string | null | undefined;
|
|
31
|
+
tsconfigPath?: string | null | undefined;
|
|
32
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
33
33
|
}>;
|
|
34
34
|
export type RepoConfig = z.infer<typeof RepoConfigSchema>;
|
|
35
35
|
export declare const PolicyConfigSchema: z.ZodObject<{
|
|
@@ -100,7 +100,7 @@ export declare const IndexingConfigSchema: z.ZodObject<{
|
|
|
100
100
|
concurrency: z.ZodDefault<z.ZodNumber>;
|
|
101
101
|
enableFileWatching: z.ZodDefault<z.ZodBoolean>;
|
|
102
102
|
maxWatchedFiles: z.ZodDefault<z.ZodNumber>;
|
|
103
|
-
workerPoolSize: z.ZodOptional<z.ZodNumber
|
|
103
|
+
workerPoolSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
104
104
|
engine: z.ZodDefault<z.ZodEnum<["typescript", "rust"]>>;
|
|
105
105
|
watchDebounceMs: z.ZodDefault<z.ZodNumber>;
|
|
106
106
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -109,12 +109,12 @@ export declare const IndexingConfigSchema: z.ZodObject<{
|
|
|
109
109
|
maxWatchedFiles: number;
|
|
110
110
|
engine: "typescript" | "rust";
|
|
111
111
|
watchDebounceMs: number;
|
|
112
|
-
workerPoolSize?: number | undefined;
|
|
112
|
+
workerPoolSize?: number | null | undefined;
|
|
113
113
|
}, {
|
|
114
114
|
concurrency?: number | undefined;
|
|
115
115
|
enableFileWatching?: boolean | undefined;
|
|
116
116
|
maxWatchedFiles?: number | undefined;
|
|
117
|
-
workerPoolSize?: number | undefined;
|
|
117
|
+
workerPoolSize?: number | null | undefined;
|
|
118
118
|
engine?: "typescript" | "rust" | undefined;
|
|
119
119
|
watchDebounceMs?: number | undefined;
|
|
120
120
|
}>;
|
|
@@ -326,34 +326,34 @@ export declare const TracingConfigSchema: z.ZodObject<{
|
|
|
326
326
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
327
327
|
serviceName: z.ZodDefault<z.ZodString>;
|
|
328
328
|
exporterType: z.ZodDefault<z.ZodEnum<["console", "otlp", "memory"]>>;
|
|
329
|
-
otlpEndpoint: z.ZodOptional<z.ZodString
|
|
329
|
+
otlpEndpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
330
330
|
sampleRate: z.ZodDefault<z.ZodNumber>;
|
|
331
331
|
}, "strip", z.ZodTypeAny, {
|
|
332
332
|
enabled: boolean;
|
|
333
333
|
serviceName: string;
|
|
334
334
|
exporterType: "console" | "otlp" | "memory";
|
|
335
335
|
sampleRate: number;
|
|
336
|
-
otlpEndpoint?: string | undefined;
|
|
336
|
+
otlpEndpoint?: string | null | undefined;
|
|
337
337
|
}, {
|
|
338
338
|
enabled?: boolean | undefined;
|
|
339
339
|
serviceName?: string | undefined;
|
|
340
340
|
exporterType?: "console" | "otlp" | "memory" | undefined;
|
|
341
|
-
otlpEndpoint?: string | undefined;
|
|
341
|
+
otlpEndpoint?: string | null | undefined;
|
|
342
342
|
sampleRate?: number | undefined;
|
|
343
343
|
}>;
|
|
344
344
|
export type TracingConfig = z.infer<typeof TracingConfigSchema>;
|
|
345
345
|
export declare const ParallelScorerConfigSchema: z.ZodObject<{
|
|
346
346
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
347
|
-
poolSize: z.ZodOptional<z.ZodNumber
|
|
348
|
-
minBatchSize: z.ZodOptional<z.ZodNumber
|
|
347
|
+
poolSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
348
|
+
minBatchSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
349
349
|
}, "strip", z.ZodTypeAny, {
|
|
350
350
|
enabled: boolean;
|
|
351
|
-
poolSize?: number | undefined;
|
|
352
|
-
minBatchSize?: number | undefined;
|
|
351
|
+
poolSize?: number | null | undefined;
|
|
352
|
+
minBatchSize?: number | null | undefined;
|
|
353
353
|
}, {
|
|
354
354
|
enabled?: boolean | undefined;
|
|
355
|
-
poolSize?: number | undefined;
|
|
356
|
-
minBatchSize?: number | undefined;
|
|
355
|
+
poolSize?: number | null | undefined;
|
|
356
|
+
minBatchSize?: number | null | undefined;
|
|
357
357
|
}>;
|
|
358
358
|
export type ParallelScorerConfig = z.infer<typeof ParallelScorerConfigSchema>;
|
|
359
359
|
export declare const AppConfigSchema: z.ZodObject<{
|
|
@@ -364,9 +364,9 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
364
364
|
languages: z.ZodDefault<z.ZodArray<z.ZodEnum<["ts", "tsx", "js", "jsx", "py", "go", "java", "cs", "c", "cpp", "php", "rs", "kt", "sh"]>, "many">>;
|
|
365
365
|
maxFileBytes: z.ZodDefault<z.ZodNumber>;
|
|
366
366
|
includeNodeModulesTypes: z.ZodDefault<z.ZodBoolean>;
|
|
367
|
-
packageJsonPath: z.ZodOptional<z.ZodString
|
|
368
|
-
tsconfigPath: z.ZodOptional<z.ZodString
|
|
369
|
-
workspaceGlobs: z.ZodOptional<z.ZodArray<z.ZodString, "many"
|
|
367
|
+
packageJsonPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
368
|
+
tsconfigPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
369
|
+
workspaceGlobs: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
|
|
370
370
|
}, "strip", z.ZodTypeAny, {
|
|
371
371
|
repoId: string;
|
|
372
372
|
rootPath: string;
|
|
@@ -374,9 +374,9 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
374
374
|
languages: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[];
|
|
375
375
|
maxFileBytes: number;
|
|
376
376
|
includeNodeModulesTypes: boolean;
|
|
377
|
-
packageJsonPath?: string | undefined;
|
|
378
|
-
tsconfigPath?: string | undefined;
|
|
379
|
-
workspaceGlobs?: string[] | undefined;
|
|
377
|
+
packageJsonPath?: string | null | undefined;
|
|
378
|
+
tsconfigPath?: string | null | undefined;
|
|
379
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
380
380
|
}, {
|
|
381
381
|
repoId: string;
|
|
382
382
|
rootPath: string;
|
|
@@ -384,9 +384,9 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
384
384
|
languages?: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[] | undefined;
|
|
385
385
|
maxFileBytes?: number | undefined;
|
|
386
386
|
includeNodeModulesTypes?: boolean | undefined;
|
|
387
|
-
packageJsonPath?: string | undefined;
|
|
388
|
-
tsconfigPath?: string | undefined;
|
|
389
|
-
workspaceGlobs?: string[] | undefined;
|
|
387
|
+
packageJsonPath?: string | null | undefined;
|
|
388
|
+
tsconfigPath?: string | null | undefined;
|
|
389
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
390
390
|
}>, "many">;
|
|
391
391
|
dbPath: z.ZodString;
|
|
392
392
|
policy: z.ZodObject<{
|
|
@@ -442,7 +442,7 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
442
442
|
concurrency: z.ZodDefault<z.ZodNumber>;
|
|
443
443
|
enableFileWatching: z.ZodDefault<z.ZodBoolean>;
|
|
444
444
|
maxWatchedFiles: z.ZodDefault<z.ZodNumber>;
|
|
445
|
-
workerPoolSize: z.ZodOptional<z.ZodNumber
|
|
445
|
+
workerPoolSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
446
446
|
engine: z.ZodDefault<z.ZodEnum<["typescript", "rust"]>>;
|
|
447
447
|
watchDebounceMs: z.ZodDefault<z.ZodNumber>;
|
|
448
448
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -451,12 +451,12 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
451
451
|
maxWatchedFiles: number;
|
|
452
452
|
engine: "typescript" | "rust";
|
|
453
453
|
watchDebounceMs: number;
|
|
454
|
-
workerPoolSize?: number | undefined;
|
|
454
|
+
workerPoolSize?: number | null | undefined;
|
|
455
455
|
}, {
|
|
456
456
|
concurrency?: number | undefined;
|
|
457
457
|
enableFileWatching?: boolean | undefined;
|
|
458
458
|
maxWatchedFiles?: number | undefined;
|
|
459
|
-
workerPoolSize?: number | undefined;
|
|
459
|
+
workerPoolSize?: number | null | undefined;
|
|
460
460
|
engine?: "typescript" | "rust" | undefined;
|
|
461
461
|
watchDebounceMs?: number | undefined;
|
|
462
462
|
}>>;
|
|
@@ -628,33 +628,33 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
628
628
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
629
629
|
serviceName: z.ZodDefault<z.ZodString>;
|
|
630
630
|
exporterType: z.ZodDefault<z.ZodEnum<["console", "otlp", "memory"]>>;
|
|
631
|
-
otlpEndpoint: z.ZodOptional<z.ZodString
|
|
631
|
+
otlpEndpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
632
632
|
sampleRate: z.ZodDefault<z.ZodNumber>;
|
|
633
633
|
}, "strip", z.ZodTypeAny, {
|
|
634
634
|
enabled: boolean;
|
|
635
635
|
serviceName: string;
|
|
636
636
|
exporterType: "console" | "otlp" | "memory";
|
|
637
637
|
sampleRate: number;
|
|
638
|
-
otlpEndpoint?: string | undefined;
|
|
638
|
+
otlpEndpoint?: string | null | undefined;
|
|
639
639
|
}, {
|
|
640
640
|
enabled?: boolean | undefined;
|
|
641
641
|
serviceName?: string | undefined;
|
|
642
642
|
exporterType?: "console" | "otlp" | "memory" | undefined;
|
|
643
|
-
otlpEndpoint?: string | undefined;
|
|
643
|
+
otlpEndpoint?: string | null | undefined;
|
|
644
644
|
sampleRate?: number | undefined;
|
|
645
645
|
}>>;
|
|
646
646
|
parallelScorer: z.ZodOptional<z.ZodObject<{
|
|
647
647
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
648
|
-
poolSize: z.ZodOptional<z.ZodNumber
|
|
649
|
-
minBatchSize: z.ZodOptional<z.ZodNumber
|
|
648
|
+
poolSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
649
|
+
minBatchSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
650
650
|
}, "strip", z.ZodTypeAny, {
|
|
651
651
|
enabled: boolean;
|
|
652
|
-
poolSize?: number | undefined;
|
|
653
|
-
minBatchSize?: number | undefined;
|
|
652
|
+
poolSize?: number | null | undefined;
|
|
653
|
+
minBatchSize?: number | null | undefined;
|
|
654
654
|
}, {
|
|
655
655
|
enabled?: boolean | undefined;
|
|
656
|
-
poolSize?: number | undefined;
|
|
657
|
-
minBatchSize?: number | undefined;
|
|
656
|
+
poolSize?: number | null | undefined;
|
|
657
|
+
minBatchSize?: number | null | undefined;
|
|
658
658
|
}>>;
|
|
659
659
|
}, "strip", z.ZodTypeAny, {
|
|
660
660
|
repos: {
|
|
@@ -664,9 +664,9 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
664
664
|
languages: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[];
|
|
665
665
|
maxFileBytes: number;
|
|
666
666
|
includeNodeModulesTypes: boolean;
|
|
667
|
-
packageJsonPath?: string | undefined;
|
|
668
|
-
tsconfigPath?: string | undefined;
|
|
669
|
-
workspaceGlobs?: string[] | undefined;
|
|
667
|
+
packageJsonPath?: string | null | undefined;
|
|
668
|
+
tsconfigPath?: string | null | undefined;
|
|
669
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
670
670
|
}[];
|
|
671
671
|
dbPath: string;
|
|
672
672
|
policy: {
|
|
@@ -699,7 +699,7 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
699
699
|
maxWatchedFiles: number;
|
|
700
700
|
engine: "typescript" | "rust";
|
|
701
701
|
watchDebounceMs: number;
|
|
702
|
-
workerPoolSize?: number | undefined;
|
|
702
|
+
workerPoolSize?: number | null | undefined;
|
|
703
703
|
} | undefined;
|
|
704
704
|
diagnostics?: {
|
|
705
705
|
enabled: boolean;
|
|
@@ -749,12 +749,12 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
749
749
|
serviceName: string;
|
|
750
750
|
exporterType: "console" | "otlp" | "memory";
|
|
751
751
|
sampleRate: number;
|
|
752
|
-
otlpEndpoint?: string | undefined;
|
|
752
|
+
otlpEndpoint?: string | null | undefined;
|
|
753
753
|
} | undefined;
|
|
754
754
|
parallelScorer?: {
|
|
755
755
|
enabled: boolean;
|
|
756
|
-
poolSize?: number | undefined;
|
|
757
|
-
minBatchSize?: number | undefined;
|
|
756
|
+
poolSize?: number | null | undefined;
|
|
757
|
+
minBatchSize?: number | null | undefined;
|
|
758
758
|
} | undefined;
|
|
759
759
|
}, {
|
|
760
760
|
repos: {
|
|
@@ -764,9 +764,9 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
764
764
|
languages?: ("ts" | "tsx" | "js" | "jsx" | "py" | "go" | "java" | "cs" | "c" | "cpp" | "php" | "rs" | "kt" | "sh")[] | undefined;
|
|
765
765
|
maxFileBytes?: number | undefined;
|
|
766
766
|
includeNodeModulesTypes?: boolean | undefined;
|
|
767
|
-
packageJsonPath?: string | undefined;
|
|
768
|
-
tsconfigPath?: string | undefined;
|
|
769
|
-
workspaceGlobs?: string[] | undefined;
|
|
767
|
+
packageJsonPath?: string | null | undefined;
|
|
768
|
+
tsconfigPath?: string | null | undefined;
|
|
769
|
+
workspaceGlobs?: string[] | null | undefined;
|
|
770
770
|
}[];
|
|
771
771
|
dbPath: string;
|
|
772
772
|
policy: {
|
|
@@ -797,7 +797,7 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
797
797
|
concurrency?: number | undefined;
|
|
798
798
|
enableFileWatching?: boolean | undefined;
|
|
799
799
|
maxWatchedFiles?: number | undefined;
|
|
800
|
-
workerPoolSize?: number | undefined;
|
|
800
|
+
workerPoolSize?: number | null | undefined;
|
|
801
801
|
engine?: "typescript" | "rust" | undefined;
|
|
802
802
|
watchDebounceMs?: number | undefined;
|
|
803
803
|
} | undefined;
|
|
@@ -848,13 +848,13 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
848
848
|
enabled?: boolean | undefined;
|
|
849
849
|
serviceName?: string | undefined;
|
|
850
850
|
exporterType?: "console" | "otlp" | "memory" | undefined;
|
|
851
|
-
otlpEndpoint?: string | undefined;
|
|
851
|
+
otlpEndpoint?: string | null | undefined;
|
|
852
852
|
sampleRate?: number | undefined;
|
|
853
853
|
} | undefined;
|
|
854
854
|
parallelScorer?: {
|
|
855
855
|
enabled?: boolean | undefined;
|
|
856
|
-
poolSize?: number | undefined;
|
|
857
|
-
minBatchSize?: number | undefined;
|
|
856
|
+
poolSize?: number | null | undefined;
|
|
857
|
+
minBatchSize?: number | null | undefined;
|
|
858
858
|
} | undefined;
|
|
859
859
|
}>;
|
|
860
860
|
export type AppConfig = z.infer<typeof AppConfigSchema>;
|