From f5acaf16d8a6c8d025bf071a886c13b1e7b20f33 Mon Sep 17 00:00:00 2001 From: Aleksey Kashapov Date: Tue, 23 Sep 2025 10:35:38 +0300 Subject: [PATCH 1/3] Changes turnover limit id to ref and makes revision number required --- proto/domain.thrift | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/proto/domain.thrift b/proto/domain.thrift index 0511d365..b84a38e4 100644 --- a/proto/domain.thrift +++ b/proto/domain.thrift @@ -1370,19 +1370,18 @@ struct CashLimitDecision { typedef limiter_config.LimitConfigID LimitConfigID struct TurnoverLimit { - 1: required LimitConfigID id + 1: required LimitConfigRef ref /** - * Допустимая верхняя граница. - * Лимит считается исчерпанным, если значение _строго больше_ верхней границы. + * Версия конфигурации, объект которой нужно брать для расчета указанного лимита. */ - 2: required Amount upper_boundary + 2: required DataRevision domain_revision /** - * Версия конфигурации, объект которой нужно брать для расчета лимитов с таким идентификатором. - * Обязательна после процесса миграции на конфигурацию лимитов через доминанту. + * Допустимая верхняя граница. + * Лимит считается исчерпанным, если значение _строго больше_ верхней границы. */ - 3: optional DataRevision domain_revision + 3: required Amount upper_boundary } union TurnoverLimitSelector { From f3c76721a6c979db9c7e46130bcd723eac07e58e Mon Sep 17 00:00:00 2001 From: Aleksey Kashapov Date: Tue, 23 Sep 2025 13:04:56 +0300 Subject: [PATCH 2/3] Reverts fields order change --- proto/domain.thrift | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/proto/domain.thrift b/proto/domain.thrift index b84a38e4..75daf9c7 100644 --- a/proto/domain.thrift +++ b/proto/domain.thrift @@ -1373,15 +1373,15 @@ struct TurnoverLimit { 1: required LimitConfigRef ref /** - * Версия конфигурации, объект которой нужно брать для расчета указанного лимита. + * Допустимая верхняя граница. + * Лимит считается исчерпанным, если значение _строго больше_ верхней границы. */ - 2: required DataRevision domain_revision + 2: required Amount upper_boundary /** - * Допустимая верхняя граница. - * Лимит считается исчерпанным, если значение _строго больше_ верхней границы. + * Версия конфигурации, объект которой нужно брать для расчета указанного лимита. */ - 3: required Amount upper_boundary + 3: required DataRevision domain_revision } union TurnoverLimitSelector { From 569971598fe4f915b5d9da716aacdcfc06f14567 Mon Sep 17 00:00:00 2001 From: Aleksey Kashapov Date: Wed, 24 Sep 2025 17:08:53 +0300 Subject: [PATCH 3/3] Removes legacy timestamp fields in `LimitConfig` struct --- proto/limiter_config.thrift | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/proto/limiter_config.thrift b/proto/limiter_config.thrift index 82739caf..b1d543b8 100644 --- a/proto/limiter_config.thrift +++ b/proto/limiter_config.thrift @@ -30,15 +30,13 @@ struct TimeRangeTypeInterval { struct LimitConfig { 1: required string processor_type - 2: required base.Timestamp created_at - 3: required base.Timestamp started_at - 4: required ShardSize shard_size - 5: required TimeRangeType time_range_type - 6: required LimitContextType context_type - 7: optional LimitType type - 8: optional set scopes - 9: optional string description - 10: optional OperationLimitBehaviour op_behaviour + 2: required ShardSize shard_size + 3: required TimeRangeType time_range_type + 4: required LimitContextType context_type + 5: optional LimitType type + 6: optional set scopes + 7: optional string description + 8: optional OperationLimitBehaviour op_behaviour /** * Convert operation's amount if its context currency differs from * limit-turnover metric (see `LimitTurnoverAmount`). @@ -47,7 +45,7 @@ struct LimitConfig { * throws `InvalidOperationCurrency` exception (see * limiter-proto). */ - 11: optional CurrencyConversion currency_conversion + 9: optional CurrencyConversion currency_conversion } struct CurrencyConversion {}