Files
nexus/backend/Integrations/Contracts.cs
T
iris a79d8282dc
CI - Build & Test / Backend (.NET) (push) Successful in 54s
CI - Build & Test / Frontend (Vue/TS) (push) Successful in 19s
CI - Build & Test / Security Check (push) Successful in 2s
refactor: Clean Architecture mit Repository Pattern, Controllern und DTOs
- 15 Controller-Klassen ersetzen Minimal APIs in Program.cs
- Repository Pattern mit Interfaces + Implementierungen (Project, Task, Activity, User)
- AuthService verwendet jetzt IUserRepository statt direktem DbContext-Zugriff
- SecurityHeadersMiddleware als eigenständige Middleware-Klasse
- PathSecurityHelper als gemeinsamer Helper für Pfadvalidierung
- DTOs in eigenem Namespace Nexus.Api.DTOs
- EF-Entities in Nexus.Api.Data (vorher Nexus.Api.Domain)
- Program.cs auf DI-Registrierung + Middleware reduziert
- Alle 43 Endpoints unverändert erhalten
- Build + 3/3 Tests erfolgreich
2026-06-09 19:52:58 +02:00

40 lines
942 B
C#

using Nexus.Api.Data;
namespace Nexus.Api.Integrations;
public sealed record AgentRuntimeStatus(
string Runtime,
OperationalStatus Status,
TimeSpan? Latency,
string? Detail);
public sealed record ModelProviderStatus(
string Provider,
string Model,
OperationalStatus Status,
bool IsLocal,
string? Detail);
public sealed record AgentChatResult(
string Runtime,
string AgentId,
string ConversationId,
string Content);
public interface IAgentRuntime
{
string Name { get; }
Task<AgentRuntimeStatus> GetStatusAsync(CancellationToken cancellationToken);
Task<AgentChatResult> ChatAsync(
string message,
string conversationId,
string agentId,
CancellationToken cancellationToken);
}
public interface IModelProvider
{
string Name { get; }
Task<IReadOnlyCollection<ModelProviderStatus>> GetModelsAsync(CancellationToken cancellationToken);
}