feat: table available_downloads découplée des jobs de détection
- Nouvelle table available_downloads (library_id, series_name) unique comme source de vérité pour les téléchargements disponibles - Les jobs de détection font UPSERT (ajout/mise à jour) et DELETE (séries complètes ou sans résultat) - Après import, mise à jour ciblée : retire les volumes importés des releases, supprime l'entrée si plus de releases - Migration avec import des données existantes depuis detection_results - Endpoint latest-found simplifié : une seule query sur la table Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1184,12 +1184,18 @@ export type DownloadDetectionResultDto = {
|
||||
error_message: string | null;
|
||||
};
|
||||
|
||||
export type AvailableDownloadDto = {
|
||||
id: string;
|
||||
series_name: string;
|
||||
missing_count: number;
|
||||
available_releases: AvailableReleaseDto[] | null;
|
||||
updated_at: string;
|
||||
};
|
||||
|
||||
export type LatestFoundPerLibraryDto = {
|
||||
library_id: string;
|
||||
library_name: string;
|
||||
job_id: string;
|
||||
job_date: string;
|
||||
results: DownloadDetectionResultDto[];
|
||||
results: AvailableDownloadDto[];
|
||||
};
|
||||
|
||||
export async function getDownloadDetectionReport(jobId: string) {
|
||||
|
||||
Reference in New Issue
Block a user