namespace GerbilManagerWebAPI.Dtos { /// FEEDBACK: payload for POST /feedback (the "Fehler melden" dialog). public record FeedbackInput( string Message, string Context, Guid? GerbilId, Guid? LitterId, Guid? ContactId, string? EntityName, string? Url, DateTimeOffset? ClientTimestamp); /// /// FEEDBACK: one past Q&A turn in the ticket's thread/history. /// Role is "maintainer" (Rückfrage) or "breeder" (Antwort). /// public record FeedbackThreadEntry( string Role, string Text, DateTimeOffset? At); /// FEEDBACK: response DTO for a stored report. public record FeedbackDto( Guid Id, string Message, string Context, Guid? GerbilId, Guid? LitterId, Guid? ContactId, string? EntityName, string? Url, DateTimeOffset? ClientTimestamp, string? UserAgent, DateTimeOffset CreatedAt, string Status, DateTimeOffset? ResolvedAt, string? Question, string? Answer, DateTimeOffset? AnsweredAt, /// Breeder-friendly changelog written on resolve (shown in the UI). string? FixNote, /// INTERNAL agent working memory — exposed for tooling, NEVER shown to the breeder. string? AgentContext, /// Earlier Q&A rounds, oldest first; the current open exchange stays in Question/Answer. IReadOnlyList Thread); /// /// FEEDBACK: payload for PUT /feedback/{id}. Edit the message and/or toggle status, /// attach a clarifying question (Rückfrage), submit the breeder's answer, set the /// breeder-friendly fix note (changelog), or update the internal agent context. /// public record FeedbackUpdate( string? Message, string? Status, string? Question, string? Answer, string? FixNote, string? AgentContext); }