windows-exe-decompiler-mcp-server 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/CODEX_INSTALLATION.md +69 -0
  2. package/COPILOT_INSTALLATION.md +77 -0
  3. package/LICENSE +21 -0
  4. package/README.md +314 -0
  5. package/bin/windows-exe-decompiler-mcp-server.js +3 -0
  6. package/dist/analysis-provenance.d.ts +184 -0
  7. package/dist/analysis-provenance.js +74 -0
  8. package/dist/analysis-task-runner.d.ts +31 -0
  9. package/dist/analysis-task-runner.js +160 -0
  10. package/dist/artifact-inventory.d.ts +23 -0
  11. package/dist/artifact-inventory.js +175 -0
  12. package/dist/cache-manager.d.ts +128 -0
  13. package/dist/cache-manager.js +454 -0
  14. package/dist/confidence-semantics.d.ts +66 -0
  15. package/dist/confidence-semantics.js +122 -0
  16. package/dist/config.d.ts +335 -0
  17. package/dist/config.js +193 -0
  18. package/dist/database.d.ts +227 -0
  19. package/dist/database.js +601 -0
  20. package/dist/decompiler-worker.d.ts +441 -0
  21. package/dist/decompiler-worker.js +1962 -0
  22. package/dist/dynamic-trace.d.ts +95 -0
  23. package/dist/dynamic-trace.js +629 -0
  24. package/dist/env-validator.d.ts +15 -0
  25. package/dist/env-validator.js +249 -0
  26. package/dist/error-handler.d.ts +28 -0
  27. package/dist/error-handler.example.d.ts +22 -0
  28. package/dist/error-handler.example.js +141 -0
  29. package/dist/error-handler.js +139 -0
  30. package/dist/ghidra-analysis-status.d.ts +49 -0
  31. package/dist/ghidra-analysis-status.js +178 -0
  32. package/dist/ghidra-config.d.ts +134 -0
  33. package/dist/ghidra-config.js +464 -0
  34. package/dist/index.d.ts +9 -0
  35. package/dist/index.js +200 -0
  36. package/dist/job-queue.d.ts +169 -0
  37. package/dist/job-queue.js +407 -0
  38. package/dist/logger.d.ts +106 -0
  39. package/dist/logger.js +176 -0
  40. package/dist/policy-guard.d.ts +115 -0
  41. package/dist/policy-guard.js +243 -0
  42. package/dist/process-output.d.ts +15 -0
  43. package/dist/process-output.js +90 -0
  44. package/dist/prompts/function-explanation-review.d.ts +5 -0
  45. package/dist/prompts/function-explanation-review.js +64 -0
  46. package/dist/prompts/semantic-name-review.d.ts +5 -0
  47. package/dist/prompts/semantic-name-review.js +63 -0
  48. package/dist/runtime-correlation.d.ts +34 -0
  49. package/dist/runtime-correlation.js +279 -0
  50. package/dist/runtime-paths.d.ts +3 -0
  51. package/dist/runtime-paths.js +11 -0
  52. package/dist/selection-diff.d.ts +667 -0
  53. package/dist/selection-diff.js +53 -0
  54. package/dist/semantic-name-suggestion-artifacts.d.ts +116 -0
  55. package/dist/semantic-name-suggestion-artifacts.js +314 -0
  56. package/dist/server.d.ts +129 -0
  57. package/dist/server.js +578 -0
  58. package/dist/tools/artifact-read.d.ts +235 -0
  59. package/dist/tools/artifact-read.js +317 -0
  60. package/dist/tools/artifacts-diff.d.ts +728 -0
  61. package/dist/tools/artifacts-diff.js +304 -0
  62. package/dist/tools/artifacts-list.d.ts +515 -0
  63. package/dist/tools/artifacts-list.js +389 -0
  64. package/dist/tools/attack-map.d.ts +290 -0
  65. package/dist/tools/attack-map.js +519 -0
  66. package/dist/tools/cache-observability.d.ts +4 -0
  67. package/dist/tools/cache-observability.js +36 -0
  68. package/dist/tools/code-function-cfg.d.ts +50 -0
  69. package/dist/tools/code-function-cfg.js +102 -0
  70. package/dist/tools/code-function-decompile.d.ts +55 -0
  71. package/dist/tools/code-function-decompile.js +103 -0
  72. package/dist/tools/code-function-disassemble.d.ts +43 -0
  73. package/dist/tools/code-function-disassemble.js +185 -0
  74. package/dist/tools/code-function-explain-apply.d.ts +255 -0
  75. package/dist/tools/code-function-explain-apply.js +225 -0
  76. package/dist/tools/code-function-explain-prepare.d.ts +535 -0
  77. package/dist/tools/code-function-explain-prepare.js +276 -0
  78. package/dist/tools/code-function-explain-review.d.ts +397 -0
  79. package/dist/tools/code-function-explain-review.js +589 -0
  80. package/dist/tools/code-function-rename-apply.d.ts +248 -0
  81. package/dist/tools/code-function-rename-apply.js +220 -0
  82. package/dist/tools/code-function-rename-prepare.d.ts +506 -0
  83. package/dist/tools/code-function-rename-prepare.js +279 -0
  84. package/dist/tools/code-function-rename-review.d.ts +574 -0
  85. package/dist/tools/code-function-rename-review.js +761 -0
  86. package/dist/tools/code-functions-list.d.ts +37 -0
  87. package/dist/tools/code-functions-list.js +91 -0
  88. package/dist/tools/code-functions-rank.d.ts +34 -0
  89. package/dist/tools/code-functions-rank.js +90 -0
  90. package/dist/tools/code-functions-reconstruct.d.ts +2725 -0
  91. package/dist/tools/code-functions-reconstruct.js +2807 -0
  92. package/dist/tools/code-functions-search.d.ts +39 -0
  93. package/dist/tools/code-functions-search.js +90 -0
  94. package/dist/tools/code-reconstruct-export.d.ts +1212 -0
  95. package/dist/tools/code-reconstruct-export.js +4002 -0
  96. package/dist/tools/code-reconstruct-plan.d.ts +274 -0
  97. package/dist/tools/code-reconstruct-plan.js +342 -0
  98. package/dist/tools/dotnet-metadata-extract.d.ts +541 -0
  99. package/dist/tools/dotnet-metadata-extract.js +355 -0
  100. package/dist/tools/dotnet-reconstruct-export.d.ts +567 -0
  101. package/dist/tools/dotnet-reconstruct-export.js +1151 -0
  102. package/dist/tools/dotnet-types-list.d.ts +325 -0
  103. package/dist/tools/dotnet-types-list.js +201 -0
  104. package/dist/tools/dynamic-dependencies.d.ts +115 -0
  105. package/dist/tools/dynamic-dependencies.js +213 -0
  106. package/dist/tools/dynamic-memory-import.d.ts +10 -0
  107. package/dist/tools/dynamic-memory-import.js +567 -0
  108. package/dist/tools/dynamic-trace-import.d.ts +10 -0
  109. package/dist/tools/dynamic-trace-import.js +235 -0
  110. package/dist/tools/entrypoint-fallback-disasm.d.ts +30 -0
  111. package/dist/tools/entrypoint-fallback-disasm.js +89 -0
  112. package/dist/tools/ghidra-analyze.d.ts +88 -0
  113. package/dist/tools/ghidra-analyze.js +208 -0
  114. package/dist/tools/ghidra-health.d.ts +37 -0
  115. package/dist/tools/ghidra-health.js +212 -0
  116. package/dist/tools/ioc-export.d.ts +209 -0
  117. package/dist/tools/ioc-export.js +542 -0
  118. package/dist/tools/packer-detect.d.ts +165 -0
  119. package/dist/tools/packer-detect.js +284 -0
  120. package/dist/tools/pe-exports-extract.d.ts +175 -0
  121. package/dist/tools/pe-exports-extract.js +253 -0
  122. package/dist/tools/pe-fingerprint.d.ts +234 -0
  123. package/dist/tools/pe-fingerprint.js +269 -0
  124. package/dist/tools/pe-imports-extract.d.ts +105 -0
  125. package/dist/tools/pe-imports-extract.js +245 -0
  126. package/dist/tools/report-generate.d.ts +157 -0
  127. package/dist/tools/report-generate.js +457 -0
  128. package/dist/tools/report-summarize.d.ts +2131 -0
  129. package/dist/tools/report-summarize.js +596 -0
  130. package/dist/tools/runtime-detect.d.ts +135 -0
  131. package/dist/tools/runtime-detect.js +247 -0
  132. package/dist/tools/sample-ingest.d.ts +94 -0
  133. package/dist/tools/sample-ingest.js +327 -0
  134. package/dist/tools/sample-profile-get.d.ts +183 -0
  135. package/dist/tools/sample-profile-get.js +121 -0
  136. package/dist/tools/sandbox-execute.d.ts +441 -0
  137. package/dist/tools/sandbox-execute.js +392 -0
  138. package/dist/tools/strings-extract.d.ts +375 -0
  139. package/dist/tools/strings-extract.js +314 -0
  140. package/dist/tools/strings-floss-decode.d.ts +143 -0
  141. package/dist/tools/strings-floss-decode.js +259 -0
  142. package/dist/tools/system-health.d.ts +434 -0
  143. package/dist/tools/system-health.js +446 -0
  144. package/dist/tools/task-cancel.d.ts +21 -0
  145. package/dist/tools/task-cancel.js +70 -0
  146. package/dist/tools/task-status.d.ts +27 -0
  147. package/dist/tools/task-status.js +106 -0
  148. package/dist/tools/task-sweep.d.ts +22 -0
  149. package/dist/tools/task-sweep.js +77 -0
  150. package/dist/tools/tool-help.d.ts +340 -0
  151. package/dist/tools/tool-help.js +261 -0
  152. package/dist/tools/yara-scan.d.ts +554 -0
  153. package/dist/tools/yara-scan.js +313 -0
  154. package/dist/types.d.ts +266 -0
  155. package/dist/types.js +41 -0
  156. package/dist/worker-pool.d.ts +204 -0
  157. package/dist/worker-pool.js +650 -0
  158. package/dist/workflows/deep-static.d.ts +104 -0
  159. package/dist/workflows/deep-static.js +276 -0
  160. package/dist/workflows/function-explanation-review.d.ts +655 -0
  161. package/dist/workflows/function-explanation-review.js +440 -0
  162. package/dist/workflows/reconstruct.d.ts +2053 -0
  163. package/dist/workflows/reconstruct.js +666 -0
  164. package/dist/workflows/semantic-name-review.d.ts +2418 -0
  165. package/dist/workflows/semantic-name-review.js +521 -0
  166. package/dist/workflows/triage.d.ts +659 -0
  167. package/dist/workflows/triage.js +1374 -0
  168. package/dist/workspace-manager.d.ts +150 -0
  169. package/dist/workspace-manager.js +411 -0
  170. package/ghidra_scripts/DecompileFunction.java +487 -0
  171. package/ghidra_scripts/DecompileFunction.py +150 -0
  172. package/ghidra_scripts/ExtractCFG.java +256 -0
  173. package/ghidra_scripts/ExtractCFG.py +233 -0
  174. package/ghidra_scripts/ExtractFunctions.java +442 -0
  175. package/ghidra_scripts/ExtractFunctions.py +101 -0
  176. package/ghidra_scripts/README.md +125 -0
  177. package/ghidra_scripts/SearchFunctionReferences.java +380 -0
  178. package/helpers/DotNetMetadataProbe/DotNetMetadataProbe.csproj +9 -0
  179. package/helpers/DotNetMetadataProbe/Program.cs +566 -0
  180. package/install-to-codex.ps1 +178 -0
  181. package/install-to-copilot.ps1 +303 -0
  182. package/package.json +101 -0
  183. package/requirements.txt +9 -0
  184. package/workers/requirements-dynamic.txt +11 -0
  185. package/workers/requirements.txt +8 -0
  186. package/workers/speakeasy_compat.py +175 -0
  187. package/workers/static_worker.py +5183 -0
  188. package/workers/yara_rules/default.yar +33 -0
  189. package/workers/yara_rules/malware_families.yar +93 -0
  190. package/workers/yara_rules/packers.yar +80 -0
@@ -0,0 +1,567 @@
1
+ /**
2
+ * dotnet.reconstruct.export tool implementation
3
+ * .NET-oriented source skeleton export with confidence annotations and fallback guidance.
4
+ */
5
+ import { z } from 'zod';
6
+ import type { ToolDefinition, ToolArgs, WorkerResult } from '../types.js';
7
+ import type { WorkspaceManager } from '../workspace-manager.js';
8
+ import type { DatabaseManager } from '../database.js';
9
+ import type { CacheManager } from '../cache-manager.js';
10
+ export declare const DotNetReconstructExportInputSchema: z.ZodEffects<z.ZodObject<{
11
+ sample_id: z.ZodString;
12
+ topk: z.ZodDefault<z.ZodNumber>;
13
+ project_name: z.ZodDefault<z.ZodString>;
14
+ namespace: z.ZodDefault<z.ZodString>;
15
+ include_metadata_types: z.ZodDefault<z.ZodBoolean>;
16
+ max_managed_types: z.ZodDefault<z.ZodNumber>;
17
+ export_name: z.ZodOptional<z.ZodString>;
18
+ include_obfuscation_fallback: z.ZodDefault<z.ZodBoolean>;
19
+ validate_build: z.ZodDefault<z.ZodBoolean>;
20
+ build_timeout_ms: z.ZodDefault<z.ZodNumber>;
21
+ evidence_scope: z.ZodDefault<z.ZodEnum<["all", "latest", "session"]>>;
22
+ evidence_session_tag: z.ZodOptional<z.ZodString>;
23
+ reuse_cached: z.ZodDefault<z.ZodBoolean>;
24
+ }, "strip", z.ZodTypeAny, {
25
+ sample_id: string;
26
+ evidence_scope: "all" | "latest" | "session";
27
+ topk: number;
28
+ namespace: string;
29
+ validate_build: boolean;
30
+ build_timeout_ms: number;
31
+ reuse_cached: boolean;
32
+ project_name: string;
33
+ include_metadata_types: boolean;
34
+ max_managed_types: number;
35
+ include_obfuscation_fallback: boolean;
36
+ evidence_session_tag?: string | undefined;
37
+ export_name?: string | undefined;
38
+ }, {
39
+ sample_id: string;
40
+ evidence_scope?: "all" | "latest" | "session" | undefined;
41
+ topk?: number | undefined;
42
+ namespace?: string | undefined;
43
+ evidence_session_tag?: string | undefined;
44
+ export_name?: string | undefined;
45
+ validate_build?: boolean | undefined;
46
+ build_timeout_ms?: number | undefined;
47
+ reuse_cached?: boolean | undefined;
48
+ project_name?: string | undefined;
49
+ include_metadata_types?: boolean | undefined;
50
+ max_managed_types?: number | undefined;
51
+ include_obfuscation_fallback?: boolean | undefined;
52
+ }>, {
53
+ sample_id: string;
54
+ evidence_scope: "all" | "latest" | "session";
55
+ topk: number;
56
+ namespace: string;
57
+ validate_build: boolean;
58
+ build_timeout_ms: number;
59
+ reuse_cached: boolean;
60
+ project_name: string;
61
+ include_metadata_types: boolean;
62
+ max_managed_types: number;
63
+ include_obfuscation_fallback: boolean;
64
+ evidence_session_tag?: string | undefined;
65
+ export_name?: string | undefined;
66
+ }, {
67
+ sample_id: string;
68
+ evidence_scope?: "all" | "latest" | "session" | undefined;
69
+ topk?: number | undefined;
70
+ namespace?: string | undefined;
71
+ evidence_session_tag?: string | undefined;
72
+ export_name?: string | undefined;
73
+ validate_build?: boolean | undefined;
74
+ build_timeout_ms?: number | undefined;
75
+ reuse_cached?: boolean | undefined;
76
+ project_name?: string | undefined;
77
+ include_metadata_types?: boolean | undefined;
78
+ max_managed_types?: number | undefined;
79
+ include_obfuscation_fallback?: boolean | undefined;
80
+ }>;
81
+ export type DotNetReconstructExportInput = z.infer<typeof DotNetReconstructExportInputSchema>;
82
+ export declare const DotNetReconstructExportOutputSchema: z.ZodObject<{
83
+ ok: z.ZodBoolean;
84
+ data: z.ZodOptional<z.ZodObject<{
85
+ sample_id: z.ZodString;
86
+ is_dotnet: z.ZodBoolean;
87
+ dotnet_version: z.ZodNullable<z.ZodString>;
88
+ target_framework: z.ZodNullable<z.ZodString>;
89
+ packed: z.ZodBoolean;
90
+ packing_confidence: z.ZodNumber;
91
+ export_root: z.ZodString;
92
+ csproj_path: z.ZodString;
93
+ readme_path: z.ZodString;
94
+ metadata_path: z.ZodNullable<z.ZodString>;
95
+ reverse_notes_path: z.ZodNullable<z.ZodString>;
96
+ fallback_notes_path: z.ZodNullable<z.ZodString>;
97
+ degraded_mode: z.ZodBoolean;
98
+ degradation_reasons: z.ZodArray<z.ZodString, "many">;
99
+ build_validation: z.ZodObject<{
100
+ attempted: z.ZodBoolean;
101
+ status: z.ZodEnum<["passed", "failed", "skipped", "unavailable"]>;
102
+ command: z.ZodNullable<z.ZodString>;
103
+ dotnet_cli_available: z.ZodBoolean;
104
+ exit_code: z.ZodNullable<z.ZodNumber>;
105
+ timed_out: z.ZodBoolean;
106
+ error: z.ZodNullable<z.ZodString>;
107
+ log_path: z.ZodNullable<z.ZodString>;
108
+ }, "strip", z.ZodTypeAny, {
109
+ status: "failed" | "passed" | "skipped" | "unavailable";
110
+ error: string | null;
111
+ timed_out: boolean;
112
+ exit_code: number | null;
113
+ command: string | null;
114
+ attempted: boolean;
115
+ log_path: string | null;
116
+ dotnet_cli_available: boolean;
117
+ }, {
118
+ status: "failed" | "passed" | "skipped" | "unavailable";
119
+ error: string | null;
120
+ timed_out: boolean;
121
+ exit_code: number | null;
122
+ command: string | null;
123
+ attempted: boolean;
124
+ log_path: string | null;
125
+ dotnet_cli_available: boolean;
126
+ }>;
127
+ managed_profile: z.ZodNullable<z.ZodObject<{
128
+ assembly_name: z.ZodNullable<z.ZodString>;
129
+ assembly_version: z.ZodNullable<z.ZodString>;
130
+ module_name: z.ZodNullable<z.ZodString>;
131
+ metadata_version: z.ZodNullable<z.ZodString>;
132
+ is_library: z.ZodBoolean;
133
+ entry_point_token: z.ZodNullable<z.ZodString>;
134
+ type_count: z.ZodNumber;
135
+ method_count: z.ZodNumber;
136
+ namespace_count: z.ZodNumber;
137
+ assembly_reference_count: z.ZodNumber;
138
+ resource_count: z.ZodNumber;
139
+ dominant_namespaces: z.ZodArray<z.ZodString, "many">;
140
+ notable_types: z.ZodArray<z.ZodString, "many">;
141
+ assembly_references: z.ZodArray<z.ZodString, "many">;
142
+ resources: z.ZodArray<z.ZodString, "many">;
143
+ analysis_priorities: z.ZodArray<z.ZodString, "many">;
144
+ }, "strip", z.ZodTypeAny, {
145
+ resources: string[];
146
+ method_count: number;
147
+ type_count: number;
148
+ namespace_count: number;
149
+ assembly_reference_count: number;
150
+ resource_count: number;
151
+ assembly_name: string | null;
152
+ assembly_version: string | null;
153
+ module_name: string | null;
154
+ metadata_version: string | null;
155
+ is_library: boolean;
156
+ entry_point_token: string | null;
157
+ assembly_references: string[];
158
+ analysis_priorities: string[];
159
+ dominant_namespaces: string[];
160
+ notable_types: string[];
161
+ }, {
162
+ resources: string[];
163
+ method_count: number;
164
+ type_count: number;
165
+ namespace_count: number;
166
+ assembly_reference_count: number;
167
+ resource_count: number;
168
+ assembly_name: string | null;
169
+ assembly_version: string | null;
170
+ module_name: string | null;
171
+ metadata_version: string | null;
172
+ is_library: boolean;
173
+ entry_point_token: string | null;
174
+ assembly_references: string[];
175
+ analysis_priorities: string[];
176
+ dominant_namespaces: string[];
177
+ notable_types: string[];
178
+ }>>;
179
+ classes: z.ZodArray<z.ZodObject<{
180
+ class_name: z.ZodString;
181
+ source: z.ZodEnum<["module", "metadata"]>;
182
+ module: z.ZodString;
183
+ namespace: z.ZodString;
184
+ full_name: z.ZodNullable<z.ZodString>;
185
+ kind: z.ZodString;
186
+ confidence: z.ZodNumber;
187
+ file_path: z.ZodString;
188
+ methods: z.ZodArray<z.ZodObject<{
189
+ name: z.ZodString;
190
+ address: z.ZodNullable<z.ZodString>;
191
+ token: z.ZodNullable<z.ZodString>;
192
+ confidence: z.ZodNumber;
193
+ gaps: z.ZodArray<z.ZodString, "many">;
194
+ }, "strip", z.ZodTypeAny, {
195
+ address: string | null;
196
+ name: string;
197
+ gaps: string[];
198
+ confidence: number;
199
+ token: string | null;
200
+ }, {
201
+ address: string | null;
202
+ name: string;
203
+ gaps: string[];
204
+ confidence: number;
205
+ token: string | null;
206
+ }>, "many">;
207
+ }, "strip", z.ZodTypeAny, {
208
+ kind: string;
209
+ source: "module" | "metadata";
210
+ confidence: number;
211
+ module: string;
212
+ file_path: string;
213
+ namespace: string;
214
+ full_name: string | null;
215
+ methods: {
216
+ address: string | null;
217
+ name: string;
218
+ gaps: string[];
219
+ confidence: number;
220
+ token: string | null;
221
+ }[];
222
+ class_name: string;
223
+ }, {
224
+ kind: string;
225
+ source: "module" | "metadata";
226
+ confidence: number;
227
+ module: string;
228
+ file_path: string;
229
+ namespace: string;
230
+ full_name: string | null;
231
+ methods: {
232
+ address: string | null;
233
+ name: string;
234
+ gaps: string[];
235
+ confidence: number;
236
+ token: string | null;
237
+ }[];
238
+ class_name: string;
239
+ }>, "many">;
240
+ }, "strip", z.ZodTypeAny, {
241
+ sample_id: string;
242
+ is_dotnet: boolean;
243
+ dotnet_version: string | null;
244
+ target_framework: string | null;
245
+ packed: boolean;
246
+ packing_confidence: number;
247
+ export_root: string;
248
+ build_validation: {
249
+ status: "failed" | "passed" | "skipped" | "unavailable";
250
+ error: string | null;
251
+ timed_out: boolean;
252
+ exit_code: number | null;
253
+ command: string | null;
254
+ attempted: boolean;
255
+ log_path: string | null;
256
+ dotnet_cli_available: boolean;
257
+ };
258
+ csproj_path: string;
259
+ readme_path: string;
260
+ metadata_path: string | null;
261
+ reverse_notes_path: string | null;
262
+ fallback_notes_path: string | null;
263
+ degraded_mode: boolean;
264
+ degradation_reasons: string[];
265
+ managed_profile: {
266
+ resources: string[];
267
+ method_count: number;
268
+ type_count: number;
269
+ namespace_count: number;
270
+ assembly_reference_count: number;
271
+ resource_count: number;
272
+ assembly_name: string | null;
273
+ assembly_version: string | null;
274
+ module_name: string | null;
275
+ metadata_version: string | null;
276
+ is_library: boolean;
277
+ entry_point_token: string | null;
278
+ assembly_references: string[];
279
+ analysis_priorities: string[];
280
+ dominant_namespaces: string[];
281
+ notable_types: string[];
282
+ } | null;
283
+ classes: {
284
+ kind: string;
285
+ source: "module" | "metadata";
286
+ confidence: number;
287
+ module: string;
288
+ file_path: string;
289
+ namespace: string;
290
+ full_name: string | null;
291
+ methods: {
292
+ address: string | null;
293
+ name: string;
294
+ gaps: string[];
295
+ confidence: number;
296
+ token: string | null;
297
+ }[];
298
+ class_name: string;
299
+ }[];
300
+ }, {
301
+ sample_id: string;
302
+ is_dotnet: boolean;
303
+ dotnet_version: string | null;
304
+ target_framework: string | null;
305
+ packed: boolean;
306
+ packing_confidence: number;
307
+ export_root: string;
308
+ build_validation: {
309
+ status: "failed" | "passed" | "skipped" | "unavailable";
310
+ error: string | null;
311
+ timed_out: boolean;
312
+ exit_code: number | null;
313
+ command: string | null;
314
+ attempted: boolean;
315
+ log_path: string | null;
316
+ dotnet_cli_available: boolean;
317
+ };
318
+ csproj_path: string;
319
+ readme_path: string;
320
+ metadata_path: string | null;
321
+ reverse_notes_path: string | null;
322
+ fallback_notes_path: string | null;
323
+ degraded_mode: boolean;
324
+ degradation_reasons: string[];
325
+ managed_profile: {
326
+ resources: string[];
327
+ method_count: number;
328
+ type_count: number;
329
+ namespace_count: number;
330
+ assembly_reference_count: number;
331
+ resource_count: number;
332
+ assembly_name: string | null;
333
+ assembly_version: string | null;
334
+ module_name: string | null;
335
+ metadata_version: string | null;
336
+ is_library: boolean;
337
+ entry_point_token: string | null;
338
+ assembly_references: string[];
339
+ analysis_priorities: string[];
340
+ dominant_namespaces: string[];
341
+ notable_types: string[];
342
+ } | null;
343
+ classes: {
344
+ kind: string;
345
+ source: "module" | "metadata";
346
+ confidence: number;
347
+ module: string;
348
+ file_path: string;
349
+ namespace: string;
350
+ full_name: string | null;
351
+ methods: {
352
+ address: string | null;
353
+ name: string;
354
+ gaps: string[];
355
+ confidence: number;
356
+ token: string | null;
357
+ }[];
358
+ class_name: string;
359
+ }[];
360
+ }>>;
361
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
362
+ errors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
363
+ artifacts: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
364
+ metrics: z.ZodOptional<z.ZodObject<{
365
+ elapsed_ms: z.ZodNumber;
366
+ tool: z.ZodString;
367
+ cached: z.ZodOptional<z.ZodBoolean>;
368
+ cache_key: z.ZodOptional<z.ZodString>;
369
+ cache_tier: z.ZodOptional<z.ZodString>;
370
+ cache_created_at: z.ZodOptional<z.ZodString>;
371
+ cache_expires_at: z.ZodOptional<z.ZodString>;
372
+ cache_hit_at: z.ZodOptional<z.ZodString>;
373
+ }, "strip", z.ZodTypeAny, {
374
+ elapsed_ms: number;
375
+ tool: string;
376
+ cached?: boolean | undefined;
377
+ cache_key?: string | undefined;
378
+ cache_tier?: string | undefined;
379
+ cache_created_at?: string | undefined;
380
+ cache_expires_at?: string | undefined;
381
+ cache_hit_at?: string | undefined;
382
+ }, {
383
+ elapsed_ms: number;
384
+ tool: string;
385
+ cached?: boolean | undefined;
386
+ cache_key?: string | undefined;
387
+ cache_tier?: string | undefined;
388
+ cache_created_at?: string | undefined;
389
+ cache_expires_at?: string | undefined;
390
+ cache_hit_at?: string | undefined;
391
+ }>>;
392
+ }, "strip", z.ZodTypeAny, {
393
+ ok: boolean;
394
+ metrics?: {
395
+ elapsed_ms: number;
396
+ tool: string;
397
+ cached?: boolean | undefined;
398
+ cache_key?: string | undefined;
399
+ cache_tier?: string | undefined;
400
+ cache_created_at?: string | undefined;
401
+ cache_expires_at?: string | undefined;
402
+ cache_hit_at?: string | undefined;
403
+ } | undefined;
404
+ data?: {
405
+ sample_id: string;
406
+ is_dotnet: boolean;
407
+ dotnet_version: string | null;
408
+ target_framework: string | null;
409
+ packed: boolean;
410
+ packing_confidence: number;
411
+ export_root: string;
412
+ build_validation: {
413
+ status: "failed" | "passed" | "skipped" | "unavailable";
414
+ error: string | null;
415
+ timed_out: boolean;
416
+ exit_code: number | null;
417
+ command: string | null;
418
+ attempted: boolean;
419
+ log_path: string | null;
420
+ dotnet_cli_available: boolean;
421
+ };
422
+ csproj_path: string;
423
+ readme_path: string;
424
+ metadata_path: string | null;
425
+ reverse_notes_path: string | null;
426
+ fallback_notes_path: string | null;
427
+ degraded_mode: boolean;
428
+ degradation_reasons: string[];
429
+ managed_profile: {
430
+ resources: string[];
431
+ method_count: number;
432
+ type_count: number;
433
+ namespace_count: number;
434
+ assembly_reference_count: number;
435
+ resource_count: number;
436
+ assembly_name: string | null;
437
+ assembly_version: string | null;
438
+ module_name: string | null;
439
+ metadata_version: string | null;
440
+ is_library: boolean;
441
+ entry_point_token: string | null;
442
+ assembly_references: string[];
443
+ analysis_priorities: string[];
444
+ dominant_namespaces: string[];
445
+ notable_types: string[];
446
+ } | null;
447
+ classes: {
448
+ kind: string;
449
+ source: "module" | "metadata";
450
+ confidence: number;
451
+ module: string;
452
+ file_path: string;
453
+ namespace: string;
454
+ full_name: string | null;
455
+ methods: {
456
+ address: string | null;
457
+ name: string;
458
+ gaps: string[];
459
+ confidence: number;
460
+ token: string | null;
461
+ }[];
462
+ class_name: string;
463
+ }[];
464
+ } | undefined;
465
+ warnings?: string[] | undefined;
466
+ errors?: string[] | undefined;
467
+ artifacts?: any[] | undefined;
468
+ }, {
469
+ ok: boolean;
470
+ metrics?: {
471
+ elapsed_ms: number;
472
+ tool: string;
473
+ cached?: boolean | undefined;
474
+ cache_key?: string | undefined;
475
+ cache_tier?: string | undefined;
476
+ cache_created_at?: string | undefined;
477
+ cache_expires_at?: string | undefined;
478
+ cache_hit_at?: string | undefined;
479
+ } | undefined;
480
+ data?: {
481
+ sample_id: string;
482
+ is_dotnet: boolean;
483
+ dotnet_version: string | null;
484
+ target_framework: string | null;
485
+ packed: boolean;
486
+ packing_confidence: number;
487
+ export_root: string;
488
+ build_validation: {
489
+ status: "failed" | "passed" | "skipped" | "unavailable";
490
+ error: string | null;
491
+ timed_out: boolean;
492
+ exit_code: number | null;
493
+ command: string | null;
494
+ attempted: boolean;
495
+ log_path: string | null;
496
+ dotnet_cli_available: boolean;
497
+ };
498
+ csproj_path: string;
499
+ readme_path: string;
500
+ metadata_path: string | null;
501
+ reverse_notes_path: string | null;
502
+ fallback_notes_path: string | null;
503
+ degraded_mode: boolean;
504
+ degradation_reasons: string[];
505
+ managed_profile: {
506
+ resources: string[];
507
+ method_count: number;
508
+ type_count: number;
509
+ namespace_count: number;
510
+ assembly_reference_count: number;
511
+ resource_count: number;
512
+ assembly_name: string | null;
513
+ assembly_version: string | null;
514
+ module_name: string | null;
515
+ metadata_version: string | null;
516
+ is_library: boolean;
517
+ entry_point_token: string | null;
518
+ assembly_references: string[];
519
+ analysis_priorities: string[];
520
+ dominant_namespaces: string[];
521
+ notable_types: string[];
522
+ } | null;
523
+ classes: {
524
+ kind: string;
525
+ source: "module" | "metadata";
526
+ confidence: number;
527
+ module: string;
528
+ file_path: string;
529
+ namespace: string;
530
+ full_name: string | null;
531
+ methods: {
532
+ address: string | null;
533
+ name: string;
534
+ gaps: string[];
535
+ confidence: number;
536
+ token: string | null;
537
+ }[];
538
+ class_name: string;
539
+ }[];
540
+ } | undefined;
541
+ warnings?: string[] | undefined;
542
+ errors?: string[] | undefined;
543
+ artifacts?: any[] | undefined;
544
+ }>;
545
+ export type DotNetReconstructExportOutput = z.infer<typeof DotNetReconstructExportOutputSchema>;
546
+ export declare const dotNetReconstructExportToolDefinition: ToolDefinition;
547
+ interface BuildValidationResult {
548
+ attempted: boolean;
549
+ status: 'passed' | 'failed' | 'skipped' | 'unavailable';
550
+ command: string | null;
551
+ dotnet_cli_available: boolean;
552
+ exit_code: number | null;
553
+ timed_out: boolean;
554
+ stdout: string;
555
+ stderr: string;
556
+ error: string | null;
557
+ }
558
+ interface DotNetReconstructDependencies {
559
+ runtimeDetectHandler?: (args: ToolArgs) => Promise<WorkerResult>;
560
+ packerDetectHandler?: (args: ToolArgs) => Promise<WorkerResult>;
561
+ reconstructExportHandler?: (args: ToolArgs) => Promise<WorkerResult>;
562
+ dotNetMetadataHandler?: (args: ToolArgs) => Promise<WorkerResult>;
563
+ buildValidator?: (csprojPath: string, cwd: string, timeoutMs: number) => Promise<BuildValidationResult>;
564
+ }
565
+ export declare function createDotNetReconstructExportHandler(workspaceManager: WorkspaceManager, database: DatabaseManager, cacheManager: CacheManager, dependencies?: DotNetReconstructDependencies): (args: ToolArgs) => Promise<WorkerResult>;
566
+ export {};
567
+ //# sourceMappingURL=dotnet-reconstruct-export.d.ts.map