csharpdeeb25a2 | 1 | using CascadeIDE.Services; |
| 2 | |
| 3 | namespace CascadeIDE.Features.Agent.Environment; |
| 4 | |
| 5 | /// <summary> |
| 6 | /// MLP-мост AEE ↔ Roslyn batch (ADR 0148 §5, W6): единая точка для будущего |
| 7 | /// <c>GetDiagnosticsBatch</c> / <c>ApplyPatchBatch</c> без дублирования MCP. |
| 8 | /// </summary> |
| 9 | public sealed class AgentAeeRoslynBridge |
| 10 | { |
| 11 | private readonly CSharpLanguageService? _language; |
| 12 | |
| 13 | public AgentAeeRoslynBridge(CSharpLanguageService? language) => _language = language; |
| 14 | |
| 15 | public bool IsAvailable => _language is not null; |
| 16 | |
| 17 | /// <summary>Сейчас делегирует в diagnose.files runner; идеал — один IPC round-trip на шаг.</summary> |
| 18 | public Task<DiagnoseFilesOutcome> DiagnoseOpenAndDirtyAsync( |
| 19 | AgentRoslynDiagnoseFilesDiagnostics diagnoseFiles, |
| 20 | CancellationToken cancellationToken = default) => |
| 21 | diagnoseFiles.RunAsync(cancellationToken); |
| 22 | } |
| 23 | |
View only · write via MCP/CIDE