// ============================================================================= // TeslaLauncher — Shared IPC Models // ============================================================================= // IPC types (Tesla.Launcher.Shared): JSON messages between the Windows Service // and the user-session Agent over a Named Pipe. These never touch the Console // TCP connection. // // The BinaryFormatter wire types (Tesla.Net: LaunchData, InvokeCommand, ...) // formerly replicated here by hand now live in the shared Tesla.Contract project // (assembly TeslaConsoleLaunchLib), referenced by the Service. This file is also // compiled into the Agent, which uses only the IPC types below. // ============================================================================= namespace Tesla.Launcher.Shared { /// Command forwarded from the Windows Service to the Userspace Agent. public sealed class IpcMessage { public string Command { get; set; } public string LaunchKey { get; set; } public string PayloadJson { get; set; } } /// Response from the Userspace Agent back to the Windows Service. public sealed class IpcResponse { public bool Success { get; set; } public string Message { get; set; } public object Data { get; set; } } }