diff --git a/pkg/api/core/v1/types.pb.go b/pkg/api/core/v1/types.pb.go index 5b7bf0e8..adb0ee33 100644 --- a/pkg/api/core/v1/types.pb.go +++ b/pkg/api/core/v1/types.pb.go @@ -4850,248 +4850,6 @@ func (x *SetRewardPoolAuthorities) GetAuthorities() []string { return nil } -// === Legacy reward wire format (pre-pool-rollout) === -// -// These messages are the on-the-wire shape used before the body+signature -// envelope was introduced. They are NOT used by new clients or new code paths -// — they exist solely so that the new binary can decode and apply historical -// reward transactions encountered during block-sync-from-genesis. -// -// DO NOT REMOVE these types or their field tags: removing them would break -// replay of any chain history that contains rewards committed before the -// upgrade. Adding new fields here is also forbidden — the wire shape must -// remain pinned to what the old network produced. -type LegacyRewardMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Action: - // - // *LegacyRewardMessage_Create - // *LegacyRewardMessage_Delete - Action isLegacyRewardMessage_Action `protobuf_oneof:"action"` -} - -func (x *LegacyRewardMessage) Reset() { - *x = LegacyRewardMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[74] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LegacyRewardMessage) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LegacyRewardMessage) ProtoMessage() {} - -func (x *LegacyRewardMessage) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[74] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LegacyRewardMessage.ProtoReflect.Descriptor instead. -func (*LegacyRewardMessage) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{74} -} - -func (m *LegacyRewardMessage) GetAction() isLegacyRewardMessage_Action { - if m != nil { - return m.Action - } - return nil -} - -func (x *LegacyRewardMessage) GetCreate() *LegacyCreateReward { - if x, ok := x.GetAction().(*LegacyRewardMessage_Create); ok { - return x.Create - } - return nil -} - -func (x *LegacyRewardMessage) GetDelete() *LegacyDeleteReward { - if x, ok := x.GetAction().(*LegacyRewardMessage_Delete); ok { - return x.Delete - } - return nil -} - -type isLegacyRewardMessage_Action interface { - isLegacyRewardMessage_Action() -} - -type LegacyRewardMessage_Create struct { - Create *LegacyCreateReward `protobuf:"bytes,1000,opt,name=create,proto3,oneof"` -} - -type LegacyRewardMessage_Delete struct { - Delete *LegacyDeleteReward `protobuf:"bytes,1001,opt,name=delete,proto3,oneof"` -} - -func (*LegacyRewardMessage_Create) isLegacyRewardMessage_Action() {} - -func (*LegacyRewardMessage_Delete) isLegacyRewardMessage_Action() {} - -type LegacyCreateReward struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RewardId string `protobuf:"bytes,1,opt,name=reward_id,json=rewardId,proto3" json:"reward_id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Amount uint64 `protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"` - ClaimAuthorities []*ClaimAuthority `protobuf:"bytes,4,rep,name=claim_authorities,json=claimAuthorities,proto3" json:"claim_authorities,omitempty"` - DeadlineBlockHeight int64 `protobuf:"varint,5,opt,name=deadline_block_height,json=deadlineBlockHeight,proto3" json:"deadline_block_height,omitempty"` - Signature string `protobuf:"bytes,6,opt,name=signature,proto3" json:"signature,omitempty"` -} - -func (x *LegacyCreateReward) Reset() { - *x = LegacyCreateReward{} - if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[75] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LegacyCreateReward) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LegacyCreateReward) ProtoMessage() {} - -func (x *LegacyCreateReward) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[75] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LegacyCreateReward.ProtoReflect.Descriptor instead. -func (*LegacyCreateReward) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{75} -} - -func (x *LegacyCreateReward) GetRewardId() string { - if x != nil { - return x.RewardId - } - return "" -} - -func (x *LegacyCreateReward) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *LegacyCreateReward) GetAmount() uint64 { - if x != nil { - return x.Amount - } - return 0 -} - -func (x *LegacyCreateReward) GetClaimAuthorities() []*ClaimAuthority { - if x != nil { - return x.ClaimAuthorities - } - return nil -} - -func (x *LegacyCreateReward) GetDeadlineBlockHeight() int64 { - if x != nil { - return x.DeadlineBlockHeight - } - return 0 -} - -func (x *LegacyCreateReward) GetSignature() string { - if x != nil { - return x.Signature - } - return "" -} - -type LegacyDeleteReward struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - DeadlineBlockHeight int64 `protobuf:"varint,2,opt,name=deadline_block_height,json=deadlineBlockHeight,proto3" json:"deadline_block_height,omitempty"` - Signature string `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` -} - -func (x *LegacyDeleteReward) Reset() { - *x = LegacyDeleteReward{} - if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[76] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LegacyDeleteReward) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LegacyDeleteReward) ProtoMessage() {} - -func (x *LegacyDeleteReward) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[76] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LegacyDeleteReward.ProtoReflect.Descriptor instead. -func (*LegacyDeleteReward) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{76} -} - -func (x *LegacyDeleteReward) GetAddress() string { - if x != nil { - return x.Address - } - return "" -} - -func (x *LegacyDeleteReward) GetDeadlineBlockHeight() int64 { - if x != nil { - return x.DeadlineBlockHeight - } - return 0 -} - -func (x *LegacyDeleteReward) GetSignature() string { - if x != nil { - return x.Signature - } - return "" -} - type GetRewardPoolRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5103,7 +4861,7 @@ type GetRewardPoolRequest struct { func (x *GetRewardPoolRequest) Reset() { *x = GetRewardPoolRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[77] + mi := &file_core_v1_types_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5116,7 +4874,7 @@ func (x *GetRewardPoolRequest) String() string { func (*GetRewardPoolRequest) ProtoMessage() {} func (x *GetRewardPoolRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[77] + mi := &file_core_v1_types_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5129,7 +4887,7 @@ func (x *GetRewardPoolRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRewardPoolRequest.ProtoReflect.Descriptor instead. func (*GetRewardPoolRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{77} + return file_core_v1_types_proto_rawDescGZIP(), []int{74} } func (x *GetRewardPoolRequest) GetRewardsManagerPubkey() string { @@ -5151,7 +4909,7 @@ type GetRewardPoolResponse struct { func (x *GetRewardPoolResponse) Reset() { *x = GetRewardPoolResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[78] + mi := &file_core_v1_types_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5164,7 +4922,7 @@ func (x *GetRewardPoolResponse) String() string { func (*GetRewardPoolResponse) ProtoMessage() {} func (x *GetRewardPoolResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[78] + mi := &file_core_v1_types_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5177,7 +4935,7 @@ func (x *GetRewardPoolResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRewardPoolResponse.ProtoReflect.Descriptor instead. func (*GetRewardPoolResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{78} + return file_core_v1_types_proto_rawDescGZIP(), []int{75} } func (x *GetRewardPoolResponse) GetRewardsManagerPubkey() string { @@ -5206,7 +4964,7 @@ type GetRewardRequest struct { func (x *GetRewardRequest) Reset() { *x = GetRewardRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[79] + mi := &file_core_v1_types_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5219,7 +4977,7 @@ func (x *GetRewardRequest) String() string { func (*GetRewardRequest) ProtoMessage() {} func (x *GetRewardRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[79] + mi := &file_core_v1_types_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5232,7 +4990,7 @@ func (x *GetRewardRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRewardRequest.ProtoReflect.Descriptor instead. func (*GetRewardRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{79} + return file_core_v1_types_proto_rawDescGZIP(), []int{76} } func (x *GetRewardRequest) GetAddress() string { @@ -5266,7 +5024,7 @@ type GetRewardResponse struct { func (x *GetRewardResponse) Reset() { *x = GetRewardResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[80] + mi := &file_core_v1_types_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5279,7 +5037,7 @@ func (x *GetRewardResponse) String() string { func (*GetRewardResponse) ProtoMessage() {} func (x *GetRewardResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[80] + mi := &file_core_v1_types_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5292,7 +5050,7 @@ func (x *GetRewardResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRewardResponse.ProtoReflect.Descriptor instead. func (*GetRewardResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{80} + return file_core_v1_types_proto_rawDescGZIP(), []int{77} } func (x *GetRewardResponse) GetAddress() string { @@ -5360,7 +5118,7 @@ type RewardAttestationSignature struct { func (x *RewardAttestationSignature) Reset() { *x = RewardAttestationSignature{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[81] + mi := &file_core_v1_types_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5373,7 +5131,7 @@ func (x *RewardAttestationSignature) String() string { func (*RewardAttestationSignature) ProtoMessage() {} func (x *RewardAttestationSignature) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[81] + mi := &file_core_v1_types_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5386,7 +5144,7 @@ func (x *RewardAttestationSignature) ProtoReflect() protoreflect.Message { // Deprecated: Use RewardAttestationSignature.ProtoReflect.Descriptor instead. func (*RewardAttestationSignature) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{81} + return file_core_v1_types_proto_rawDescGZIP(), []int{78} } func (x *RewardAttestationSignature) GetEthRecipientAddress() string { @@ -5442,7 +5200,7 @@ type UploadSignature struct { func (x *UploadSignature) Reset() { *x = UploadSignature{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[82] + mi := &file_core_v1_types_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5455,7 +5213,7 @@ func (x *UploadSignature) String() string { func (*UploadSignature) ProtoMessage() {} func (x *UploadSignature) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[82] + mi := &file_core_v1_types_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5468,7 +5226,7 @@ func (x *UploadSignature) ProtoReflect() protoreflect.Message { // Deprecated: Use UploadSignature.ProtoReflect.Descriptor instead. func (*UploadSignature) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{82} + return file_core_v1_types_proto_rawDescGZIP(), []int{79} } func (x *UploadSignature) GetCid() string { @@ -5504,7 +5262,7 @@ type FileUpload struct { func (x *FileUpload) Reset() { *x = FileUpload{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[83] + mi := &file_core_v1_types_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5517,7 +5275,7 @@ func (x *FileUpload) String() string { func (*FileUpload) ProtoMessage() {} func (x *FileUpload) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[83] + mi := &file_core_v1_types_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5530,7 +5288,7 @@ func (x *FileUpload) ProtoReflect() protoreflect.Message { // Deprecated: Use FileUpload.ProtoReflect.Descriptor instead. func (*FileUpload) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{83} + return file_core_v1_types_proto_rawDescGZIP(), []int{80} } func (x *FileUpload) GetUploaderAddress() string { @@ -5601,7 +5359,7 @@ type MediorumOperation struct { func (x *MediorumOperation) Reset() { *x = MediorumOperation{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[84] + mi := &file_core_v1_types_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5614,7 +5372,7 @@ func (x *MediorumOperation) String() string { func (*MediorumOperation) ProtoMessage() {} func (x *MediorumOperation) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[84] + mi := &file_core_v1_types_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5627,7 +5385,7 @@ func (x *MediorumOperation) ProtoReflect() protoreflect.Message { // Deprecated: Use MediorumOperation.ProtoReflect.Descriptor instead. func (*MediorumOperation) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{84} + return file_core_v1_types_proto_rawDescGZIP(), []int{81} } func (x *MediorumOperation) GetUlid() string { @@ -5692,7 +5450,7 @@ type ContentAttestationPayload struct { func (x *ContentAttestationPayload) Reset() { *x = ContentAttestationPayload{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[85] + mi := &file_core_v1_types_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5705,7 +5463,7 @@ func (x *ContentAttestationPayload) String() string { func (*ContentAttestationPayload) ProtoMessage() {} func (x *ContentAttestationPayload) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[85] + mi := &file_core_v1_types_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5718,7 +5476,7 @@ func (x *ContentAttestationPayload) ProtoReflect() protoreflect.Message { // Deprecated: Use ContentAttestationPayload.ProtoReflect.Descriptor instead. func (*ContentAttestationPayload) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{85} + return file_core_v1_types_proto_rawDescGZIP(), []int{82} } func (x *ContentAttestationPayload) GetUserId() int64 { @@ -5769,7 +5527,7 @@ type ContentAttestation struct { func (x *ContentAttestation) Reset() { *x = ContentAttestation{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[86] + mi := &file_core_v1_types_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5782,7 +5540,7 @@ func (x *ContentAttestation) String() string { func (*ContentAttestation) ProtoMessage() {} func (x *ContentAttestation) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[86] + mi := &file_core_v1_types_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5795,7 +5553,7 @@ func (x *ContentAttestation) ProtoReflect() protoreflect.Message { // Deprecated: Use ContentAttestation.ProtoReflect.Descriptor instead. func (*ContentAttestation) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{86} + return file_core_v1_types_proto_rawDescGZIP(), []int{83} } func (x *ContentAttestation) GetUserId() int64 { @@ -5839,7 +5597,7 @@ type GetStreamURLsSignature struct { func (x *GetStreamURLsSignature) Reset() { *x = GetStreamURLsSignature{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[87] + mi := &file_core_v1_types_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5852,7 +5610,7 @@ func (x *GetStreamURLsSignature) String() string { func (*GetStreamURLsSignature) ProtoMessage() {} func (x *GetStreamURLsSignature) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[87] + mi := &file_core_v1_types_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5865,7 +5623,7 @@ func (x *GetStreamURLsSignature) ProtoReflect() protoreflect.Message { // Deprecated: Use GetStreamURLsSignature.ProtoReflect.Descriptor instead. func (*GetStreamURLsSignature) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{87} + return file_core_v1_types_proto_rawDescGZIP(), []int{84} } func (x *GetStreamURLsSignature) GetAddresses() []string { @@ -5902,7 +5660,7 @@ type GetStreamURLsRequest struct { func (x *GetStreamURLsRequest) Reset() { *x = GetStreamURLsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[88] + mi := &file_core_v1_types_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5915,7 +5673,7 @@ func (x *GetStreamURLsRequest) String() string { func (*GetStreamURLsRequest) ProtoMessage() {} func (x *GetStreamURLsRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[88] + mi := &file_core_v1_types_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5928,7 +5686,7 @@ func (x *GetStreamURLsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetStreamURLsRequest.ProtoReflect.Descriptor instead. func (*GetStreamURLsRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{88} + return file_core_v1_types_proto_rawDescGZIP(), []int{85} } func (x *GetStreamURLsRequest) GetSignature() string { @@ -5965,7 +5723,7 @@ type GetStreamURLsResponse struct { func (x *GetStreamURLsResponse) Reset() { *x = GetStreamURLsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[89] + mi := &file_core_v1_types_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5978,7 +5736,7 @@ func (x *GetStreamURLsResponse) String() string { func (*GetStreamURLsResponse) ProtoMessage() {} func (x *GetStreamURLsResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[89] + mi := &file_core_v1_types_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5991,7 +5749,7 @@ func (x *GetStreamURLsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetStreamURLsResponse.ProtoReflect.Descriptor instead. func (*GetStreamURLsResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{89} + return file_core_v1_types_proto_rawDescGZIP(), []int{86} } func (x *GetStreamURLsResponse) GetEntityStreamUrls() map[string]*GetStreamURLsResponse_EntityStreamURLs { @@ -6012,7 +5770,7 @@ type GetUploadByCIDRequest struct { func (x *GetUploadByCIDRequest) Reset() { *x = GetUploadByCIDRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[90] + mi := &file_core_v1_types_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6025,7 +5783,7 @@ func (x *GetUploadByCIDRequest) String() string { func (*GetUploadByCIDRequest) ProtoMessage() {} func (x *GetUploadByCIDRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[90] + mi := &file_core_v1_types_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6038,7 +5796,7 @@ func (x *GetUploadByCIDRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUploadByCIDRequest.ProtoReflect.Descriptor instead. func (*GetUploadByCIDRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{90} + return file_core_v1_types_proto_rawDescGZIP(), []int{87} } func (x *GetUploadByCIDRequest) GetCid() string { @@ -6062,7 +5820,7 @@ type GetUploadByCIDResponse struct { func (x *GetUploadByCIDResponse) Reset() { *x = GetUploadByCIDResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[91] + mi := &file_core_v1_types_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6075,7 +5833,7 @@ func (x *GetUploadByCIDResponse) String() string { func (*GetUploadByCIDResponse) ProtoMessage() {} func (x *GetUploadByCIDResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[91] + mi := &file_core_v1_types_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6088,7 +5846,7 @@ func (x *GetUploadByCIDResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUploadByCIDResponse.ProtoReflect.Descriptor instead. func (*GetUploadByCIDResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{91} + return file_core_v1_types_proto_rawDescGZIP(), []int{88} } func (x *GetUploadByCIDResponse) GetExists() bool { @@ -6131,7 +5889,7 @@ type GetRewardSenderAttestationRequest struct { func (x *GetRewardSenderAttestationRequest) Reset() { *x = GetRewardSenderAttestationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[92] + mi := &file_core_v1_types_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6144,7 +5902,7 @@ func (x *GetRewardSenderAttestationRequest) String() string { func (*GetRewardSenderAttestationRequest) ProtoMessage() {} func (x *GetRewardSenderAttestationRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[92] + mi := &file_core_v1_types_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6157,7 +5915,7 @@ func (x *GetRewardSenderAttestationRequest) ProtoReflect() protoreflect.Message // Deprecated: Use GetRewardSenderAttestationRequest.ProtoReflect.Descriptor instead. func (*GetRewardSenderAttestationRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{92} + return file_core_v1_types_proto_rawDescGZIP(), []int{89} } func (x *GetRewardSenderAttestationRequest) GetAddress() string { @@ -6186,7 +5944,7 @@ type GetRewardSenderAttestationResponse struct { func (x *GetRewardSenderAttestationResponse) Reset() { *x = GetRewardSenderAttestationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[93] + mi := &file_core_v1_types_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6199,7 +5957,7 @@ func (x *GetRewardSenderAttestationResponse) String() string { func (*GetRewardSenderAttestationResponse) ProtoMessage() {} func (x *GetRewardSenderAttestationResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[93] + mi := &file_core_v1_types_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6212,7 +5970,7 @@ func (x *GetRewardSenderAttestationResponse) ProtoReflect() protoreflect.Message // Deprecated: Use GetRewardSenderAttestationResponse.ProtoReflect.Descriptor instead. func (*GetRewardSenderAttestationResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{93} + return file_core_v1_types_proto_rawDescGZIP(), []int{90} } func (x *GetRewardSenderAttestationResponse) GetOwner() string { @@ -6241,7 +5999,7 @@ type GetDeleteRewardSenderAttestationRequest struct { func (x *GetDeleteRewardSenderAttestationRequest) Reset() { *x = GetDeleteRewardSenderAttestationRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[94] + mi := &file_core_v1_types_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6254,7 +6012,7 @@ func (x *GetDeleteRewardSenderAttestationRequest) String() string { func (*GetDeleteRewardSenderAttestationRequest) ProtoMessage() {} func (x *GetDeleteRewardSenderAttestationRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[94] + mi := &file_core_v1_types_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6267,7 +6025,7 @@ func (x *GetDeleteRewardSenderAttestationRequest) ProtoReflect() protoreflect.Me // Deprecated: Use GetDeleteRewardSenderAttestationRequest.ProtoReflect.Descriptor instead. func (*GetDeleteRewardSenderAttestationRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{94} + return file_core_v1_types_proto_rawDescGZIP(), []int{91} } func (x *GetDeleteRewardSenderAttestationRequest) GetAddress() string { @@ -6296,7 +6054,7 @@ type GetDeleteRewardSenderAttestationResponse struct { func (x *GetDeleteRewardSenderAttestationResponse) Reset() { *x = GetDeleteRewardSenderAttestationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[95] + mi := &file_core_v1_types_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6309,7 +6067,7 @@ func (x *GetDeleteRewardSenderAttestationResponse) String() string { func (*GetDeleteRewardSenderAttestationResponse) ProtoMessage() {} func (x *GetDeleteRewardSenderAttestationResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[95] + mi := &file_core_v1_types_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6322,7 +6080,7 @@ func (x *GetDeleteRewardSenderAttestationResponse) ProtoReflect() protoreflect.M // Deprecated: Use GetDeleteRewardSenderAttestationResponse.ProtoReflect.Descriptor instead. func (*GetDeleteRewardSenderAttestationResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{95} + return file_core_v1_types_proto_rawDescGZIP(), []int{92} } func (x *GetDeleteRewardSenderAttestationResponse) GetOwner() string { @@ -6355,7 +6113,7 @@ type StreamBlocksRequest struct { func (x *StreamBlocksRequest) Reset() { *x = StreamBlocksRequest{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[96] + mi := &file_core_v1_types_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6368,7 +6126,7 @@ func (x *StreamBlocksRequest) String() string { func (*StreamBlocksRequest) ProtoMessage() {} func (x *StreamBlocksRequest) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[96] + mi := &file_core_v1_types_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6381,7 +6139,7 @@ func (x *StreamBlocksRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamBlocksRequest.ProtoReflect.Descriptor instead. func (*StreamBlocksRequest) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{96} + return file_core_v1_types_proto_rawDescGZIP(), []int{93} } func (x *StreamBlocksRequest) GetCanon() bool { @@ -6409,7 +6167,7 @@ type StreamBlocksResponse struct { func (x *StreamBlocksResponse) Reset() { *x = StreamBlocksResponse{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[97] + mi := &file_core_v1_types_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6422,7 +6180,7 @@ func (x *StreamBlocksResponse) String() string { func (*StreamBlocksResponse) ProtoMessage() {} func (x *StreamBlocksResponse) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[97] + mi := &file_core_v1_types_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6435,7 +6193,7 @@ func (x *StreamBlocksResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamBlocksResponse.ProtoReflect.Descriptor instead. func (*StreamBlocksResponse) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{97} + return file_core_v1_types_proto_rawDescGZIP(), []int{94} } func (x *StreamBlocksResponse) GetBlock() *Block { @@ -6466,7 +6224,7 @@ type GetStatusResponse_ProcessInfo struct { func (x *GetStatusResponse_ProcessInfo) Reset() { *x = GetStatusResponse_ProcessInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[98] + mi := &file_core_v1_types_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6479,7 +6237,7 @@ func (x *GetStatusResponse_ProcessInfo) String() string { func (*GetStatusResponse_ProcessInfo) ProtoMessage() {} func (x *GetStatusResponse_ProcessInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[98] + mi := &file_core_v1_types_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6586,7 +6344,7 @@ type GetStatusResponse_NodeInfo struct { func (x *GetStatusResponse_NodeInfo) Reset() { *x = GetStatusResponse_NodeInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[99] + mi := &file_core_v1_types_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6599,7 +6357,7 @@ func (x *GetStatusResponse_NodeInfo) String() string { func (*GetStatusResponse_NodeInfo) ProtoMessage() {} func (x *GetStatusResponse_NodeInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[99] + mi := &file_core_v1_types_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6657,7 +6415,7 @@ type GetStatusResponse_ChainInfo struct { func (x *GetStatusResponse_ChainInfo) Reset() { *x = GetStatusResponse_ChainInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[100] + mi := &file_core_v1_types_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6670,7 +6428,7 @@ func (x *GetStatusResponse_ChainInfo) String() string { func (*GetStatusResponse_ChainInfo) ProtoMessage() {} func (x *GetStatusResponse_ChainInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[100] + mi := &file_core_v1_types_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6730,7 +6488,7 @@ type GetStatusResponse_SyncInfo struct { func (x *GetStatusResponse_SyncInfo) Reset() { *x = GetStatusResponse_SyncInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[101] + mi := &file_core_v1_types_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6743,7 +6501,7 @@ func (x *GetStatusResponse_SyncInfo) String() string { func (*GetStatusResponse_SyncInfo) ProtoMessage() {} func (x *GetStatusResponse_SyncInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[101] + mi := &file_core_v1_types_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6821,7 +6579,7 @@ type GetStatusResponse_PruningInfo struct { func (x *GetStatusResponse_PruningInfo) Reset() { *x = GetStatusResponse_PruningInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[102] + mi := &file_core_v1_types_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6834,7 +6592,7 @@ func (x *GetStatusResponse_PruningInfo) String() string { func (*GetStatusResponse_PruningInfo) ProtoMessage() {} func (x *GetStatusResponse_PruningInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[102] + mi := &file_core_v1_types_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6923,7 +6681,7 @@ type GetStatusResponse_ResourceInfo struct { func (x *GetStatusResponse_ResourceInfo) Reset() { *x = GetStatusResponse_ResourceInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[103] + mi := &file_core_v1_types_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6936,7 +6694,7 @@ func (x *GetStatusResponse_ResourceInfo) String() string { func (*GetStatusResponse_ResourceInfo) ProtoMessage() {} func (x *GetStatusResponse_ResourceInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[103] + mi := &file_core_v1_types_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7015,7 +6773,7 @@ type GetStatusResponse_MempoolInfo struct { func (x *GetStatusResponse_MempoolInfo) Reset() { *x = GetStatusResponse_MempoolInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[104] + mi := &file_core_v1_types_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7028,7 +6786,7 @@ func (x *GetStatusResponse_MempoolInfo) String() string { func (*GetStatusResponse_MempoolInfo) ProtoMessage() {} func (x *GetStatusResponse_MempoolInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[104] + mi := &file_core_v1_types_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7084,7 +6842,7 @@ type GetStatusResponse_SnapshotInfo struct { func (x *GetStatusResponse_SnapshotInfo) Reset() { *x = GetStatusResponse_SnapshotInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[105] + mi := &file_core_v1_types_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7097,7 +6855,7 @@ func (x *GetStatusResponse_SnapshotInfo) String() string { func (*GetStatusResponse_SnapshotInfo) ProtoMessage() {} func (x *GetStatusResponse_SnapshotInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[105] + mi := &file_core_v1_types_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7138,7 +6896,7 @@ type GetStatusResponse_PeerInfo struct { func (x *GetStatusResponse_PeerInfo) Reset() { *x = GetStatusResponse_PeerInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[106] + mi := &file_core_v1_types_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7151,7 +6909,7 @@ func (x *GetStatusResponse_PeerInfo) String() string { func (*GetStatusResponse_PeerInfo) ProtoMessage() {} func (x *GetStatusResponse_PeerInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[106] + mi := &file_core_v1_types_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7205,7 +6963,7 @@ type GetStatusResponse_StorageInfo struct { func (x *GetStatusResponse_StorageInfo) Reset() { *x = GetStatusResponse_StorageInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[107] + mi := &file_core_v1_types_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7218,7 +6976,7 @@ func (x *GetStatusResponse_StorageInfo) String() string { func (*GetStatusResponse_StorageInfo) ProtoMessage() {} func (x *GetStatusResponse_StorageInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[107] + mi := &file_core_v1_types_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7354,7 +7112,7 @@ type GetStatusResponse_ProcessInfo_ProcessStateInfo struct { func (x *GetStatusResponse_ProcessInfo_ProcessStateInfo) Reset() { *x = GetStatusResponse_ProcessInfo_ProcessStateInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[108] + mi := &file_core_v1_types_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7367,7 +7125,7 @@ func (x *GetStatusResponse_ProcessInfo_ProcessStateInfo) String() string { func (*GetStatusResponse_ProcessInfo_ProcessStateInfo) ProtoMessage() {} func (x *GetStatusResponse_ProcessInfo_ProcessStateInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[108] + mi := &file_core_v1_types_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7434,7 +7192,7 @@ type GetStatusResponse_SyncInfo_StateSyncInfo struct { func (x *GetStatusResponse_SyncInfo_StateSyncInfo) Reset() { *x = GetStatusResponse_SyncInfo_StateSyncInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[109] + mi := &file_core_v1_types_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7447,7 +7205,7 @@ func (x *GetStatusResponse_SyncInfo_StateSyncInfo) String() string { func (*GetStatusResponse_SyncInfo_StateSyncInfo) ProtoMessage() {} func (x *GetStatusResponse_SyncInfo_StateSyncInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[109] + mi := &file_core_v1_types_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7521,7 +7279,7 @@ type GetStatusResponse_SyncInfo_BlockSyncInfo struct { func (x *GetStatusResponse_SyncInfo_BlockSyncInfo) Reset() { *x = GetStatusResponse_SyncInfo_BlockSyncInfo{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[110] + mi := &file_core_v1_types_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7534,7 +7292,7 @@ func (x *GetStatusResponse_SyncInfo_BlockSyncInfo) String() string { func (*GetStatusResponse_SyncInfo_BlockSyncInfo) ProtoMessage() {} func (x *GetStatusResponse_SyncInfo_BlockSyncInfo) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[110] + mi := &file_core_v1_types_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7613,7 +7371,7 @@ type GetStatusResponse_PeerInfo_Peer struct { func (x *GetStatusResponse_PeerInfo_Peer) Reset() { *x = GetStatusResponse_PeerInfo_Peer{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[111] + mi := &file_core_v1_types_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7626,7 +7384,7 @@ func (x *GetStatusResponse_PeerInfo_Peer) String() string { func (*GetStatusResponse_PeerInfo_Peer) ProtoMessage() {} func (x *GetStatusResponse_PeerInfo_Peer) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[111] + mi := &file_core_v1_types_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7737,7 +7495,7 @@ type GetStreamURLsResponse_EntityStreamURLs struct { func (x *GetStreamURLsResponse_EntityStreamURLs) Reset() { *x = GetStreamURLsResponse_EntityStreamURLs{} if protoimpl.UnsafeEnabled { - mi := &file_core_v1_types_proto_msgTypes[113] + mi := &file_core_v1_types_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7750,7 +7508,7 @@ func (x *GetStreamURLsResponse_EntityStreamURLs) String() string { func (*GetStreamURLsResponse_EntityStreamURLs) ProtoMessage() {} func (x *GetStreamURLsResponse_EntityStreamURLs) ProtoReflect() protoreflect.Message { - mi := &file_core_v1_types_proto_msgTypes[113] + mi := &file_core_v1_types_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7763,7 +7521,7 @@ func (x *GetStreamURLsResponse_EntityStreamURLs) ProtoReflect() protoreflect.Mes // Deprecated: Use GetStreamURLsResponse_EntityStreamURLs.ProtoReflect.Descriptor instead. func (*GetStreamURLsResponse_EntityStreamURLs) Descriptor() ([]byte, []int) { - return file_core_v1_types_proto_rawDescGZIP(), []int{89, 0} + return file_core_v1_types_proto_rawDescGZIP(), []int{86, 0} } func (x *GetStreamURLsResponse_EntityStreamURLs) GetEntityType() string { @@ -8745,222 +8503,189 @@ var file_core_v1_types_proto_rawDesc = []byte{ 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x68, - 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x13, 0x4c, 0x65, 0x67, 0x61, - 0x63, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x36, 0x0a, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, - 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x18, 0xe9, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, - 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf5, 0x01, 0x0a, 0x12, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x11, 0x63, 0x6c, 0x61, - 0x69, 0x6d, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x10, 0x63, - 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, - 0x32, 0x0a, 0x15, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, - 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x22, 0x80, 0x01, 0x0a, 0x12, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x13, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x22, 0x4c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x16, - 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, - 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, - 0x65, 0x79, 0x22, 0x6f, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x50, - 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x72, + 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x4c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x34, 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, + 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x6f, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, + 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, + 0x62, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x44, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x78, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x68, 0x61, 0x73, 0x68, 0x22, 0xde, 0x01, 0x0a, + 0x11, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x10, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xf3, 0x01, + 0x0a, 0x1a, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x32, 0x0a, 0x15, + 0x65, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x65, 0x74, 0x68, + 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, + 0x61, 0x69, 0x6d, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x22, 0x23, 0x0a, 0x0f, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0x96, 0x02, 0x0a, 0x0a, 0x46, 0x69, 0x6c, + 0x65, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x73, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x75, 0x70, + 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, + 0x43, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x2f, 0x0a, 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, + 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x22, 0x7d, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x6f, 0x72, 0x75, 0x6d, 0x4f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x6c, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x6c, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, + 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x48, 0x0a, 0x19, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x12, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x73, 0x12, 0x2b, + 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x71, 0x0a, 0x16, + 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x53, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, + 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, + 0x8d, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, + 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, + 0x87, 0x03, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x12, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x73, 0x1a, 0x93, 0x01, + 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, + 0x4c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, + 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x72, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x1a, 0x74, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x45, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, + 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x29, 0x0a, 0x15, 0x47, 0x65, 0x74, + 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x79, 0x43, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x63, 0x69, 0x64, 0x22, 0xa5, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x55, 0x70, 0x6c, 0x6f, + 0x61, 0x64, 0x42, 0x79, 0x43, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, + 0x61, 0x6c, 0x43, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, + 0x64, 0x65, 0x64, 0x5f, 0x63, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x43, 0x69, 0x64, 0x22, 0x73, 0x0a, 0x21, + 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, + 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x70, - 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, 0x77, + 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, - 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x22, 0x44, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x78, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x74, 0x78, 0x68, 0x61, 0x73, 0x68, 0x22, 0xde, 0x01, 0x0a, 0x11, 0x47, 0x65, - 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x61, 0x75, 0x74, 0x68, - 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x63, - 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xf3, 0x01, 0x0a, 0x1a, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x74, 0x68, - 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x65, 0x74, 0x68, 0x52, 0x65, 0x63, - 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, - 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x70, 0x65, - 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x70, - 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x22, 0x23, 0x0a, 0x0f, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0x96, 0x02, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x55, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x43, 0x69, 0x64, - 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, - 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x7d, - 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x6f, 0x72, 0x75, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x6c, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x75, 0x6c, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x48, 0x0a, - 0x19, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, - 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, - 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x71, 0x0a, 0x16, 0x47, 0x65, 0x74, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, - 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x8d, 0x01, 0x0a, - 0x14, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, - 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x87, 0x03, 0x0a, - 0x15, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, - 0x72, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x73, 0x1a, 0x93, 0x01, 0x0a, 0x10, 0x45, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x29, 0x0a, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, - 0x72, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x65, 0x72, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x1a, 0x74, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x55, 0x72, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x45, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x6f, 0x72, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, - 0x4c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x29, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x55, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x42, 0x79, 0x43, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, - 0x64, 0x22, 0xa5, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x42, - 0x79, 0x43, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, - 0x69, 0x73, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x43, - 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, - 0x5f, 0x63, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, - 0x73, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x43, 0x69, 0x64, 0x22, 0x73, 0x0a, 0x21, 0x47, 0x65, 0x74, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x74, 0x74, 0x65, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x5c, - 0x0a, 0x22, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, - 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x79, 0x0a, 0x27, - 0x47, 0x65, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x62, 0x0a, 0x28, 0x47, 0x65, 0x74, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, - 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4e, 0x0a, 0x13, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x05, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3c, 0x0a, 0x14, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x41, 0x75, 0x64, 0x69, - 0x6f, 0x2f, 0x67, 0x6f, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x70, - 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x79, 0x22, 0x5c, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, + 0x0b, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x79, 0x0a, 0x27, 0x47, 0x65, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x62, 0x0a, 0x28, 0x47, 0x65, + 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x53, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, + 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4e, + 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3c, + 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x42, 0x33, 0x5a, 0x31, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x41, + 0x75, 0x64, 0x69, 0x6f, 0x2f, 0x67, 0x6f, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x75, 0x64, 0x69, + 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, + 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -8976,7 +8701,7 @@ func file_core_v1_types_proto_rawDescGZIP() []byte { } var file_core_v1_types_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_core_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 115) +var file_core_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 112) var file_core_v1_types_proto_goTypes = []interface{}{ (GetStatusResponse_ProcessInfo_ProcessState)(0), // 0: core.v1.GetStatusResponse.ProcessInfo.ProcessState (GetStatusResponse_SyncInfo_StateSyncInfo_Phase)(0), // 1: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.Phase @@ -9054,87 +8779,84 @@ var file_core_v1_types_proto_goTypes = []interface{}{ (*RewardPoolBody)(nil), // 73: core.v1.RewardPoolBody (*CreateRewardPool)(nil), // 74: core.v1.CreateRewardPool (*SetRewardPoolAuthorities)(nil), // 75: core.v1.SetRewardPoolAuthorities - (*LegacyRewardMessage)(nil), // 76: core.v1.LegacyRewardMessage - (*LegacyCreateReward)(nil), // 77: core.v1.LegacyCreateReward - (*LegacyDeleteReward)(nil), // 78: core.v1.LegacyDeleteReward - (*GetRewardPoolRequest)(nil), // 79: core.v1.GetRewardPoolRequest - (*GetRewardPoolResponse)(nil), // 80: core.v1.GetRewardPoolResponse - (*GetRewardRequest)(nil), // 81: core.v1.GetRewardRequest - (*GetRewardResponse)(nil), // 82: core.v1.GetRewardResponse - (*RewardAttestationSignature)(nil), // 83: core.v1.RewardAttestationSignature - (*UploadSignature)(nil), // 84: core.v1.UploadSignature - (*FileUpload)(nil), // 85: core.v1.FileUpload - (*MediorumOperation)(nil), // 86: core.v1.MediorumOperation - (*ContentAttestationPayload)(nil), // 87: core.v1.ContentAttestationPayload - (*ContentAttestation)(nil), // 88: core.v1.ContentAttestation - (*GetStreamURLsSignature)(nil), // 89: core.v1.GetStreamURLsSignature - (*GetStreamURLsRequest)(nil), // 90: core.v1.GetStreamURLsRequest - (*GetStreamURLsResponse)(nil), // 91: core.v1.GetStreamURLsResponse - (*GetUploadByCIDRequest)(nil), // 92: core.v1.GetUploadByCIDRequest - (*GetUploadByCIDResponse)(nil), // 93: core.v1.GetUploadByCIDResponse - (*GetRewardSenderAttestationRequest)(nil), // 94: core.v1.GetRewardSenderAttestationRequest - (*GetRewardSenderAttestationResponse)(nil), // 95: core.v1.GetRewardSenderAttestationResponse - (*GetDeleteRewardSenderAttestationRequest)(nil), // 96: core.v1.GetDeleteRewardSenderAttestationRequest - (*GetDeleteRewardSenderAttestationResponse)(nil), // 97: core.v1.GetDeleteRewardSenderAttestationResponse - (*StreamBlocksRequest)(nil), // 98: core.v1.StreamBlocksRequest - (*StreamBlocksResponse)(nil), // 99: core.v1.StreamBlocksResponse - (*GetStatusResponse_ProcessInfo)(nil), // 100: core.v1.GetStatusResponse.ProcessInfo - (*GetStatusResponse_NodeInfo)(nil), // 101: core.v1.GetStatusResponse.NodeInfo - (*GetStatusResponse_ChainInfo)(nil), // 102: core.v1.GetStatusResponse.ChainInfo - (*GetStatusResponse_SyncInfo)(nil), // 103: core.v1.GetStatusResponse.SyncInfo - (*GetStatusResponse_PruningInfo)(nil), // 104: core.v1.GetStatusResponse.PruningInfo - (*GetStatusResponse_ResourceInfo)(nil), // 105: core.v1.GetStatusResponse.ResourceInfo - (*GetStatusResponse_MempoolInfo)(nil), // 106: core.v1.GetStatusResponse.MempoolInfo - (*GetStatusResponse_SnapshotInfo)(nil), // 107: core.v1.GetStatusResponse.SnapshotInfo - (*GetStatusResponse_PeerInfo)(nil), // 108: core.v1.GetStatusResponse.PeerInfo - (*GetStatusResponse_StorageInfo)(nil), // 109: core.v1.GetStatusResponse.StorageInfo - (*GetStatusResponse_ProcessInfo_ProcessStateInfo)(nil), // 110: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - (*GetStatusResponse_SyncInfo_StateSyncInfo)(nil), // 111: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo - (*GetStatusResponse_SyncInfo_BlockSyncInfo)(nil), // 112: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo - (*GetStatusResponse_PeerInfo_Peer)(nil), // 113: core.v1.GetStatusResponse.PeerInfo.Peer - nil, // 114: core.v1.GetBlocksResponse.BlocksEntry - (*GetStreamURLsResponse_EntityStreamURLs)(nil), // 115: core.v1.GetStreamURLsResponse.EntityStreamURLs - nil, // 116: core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry - (*v1beta1.Transaction)(nil), // 117: core.v1beta1.Transaction - (*v1beta1.TransactionReceipt)(nil), // 118: core.v1beta1.TransactionReceipt - (*timestamppb.Timestamp)(nil), // 119: google.protobuf.Timestamp - (*v1beta11.NewReleaseMessage)(nil), // 120: ddex.v1beta1.NewReleaseMessage - (*v1beta11.Party)(nil), // 121: ddex.v1beta1.Party - (*v1beta11.Resource)(nil), // 122: ddex.v1beta1.Resource - (*v1beta11.Release)(nil), // 123: ddex.v1beta1.Release - (*v1beta11.Deal)(nil), // 124: ddex.v1beta1.Deal - (*v1beta11.MeadMessage)(nil), // 125: ddex.v1beta1.MeadMessage - (*v1beta11.PieMessage)(nil), // 126: ddex.v1beta1.PieMessage + (*GetRewardPoolRequest)(nil), // 76: core.v1.GetRewardPoolRequest + (*GetRewardPoolResponse)(nil), // 77: core.v1.GetRewardPoolResponse + (*GetRewardRequest)(nil), // 78: core.v1.GetRewardRequest + (*GetRewardResponse)(nil), // 79: core.v1.GetRewardResponse + (*RewardAttestationSignature)(nil), // 80: core.v1.RewardAttestationSignature + (*UploadSignature)(nil), // 81: core.v1.UploadSignature + (*FileUpload)(nil), // 82: core.v1.FileUpload + (*MediorumOperation)(nil), // 83: core.v1.MediorumOperation + (*ContentAttestationPayload)(nil), // 84: core.v1.ContentAttestationPayload + (*ContentAttestation)(nil), // 85: core.v1.ContentAttestation + (*GetStreamURLsSignature)(nil), // 86: core.v1.GetStreamURLsSignature + (*GetStreamURLsRequest)(nil), // 87: core.v1.GetStreamURLsRequest + (*GetStreamURLsResponse)(nil), // 88: core.v1.GetStreamURLsResponse + (*GetUploadByCIDRequest)(nil), // 89: core.v1.GetUploadByCIDRequest + (*GetUploadByCIDResponse)(nil), // 90: core.v1.GetUploadByCIDResponse + (*GetRewardSenderAttestationRequest)(nil), // 91: core.v1.GetRewardSenderAttestationRequest + (*GetRewardSenderAttestationResponse)(nil), // 92: core.v1.GetRewardSenderAttestationResponse + (*GetDeleteRewardSenderAttestationRequest)(nil), // 93: core.v1.GetDeleteRewardSenderAttestationRequest + (*GetDeleteRewardSenderAttestationResponse)(nil), // 94: core.v1.GetDeleteRewardSenderAttestationResponse + (*StreamBlocksRequest)(nil), // 95: core.v1.StreamBlocksRequest + (*StreamBlocksResponse)(nil), // 96: core.v1.StreamBlocksResponse + (*GetStatusResponse_ProcessInfo)(nil), // 97: core.v1.GetStatusResponse.ProcessInfo + (*GetStatusResponse_NodeInfo)(nil), // 98: core.v1.GetStatusResponse.NodeInfo + (*GetStatusResponse_ChainInfo)(nil), // 99: core.v1.GetStatusResponse.ChainInfo + (*GetStatusResponse_SyncInfo)(nil), // 100: core.v1.GetStatusResponse.SyncInfo + (*GetStatusResponse_PruningInfo)(nil), // 101: core.v1.GetStatusResponse.PruningInfo + (*GetStatusResponse_ResourceInfo)(nil), // 102: core.v1.GetStatusResponse.ResourceInfo + (*GetStatusResponse_MempoolInfo)(nil), // 103: core.v1.GetStatusResponse.MempoolInfo + (*GetStatusResponse_SnapshotInfo)(nil), // 104: core.v1.GetStatusResponse.SnapshotInfo + (*GetStatusResponse_PeerInfo)(nil), // 105: core.v1.GetStatusResponse.PeerInfo + (*GetStatusResponse_StorageInfo)(nil), // 106: core.v1.GetStatusResponse.StorageInfo + (*GetStatusResponse_ProcessInfo_ProcessStateInfo)(nil), // 107: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + (*GetStatusResponse_SyncInfo_StateSyncInfo)(nil), // 108: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo + (*GetStatusResponse_SyncInfo_BlockSyncInfo)(nil), // 109: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo + (*GetStatusResponse_PeerInfo_Peer)(nil), // 110: core.v1.GetStatusResponse.PeerInfo.Peer + nil, // 111: core.v1.GetBlocksResponse.BlocksEntry + (*GetStreamURLsResponse_EntityStreamURLs)(nil), // 112: core.v1.GetStreamURLsResponse.EntityStreamURLs + nil, // 113: core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry + (*v1beta1.Transaction)(nil), // 114: core.v1beta1.Transaction + (*v1beta1.TransactionReceipt)(nil), // 115: core.v1beta1.TransactionReceipt + (*timestamppb.Timestamp)(nil), // 116: google.protobuf.Timestamp + (*v1beta11.NewReleaseMessage)(nil), // 117: ddex.v1beta1.NewReleaseMessage + (*v1beta11.Party)(nil), // 118: ddex.v1beta1.Party + (*v1beta11.Resource)(nil), // 119: ddex.v1beta1.Resource + (*v1beta11.Release)(nil), // 120: ddex.v1beta1.Release + (*v1beta11.Deal)(nil), // 121: ddex.v1beta1.Deal + (*v1beta11.MeadMessage)(nil), // 122: ddex.v1beta1.MeadMessage + (*v1beta11.PieMessage)(nil), // 123: ddex.v1beta1.PieMessage } var file_core_v1_types_proto_depIdxs = []int32{ - 101, // 0: core.v1.GetStatusResponse.node_info:type_name -> core.v1.GetStatusResponse.NodeInfo - 102, // 1: core.v1.GetStatusResponse.chain_info:type_name -> core.v1.GetStatusResponse.ChainInfo - 103, // 2: core.v1.GetStatusResponse.sync_info:type_name -> core.v1.GetStatusResponse.SyncInfo - 104, // 3: core.v1.GetStatusResponse.pruning_info:type_name -> core.v1.GetStatusResponse.PruningInfo - 105, // 4: core.v1.GetStatusResponse.resource_info:type_name -> core.v1.GetStatusResponse.ResourceInfo - 106, // 5: core.v1.GetStatusResponse.mempool_info:type_name -> core.v1.GetStatusResponse.MempoolInfo - 108, // 6: core.v1.GetStatusResponse.peers:type_name -> core.v1.GetStatusResponse.PeerInfo - 107, // 7: core.v1.GetStatusResponse.snapshot_info:type_name -> core.v1.GetStatusResponse.SnapshotInfo - 100, // 8: core.v1.GetStatusResponse.process_info:type_name -> core.v1.GetStatusResponse.ProcessInfo - 109, // 9: core.v1.GetStatusResponse.storage_info:type_name -> core.v1.GetStatusResponse.StorageInfo + 98, // 0: core.v1.GetStatusResponse.node_info:type_name -> core.v1.GetStatusResponse.NodeInfo + 99, // 1: core.v1.GetStatusResponse.chain_info:type_name -> core.v1.GetStatusResponse.ChainInfo + 100, // 2: core.v1.GetStatusResponse.sync_info:type_name -> core.v1.GetStatusResponse.SyncInfo + 101, // 3: core.v1.GetStatusResponse.pruning_info:type_name -> core.v1.GetStatusResponse.PruningInfo + 102, // 4: core.v1.GetStatusResponse.resource_info:type_name -> core.v1.GetStatusResponse.ResourceInfo + 103, // 5: core.v1.GetStatusResponse.mempool_info:type_name -> core.v1.GetStatusResponse.MempoolInfo + 105, // 6: core.v1.GetStatusResponse.peers:type_name -> core.v1.GetStatusResponse.PeerInfo + 104, // 7: core.v1.GetStatusResponse.snapshot_info:type_name -> core.v1.GetStatusResponse.SnapshotInfo + 97, // 8: core.v1.GetStatusResponse.process_info:type_name -> core.v1.GetStatusResponse.ProcessInfo + 106, // 9: core.v1.GetStatusResponse.storage_info:type_name -> core.v1.GetStatusResponse.StorageInfo 24, // 10: core.v1.GetBlockResponse.block:type_name -> core.v1.Block - 114, // 11: core.v1.GetBlocksResponse.blocks:type_name -> core.v1.GetBlocksResponse.BlocksEntry + 111, // 11: core.v1.GetBlocksResponse.blocks:type_name -> core.v1.GetBlocksResponse.BlocksEntry 25, // 12: core.v1.GetTransactionResponse.transaction:type_name -> core.v1.Transaction 26, // 13: core.v1.SendTransactionRequest.transaction:type_name -> core.v1.SignedTransaction - 117, // 14: core.v1.SendTransactionRequest.transactionv2:type_name -> core.v1beta1.Transaction + 114, // 14: core.v1.SendTransactionRequest.transactionv2:type_name -> core.v1beta1.Transaction 25, // 15: core.v1.SendTransactionResponse.transaction:type_name -> core.v1.Transaction - 118, // 16: core.v1.SendTransactionResponse.transaction_receipt:type_name -> core.v1beta1.TransactionReceipt + 115, // 16: core.v1.SendTransactionResponse.transaction_receipt:type_name -> core.v1beta1.TransactionReceipt 26, // 17: core.v1.ForwardTransactionRequest.transaction:type_name -> core.v1.SignedTransaction - 117, // 18: core.v1.ForwardTransactionRequest.transactionv2:type_name -> core.v1beta1.Transaction + 114, // 18: core.v1.ForwardTransactionRequest.transactionv2:type_name -> core.v1beta1.Transaction 38, // 19: core.v1.GetRegistrationAttestationRequest.registration:type_name -> core.v1.ValidatorRegistration 38, // 20: core.v1.GetRegistrationAttestationResponse.registration:type_name -> core.v1.ValidatorRegistration 39, // 21: core.v1.GetDeregistrationAttestationRequest.deregistration:type_name -> core.v1.ValidatorDeregistration 39, // 22: core.v1.GetDeregistrationAttestationResponse.deregistration:type_name -> core.v1.ValidatorDeregistration - 119, // 23: core.v1.Block.timestamp:type_name -> google.protobuf.Timestamp + 116, // 23: core.v1.Block.timestamp:type_name -> google.protobuf.Timestamp 25, // 24: core.v1.Block.transactions:type_name -> core.v1.Transaction 26, // 25: core.v1.Transaction.transaction:type_name -> core.v1.SignedTransaction - 119, // 26: core.v1.Transaction.timestamp:type_name -> google.protobuf.Timestamp - 117, // 27: core.v1.Transaction.transactionv2:type_name -> core.v1beta1.Transaction + 116, // 26: core.v1.Transaction.timestamp:type_name -> google.protobuf.Timestamp + 114, // 27: core.v1.Transaction.transactionv2:type_name -> core.v1beta1.Transaction 27, // 28: core.v1.SignedTransaction.plays:type_name -> core.v1.TrackPlays 28, // 29: core.v1.SignedTransaction.validator_registration:type_name -> core.v1.ValidatorRegistrationLegacy 30, // 30: core.v1.SignedTransaction.sla_rollup:type_name -> core.v1.SlaRollup @@ -9143,79 +8865,76 @@ var file_core_v1_types_proto_depIdxs = []int32{ 35, // 33: core.v1.SignedTransaction.storage_proof:type_name -> core.v1.StorageProof 36, // 34: core.v1.SignedTransaction.storage_proof_verification:type_name -> core.v1.StorageProofVerification 37, // 35: core.v1.SignedTransaction.attestation:type_name -> core.v1.Attestation - 120, // 36: core.v1.SignedTransaction.release:type_name -> ddex.v1beta1.NewReleaseMessage + 117, // 36: core.v1.SignedTransaction.release:type_name -> ddex.v1beta1.NewReleaseMessage 68, // 37: core.v1.SignedTransaction.reward:type_name -> core.v1.RewardMessage - 85, // 38: core.v1.SignedTransaction.file_upload:type_name -> core.v1.FileUpload + 82, // 38: core.v1.SignedTransaction.file_upload:type_name -> core.v1.FileUpload 72, // 39: core.v1.SignedTransaction.reward_pool:type_name -> core.v1.RewardPoolMessage 33, // 40: core.v1.SignedTransaction.manage_entity_migration:type_name -> core.v1.ManageEntityLegacyMigration - 86, // 41: core.v1.SignedTransaction.mediorum_operation:type_name -> core.v1.MediorumOperation - 88, // 42: core.v1.SignedTransaction.content_attestation:type_name -> core.v1.ContentAttestation + 83, // 41: core.v1.SignedTransaction.mediorum_operation:type_name -> core.v1.MediorumOperation + 85, // 42: core.v1.SignedTransaction.content_attestation:type_name -> core.v1.ContentAttestation 29, // 43: core.v1.TrackPlays.plays:type_name -> core.v1.TrackPlay - 119, // 44: core.v1.TrackPlay.timestamp:type_name -> google.protobuf.Timestamp - 119, // 45: core.v1.SlaRollup.timestamp:type_name -> google.protobuf.Timestamp + 116, // 44: core.v1.TrackPlay.timestamp:type_name -> google.protobuf.Timestamp + 116, // 45: core.v1.SlaRollup.timestamp:type_name -> google.protobuf.Timestamp 31, // 46: core.v1.SlaRollup.reports:type_name -> core.v1.SlaNodeReport 38, // 47: core.v1.Attestation.validator_registration:type_name -> core.v1.ValidatorRegistration 39, // 48: core.v1.Attestation.validator_deregistration:type_name -> core.v1.ValidatorDeregistration 42, // 49: core.v1.GetStoredSnapshotsResponse.snapshots:type_name -> core.v1.SnapshotMetadata 43, // 50: core.v1.Reward.claim_authorities:type_name -> core.v1.ClaimAuthority - 82, // 51: core.v1.GetRewardsResponse.rewards:type_name -> core.v1.GetRewardResponse - 119, // 52: core.v1.SlashRecommendation.start:type_name -> google.protobuf.Timestamp - 119, // 53: core.v1.SlashRecommendation.end:type_name -> google.protobuf.Timestamp + 79, // 51: core.v1.GetRewardsResponse.rewards:type_name -> core.v1.GetRewardResponse + 116, // 52: core.v1.SlashRecommendation.start:type_name -> google.protobuf.Timestamp + 116, // 53: core.v1.SlashRecommendation.end:type_name -> google.protobuf.Timestamp 49, // 54: core.v1.GetSlashAttestationRequest.data:type_name -> core.v1.SlashRecommendation 50, // 55: core.v1.GetSlashAttestationsRequest.request:type_name -> core.v1.GetSlashAttestationRequest 51, // 56: core.v1.GetSlashAttestationsResponse.attestations:type_name -> core.v1.GetSlashAttestationResponse - 120, // 57: core.v1.GetERNResponse.ern:type_name -> ddex.v1beta1.NewReleaseMessage - 121, // 58: core.v1.GetPartyResponse.party:type_name -> ddex.v1beta1.Party - 122, // 59: core.v1.GetResourceResponse.resource:type_name -> ddex.v1beta1.Resource - 123, // 60: core.v1.GetReleaseResponse.release:type_name -> ddex.v1beta1.Release - 124, // 61: core.v1.GetDealResponse.deal:type_name -> ddex.v1beta1.Deal - 125, // 62: core.v1.GetMEADResponse.mead:type_name -> ddex.v1beta1.MeadMessage - 126, // 63: core.v1.GetPIEResponse.pie:type_name -> ddex.v1beta1.PieMessage + 117, // 57: core.v1.GetERNResponse.ern:type_name -> ddex.v1beta1.NewReleaseMessage + 118, // 58: core.v1.GetPartyResponse.party:type_name -> ddex.v1beta1.Party + 119, // 59: core.v1.GetResourceResponse.resource:type_name -> ddex.v1beta1.Resource + 120, // 60: core.v1.GetReleaseResponse.release:type_name -> ddex.v1beta1.Release + 121, // 61: core.v1.GetDealResponse.deal:type_name -> ddex.v1beta1.Deal + 122, // 62: core.v1.GetMEADResponse.mead:type_name -> ddex.v1beta1.MeadMessage + 123, // 63: core.v1.GetPIEResponse.pie:type_name -> ddex.v1beta1.PieMessage 69, // 64: core.v1.RewardMessage.body:type_name -> core.v1.RewardBody 70, // 65: core.v1.RewardBody.create:type_name -> core.v1.CreateReward 71, // 66: core.v1.RewardBody.delete:type_name -> core.v1.DeleteReward 73, // 67: core.v1.RewardPoolMessage.body:type_name -> core.v1.RewardPoolBody 74, // 68: core.v1.RewardPoolBody.create:type_name -> core.v1.CreateRewardPool 75, // 69: core.v1.RewardPoolBody.set_authorities:type_name -> core.v1.SetRewardPoolAuthorities - 77, // 70: core.v1.LegacyRewardMessage.create:type_name -> core.v1.LegacyCreateReward - 78, // 71: core.v1.LegacyRewardMessage.delete:type_name -> core.v1.LegacyDeleteReward - 43, // 72: core.v1.LegacyCreateReward.claim_authorities:type_name -> core.v1.ClaimAuthority - 119, // 73: core.v1.GetStreamURLsSignature.expires_at:type_name -> google.protobuf.Timestamp - 119, // 74: core.v1.GetStreamURLsRequest.expires_at:type_name -> google.protobuf.Timestamp - 116, // 75: core.v1.GetStreamURLsResponse.entity_stream_urls:type_name -> core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry - 24, // 76: core.v1.StreamBlocksResponse.block:type_name -> core.v1.Block - 110, // 77: core.v1.GetStatusResponse.ProcessInfo.abci:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 78: core.v1.GetStatusResponse.ProcessInfo.registry_bridge:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 79: core.v1.GetStatusResponse.ProcessInfo.echo_server:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 80: core.v1.GetStatusResponse.ProcessInfo.sync_tasks:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 81: core.v1.GetStatusResponse.ProcessInfo.peer_manager:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 82: core.v1.GetStatusResponse.ProcessInfo.data_companion:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 83: core.v1.GetStatusResponse.ProcessInfo.cache:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 84: core.v1.GetStatusResponse.ProcessInfo.log_sync:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 85: core.v1.GetStatusResponse.ProcessInfo.state_sync:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 86: core.v1.GetStatusResponse.ProcessInfo.mempool_cache:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 110, // 87: core.v1.GetStatusResponse.ProcessInfo.restore:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo - 111, // 88: core.v1.GetStatusResponse.SyncInfo.state_sync:type_name -> core.v1.GetStatusResponse.SyncInfo.StateSyncInfo - 112, // 89: core.v1.GetStatusResponse.SyncInfo.block_sync:type_name -> core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo - 42, // 90: core.v1.GetStatusResponse.SnapshotInfo.snapshots:type_name -> core.v1.SnapshotMetadata - 113, // 91: core.v1.GetStatusResponse.PeerInfo.peers:type_name -> core.v1.GetStatusResponse.PeerInfo.Peer - 0, // 92: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.state:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessState - 119, // 93: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.started_at:type_name -> google.protobuf.Timestamp - 119, // 94: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.completed_at:type_name -> google.protobuf.Timestamp - 1, // 95: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.phase:type_name -> core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.Phase - 42, // 96: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.snapshot:type_name -> core.v1.SnapshotMetadata - 119, // 97: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.started_at:type_name -> google.protobuf.Timestamp - 119, // 98: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.completed_at:type_name -> google.protobuf.Timestamp - 101, // 99: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.head_source:type_name -> core.v1.GetStatusResponse.NodeInfo - 119, // 100: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.started_at:type_name -> google.protobuf.Timestamp - 119, // 101: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.completed_at:type_name -> google.protobuf.Timestamp - 24, // 102: core.v1.GetBlocksResponse.BlocksEntry.value:type_name -> core.v1.Block - 115, // 103: core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry.value:type_name -> core.v1.GetStreamURLsResponse.EntityStreamURLs - 104, // [104:104] is the sub-list for method output_type - 104, // [104:104] is the sub-list for method input_type - 104, // [104:104] is the sub-list for extension type_name - 104, // [104:104] is the sub-list for extension extendee - 0, // [0:104] is the sub-list for field type_name + 116, // 70: core.v1.GetStreamURLsSignature.expires_at:type_name -> google.protobuf.Timestamp + 116, // 71: core.v1.GetStreamURLsRequest.expires_at:type_name -> google.protobuf.Timestamp + 113, // 72: core.v1.GetStreamURLsResponse.entity_stream_urls:type_name -> core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry + 24, // 73: core.v1.StreamBlocksResponse.block:type_name -> core.v1.Block + 107, // 74: core.v1.GetStatusResponse.ProcessInfo.abci:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 75: core.v1.GetStatusResponse.ProcessInfo.registry_bridge:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 76: core.v1.GetStatusResponse.ProcessInfo.echo_server:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 77: core.v1.GetStatusResponse.ProcessInfo.sync_tasks:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 78: core.v1.GetStatusResponse.ProcessInfo.peer_manager:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 79: core.v1.GetStatusResponse.ProcessInfo.data_companion:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 80: core.v1.GetStatusResponse.ProcessInfo.cache:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 81: core.v1.GetStatusResponse.ProcessInfo.log_sync:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 82: core.v1.GetStatusResponse.ProcessInfo.state_sync:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 83: core.v1.GetStatusResponse.ProcessInfo.mempool_cache:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 107, // 84: core.v1.GetStatusResponse.ProcessInfo.restore:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo + 108, // 85: core.v1.GetStatusResponse.SyncInfo.state_sync:type_name -> core.v1.GetStatusResponse.SyncInfo.StateSyncInfo + 109, // 86: core.v1.GetStatusResponse.SyncInfo.block_sync:type_name -> core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo + 42, // 87: core.v1.GetStatusResponse.SnapshotInfo.snapshots:type_name -> core.v1.SnapshotMetadata + 110, // 88: core.v1.GetStatusResponse.PeerInfo.peers:type_name -> core.v1.GetStatusResponse.PeerInfo.Peer + 0, // 89: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.state:type_name -> core.v1.GetStatusResponse.ProcessInfo.ProcessState + 116, // 90: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.started_at:type_name -> google.protobuf.Timestamp + 116, // 91: core.v1.GetStatusResponse.ProcessInfo.ProcessStateInfo.completed_at:type_name -> google.protobuf.Timestamp + 1, // 92: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.phase:type_name -> core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.Phase + 42, // 93: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.snapshot:type_name -> core.v1.SnapshotMetadata + 116, // 94: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.started_at:type_name -> google.protobuf.Timestamp + 116, // 95: core.v1.GetStatusResponse.SyncInfo.StateSyncInfo.completed_at:type_name -> google.protobuf.Timestamp + 98, // 96: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.head_source:type_name -> core.v1.GetStatusResponse.NodeInfo + 116, // 97: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.started_at:type_name -> google.protobuf.Timestamp + 116, // 98: core.v1.GetStatusResponse.SyncInfo.BlockSyncInfo.completed_at:type_name -> google.protobuf.Timestamp + 24, // 99: core.v1.GetBlocksResponse.BlocksEntry.value:type_name -> core.v1.Block + 112, // 100: core.v1.GetStreamURLsResponse.EntityStreamUrlsEntry.value:type_name -> core.v1.GetStreamURLsResponse.EntityStreamURLs + 101, // [101:101] is the sub-list for method output_type + 101, // [101:101] is the sub-list for method input_type + 101, // [101:101] is the sub-list for extension type_name + 101, // [101:101] is the sub-list for extension extendee + 0, // [0:101] is the sub-list for field type_name } func init() { file_core_v1_types_proto_init() } @@ -10113,42 +9832,6 @@ func file_core_v1_types_proto_init() { } } file_core_v1_types_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LegacyRewardMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_core_v1_types_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LegacyCreateReward); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_core_v1_types_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LegacyDeleteReward); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_core_v1_types_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardPoolRequest); i { case 0: return &v.state @@ -10160,7 +9843,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardPoolResponse); i { case 0: return &v.state @@ -10172,7 +9855,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardRequest); i { case 0: return &v.state @@ -10184,7 +9867,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardResponse); i { case 0: return &v.state @@ -10196,7 +9879,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RewardAttestationSignature); i { case 0: return &v.state @@ -10208,7 +9891,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadSignature); i { case 0: return &v.state @@ -10220,7 +9903,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FileUpload); i { case 0: return &v.state @@ -10232,7 +9915,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MediorumOperation); i { case 0: return &v.state @@ -10244,7 +9927,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContentAttestationPayload); i { case 0: return &v.state @@ -10256,7 +9939,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContentAttestation); i { case 0: return &v.state @@ -10268,7 +9951,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStreamURLsSignature); i { case 0: return &v.state @@ -10280,7 +9963,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStreamURLsRequest); i { case 0: return &v.state @@ -10292,7 +9975,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStreamURLsResponse); i { case 0: return &v.state @@ -10304,7 +9987,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetUploadByCIDRequest); i { case 0: return &v.state @@ -10316,7 +9999,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetUploadByCIDResponse); i { case 0: return &v.state @@ -10328,7 +10011,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardSenderAttestationRequest); i { case 0: return &v.state @@ -10340,7 +10023,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRewardSenderAttestationResponse); i { case 0: return &v.state @@ -10352,7 +10035,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetDeleteRewardSenderAttestationRequest); i { case 0: return &v.state @@ -10364,7 +10047,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetDeleteRewardSenderAttestationResponse); i { case 0: return &v.state @@ -10376,7 +10059,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StreamBlocksRequest); i { case 0: return &v.state @@ -10388,7 +10071,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StreamBlocksResponse); i { case 0: return &v.state @@ -10400,7 +10083,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_ProcessInfo); i { case 0: return &v.state @@ -10412,7 +10095,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_NodeInfo); i { case 0: return &v.state @@ -10424,7 +10107,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_ChainInfo); i { case 0: return &v.state @@ -10436,7 +10119,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_SyncInfo); i { case 0: return &v.state @@ -10448,7 +10131,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_PruningInfo); i { case 0: return &v.state @@ -10460,7 +10143,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_ResourceInfo); i { case 0: return &v.state @@ -10472,7 +10155,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_MempoolInfo); i { case 0: return &v.state @@ -10484,7 +10167,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_SnapshotInfo); i { case 0: return &v.state @@ -10496,7 +10179,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_PeerInfo); i { case 0: return &v.state @@ -10508,7 +10191,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_StorageInfo); i { case 0: return &v.state @@ -10520,7 +10203,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_ProcessInfo_ProcessStateInfo); i { case 0: return &v.state @@ -10532,7 +10215,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_SyncInfo_StateSyncInfo); i { case 0: return &v.state @@ -10544,7 +10227,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_SyncInfo_BlockSyncInfo); i { case 0: return &v.state @@ -10556,7 +10239,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStatusResponse_PeerInfo_Peer); i { case 0: return &v.state @@ -10568,7 +10251,7 @@ func file_core_v1_types_proto_init() { return nil } } - file_core_v1_types_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + file_core_v1_types_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetStreamURLsResponse_EntityStreamURLs); i { case 0: return &v.state @@ -10610,11 +10293,7 @@ func file_core_v1_types_proto_init() { (*RewardPoolBody_Create)(nil), (*RewardPoolBody_SetAuthorities)(nil), } - file_core_v1_types_proto_msgTypes[74].OneofWrappers = []interface{}{ - (*LegacyRewardMessage_Create)(nil), - (*LegacyRewardMessage_Delete)(nil), - } - file_core_v1_types_proto_msgTypes[101].OneofWrappers = []interface{}{ + file_core_v1_types_proto_msgTypes[98].OneofWrappers = []interface{}{ (*GetStatusResponse_SyncInfo_StateSync)(nil), (*GetStatusResponse_SyncInfo_BlockSync)(nil), } @@ -10624,7 +10303,7 @@ func file_core_v1_types_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_core_v1_types_proto_rawDesc, NumEnums: 2, - NumMessages: 115, + NumMessages: 112, NumExtensions: 0, NumServices: 0, }, diff --git a/pkg/common/legacy_reward_signing.go b/pkg/common/legacy_reward_signing.go deleted file mode 100644 index fd8b6d96..00000000 --- a/pkg/common/legacy_reward_signing.go +++ /dev/null @@ -1,69 +0,0 @@ -package common - -import ( - "crypto/sha256" - "encoding/hex" - "encoding/json" - "fmt" - "sort" - - corev1 "github.com/OpenAudio/go-openaudio/pkg/api/core/v1" -) - -// Legacy reward signing scheme used by the pre-pool-rollout network. Kept -// here so the new binary can recover signers from historical reward -// transactions during block-sync-from-genesis. New code paths must not use -// this scheme — sign / verify against the body+signature envelope instead. -// -// The scheme is a pipe-delimited canonical string of the action's fields -// (with claim authorities sorted and JSON-encoded), sha256-hashed, and -// signed with EthSign / recovered with EthRecover. It is NOT -// proto-deterministic and depends on the field set of the legacy proto -// types staying frozen. - -func LegacyDeterministicCreateRewardData(cr *corev1.LegacyCreateReward) string { - authorities := make([]string, len(cr.ClaimAuthorities)) - for i, auth := range cr.ClaimAuthorities { - authorities[i] = fmt.Sprintf("%s:%s", auth.Address, auth.Name) - } - sort.Strings(authorities) - authoritiesJson, _ := json.Marshal(authorities) - data := fmt.Sprintf("%s|%s|%d|%s|%d", - cr.RewardId, - cr.Name, - cr.Amount, - string(authoritiesJson), - cr.DeadlineBlockHeight) - hash := sha256.Sum256([]byte(data)) - return hex.EncodeToString(hash[:]) -} - -func LegacyDeterministicDeleteRewardData(dr *corev1.LegacyDeleteReward) string { - data := fmt.Sprintf("%s|%d", dr.Address, dr.DeadlineBlockHeight) - hash := sha256.Sum256([]byte(data)) - return hex.EncodeToString(hash[:]) -} - -// LegacyRecoverCreateReward returns the eth address that signed a legacy -// CreateReward transaction. -func LegacyRecoverCreateReward(cr *corev1.LegacyCreateReward) (string, error) { - signatureData := LegacyDeterministicCreateRewardData(cr) - dataBytes, err := hex.DecodeString(signatureData) - if err != nil { - return "", fmt.Errorf("invalid hex data: %w", err) - } - _, address, err := EthRecover(cr.Signature, dataBytes) - return address, err -} - -// LegacyRecoverDeleteReward returns the eth address that signed a legacy -// DeleteReward transaction. -func LegacyRecoverDeleteReward(dr *corev1.LegacyDeleteReward) (string, error) { - signatureData := LegacyDeterministicDeleteRewardData(dr) - dataBytes, err := hex.DecodeString(signatureData) - if err != nil { - return "", fmt.Errorf("invalid hex data: %w", err) - } - _, address, err := EthRecover(dr.Signature, dataBytes) - return address, err -} diff --git a/pkg/core/db/models.go b/pkg/core/db/models.go index 42f81d5e..8294bf61 100644 --- a/pkg/core/db/models.go +++ b/pkg/core/db/models.go @@ -345,12 +345,6 @@ type CoreValidator struct { Jailed bool } -type LaunchpadAuthorityRm struct { - Authority string - RewardsManagerPubkey string - CreatedAt pgtype.Timestamptz -} - type ManagementKey struct { ID int32 TrackID string diff --git a/pkg/core/db/reads.sql.go b/pkg/core/db/reads.sql.go index c67ea701..cc95eeee 100644 --- a/pkg/core/db/reads.sql.go +++ b/pkg/core/db/reads.sql.go @@ -1629,30 +1629,6 @@ func (q *Queries) GetLatestSlaRollup(ctx context.Context) (SlaRollup, error) { return i, err } -const getLaunchpadRMByAuthority = `-- name: GetLaunchpadRMByAuthority :one -select rewards_manager_pubkey -from launchpad_authority_rm -where authority = any($1::text[]) -order by rewards_manager_pubkey, authority -limit 1 -` - -// Resolves a launchpad-derived per-mint claim authority (lowercased eth -// hex) to the Solana reward manager state account that mint's rewards -// live under. Used by the wire-compat layer at block-sync replay time: -// when finalizeLegacyCreateReward sees an inline claim_authorities -// array, it looks up the RM from any one of its lowercased entries and -// routes the reward into a pool keyed by that RM — matching exactly -// what the migration backfill produced for pre-migration rows. -// Returns ErrNoRows if none of the requested authorities is in the -// launchpad mapping (e.g., AUDIO rewards or test fixtures). -func (q *Queries) GetLaunchpadRMByAuthority(ctx context.Context, dollar_1 []string) (string, error) { - row := q.db.QueryRow(ctx, getLaunchpadRMByAuthority, dollar_1) - var rewards_manager_pubkey string - err := row.Scan(&rewards_manager_pubkey) - return rewards_manager_pubkey, err -} - const getMEAD = `-- name: GetMEAD :one select id, address, tx_hash, index, sender, resource_addresses, release_addresses, raw_message, raw_acknowledgment, block_height from core_mead where address = $1 order by block_height desc limit 1 ` diff --git a/pkg/core/db/sql/migrations/00039_drop_launchpad_authority_rm.sql b/pkg/core/db/sql/migrations/00039_drop_launchpad_authority_rm.sql new file mode 100644 index 00000000..052f117f --- /dev/null +++ b/pkg/core/db/sql/migrations/00039_drop_launchpad_authority_rm.sql @@ -0,0 +1,21 @@ +-- +migrate Up +-- launchpad_authority_rm (00034) mapped launchpad-derived per-mint claim +-- authorities to their Solana reward manager pubkeys. It had two readers: the +-- 00034 backfill, which resolved each pre-pool core_rewards row to a real RM, +-- and finalizeLegacyCreateReward, which replayed audius-mainnet-alpha-beta's +-- pre-pool reward bytes into pools at block-sync time. +-- +-- Both are gone. The backfill ran once, and audius-mainnet-beta was written by +-- genesis-writer from table state, so it carries only the pool-shaped reward +-- transactions and the wire-compat layer has been removed. +drop table if exists launchpad_authority_rm; + +-- +migrate Down +-- The 72 rows are not restored: the only consumer that could read them no +-- longer exists in any binary that runs this schema. Recreate the table empty +-- so 00034's Down still finds it. +create table if not exists launchpad_authority_rm ( + authority text primary key, + rewards_manager_pubkey text not null, + created_at timestamp with time zone default now() +); diff --git a/pkg/core/db/sql/reads.sql b/pkg/core/db/sql/reads.sql index 71d339b2..f13ec5e0 100644 --- a/pkg/core/db/sql/reads.sql +++ b/pkg/core/db/sql/reads.sql @@ -664,22 +664,6 @@ from core_reward_pools where authorities @> array[$1::text] order by rewards_manager_pubkey; --- name: GetLaunchpadRMByAuthority :one --- Resolves a launchpad-derived per-mint claim authority (lowercased eth --- hex) to the Solana reward manager state account that mint's rewards --- live under. Used by the wire-compat layer at block-sync replay time: --- when finalizeLegacyCreateReward sees an inline claim_authorities --- array, it looks up the RM from any one of its lowercased entries and --- routes the reward into a pool keyed by that RM — matching exactly --- what the migration backfill produced for pre-migration rows. --- Returns ErrNoRows if none of the requested authorities is in the --- launchpad mapping (e.g., AUDIO rewards or test fixtures). -select rewards_manager_pubkey -from launchpad_authority_rm -where authority = any($1::text[]) -order by rewards_manager_pubkey, authority -limit 1; - -- name: GetCoreUpload :one select * from core_uploads where cid = $1 OR transcoded_cid = $1; diff --git a/pkg/core/server/rewards.go b/pkg/core/server/rewards.go index f7e4a764..2892404e 100644 --- a/pkg/core/server/rewards.go +++ b/pkg/core/server/rewards.go @@ -94,30 +94,7 @@ var ( func (s *Server) isValidRewardTransaction(ctx context.Context, signedTx *corev1.SignedTransaction, blockHeight int64) error { envelope := signedTx.GetReward() - if envelope == nil { - return fmt.Errorf("%w: reward message is nil", ErrRewardMessageValidation) - } - if envelope.Body == nil { - // Legacy wire-format detected (pre-pool-rollout shape with deadline + - // signature embedded in CreateReward / DeleteReward at tags 1000/1001). - // - // We REJECT legacy here — at CheckTx and ProcessProposal — because - // legacy CreateReward is inherently permissionless: it carries no - // pool_address and the old signing scheme had no membership check on - // claim_authorities. Allowing live legacy txs through validation would - // reopen the exact exploit class this PR is closing (an attacker - // crafts legacy bytes, picks any reward_id / amount / claim_authorities, - // and bypasses the pool gate). - // - // The corresponding code path in finalizeRewards still APPLIES legacy - // txs — that's intentional, for block-sync-from-genesis replay of - // already-committed historical blocks. Block sync only invokes - // FinalizeBlock; it does not re-run CheckTx or ProcessProposal. So - // "reject at validate, accept at finalize" gives us correct historical - // replay without admitting any new legacy traffic. - if legacy, err := tryParseLegacyReward(envelope); err == nil && legacy != nil { - return fmt.Errorf("%w: legacy reward wire format is not accepted for new transactions; clients must use the body+signature envelope", ErrRewardMessageValidation) - } + if envelope == nil || envelope.Body == nil { return fmt.Errorf("%w: reward message body is nil", ErrRewardMessageValidation) } @@ -143,10 +120,6 @@ func (s *Server) validateCreateReward(ctx context.Context, createReward *corev1. // could issue rewards under any other pool's RM and inherit its // attestation rights — which is exactly what the per-RM // sender-attestation gate is designed to prevent. - // - // The legacy permissionless path (inline claim_authorities, no RM) is - // preserved only for historical replay via the wire-compat layer; new - // live txs must specify rewards_manager_pubkey. if err := validateRewardsManagerPubkey(createReward.RewardsManagerPubkey); err != nil { return err } @@ -194,19 +167,8 @@ func (s *Server) finalizeRewardTransaction(ctx context.Context, req *abcitypes.F } func (s *Server) finalizeRewards(ctx context.Context, req *abcitypes.FinalizeBlockRequest, txhash string, messageIndex int64, envelope *corev1.RewardMessage, sender string) error { - if envelope == nil { - return fmt.Errorf("tx: %s, message index: %d, reward message not found", txhash, messageIndex) - } - if envelope.Body == nil { - // Legacy wire-format path; see rewards_legacy.go. - legacy, err := tryParseLegacyReward(envelope) - if err != nil { - return errors.Join(ErrRewardMessageFinalization, err) - } - if legacy == nil { - return fmt.Errorf("tx: %s, message index: %d, reward message body not found", txhash, messageIndex) - } - return s.finalizeLegacyRewardTransaction(ctx, req, legacy, txhash, messageIndex) + if envelope == nil || envelope.Body == nil { + return fmt.Errorf("tx: %s, message index: %d, reward message body not found", txhash, messageIndex) } signer, err := s.recoverDeadlinedSigner(req.Height, envelope.Body.DeadlineBlockHeight, envelope.Body, envelope.Signature) @@ -253,16 +215,16 @@ func (s *Server) finalizeCreateReward(ctx context.Context, req *abcitypes.Finali } if err := qtx.InsertCoreReward(ctx, db.InsertCoreRewardParams{ - TxHash: txhash, - Index: messageIndex, - Address: rewardAddress, - Sender: signer, - RewardID: createReward.RewardId, - Name: createReward.Name, - Amount: int64(createReward.Amount), + TxHash: txhash, + Index: messageIndex, + Address: rewardAddress, + Sender: signer, + RewardID: createReward.RewardId, + Name: createReward.Name, + Amount: int64(createReward.Amount), RewardsManagerPubkey: pgtype.Text{String: createReward.RewardsManagerPubkey, Valid: true}, - RawMessage: rawMessage, - BlockHeight: req.Height, + RawMessage: rawMessage, + BlockHeight: req.Height, }); err != nil { return fmt.Errorf("failed to insert reward: %w", err) } diff --git a/pkg/core/server/rewards_legacy.go b/pkg/core/server/rewards_legacy.go deleted file mode 100644 index a89c8e88..00000000 --- a/pkg/core/server/rewards_legacy.go +++ /dev/null @@ -1,210 +0,0 @@ -package server - -import ( - "context" - "errors" - "fmt" - "slices" - "strings" - - corev1 "github.com/OpenAudio/go-openaudio/pkg/api/core/v1" - "github.com/OpenAudio/go-openaudio/pkg/common" - "github.com/OpenAudio/go-openaudio/pkg/core/db" - "github.com/OpenAudio/go-openaudio/pkg/rewards" - abcitypes "github.com/cometbft/cometbft/abci/types" - "github.com/jackc/pgx/v5" - "github.com/jackc/pgx/v5/pgtype" - "google.golang.org/protobuf/proto" -) - -// Legacy reward wire-compat layer. -// -// Pre-pool-rollout, RewardMessage was a oneof of CreateReward / DeleteReward -// with deadline + signature embedded inside each action. The current -// body+signature envelope is wire-incompatible: legacy bytes have no -// field at tag 1 (the new body) so the new proto unmarshals them with -// Body == nil. -// -// This file handles the case where a legacy-shaped reward tx is encountered -// during block-sync-from-genesis. We re-decode the unknown fields as -// LegacyRewardMessage, recover the signer using the legacy signing scheme -// (sha256 over a pipe-delimited canonical string — see -// pkg/common/legacy_reward_signing.go), and bind the reward to a real-RM -// pool by looking up any one of its inline claim_authorities in the -// launchpad_authority_rm seed (matching the migration backfill exactly). -// For DeleteReward we re-check authorization against the existing reward's -// pool authorities. Rewards whose authorities don't match any launchpad -// entry are inserted with NULL rewards_manager_pubkey. -// -// Live-traffic note: post-rollout, no client should produce legacy bytes — -// the SDK and API repo only emit the new envelope. This path is dormant -// after the migration window and only activates for replay. - -// tryParseLegacyReward inspects a RewardMessage that decoded with Body == nil -// and re-attempts to decode its bytes as the legacy oneof shape. Returns nil -// if no legacy action is present (e.g., the bytes really were empty / from a -// future incompatible version). -func tryParseLegacyReward(rm *corev1.RewardMessage) (*corev1.LegacyRewardMessage, error) { - if rm == nil || rm.Body != nil { - return nil, nil - } - // proto-go preserves unknown fields by default; round-tripping the new - // RewardMessage through Marshal recovers the original tag 1000/1001 bytes. - raw, err := proto.Marshal(rm) - if err != nil { - return nil, fmt.Errorf("legacy reward: re-marshal: %w", err) - } - if len(raw) == 0 { - return nil, nil - } - var legacy corev1.LegacyRewardMessage - if err := proto.Unmarshal(raw, &legacy); err != nil { - return nil, fmt.Errorf("legacy reward: unmarshal: %w", err) - } - if legacy.Action == nil { - return nil, nil - } - return &legacy, nil -} - -// finalizeLegacyRewardTransaction applies a legacy-shape reward tx. For -// CreateReward, the reward's RM is resolved by looking up any one of its -// inline claim_authorities in the launchpad_authority_rm mapping (the -// schema migration populates this table); rewards whose authorities -// don't match any known launchpad authority are inserted with NULL -// rewards_manager_pubkey. For DeleteReward, the row is removed after -// re-checking authorization against the existing reward's pool -// authorities. -func (s *Server) finalizeLegacyRewardTransaction(ctx context.Context, req *abcitypes.FinalizeBlockRequest, legacy *corev1.LegacyRewardMessage, txhash string, messageIndex int64) error { - switch a := legacy.Action.(type) { - case *corev1.LegacyRewardMessage_Create: - signer, err := s.recoverLegacyCreateRewardSigner(req.Height, a.Create) - if err != nil { - return errors.Join(ErrRewardMessageFinalization, err) - } - if err := s.finalizeLegacyCreateReward(ctx, req, txhash, messageIndex, a.Create, signer); err != nil { - return errors.Join(ErrRewardMessageFinalization, err) - } - return nil - case *corev1.LegacyRewardMessage_Delete: - signer, err := s.recoverLegacyDeleteRewardSigner(req.Height, a.Delete) - if err != nil { - return errors.Join(ErrRewardMessageFinalization, err) - } - if err := s.finalizeLegacyDeleteReward(ctx, a.Delete, signer); err != nil { - return errors.Join(ErrRewardMessageFinalization, err) - } - return nil - default: - return fmt.Errorf("tx: %s, message index: %d, unknown legacy reward action", txhash, messageIndex) - } -} - -func (s *Server) recoverLegacyCreateRewardSigner(currentHeight int64, cr *corev1.LegacyCreateReward) (string, error) { - if currentHeight > cr.DeadlineBlockHeight { - return "", fmt.Errorf("%w: current height %d > deadline %d", ErrRewardExpired, currentHeight, cr.DeadlineBlockHeight) - } - signer, err := common.LegacyRecoverCreateReward(cr) - if err != nil { - return "", fmt.Errorf("%w: %v", ErrRewardSignatureInvalid, err) - } - return signer, nil -} - -func (s *Server) recoverLegacyDeleteRewardSigner(currentHeight int64, dr *corev1.LegacyDeleteReward) (string, error) { - if currentHeight > dr.DeadlineBlockHeight { - return "", fmt.Errorf("%w: current height %d > deadline %d", ErrRewardExpired, currentHeight, dr.DeadlineBlockHeight) - } - signer, err := common.LegacyRecoverDeleteReward(dr) - if err != nil { - return "", fmt.Errorf("%w: %v", ErrRewardSignatureInvalid, err) - } - return signer, nil -} - -func (s *Server) finalizeLegacyCreateReward(ctx context.Context, req *abcitypes.FinalizeBlockRequest, txhash string, messageIndex int64, cr *corev1.LegacyCreateReward, signer string) error { - txhashBytes, err := common.HexToBytes(txhash) - if err != nil { - return fmt.Errorf("invalid txhash: %w", err) - } - rewardAddress := common.CreateAddress(txhashBytes, s.config.GenesisFile.ChainID, req.Height, messageIndex, "") - - qtx := s.getDb() - - // Resolve the reward's RM by looking for a launchpad-derived authority - // among the message's inline claim_authorities. The launchpad_authority_rm - // table (populated by the schema migration) maps each per-mint claim - // authority (lowercased eth hex) to the Solana reward manager state - // account that mint's rewards live under. This produces the SAME - // (RM, authorities) state the migration backfill produced for - // pre-migration rows, so historical replay and the migration agree - // on the resulting apphash. - authorityAddrs := make([]string, 0, len(cr.ClaimAuthorities)) - for _, auth := range cr.ClaimAuthorities { - authorityAddrs = append(authorityAddrs, auth.Address) - } - canonicalAuthorities := rewards.CanonicalAuthorities(authorityAddrs) - - var rmPubkey pgtype.Text - if len(canonicalAuthorities) > 0 { - rm, err := qtx.GetLaunchpadRMByAuthority(ctx, canonicalAuthorities) - switch { - case errors.Is(err, pgx.ErrNoRows): - // No matching launchpad authority. Reward stays orphaned (NULL - // rewards_manager_pubkey, no pool). Mirrors what the migration - // does for rows whose claim_authorities don't include any known - // launchpad-derived authority. - case err != nil: - return fmt.Errorf("failed to resolve launchpad RM: %w", err) - default: - // Upsert (UNION) the pool so successive legacy replays of - // rewards under the same RM accumulate into the same authority - // set the migration's UNION-based backfill produces. - if err := qtx.UpsertLegacyReplayRewardPool(ctx, db.UpsertLegacyReplayRewardPoolParams{ - RewardsManagerPubkey: rm, - Authorities: canonicalAuthorities, - }); err != nil { - return fmt.Errorf("failed to upsert reward pool for legacy replay: %w", err) - } - rmPubkey = pgtype.Text{String: rm, Valid: true} - } - } - - rawMessage, err := proto.Marshal(cr) - if err != nil { - return fmt.Errorf("failed to marshal legacy create reward: %w", err) - } - if err := qtx.InsertCoreReward(ctx, db.InsertCoreRewardParams{ - TxHash: txhash, - Index: messageIndex, - Address: rewardAddress, - Sender: signer, - RewardID: cr.RewardId, - Name: cr.Name, - Amount: int64(cr.Amount), - RewardsManagerPubkey: rmPubkey, - RawMessage: rawMessage, - BlockHeight: req.Height, - }); err != nil { - return fmt.Errorf("failed to insert legacy reward: %w", err) - } - return nil -} - -func (s *Server) finalizeLegacyDeleteReward(ctx context.Context, dr *corev1.LegacyDeleteReward, signer string) error { - qtx := s.getDb() - existingReward, err := qtx.GetReward(ctx, dr.Address) - if err != nil { - if errors.Is(err, pgx.ErrNoRows) { - return fmt.Errorf("%w: reward %s not found", ErrRewardMessageValidation, dr.Address) - } - return fmt.Errorf("legacy delete: failed to get reward: %w", err) - } - if !slices.Contains(existingReward.ClaimAuthorities, strings.ToLower(strings.TrimSpace(signer))) { - return fmt.Errorf("%w: legacy signer %s no longer authorized to delete reward %s", ErrRewardUnauthorized, signer, dr.Address) - } - if err := qtx.DeleteCoreReward(ctx, dr.Address); err != nil { - return fmt.Errorf("failed to delete legacy reward: %w", err) - } - return nil -} diff --git a/pkg/core/server/rewards_legacy_test.go b/pkg/core/server/rewards_legacy_test.go deleted file mode 100644 index c08fbb6c..00000000 --- a/pkg/core/server/rewards_legacy_test.go +++ /dev/null @@ -1,226 +0,0 @@ -package server - -import ( - "context" - "crypto/ecdsa" - "encoding/hex" - "strings" - "testing" - - corev1 "github.com/OpenAudio/go-openaudio/pkg/api/core/v1" - "github.com/OpenAudio/go-openaudio/pkg/common" - "github.com/ethereum/go-ethereum/crypto" - "google.golang.org/protobuf/proto" -) - -// TestTryParseLegacyReward_ProtoUnknownFieldRoundtrip exercises the heart of -// the wire-compat layer: when a legacy CreateReward (encoded against the old -// RewardMessage shape) is unmarshaled by the new RewardMessage proto, the -// new proto's Body is nil, but the original tag-1000 bytes survive as -// preserved unknown fields. tryParseLegacyReward re-marshals and re-decodes -// those unknown bytes as LegacyRewardMessage and recovers the action. -func TestTryParseLegacyReward_ProtoUnknownFieldRoundtrip(t *testing.T) { - priv, err := crypto.GenerateKey() - if err != nil { - t.Fatalf("genkey: %v", err) - } - signer := crypto.PubkeyToAddress(priv.PublicKey).Hex() - - t.Run("LegacyCreateReward", func(t *testing.T) { - legacyCreate := &corev1.LegacyCreateReward{ - RewardId: "legacy-r-1", - Name: "Legacy 1", - Amount: 42, - ClaimAuthorities: []*corev1.ClaimAuthority{{Address: signer, Name: "Owner"}}, - DeadlineBlockHeight: 999_999, - } - // Sign with the legacy scheme and stash the signature back on the proto. - sig := signLegacyCreate(t, priv, legacyCreate) - legacyCreate.Signature = sig - - legacyMsg := &corev1.LegacyRewardMessage{ - Action: &corev1.LegacyRewardMessage_Create{Create: legacyCreate}, - } - // Marshal as legacy bytes — what an old node would have written to chain. - legacyBytes, err := proto.Marshal(legacyMsg) - if err != nil { - t.Fatalf("marshal legacy: %v", err) - } - - // Unmarshal those bytes into the *new* RewardMessage shape. Tag 1000 is - // unknown to the new shape; proto-go preserves it as unknown fields. - var newMsg corev1.RewardMessage - if err := proto.Unmarshal(legacyBytes, &newMsg); err != nil { - t.Fatalf("unmarshal new shape: %v", err) - } - if newMsg.Body != nil { - t.Fatalf("expected new shape to decode with Body == nil") - } - - // Wire-compat layer should recover the legacy action. - recovered, err := tryParseLegacyReward(&newMsg) - if err != nil { - t.Fatalf("tryParseLegacyReward: %v", err) - } - if recovered == nil { - t.Fatalf("expected legacy action to be recovered") - } - create := recovered.GetCreate() - if create == nil { - t.Fatalf("expected create action; got %T", recovered.Action) - } - if create.RewardId != "legacy-r-1" || create.Amount != 42 { - t.Fatalf("recovered fields wrong: %+v", create) - } - - // Signer recovery against the legacy signing scheme must yield the - // original key. - recoveredSigner, err := common.LegacyRecoverCreateReward(create) - if err != nil { - t.Fatalf("recover signer: %v", err) - } - if !strings.EqualFold(recoveredSigner, signer) { - t.Fatalf("recovered signer %q want %q", recoveredSigner, signer) - } - }) - - t.Run("LegacyDeleteReward", func(t *testing.T) { - legacyDelete := &corev1.LegacyDeleteReward{ - Address: "0xreward", - DeadlineBlockHeight: 100, - } - sig := signLegacyDelete(t, priv, legacyDelete) - legacyDelete.Signature = sig - - legacyMsg := &corev1.LegacyRewardMessage{ - Action: &corev1.LegacyRewardMessage_Delete{Delete: legacyDelete}, - } - legacyBytes, err := proto.Marshal(legacyMsg) - if err != nil { - t.Fatalf("marshal: %v", err) - } - var newMsg corev1.RewardMessage - if err := proto.Unmarshal(legacyBytes, &newMsg); err != nil { - t.Fatalf("unmarshal: %v", err) - } - recovered, err := tryParseLegacyReward(&newMsg) - if err != nil { - t.Fatalf("tryParseLegacyReward: %v", err) - } - if recovered == nil || recovered.GetDelete() == nil { - t.Fatalf("expected delete action recovered") - } - got, err := common.LegacyRecoverDeleteReward(recovered.GetDelete()) - if err != nil { - t.Fatalf("recover: %v", err) - } - if !strings.EqualFold(got, signer) { - t.Fatalf("recovered %q want %q", got, signer) - } - }) - - t.Run("NewShapeIsLeftAlone", func(t *testing.T) { - // A genuine new-shape RewardMessage (Body populated) must NOT trip the - // legacy path; tryParseLegacyReward returns (nil, nil) and the - // caller's existing dispatch handles it. - newMsg := &corev1.RewardMessage{ - Body: &corev1.RewardBody{ - DeadlineBlockHeight: 1, - Action: &corev1.RewardBody_Delete{Delete: &corev1.DeleteReward{Address: "0xnew"}}, - }, - Signature: "deadbeef", - } - recovered, err := tryParseLegacyReward(newMsg) - if err != nil { - t.Fatalf("err on new shape: %v", err) - } - if recovered != nil { - t.Fatalf("legacy path triggered on new-shape message") - } - }) - - t.Run("EmptyMessageIsNotLegacy", func(t *testing.T) { - var empty corev1.RewardMessage - recovered, err := tryParseLegacyReward(&empty) - if err != nil { - t.Fatalf("err: %v", err) - } - if recovered != nil { - t.Fatalf("expected nil for empty message; got %+v", recovered) - } - }) -} - -// TestIsValidRewardTransaction_RejectsLegacyAtValidate confirms the -// asymmetric gate: live-validation paths (CheckTx, ProcessProposal) refuse -// legacy-format reward txs even though FinalizeBlock still applies them -// during historical replay. This closes the loophole where an attacker -// could craft legacy bytes (with arbitrary inline claim_authorities) and -// bypass the new pool gate, since legacy CreateReward had no -// signer-membership check. -func TestIsValidRewardTransaction_RejectsLegacyAtValidate(t *testing.T) { - priv, err := crypto.GenerateKey() - if err != nil { - t.Fatalf("genkey: %v", err) - } - cr := &corev1.LegacyCreateReward{ - RewardId: "live-legacy", - Name: "should be rejected", - Amount: 1, - ClaimAuthorities: []*corev1.ClaimAuthority{{Address: crypto.PubkeyToAddress(priv.PublicKey).Hex(), Name: "x"}}, - DeadlineBlockHeight: 999_999, - } - cr.Signature = signLegacyCreate(t, priv, cr) - legacyMsg := &corev1.LegacyRewardMessage{Action: &corev1.LegacyRewardMessage_Create{Create: cr}} - legacyBytes, err := proto.Marshal(legacyMsg) - if err != nil { - t.Fatalf("marshal legacy: %v", err) - } - var newMsg corev1.RewardMessage - if err := proto.Unmarshal(legacyBytes, &newMsg); err != nil { - t.Fatalf("unmarshal new shape: %v", err) - } - - signedTx := &corev1.SignedTransaction{ - Transaction: &corev1.SignedTransaction_Reward{Reward: &newMsg}, - } - - // Validate against an empty Server — we only need the dispatch to run far - // enough to confirm legacy bytes are rejected before any DB access. - s := &Server{} - err = s.isValidRewardTransaction(context.Background(), signedTx, 1) - if err == nil { - t.Fatalf("expected legacy reward tx to be rejected at validate-time") - } - if !strings.Contains(err.Error(), "legacy reward wire format is not accepted") { - t.Fatalf("expected legacy-rejection error, got: %v", err) - } -} - -func signLegacyCreate(t *testing.T, priv *ecdsa.PrivateKey, cr *corev1.LegacyCreateReward) string { - t.Helper() - data := common.LegacyDeterministicCreateRewardData(cr) - bytes, err := hex.DecodeString(data) - if err != nil { - t.Fatalf("decode hex: %v", err) - } - sig, err := common.EthSign(priv, bytes) - if err != nil { - t.Fatalf("sign: %v", err) - } - return sig -} - -func signLegacyDelete(t *testing.T, priv *ecdsa.PrivateKey, dr *corev1.LegacyDeleteReward) string { - t.Helper() - data := common.LegacyDeterministicDeleteRewardData(dr) - bytes, err := hex.DecodeString(data) - if err != nil { - t.Fatalf("decode hex: %v", err) - } - sig, err := common.EthSign(priv, bytes) - if err != nil { - t.Fatalf("sign: %v", err) - } - return sig -} diff --git a/pkg/core/server/state_sync.go b/pkg/core/server/state_sync.go index d3d97207..c0ebf359 100644 --- a/pkg/core/server/state_sync.go +++ b/pkg/core/server/state_sync.go @@ -444,7 +444,6 @@ var stateSyncSnapshotTables = []string{ "core_deals", "core_rewards", "core_reward_pools", - "launchpad_authority_rm", "core_uploads", "validator_history", } diff --git a/proto/core/v1/types.proto b/proto/core/v1/types.proto index f5f3a45d..ef1d6eb2 100644 --- a/proto/core/v1/types.proto +++ b/proto/core/v1/types.proto @@ -585,14 +585,12 @@ message CreateReward { string reward_id = 1; string name = 2; uint64 amount = 3; - // Tags 4–6 are reserved: previously held claim_authorities (4), + // Tags 4–6 are reserved: they held claim_authorities (4), // deadline_block_height (5), and signature (6) on the pre-pool - // CreateReward shape. The wire-compat layer routes legacy bytes - // through LegacyCreateReward (which preserves those tags), so the - // new CreateReward never decodes legacy data — but reusing those - // tag numbers for new fields would still be a footgun for any - // future tool that bypasses the wire-compat layer or any refactor - // that drops it. Reserve them. + // CreateReward shape that audius-mainnet-alpha-beta carried. No chain + // this binary runs contains those bytes any more, but a new field on + // one of these tags would decode an old message as something it never + // was. Keep them reserved. reserved 4, 5, 6; reserved "claim_authorities", "deadline_block_height", "signature"; // Solana reward manager pubkey (base58, 32 bytes). Identifies the pool @@ -605,9 +603,8 @@ message CreateReward { } message DeleteReward { - // Tags 2–3 are reserved: previously held deadline_block_height (2) - // and signature (3) on the pre-pool DeleteReward shape (now - // preserved on LegacyDeleteReward). + // Tags 2–3 are reserved: they held deadline_block_height (2) and + // signature (3) on the pre-pool DeleteReward shape. reserved 2, 3; reserved "deadline_block_height", "signature"; string address = 1; // The deployed reward address @@ -681,39 +678,6 @@ message SetRewardPoolAuthorities { repeated string authorities = 2; } -// === Legacy reward wire format (pre-pool-rollout) === -// -// These messages are the on-the-wire shape used before the body+signature -// envelope was introduced. They are NOT used by new clients or new code paths -// — they exist solely so that the new binary can decode and apply historical -// reward transactions encountered during block-sync-from-genesis. -// -// DO NOT REMOVE these types or their field tags: removing them would break -// replay of any chain history that contains rewards committed before the -// upgrade. Adding new fields here is also forbidden — the wire shape must -// remain pinned to what the old network produced. -message LegacyRewardMessage { - oneof action { - LegacyCreateReward create = 1000; - LegacyDeleteReward delete = 1001; - } -} - -message LegacyCreateReward { - string reward_id = 1; - string name = 2; - uint64 amount = 3; - repeated ClaimAuthority claim_authorities = 4; - int64 deadline_block_height = 5; - string signature = 6; -} - -message LegacyDeleteReward { - string address = 1; - int64 deadline_block_height = 2; - string signature = 3; -} - message GetRewardPoolRequest { string rewards_manager_pubkey = 1; }