using System; using System.Threading; namespace io.github.hatayama.uLoopMCP { /// /// Interface for dynamic code execution integration functionality /// Related classes: DynamicCodeExecutor, RoslynCompiler, SecurityValidator, CommandRunner /// public interface IDynamicCodeExecutor : IDisposable { /// Asynchronous code execution System.Threading.Tasks.Task ExecuteCodeAsync( string code, string className = DynamicCodeConstants.DEFAULT_CLASS_NAME, object[] parameters = null, CancellationToken cancellationToken = default, bool compileOnly = false ); ExecutionStatistics GetStatistics(); } /// Execution statistics public class ExecutionStatistics { /// Total execution count public int TotalExecutions { get; set; } /// Successful execution count public int SuccessfulExecutions { get; set; } /// Failed execution count public int FailedExecutions { get; set; } /// Average execution time public TimeSpan AverageExecutionTime { get; set; } /// Security violation count public int SecurityViolations { get; set; } /// Compilation error count public int CompilationErrors { get; set; } } }