feat(news): add scraper adapters, article deduplication, blocklist service, and remove tracked publish artifacts

This commit is contained in:
2026-08-24 21:35:33 +02:00
parent 44b161d509
commit 8112598602
400 changed files with 1812 additions and 113367 deletions
@@ -0,0 +1,25 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace FinlyticNews.Entities;
/// <summary>
/// Entity representing a blocked news URL (e.g. duplicates, missing content, or no matched assets).
/// Prevents redundant re-discovery and re-scraping of known bad or duplicate URLs.
/// </summary>
[Table("BlockedNewsUrls")]
public class BlockedNewsUrlEntity
{
[Key]
public Guid Id { get; set; } = Guid.NewGuid();
[Required]
[MaxLength(2048)]
public string Url { get; set; } = string.Empty;
[MaxLength(256)]
public string Reason { get; set; } = string.Empty;
public DateTime BlockedAtUtc { get; set; } = DateTime.UtcNow;
}