ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: очистка хранилища и проектные квоты

This commit is contained in:
DCCONSTRUCTIONS
2026-04-28 13:25:37 +03:00
parent 02d79da6f9
commit 46e27a326c
15 changed files with 870 additions and 66 deletions
+54
View File
@@ -251,9 +251,47 @@ export interface IWorkspaceStorageProjectSummary {
dedup_savings: number;
failed_upload_count: number;
failed_upload_size: number;
failed_preview_count: number;
failed_preview_size: number;
stale_unuploaded_count: number;
soft_deleted_count: number;
soft_deleted_size: number;
uploaded_without_blob_count: number;
quota_enabled: boolean;
quota: number;
quota_used: number;
quota_remaining: number | null;
quota_percent: number;
quota_exceeded: boolean;
quota_warning: boolean;
}
export interface IWorkspaceStorageProjectQuotaResponse {
id: string;
quota_enabled: boolean;
quota: number;
quota_used: number;
quota_remaining: number | null;
quota_percent: number;
quota_exceeded: boolean;
quota_warning: boolean;
}
export type TWorkspaceStorageMaintenanceAction =
| "scan_missing_blobs"
| "purge_stale_unuploaded"
| "purge_expired_deleted"
| "purge_orphaned_blobs";
export interface IWorkspaceStorageMaintenanceResponse {
action: TWorkspaceStorageMaintenanceAction;
scanned_count?: number;
missing_count?: number;
restored_count?: number;
deleted_asset_count?: number;
deleted_blob_count?: number;
deleted_object_count?: number;
released_size?: number;
}
export interface IWorkspaceStorageSummaryResponse {
@@ -283,6 +321,22 @@ export interface IWorkspaceStorageSummaryResponse {
orphaned_blob_size: number;
missing_blob_count: number;
missing_blob_size: number;
failed_preview_count: number;
failed_preview_size: number;
failed_preview_instrumented: boolean;
quota_warning_project_count: number;
quota_exceeded_project_count: number;
};
cleanup: {
workspace_slug: string;
unuploaded_retention_days: number;
soft_deleted_retention_days: number;
unuploaded_ready_count: number;
unuploaded_ready_size: number;
soft_deleted_ready_count: number;
soft_deleted_ready_size: number;
orphaned_blob_ready_count: number;
orphaned_blob_ready_size: number;
};
projects: IWorkspaceStorageProjectSummary[];
}