namespace ControlPlane.Core.Models; public record OpcRecord( Guid Id, string Number, string Title, string Description, string Type, string Status, string Priority, string Assignee, DateTime CreatedAt, DateTime UpdatedAt ); public record OpcNote( Guid Id, Guid OpcId, string Author, string Content, DateTime CreatedAt ); public record OpcArtifact( Guid Id, Guid OpcId, string ArtifactType, string Title, string Content, DateTime CreatedAt, DateTime UpdatedAt ); // Request / response shapes used by the API endpoints public record CreateOpcRequest( string Title, string Type, string Priority, string Assignee, string Description ); public record UpdateOpcRequest( string? Title, string? Description, string? Type, string? Status, string? Priority, string? Assignee ); public record AddNoteRequest(string Author, string Content); public record UpsertArtifactRequest( string ArtifactType, string Title, string Content ); public record AiAssistRequest(string Prompt, string? Context); public record OpcPinnedCommit( Guid OpcId, string Hash, string ShortHash, string Subject, string Author, DateTime PinnedAt, string PinnedBy ); public record PinCommitRequest(string Hash, string PinnedBy);