refactor(server): sync service (#19559)

This commit is contained in:
Jason Rasmussen 2025-06-26 13:24:57 -04:00 committed by GitHub
parent 926ff075a3
commit b96c95beda
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 4 additions and 5 deletions

View File

@ -13425,6 +13425,7 @@
"properties": {
"acks": {
"items": {
"maxLength": 1000,
"type": "string"
},
"type": "array"

View File

@ -1,5 +1,5 @@
import { ApiProperty } from '@nestjs/swagger';
import { IsEnum, IsInt, IsPositive, IsString } from 'class-validator';
import { IsEnum, IsInt, IsPositive, IsString, MaxLength } from 'class-validator';
import { AssetResponseDto } from 'src/dtos/asset-response.dto';
import { AlbumUserRole, AssetOrder, AssetType, AssetVisibility, SyncEntityType, SyncRequestType } from 'src/enum';
import { Optional, ValidateDate, ValidateUUID } from 'src/validation';
@ -217,6 +217,7 @@ export class SyncAckDto {
}
export class SyncAckSetDto {
@MaxLength(1000)
@IsString({ each: true })
acks!: string[];
}

View File

@ -96,10 +96,7 @@ export class SyncService extends BaseService {
throw new BadRequestException(`Invalid ack type: ${type}`);
}
if (checkpoints[type]) {
throw new BadRequestException('Only one ack per type is allowed');
}
// TODO pick the latest ack for each type, instead of using the last one
checkpoints[type] = { sessionId, type, ack };
}