Add submission CRUD with pagination and role scoping, challenge/location binding, automatic keyword extraction, a validated status workflow, and domain events for matchmaking and notifications. Create a problem record together with each submission.
14 lines
333 B
C#
14 lines
333 B
C#
namespace TarninaHub.Application.Abstractions;
|
|
|
|
public sealed record SubmissionEvent(
|
|
string Type,
|
|
string SubmissionId,
|
|
string? ActorId,
|
|
string Status,
|
|
DateTimeOffset At);
|
|
|
|
public interface ISubmissionEventPublisher
|
|
{
|
|
Task PublishAsync(SubmissionEvent submissionEvent, CancellationToken cancellationToken);
|
|
}
|