feat: harden gmail sync foundation
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
namespace JobTrackerApi.Services;
|
||||
|
||||
public sealed record GmailSemanticMatchCandidate(
|
||||
int? JobApplicationId,
|
||||
string? Confidence,
|
||||
string? Reason,
|
||||
IReadOnlyList<string>? ExtractedCompanies,
|
||||
IReadOnlyList<string>? ExtractedRecruiters,
|
||||
IReadOnlyList<string>? ExtractedRoles,
|
||||
IReadOnlyList<string>? ExtractedHints);
|
||||
|
||||
public interface IGmailCorrespondenceEnrichmentService
|
||||
{
|
||||
Task<GmailSemanticMatchCandidate?> EnrichAsync(string threadSubject, string from, string to, string snippet, string? bodyText, CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
||||
public sealed class NoOpGmailCorrespondenceEnrichmentService : IGmailCorrespondenceEnrichmentService
|
||||
{
|
||||
public Task<GmailSemanticMatchCandidate?> EnrichAsync(string threadSubject, string from, string to, string snippet, string? bodyText, CancellationToken cancellationToken = default)
|
||||
=> Task.FromResult<GmailSemanticMatchCandidate?>(null);
|
||||
}
|
||||
Reference in New Issue
Block a user