feat(client): listStores / addStore / removeStore for the store manager
Some checks failed
Security / Security check (push) Failing after 2s

Regenerate the gRPC stubs for the new HubAdmin store-management RPCs and
wrap them in HubClient (returns StoreSource list / Add+RemoveStoreResponse)
so Studio can list and edit the module-store list from the GUI.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
flemming-it 2026-06-18 15:49:23 +02:00
parent 2d87030945
commit d07a0a9777
8 changed files with 956 additions and 143 deletions

View file

@ -83,8 +83,9 @@ const Payload$json = {
/// Descriptor for `Payload`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `Payload`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List payloadDescriptor = $convert.base64Decode( final $typed_data.Uint8List payloadDescriptor = $convert.base64Decode(
'CgdQYXlsb2FkEhQKBHRleHQYASABKAlIAFIEdGV4dBItCgRqc29uGAIgASgLMhcuZ29vZ2xlLn' 'CgdQYXlsb2FkEhQKBHRleHQYASABKAlIAFIEdGV4dBItCgRqc29uGAIgASgLMhcuZ29vZ2xlLn'
'Byb3RvYnVmLlN0cnVjdEgAUgRqc29uEiUKBWJ5dGVzGAMgASgLMg0uZmFpLnYxLkJ5dGVzSABS' 'Byb3RvYnVmLlN0cnVjdEgAUgRqc29uEicKBWJ5dGVzGAMgASgLMg8uY2hhaW4udjEuQnl0ZXNI'
'BWJ5dGVzEiUKBGZpbGUYBCABKAsyDy5mYWkudjEuRmlsZVJlZkgAUgRmaWxlQgYKBGtpbmQ='); 'AFIFYnl0ZXMSJwoEZmlsZRgEIAEoCzIRLmNoYWluLnYxLkZpbGVSZWZIAFIEZmlsZUIGCgRraW'
'5k');
@$core.Deprecated('Use bytesDescriptor instead') @$core.Deprecated('Use bytesDescriptor instead')
const Bytes$json = { const Bytes$json = {
@ -150,8 +151,8 @@ const FaiError_Code$json = {
/// Descriptor for `FaiError`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `FaiError`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List faiErrorDescriptor = $convert.base64Decode( final $typed_data.Uint8List faiErrorDescriptor = $convert.base64Decode(
'CghGYWlFcnJvchIpCgRjb2RlGAEgASgOMhUuZmFpLnYxLkZhaUVycm9yLkNvZGVSBGNvZGUSGA' 'CghGYWlFcnJvchIrCgRjb2RlGAEgASgOMhcuY2hhaW4udjEuRmFpRXJyb3IuQ29kZVIEY29kZR'
'oHbWVzc2FnZRgCIAEoCVIHbWVzc2FnZRIYCgdkZXRhaWxzGAMgASgJUgdkZXRhaWxzIpgBCgRD' 'IYCgdtZXNzYWdlGAIgASgJUgdtZXNzYWdlEhgKB2RldGFpbHMYAyABKAlSB2RldGFpbHMimAEK'
'b2RlEgsKB1VOS05PV04QABIRCg1JTlZBTElEX0lOUFVUEAESHAoYQ0FQQUJJTElUWV9OT1RfU1' 'BENvZGUSCwoHVU5LTk9XThAAEhEKDUlOVkFMSURfSU5QVVQQARIcChhDQVBBQklMSVRZX05PVF'
'VQUE9SVEVEEAISFQoRUEVSTUlTU0lPTl9ERU5JRUQQAxIWChJSRVNPVVJDRV9FWEhBVVNURUQQ' '9TVVBQT1JURUQQAhIVChFQRVJNSVNTSU9OX0RFTklFRBADEhYKElJFU09VUkNFX0VYSEFVU1RF'
'BBIVChFERUFETElORV9FWENFRURFRBAFEgwKCElOVEVSTkFMEAY='); 'RBAEEhUKEURFQURMSU5FX0VYQ0VFREVEEAUSDAoISU5URVJOQUwQBg==');

View file

@ -513,9 +513,9 @@ class HelloMessage extends $pb.GeneratedMessage {
static HelloMessage? _defaultInstance; static HelloMessage? _defaultInstance;
/// Immutable Hub Instance UUID (UUIDv7) generated at the /// Immutable Hub Instance UUID (UUIDv7) generated at the
/// satellite's first `fai init`. Persisted in `~/.fai/hub-id`. /// satellite's first `chain init`. Persisted in `~/.chain/hub-id`.
/// The federation cert's subject embeds this value; it can /// The federation cert's subject embeds this value; it can
/// never change without a fresh `fai init`. /// never change without a fresh `chain init`.
@$pb.TagNumber(1) @$pb.TagNumber(1)
$core.String get hubId => $_getSZ(0); $core.String get hubId => $_getSZ(0);
@$pb.TagNumber(1) @$pb.TagNumber(1)
@ -538,7 +538,7 @@ class HelloMessage extends $pb.GeneratedMessage {
@$pb.TagNumber(2) @$pb.TagNumber(2)
void clearDisplayName() => $_clearField(2); void clearDisplayName() => $_clearField(2);
/// FI binary version, informational. Lets the primary record /// ChIn binary version, informational. Lets the primary record
/// satellite versions for operator visibility without coupling /// satellite versions for operator visibility without coupling
/// them to wire compatibility (which is governed by /// them to wire compatibility (which is governed by
/// wire_versions_supported below). /// wire_versions_supported below).
@ -957,7 +957,7 @@ class CapabilityAdvertisement extends $pb.GeneratedMessage {
@$pb.TagNumber(8) @$pb.TagNumber(8)
void clearWitVersion() => $_clearField(8); void clearWitVersion() => $_clearField(8);
/// FI binary version that loaded this capability at the /// ChIn binary version that loaded this capability at the
/// origin. Informational. /// origin. Informational.
@$pb.TagNumber(9) @$pb.TagNumber(9)
$core.String get hubVersion => $_getSZ(8); $core.String get hubVersion => $_getSZ(8);
@ -1588,7 +1588,7 @@ class DispatchRequest extends $pb.GeneratedMessage {
$pb.PbMap<$core.String, $1.Payload> get inputs => $_getMap(2); $pb.PbMap<$core.String, $1.Payload> get inputs => $_getMap(2);
/// UUIDv7 correlation id shared across hops + audit logs on /// UUIDv7 correlation id shared across hops + audit logs on
/// both sides for a single cross-hub call. Lets `fai admin /// both sides for a single cross-hub call. Lets `chain admin
/// events` reconstruct the full trace later. /// events` reconstruct the full trace later.
@$pb.TagNumber(4) @$pb.TagNumber(4)
$core.String get traceId => $_getSZ(3); $core.String get traceId => $_getSZ(3);

View file

@ -126,19 +126,19 @@ const ControlMessage$json = {
/// Descriptor for `ControlMessage`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ControlMessage`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List controlMessageDescriptor = $convert.base64Decode( final $typed_data.Uint8List controlMessageDescriptor = $convert.base64Decode(
'Cg5Db250cm9sTWVzc2FnZRIsCgVoZWxsbxgBIAEoCzIULmZhaS52MS5IZWxsb01lc3NhZ2VIAF' 'Cg5Db250cm9sTWVzc2FnZRIuCgVoZWxsbxgBIAEoCzIWLmNoYWluLnYxLkhlbGxvTWVzc2FnZU'
'IFaGVsbG8SLwoGYWNjZXB0GAIgASgLMhUuZmFpLnYxLkFjY2VwdE1lc3NhZ2VIAFIGYWNjZXB0' 'gAUgVoZWxsbxIxCgZhY2NlcHQYAiABKAsyFy5jaGFpbi52MS5BY2NlcHRNZXNzYWdlSABSBmFj'
'EjgKCWFkdmVydGlzZRgDIAEoCzIYLmZhaS52MS5BZHZlcnRpc2VNZXNzYWdlSABSCWFkdmVydG' 'Y2VwdBI6CglhZHZlcnRpc2UYAyABKAsyGi5jaGFpbi52MS5BZHZlcnRpc2VNZXNzYWdlSABSCW'
'lzZRI1Cgh3aXRoZHJhdxgEIAEoCzIXLmZhaS52MS5XaXRoZHJhd01lc3NhZ2VIAFIId2l0aGRy' 'FkdmVydGlzZRI3Cgh3aXRoZHJhdxgEIAEoCzIZLmNoYWluLnYxLldpdGhkcmF3TWVzc2FnZUgA'
'YXcSOAoJaGVhcnRiZWF0GAUgASgLMhguZmFpLnYxLkhlYXJ0YmVhdE1lc3NhZ2VIAFIJaGVhcn' 'Ugh3aXRoZHJhdxI6CgloZWFydGJlYXQYBSABKAsyGi5jaGFpbi52MS5IZWFydGJlYXRNZXNzYW'
'RiZWF0EjsKDWhlYXJ0YmVhdF9hY2sYBiABKAsyFC5mYWkudjEuSGVhcnRiZWF0QWNrSABSDGhl' 'dlSABSCWhlYXJ0YmVhdBI9Cg1oZWFydGJlYXRfYWNrGAYgASgLMhYuY2hhaW4udjEuSGVhcnRi'
'YXJ0YmVhdEFjaxIvCgZyZW5hbWUYByABKAsyFS5mYWkudjEuUmVuYW1lTWVzc2FnZUgAUgZyZW' 'ZWF0QWNrSABSDGhlYXJ0YmVhdEFjaxIxCgZyZW5hbWUYByABKAsyFy5jaGFpbi52MS5SZW5hbW'
'5hbWUSSAoSY2VydF9yZW5ld19yZXF1ZXN0GAggASgLMhguZmFpLnYxLkNlcnRSZW5ld1JlcXVl' 'VNZXNzYWdlSABSBnJlbmFtZRJKChJjZXJ0X3JlbmV3X3JlcXVlc3QYCCABKAsyGi5jaGFpbi52'
'c3RIAFIQY2VydFJlbmV3UmVxdWVzdBJLChNjZXJ0X3JlbmV3X3Jlc3BvbnNlGAkgASgLMhkuZm' 'MS5DZXJ0UmVuZXdSZXF1ZXN0SABSEGNlcnRSZW5ld1JlcXVlc3QSTQoTY2VydF9yZW5ld19yZX'
'FpLnYxLkNlcnRSZW5ld1Jlc3BvbnNlSABSEWNlcnRSZW5ld1Jlc3BvbnNlEjsKDWRpc3BhdGNo' 'Nwb25zZRgJIAEoCzIbLmNoYWluLnYxLkNlcnRSZW5ld1Jlc3BvbnNlSABSEWNlcnRSZW5ld1Jl'
'X2NhbGwYCiABKAsyFC5mYWkudjEuRGlzcGF0Y2hDYWxsSABSDGRpc3BhdGNoQ2FsbBJBCg9kaX' 'c3BvbnNlEj0KDWRpc3BhdGNoX2NhbGwYCiABKAsyFi5jaGFpbi52MS5EaXNwYXRjaENhbGxIAF'
'NwYXRjaF9yZXN1bHQYCyABKAsyFi5mYWkudjEuRGlzcGF0Y2hSZXN1bHRIAFIOZGlzcGF0Y2hS' 'IMZGlzcGF0Y2hDYWxsEkMKD2Rpc3BhdGNoX3Jlc3VsdBgLIAEoCzIYLmNoYWluLnYxLkRpc3Bh'
'ZXN1bHRCBgoEa2luZA=='); 'dGNoUmVzdWx0SABSDmRpc3BhdGNoUmVzdWx0QgYKBGtpbmQ=');
@$core.Deprecated('Use dispatchCallDescriptor instead') @$core.Deprecated('Use dispatchCallDescriptor instead')
const DispatchCall$json = { const DispatchCall$json = {
@ -158,8 +158,8 @@ const DispatchCall$json = {
/// Descriptor for `DispatchCall`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `DispatchCall`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List dispatchCallDescriptor = $convert.base64Decode( final $typed_data.Uint8List dispatchCallDescriptor = $convert.base64Decode(
'CgxEaXNwYXRjaENhbGwSHQoKcmVxdWVzdF9pZBgBIAEoCVIJcmVxdWVzdElkEjEKB3JlcXVlc3' 'CgxEaXNwYXRjaENhbGwSHQoKcmVxdWVzdF9pZBgBIAEoCVIJcmVxdWVzdElkEjMKB3JlcXVlc3'
'QYAiABKAsyFy5mYWkudjEuRGlzcGF0Y2hSZXF1ZXN0UgdyZXF1ZXN0'); 'QYAiABKAsyGS5jaGFpbi52MS5EaXNwYXRjaFJlcXVlc3RSB3JlcXVlc3Q=');
@$core.Deprecated('Use dispatchResultDescriptor instead') @$core.Deprecated('Use dispatchResultDescriptor instead')
const DispatchResult$json = { const DispatchResult$json = {
@ -179,8 +179,8 @@ const DispatchResult$json = {
/// Descriptor for `DispatchResult`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `DispatchResult`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List dispatchResultDescriptor = $convert.base64Decode( final $typed_data.Uint8List dispatchResultDescriptor = $convert.base64Decode(
'Cg5EaXNwYXRjaFJlc3VsdBIdCgpyZXF1ZXN0X2lkGAEgASgJUglyZXF1ZXN0SWQSNAoIcmVzcG' 'Cg5EaXNwYXRjaFJlc3VsdBIdCgpyZXF1ZXN0X2lkGAEgASgJUglyZXF1ZXN0SWQSNgoIcmVzcG'
'9uc2UYAiABKAsyGC5mYWkudjEuRGlzcGF0Y2hSZXNwb25zZVIIcmVzcG9uc2U='); '9uc2UYAiABKAsyGi5jaGFpbi52MS5EaXNwYXRjaFJlc3BvbnNlUghyZXNwb25zZQ==');
@$core.Deprecated('Use helloMessageDescriptor instead') @$core.Deprecated('Use helloMessageDescriptor instead')
const HelloMessage$json = { const HelloMessage$json = {
@ -283,8 +283,8 @@ const AdvertiseMessage$json = {
/// Descriptor for `AdvertiseMessage`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `AdvertiseMessage`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List advertiseMessageDescriptor = $convert.base64Decode( final $typed_data.Uint8List advertiseMessageDescriptor = $convert.base64Decode(
'ChBBZHZlcnRpc2VNZXNzYWdlEkMKDGNhcGFiaWxpdGllcxgBIAMoCzIfLmZhaS52MS5DYXBhYm' 'ChBBZHZlcnRpc2VNZXNzYWdlEkUKDGNhcGFiaWxpdGllcxgBIAMoCzIhLmNoYWluLnYxLkNhcG'
'lsaXR5QWR2ZXJ0aXNlbWVudFIMY2FwYWJpbGl0aWVz'); 'FiaWxpdHlBZHZlcnRpc2VtZW50UgxjYXBhYmlsaXRpZXM=');
@$core.Deprecated('Use capabilityAdvertisementDescriptor instead') @$core.Deprecated('Use capabilityAdvertisementDescriptor instead')
const CapabilityAdvertisement$json = { const CapabilityAdvertisement$json = {
@ -314,9 +314,9 @@ final $typed_data.Uint8List capabilityAdvertisementDescriptor = $convert.base64D
'ChdDYXBhYmlsaXR5QWR2ZXJ0aXNlbWVudBIjCg1jYXBhYmlsaXR5X2lkGAEgASgJUgxjYXBhYm' 'ChdDYXBhYmlsaXR5QWR2ZXJ0aXNlbWVudBIjCg1jYXBhYmlsaXR5X2lkGAEgASgJUgxjYXBhYm'
'lsaXR5SWQSHwoLb3JpZ2luX3V1aWQYAiABKAlSCm9yaWdpblV1aWQSHwoLb3JpZ2luX25hbWUY' 'lsaXR5SWQSHwoLb3JpZ2luX3V1aWQYAiABKAlSCm9yaWdpblV1aWQSHwoLb3JpZ2luX25hbWUY'
'AyABKAlSCm9yaWdpbk5hbWUSFAoFcm91dGUYBCADKAlSBXJvdXRlEhYKBnJlZ2lvbhgFIAEoCV' 'AyABKAlSCm9yaWdpbk5hbWUSFAoFcm91dGUYBCADKAlSBXJvdXRlEhYKBnJlZ2lvbhgFIAEoCV'
'IGcmVnaW9uEikKB3F1YWxpdHkYBiABKAsyDy5mYWkudjEuUXVhbGl0eVIHcXVhbGl0eRIgCgtw' 'IGcmVnaW9uEisKB3F1YWxpdHkYBiABKAsyES5jaGFpbi52MS5RdWFsaXR5UgdxdWFsaXR5EiAK'
'ZXJtaXNzaW9ucxgHIAMoCVILcGVybWlzc2lvbnMSHwoLd2l0X3ZlcnNpb24YCCABKAlSCndpdF' 'C3Blcm1pc3Npb25zGAcgAygJUgtwZXJtaXNzaW9ucxIfCgt3aXRfdmVyc2lvbhgIIAEoCVIKd2'
'ZlcnNpb24SHwoLaHViX3ZlcnNpb24YCSABKAlSCmh1YlZlcnNpb24='); 'l0VmVyc2lvbhIfCgtodWJfdmVyc2lvbhgJIAEoCVIKaHViVmVyc2lvbg==');
@$core.Deprecated('Use qualityDescriptor instead') @$core.Deprecated('Use qualityDescriptor instead')
const Quality$json = { const Quality$json = {
@ -461,12 +461,12 @@ const DispatchRequest_InputsEntry$json = {
/// Descriptor for `DispatchRequest`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `DispatchRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List dispatchRequestDescriptor = $convert.base64Decode( final $typed_data.Uint8List dispatchRequestDescriptor = $convert.base64Decode(
'Cg9EaXNwYXRjaFJlcXVlc3QSIwoNY2FwYWJpbGl0eV9pZBgBIAEoCVIMY2FwYWJpbGl0eUlkEi' 'Cg9EaXNwYXRjaFJlcXVlc3QSIwoNY2FwYWJpbGl0eV9pZBgBIAEoCVIMY2FwYWJpbGl0eUlkEi'
'IKDXRhcmdldF9odWJfaWQYAiABKAlSC3RhcmdldEh1YklkEjsKBmlucHV0cxgDIAMoCzIjLmZh' 'IKDXRhcmdldF9odWJfaWQYAiABKAlSC3RhcmdldEh1YklkEj0KBmlucHV0cxgDIAMoCzIlLmNo'
'aS52MS5EaXNwYXRjaFJlcXVlc3QuSW5wdXRzRW50cnlSBmlucHV0cxIZCgh0cmFjZV9pZBgEIA' 'YWluLnYxLkRpc3BhdGNoUmVxdWVzdC5JbnB1dHNFbnRyeVIGaW5wdXRzEhkKCHRyYWNlX2lkGA'
'EoCVIHdHJhY2VJZBIUCgVub25jZRgFIAEoCVIFbm9uY2USHwoLY2FsbGVyX25hbWUYBiABKAlS' 'QgASgJUgd0cmFjZUlkEhQKBW5vbmNlGAUgASgJUgVub25jZRIfCgtjYWxsZXJfbmFtZRgGIAEo'
'CmNhbGxlck5hbWUSJwoPcmVnaW9uX3JlcXVpcmVkGAcgASgJUg5yZWdpb25SZXF1aXJlZBpKCg' 'CVIKY2FsbGVyTmFtZRInCg9yZWdpb25fcmVxdWlyZWQYByABKAlSDnJlZ2lvblJlcXVpcmVkGk'
'tJbnB1dHNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIlCgV2YWx1ZRgCIAEoCzIPLmZhaS52MS5Q' 'wKC0lucHV0c0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EicKBXZhbHVlGAIgASgLMhEuY2hhaW4u'
'YXlsb2FkUgV2YWx1ZToCOAE='); 'djEuUGF5bG9hZFIFdmFsdWU6AjgB');
@$core.Deprecated('Use dispatchResponseDescriptor instead') @$core.Deprecated('Use dispatchResponseDescriptor instead')
const DispatchResponse$json = { const DispatchResponse$json = {
@ -519,12 +519,12 @@ const DispatchResponse_OutputsEntry$json = {
/// Descriptor for `DispatchResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `DispatchResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List dispatchResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List dispatchResponseDescriptor = $convert.base64Decode(
'ChBEaXNwYXRjaFJlc3BvbnNlEj8KB291dHB1dHMYASADKAsyJS5mYWkudjEuRGlzcGF0Y2hSZX' 'ChBEaXNwYXRjaFJlc3BvbnNlEkEKB291dHB1dHMYASADKAsyJy5jaGFpbi52MS5EaXNwYXRjaF'
'Nwb25zZS5PdXRwdXRzRW50cnlSB291dHB1dHMSJgoFZXJyb3IYAiABKAsyEC5mYWkudjEuRmFp' 'Jlc3BvbnNlLk91dHB1dHNFbnRyeVIHb3V0cHV0cxIoCgVlcnJvchgCIAEoCzISLmNoYWluLnYx'
'RXJyb3JSBWVycm9yEh8KC2R1cmF0aW9uX21zGAMgASgNUgpkdXJhdGlvbk1zEisKEmV4ZWN1dG' 'LkZhaUVycm9yUgVlcnJvchIfCgtkdXJhdGlvbl9tcxgDIAEoDVIKZHVyYXRpb25NcxIrChJleG'
'VkX2F0X2h1Yl9pZBgEIAEoCVIPZXhlY3V0ZWRBdEh1YklkGksKDE91dHB1dHNFbnRyeRIQCgNr' 'VjdXRlZF9hdF9odWJfaWQYBCABKAlSD2V4ZWN1dGVkQXRIdWJJZBpNCgxPdXRwdXRzRW50cnkS'
'ZXkYASABKAlSA2tleRIlCgV2YWx1ZRgCIAEoCzIPLmZhaS52MS5QYXlsb2FkUgV2YWx1ZToCOA' 'EAoDa2V5GAEgASgJUgNrZXkSJwoFdmFsdWUYAiABKAsyES5jaGFpbi52MS5QYXlsb2FkUgV2YW'
'E='); 'x1ZToCOAE=');
@$core.Deprecated('Use blobChunkDescriptor instead') @$core.Deprecated('Use blobChunkDescriptor instead')
const BlobChunk$json = { const BlobChunk$json = {
@ -566,9 +566,10 @@ const BlobChunk$json = {
/// Descriptor for `BlobChunk`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `BlobChunk`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List blobChunkDescriptor = $convert.base64Decode( final $typed_data.Uint8List blobChunkDescriptor = $convert.base64Decode(
'CglCbG9iQ2h1bmsSJgoEb3BlbhgBIAEoCzIQLmZhaS52MS5CbG9iT3BlbkgAUgRvcGVuEhQKBG' 'CglCbG9iQ2h1bmsSKAoEb3BlbhgBIAEoCzISLmNoYWluLnYxLkJsb2JPcGVuSABSBG9wZW4SFA'
'RhdGEYAiABKAxIAFIEZGF0YRIjCgNlb2YYAyABKAsyDy5mYWkudjEuQmxvYkVvZkgAUgNlb2YS' 'oEZGF0YRgCIAEoDEgAUgRkYXRhEiUKA2VvZhgDIAEoCzIRLmNoYWluLnYxLkJsb2JFb2ZIAFID'
'KQoFZXJyb3IYBCABKAsyES5mYWkudjEuQmxvYkVycm9ySABSBWVycm9yQgYKBGtpbmQ='); 'ZW9mEisKBWVycm9yGAQgASgLMhMuY2hhaW4udjEuQmxvYkVycm9ySABSBWVycm9yQgYKBGtpbm'
'Q=');
@$core.Deprecated('Use blobOpenDescriptor instead') @$core.Deprecated('Use blobOpenDescriptor instead')
const BlobOpen$json = { const BlobOpen$json = {

View file

@ -22,6 +22,62 @@ export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;
export 'hub.pbenum.dart'; export 'hub.pbenum.dart';
class RevokeSatelliteRequest extends $pb.GeneratedMessage {
factory RevokeSatelliteRequest({
$core.String? hubId,
}) {
final result = create();
if (hubId != null) result.hubId = hubId;
return result;
}
RevokeSatelliteRequest._();
factory RevokeSatelliteRequest.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory RevokeSatelliteRequest.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'RevokeSatelliteRequest',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'hubId')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RevokeSatelliteRequest clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RevokeSatelliteRequest copyWith(
void Function(RevokeSatelliteRequest) updates) =>
super.copyWith((message) => updates(message as RevokeSatelliteRequest))
as RevokeSatelliteRequest;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static RevokeSatelliteRequest create() => RevokeSatelliteRequest._();
@$core.override
RevokeSatelliteRequest createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static RevokeSatelliteRequest getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<RevokeSatelliteRequest>(create);
static RevokeSatelliteRequest? _defaultInstance;
/// Immutable hub UUID of the satellite to revoke.
@$pb.TagNumber(1)
$core.String get hubId => $_getSZ(0);
@$pb.TagNumber(1)
set hubId($core.String value) => $_setString(0, value);
@$pb.TagNumber(1)
$core.bool hasHubId() => $_has(0);
@$pb.TagNumber(1)
void clearHubId() => $_clearField(1);
}
class SubmitRequest extends $pb.GeneratedMessage { class SubmitRequest extends $pb.GeneratedMessage {
factory SubmitRequest({ factory SubmitRequest({
$core.List<$core.int>? flowYaml, $core.List<$core.int>? flowYaml,
@ -4266,7 +4322,7 @@ class ChannelStatusResponse extends $pb.GeneratedMessage {
$pb.GeneratedMessage.$_defaultFor<ChannelStatusResponse>(create); $pb.GeneratedMessage.$_defaultFor<ChannelStatusResponse>(create);
static ChannelStatusResponse? _defaultInstance; static ChannelStatusResponse? _defaultInstance;
/// Active channel pointer from `~/.fai/current-channel`. /// Active channel pointer from `~/.chain/current-channel`.
@$pb.TagNumber(1) @$pb.TagNumber(1)
$core.String get active => $_getSZ(0); $core.String get active => $_getSZ(0);
@$pb.TagNumber(1) @$pb.TagNumber(1)
@ -4362,7 +4418,7 @@ class ChannelEntry extends $pb.GeneratedMessage {
@$pb.TagNumber(3) @$pb.TagNumber(3)
void clearRunning() => $_clearField(3); void clearRunning() => $_clearField(3);
/// Endpoint string from `~/.fai/run/<channel>.endpoint` when /// Endpoint string from `~/.chain/run/<channel>.endpoint` when
/// the daemon is up, otherwise empty. /// the daemon is up, otherwise empty.
@$pb.TagNumber(4) @$pb.TagNumber(4)
$core.String get endpoint => $_getSZ(3); $core.String get endpoint => $_getSZ(3);
@ -4474,7 +4530,7 @@ class DaemonPathsResponse extends $pb.GeneratedMessage {
@$pb.TagNumber(4) @$pb.TagNumber(4)
void clearFlowsDir() => $_clearField(4); void clearFlowsDir() => $_clearField(4);
/// Operator config file (~/.fai/config.yaml). /// Operator config file (~/.chain/config.yaml).
@$pb.TagNumber(5) @$pb.TagNumber(5)
$core.String get configPath => $_getSZ(4); $core.String get configPath => $_getSZ(4);
@$pb.TagNumber(5) @$pb.TagNumber(5)
@ -7140,7 +7196,7 @@ class SatelliteEntry extends $pb.GeneratedMessage {
@$pb.TagNumber(2) @$pb.TagNumber(2)
void clearDisplayName() => $_clearField(2); void clearDisplayName() => $_clearField(2);
/// FI version the satellite reported. /// ChIn version the satellite reported.
@$pb.TagNumber(3) @$pb.TagNumber(3)
$core.String get hubVersion => $_getSZ(2); $core.String get hubVersion => $_getSZ(2);
@$pb.TagNumber(3) @$pb.TagNumber(3)
@ -7175,6 +7231,482 @@ class SatelliteEntry extends $pb.GeneratedMessage {
$pb.PbList<$core.String> get capabilities => $_getList(5); $pb.PbList<$core.String> get capabilities => $_getList(5);
} }
class ListStoresRequest extends $pb.GeneratedMessage {
factory ListStoresRequest() => create();
ListStoresRequest._();
factory ListStoresRequest.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory ListStoresRequest.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'ListStoresRequest',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
ListStoresRequest clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
ListStoresRequest copyWith(void Function(ListStoresRequest) updates) =>
super.copyWith((message) => updates(message as ListStoresRequest))
as ListStoresRequest;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ListStoresRequest create() => ListStoresRequest._();
@$core.override
ListStoresRequest createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static ListStoresRequest getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<ListStoresRequest>(create);
static ListStoresRequest? _defaultInstance;
}
class StoreSource extends $pb.GeneratedMessage {
factory StoreSource({
$core.String? name,
$core.String? url,
$core.bool? removable,
$core.int? moduleCount,
}) {
final result = create();
if (name != null) result.name = name;
if (url != null) result.url = url;
if (removable != null) result.removable = removable;
if (moduleCount != null) result.moduleCount = moduleCount;
return result;
}
StoreSource._();
factory StoreSource.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory StoreSource.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'StoreSource',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'name')
..aOS(2, _omitFieldNames ? '' : 'url')
..aOB(3, _omitFieldNames ? '' : 'removable')
..aI(4, _omitFieldNames ? '' : 'moduleCount')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
StoreSource clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
StoreSource copyWith(void Function(StoreSource) updates) =>
super.copyWith((message) => updates(message as StoreSource))
as StoreSource;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static StoreSource create() => StoreSource._();
@$core.override
StoreSource createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static StoreSource getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<StoreSource>(create);
static StoreSource? _defaultInstance;
/// "bundled" for the seed index, else the operator-given name.
@$pb.TagNumber(1)
$core.String get name => $_getSZ(0);
@$pb.TagNumber(1)
set name($core.String value) => $_setString(0, value);
@$pb.TagNumber(1)
$core.bool hasName() => $_has(0);
@$pb.TagNumber(1)
void clearName() => $_clearField(1);
/// Index URL; empty for the bundled seed.
@$pb.TagNumber(2)
$core.String get url => $_getSZ(1);
@$pb.TagNumber(2)
set url($core.String value) => $_setString(1, value);
@$pb.TagNumber(2)
$core.bool hasUrl() => $_has(1);
@$pb.TagNumber(2)
void clearUrl() => $_clearField(2);
/// False for the bundled seed (cannot be removed).
@$pb.TagNumber(3)
$core.bool get removable => $_getBF(2);
@$pb.TagNumber(3)
set removable($core.bool value) => $_setBool(2, value);
@$pb.TagNumber(3)
$core.bool hasRemovable() => $_has(2);
@$pb.TagNumber(3)
void clearRemovable() => $_clearField(3);
/// Modules currently contributed by this source to the live index.
@$pb.TagNumber(4)
$core.int get moduleCount => $_getIZ(3);
@$pb.TagNumber(4)
set moduleCount($core.int value) => $_setSignedInt32(3, value);
@$pb.TagNumber(4)
$core.bool hasModuleCount() => $_has(3);
@$pb.TagNumber(4)
void clearModuleCount() => $_clearField(4);
}
class ListStoresResponse extends $pb.GeneratedMessage {
factory ListStoresResponse({
$core.Iterable<StoreSource>? stores,
}) {
final result = create();
if (stores != null) result.stores.addAll(stores);
return result;
}
ListStoresResponse._();
factory ListStoresResponse.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory ListStoresResponse.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'ListStoresResponse',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..pPM<StoreSource>(1, _omitFieldNames ? '' : 'stores',
subBuilder: StoreSource.create)
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
ListStoresResponse clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
ListStoresResponse copyWith(void Function(ListStoresResponse) updates) =>
super.copyWith((message) => updates(message as ListStoresResponse))
as ListStoresResponse;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ListStoresResponse create() => ListStoresResponse._();
@$core.override
ListStoresResponse createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static ListStoresResponse getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<ListStoresResponse>(create);
static ListStoresResponse? _defaultInstance;
@$pb.TagNumber(1)
$pb.PbList<StoreSource> get stores => $_getList(0);
}
class AddStoreRequest extends $pb.GeneratedMessage {
factory AddStoreRequest({
$core.String? name,
$core.String? url,
$core.String? bearerEnv,
$core.String? basicUser,
$core.String? basicPasswordEnv,
}) {
final result = create();
if (name != null) result.name = name;
if (url != null) result.url = url;
if (bearerEnv != null) result.bearerEnv = bearerEnv;
if (basicUser != null) result.basicUser = basicUser;
if (basicPasswordEnv != null) result.basicPasswordEnv = basicPasswordEnv;
return result;
}
AddStoreRequest._();
factory AddStoreRequest.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory AddStoreRequest.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'AddStoreRequest',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'name')
..aOS(2, _omitFieldNames ? '' : 'url')
..aOS(3, _omitFieldNames ? '' : 'bearerEnv')
..aOS(4, _omitFieldNames ? '' : 'basicUser')
..aOS(5, _omitFieldNames ? '' : 'basicPasswordEnv')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
AddStoreRequest clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
AddStoreRequest copyWith(void Function(AddStoreRequest) updates) =>
super.copyWith((message) => updates(message as AddStoreRequest))
as AddStoreRequest;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static AddStoreRequest create() => AddStoreRequest._();
@$core.override
AddStoreRequest createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static AddStoreRequest getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<AddStoreRequest>(create);
static AddStoreRequest? _defaultInstance;
/// Operator-friendly name, unique within configured stores.
@$pb.TagNumber(1)
$core.String get name => $_getSZ(0);
@$pb.TagNumber(1)
set name($core.String value) => $_setString(0, value);
@$pb.TagNumber(1)
$core.bool hasName() => $_has(0);
@$pb.TagNumber(1)
void clearName() => $_clearField(1);
/// Index URL: https:// , http:// , or file:// .
@$pb.TagNumber(2)
$core.String get url => $_getSZ(1);
@$pb.TagNumber(2)
set url($core.String value) => $_setString(1, value);
@$pb.TagNumber(2)
$core.bool hasUrl() => $_has(1);
@$pb.TagNumber(2)
void clearUrl() => $_clearField(2);
/// Optional bearer-token env var name (hub reads $value at request time).
@$pb.TagNumber(3)
$core.String get bearerEnv => $_getSZ(2);
@$pb.TagNumber(3)
set bearerEnv($core.String value) => $_setString(2, value);
@$pb.TagNumber(3)
$core.bool hasBearerEnv() => $_has(2);
@$pb.TagNumber(3)
void clearBearerEnv() => $_clearField(3);
/// Optional HTTP Basic username.
@$pb.TagNumber(4)
$core.String get basicUser => $_getSZ(3);
@$pb.TagNumber(4)
set basicUser($core.String value) => $_setString(3, value);
@$pb.TagNumber(4)
$core.bool hasBasicUser() => $_has(3);
@$pb.TagNumber(4)
void clearBasicUser() => $_clearField(4);
/// Optional HTTP Basic password env var name. Pair with basic_user.
@$pb.TagNumber(5)
$core.String get basicPasswordEnv => $_getSZ(4);
@$pb.TagNumber(5)
set basicPasswordEnv($core.String value) => $_setString(4, value);
@$pb.TagNumber(5)
$core.bool hasBasicPasswordEnv() => $_has(4);
@$pb.TagNumber(5)
void clearBasicPasswordEnv() => $_clearField(5);
}
class AddStoreResponse extends $pb.GeneratedMessage {
factory AddStoreResponse({
$core.int? modulesAdded,
$core.String? message,
}) {
final result = create();
if (modulesAdded != null) result.modulesAdded = modulesAdded;
if (message != null) result.message = message;
return result;
}
AddStoreResponse._();
factory AddStoreResponse.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory AddStoreResponse.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'AddStoreResponse',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aI(1, _omitFieldNames ? '' : 'modulesAdded')
..aOS(2, _omitFieldNames ? '' : 'message')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
AddStoreResponse clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
AddStoreResponse copyWith(void Function(AddStoreResponse) updates) =>
super.copyWith((message) => updates(message as AddStoreResponse))
as AddStoreResponse;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static AddStoreResponse create() => AddStoreResponse._();
@$core.override
AddStoreResponse createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static AddStoreResponse getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<AddStoreResponse>(create);
static AddStoreResponse? _defaultInstance;
/// Modules the new store contributed to the live index.
@$pb.TagNumber(1)
$core.int get modulesAdded => $_getIZ(0);
@$pb.TagNumber(1)
set modulesAdded($core.int value) => $_setSignedInt32(0, value);
@$pb.TagNumber(1)
$core.bool hasModulesAdded() => $_has(0);
@$pb.TagNumber(1)
void clearModulesAdded() => $_clearField(1);
/// Human-readable result (e.g. "added 8 modules from reclaim").
@$pb.TagNumber(2)
$core.String get message => $_getSZ(1);
@$pb.TagNumber(2)
set message($core.String value) => $_setString(1, value);
@$pb.TagNumber(2)
$core.bool hasMessage() => $_has(1);
@$pb.TagNumber(2)
void clearMessage() => $_clearField(2);
}
class RemoveStoreRequest extends $pb.GeneratedMessage {
factory RemoveStoreRequest({
$core.String? name,
}) {
final result = create();
if (name != null) result.name = name;
return result;
}
RemoveStoreRequest._();
factory RemoveStoreRequest.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory RemoveStoreRequest.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'RemoveStoreRequest',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'name')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RemoveStoreRequest clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RemoveStoreRequest copyWith(void Function(RemoveStoreRequest) updates) =>
super.copyWith((message) => updates(message as RemoveStoreRequest))
as RemoveStoreRequest;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static RemoveStoreRequest create() => RemoveStoreRequest._();
@$core.override
RemoveStoreRequest createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static RemoveStoreRequest getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<RemoveStoreRequest>(create);
static RemoveStoreRequest? _defaultInstance;
@$pb.TagNumber(1)
$core.String get name => $_getSZ(0);
@$pb.TagNumber(1)
set name($core.String value) => $_setString(0, value);
@$pb.TagNumber(1)
$core.bool hasName() => $_has(0);
@$pb.TagNumber(1)
void clearName() => $_clearField(1);
}
class RemoveStoreResponse extends $pb.GeneratedMessage {
factory RemoveStoreResponse({
$core.bool? removed,
$core.String? message,
}) {
final result = create();
if (removed != null) result.removed = removed;
if (message != null) result.message = message;
return result;
}
RemoveStoreResponse._();
factory RemoveStoreResponse.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
factory RemoveStoreResponse.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'RemoveStoreResponse',
package: const $pb.PackageName(_omitMessageNames ? '' : 'chain.v1'),
createEmptyInstance: create)
..aOB(1, _omitFieldNames ? '' : 'removed')
..aOS(2, _omitFieldNames ? '' : 'message')
..hasRequiredFields = false;
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RemoveStoreResponse clone() => deepCopy();
@$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
RemoveStoreResponse copyWith(void Function(RemoveStoreResponse) updates) =>
super.copyWith((message) => updates(message as RemoveStoreResponse))
as RemoveStoreResponse;
@$core.override
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static RemoveStoreResponse create() => RemoveStoreResponse._();
@$core.override
RemoveStoreResponse createEmptyInstance() => create();
@$core.pragma('dart2js:noInline')
static RemoveStoreResponse getDefault() => _defaultInstance ??=
$pb.GeneratedMessage.$_defaultFor<RemoveStoreResponse>(create);
static RemoveStoreResponse? _defaultInstance;
@$pb.TagNumber(1)
$core.bool get removed => $_getBF(0);
@$pb.TagNumber(1)
set removed($core.bool value) => $_setBool(0, value);
@$pb.TagNumber(1)
$core.bool hasRemoved() => $_has(0);
@$pb.TagNumber(1)
void clearRemoved() => $_clearField(1);
@$pb.TagNumber(2)
$core.String get message => $_getSZ(1);
@$pb.TagNumber(2)
set message($core.String value) => $_setString(1, value);
@$pb.TagNumber(2)
$core.bool hasMessage() => $_has(1);
@$pb.TagNumber(2)
void clearMessage() => $_clearField(2);
}
const $core.bool _omitFieldNames = const $core.bool _omitFieldNames =
$core.bool.fromEnvironment('protobuf.omit_field_names'); $core.bool.fromEnvironment('protobuf.omit_field_names');
const $core.bool _omitMessageNames = const $core.bool _omitMessageNames =

View file

@ -243,6 +243,33 @@ class HubAdminClient extends $grpc.Client {
return $createUnaryCall(_$searchStore, request, options: options); return $createUnaryCall(_$searchStore, request, options: options);
} }
/// List the configured module stores (operator config `stores:`)
/// plus the implicit bundled seed, for the Studio store manager.
$grpc.ResponseFuture<$0.ListStoresResponse> listStores(
$0.ListStoresRequest request, {
$grpc.CallOptions? options,
}) {
return $createUnaryCall(_$listStores, request, options: options);
}
/// Register a new module store and merge its index into the live
/// store so its modules become searchable + installable immediately.
$grpc.ResponseFuture<$0.AddStoreResponse> addStore(
$0.AddStoreRequest request, {
$grpc.CallOptions? options,
}) {
return $createUnaryCall(_$addStore, request, options: options);
}
/// Drop a configured store by name and rebuild the live index
/// without it. The bundled seed cannot be removed.
$grpc.ResponseFuture<$0.RemoveStoreResponse> removeStore(
$0.RemoveStoreRequest request, {
$grpc.CallOptions? options,
}) {
return $createUnaryCall(_$removeStore, request, options: options);
}
/// Install a module from a .fai bundle (local path or http(s) URL). /// Install a module from a .fai bundle (local path or http(s) URL).
$grpc.ResponseFuture<$0.InstallModuleResponse> installModule( $grpc.ResponseFuture<$0.InstallModuleResponse> installModule(
$0.InstallModuleRequest request, { $0.InstallModuleRequest request, {
@ -336,7 +363,7 @@ class HubAdminClient extends $grpc.Client {
} }
/// Walk the event-log hash chain and return whether tampering /// Walk the event-log hash chain and return whether tampering
/// was detected. Surfaced by the CLI as `fai admin verify-events` /// was detected. Surfaced by the CLI as `chain admin verify-events`
/// and by Studio's health page. /// and by Studio's health page.
$grpc.ResponseFuture<$0.VerifyEventChainResponse> verifyEventChain( $grpc.ResponseFuture<$0.VerifyEventChainResponse> verifyEventChain(
$1.Empty request, { $1.Empty request, {
@ -348,7 +375,7 @@ class HubAdminClient extends $grpc.Client {
/// Wipe every audit event and seed the log with a single /// Wipe every audit event and seed the log with a single
/// `chain.reset` marker. Refused on `beta` / `production` for /// `chain.reset` marker. Refused on `beta` / `production` for
/// compliance only callable on `local` / `dev`. Surfaced by /// compliance only callable on `local` / `dev`. Surfaced by
/// the CLI as `fai admin events clear`. /// the CLI as `chain admin events clear`.
$grpc.ResponseFuture<$0.ClearEventLogResponse> clearEventLog( $grpc.ResponseFuture<$0.ClearEventLogResponse> clearEventLog(
$0.ClearEventLogRequest request, { $0.ClearEventLogRequest request, {
$grpc.CallOptions? options, $grpc.CallOptions? options,
@ -394,7 +421,7 @@ class HubAdminClient extends $grpc.Client {
/// List host services declared in the operator config. Each /// List host services declared in the operator config. Each
/// entry carries name + endpoint; reachability is operator-side /// entry carries name + endpoint; reachability is operator-side
/// (on-demand `fai service status` or Studio probe). /// (on-demand `chain service status` or Studio probe).
$grpc.ResponseFuture<$0.ServiceList> listServices( $grpc.ResponseFuture<$0.ServiceList> listServices(
$1.Empty request, { $1.Empty request, {
$grpc.CallOptions? options, $grpc.CallOptions? options,
@ -403,7 +430,7 @@ class HubAdminClient extends $grpc.Client {
} }
/// Compare the running hub's version against the channel release /// Compare the running hub's version against the channel release
/// manifest. Surfaced by the CLI as `fai update check` and by /// manifest. Surfaced by the CLI as `chain update check` and by
/// Studio's Doctor page as a "v0.x.y available" pill. Network /// Studio's Doctor page as a "v0.x.y available" pill. Network
/// failures are returned as `manifest_reachable=false` rather /// failures are returned as `manifest_reachable=false` rather
/// than gRPC errors so Studio can render gracefully when the /// than gRPC errors so Studio can render gracefully when the
@ -438,7 +465,7 @@ class HubAdminClient extends $grpc.Client {
/// Configured MCP servers + their last-discovery report. /// Configured MCP servers + their last-discovery report.
/// Studio's MCP-clients editor renders the result. Mirrors /// Studio's MCP-clients editor renders the result. Mirrors
/// `fai mcp list` on the CLI. /// `chain mcp list` on the CLI.
$grpc.ResponseFuture<$0.ListMcpClientsResponse> listMcpClients( $grpc.ResponseFuture<$0.ListMcpClientsResponse> listMcpClients(
$1.Empty request, { $1.Empty request, {
$grpc.CallOptions? options, $grpc.CallOptions? options,
@ -449,7 +476,7 @@ class HubAdminClient extends $grpc.Client {
/// Re-run discovery against every configured MCP server and /// Re-run discovery against every configured MCP server and
/// update the *live* store-index in place. Synthetic entries /// update the *live* store-index in place. Synthetic entries
/// for tools the server no longer exposes are dropped. /// for tools the server no longer exposes are dropped.
/// Mirrors `fai mcp refresh` but operates on the running /// Mirrors `chain mcp refresh` but operates on the running
/// daemon Studio doesn't need to ask the operator to /// daemon Studio doesn't need to ask the operator to
/// restart anything. /// restart anything.
$grpc.ResponseFuture<$0.ListMcpClientsResponse> refreshMcpClients( $grpc.ResponseFuture<$0.ListMcpClientsResponse> refreshMcpClients(
@ -459,7 +486,7 @@ class HubAdminClient extends $grpc.Client {
return $createUnaryCall(_$refreshMcpClients, request, options: options); return $createUnaryCall(_$refreshMcpClients, request, options: options);
} }
/// Persist a new MCP server in `~/.fai/config.yaml` and /// Persist a new MCP server in `~/.chain/config.yaml` and
/// re-run discovery. Returns the resulting list (same shape /// re-run discovery. Returns the resulting list (same shape
/// as ListMcpClients) so Studio can repaint in one round-trip. /// as ListMcpClients) so Studio can repaint in one round-trip.
$grpc.ResponseFuture<$0.ListMcpClientsResponse> addMcpClient( $grpc.ResponseFuture<$0.ListMcpClientsResponse> addMcpClient(
@ -530,7 +557,7 @@ class HubAdminClient extends $grpc.Client {
} }
/// Persist a new system-AI configuration. Updates the live /// Persist a new system-AI configuration. Updates the live
/// hub state AND writes back to ~/.fai/config.yaml so the /// hub state AND writes back to ~/.chain/config.yaml so the
/// change survives daemon restart. Used by Studio's settings /// change survives daemon restart. Used by Studio's settings
/// editor. Returns the resulting status (same shape as /// editor. Returns the resulting status (same shape as
/// SystemAiStatus) so the UI can refresh in one round-trip. /// SystemAiStatus) so the UI can refresh in one round-trip.
@ -620,9 +647,9 @@ class HubAdminClient extends $grpc.Client {
} }
/// Federation (primary side). Issue a single-use bootstrap /// Federation (primary side). Issue a single-use bootstrap
/// token enrolling a named satellite (`fai admin satellites /// token enrolling a named satellite (`chain admin satellites
/// peer-add`), and list the satellites currently connected /// peer-add`), and list the satellites currently connected
/// (`fai admin satellites list`). /// (`chain admin satellites list`).
$grpc.ResponseFuture<$0.IssueBootstrapTokenResponse> issueBootstrapToken( $grpc.ResponseFuture<$0.IssueBootstrapTokenResponse> issueBootstrapToken(
$0.IssueBootstrapTokenRequest request, { $0.IssueBootstrapTokenRequest request, {
$grpc.CallOptions? options, $grpc.CallOptions? options,
@ -637,6 +664,16 @@ class HubAdminClient extends $grpc.Client {
return $createUnaryCall(_$listSatellites, request, options: options); return $createUnaryCall(_$listSatellites, request, options: options);
} }
/// Revoke a satellite by UUID (`chain admin satellites revoke`):
/// drops any live connection and refuses future connects even
/// with a still-valid cert. Persisted across restarts.
$grpc.ResponseFuture<$1.Empty> revokeSatellite(
$0.RevokeSatelliteRequest request, {
$grpc.CallOptions? options,
}) {
return $createUnaryCall(_$revokeSatellite, request, options: options);
}
// method descriptors // method descriptors
static final _$listCapabilities = static final _$listCapabilities =
@ -693,6 +730,21 @@ class HubAdminClient extends $grpc.Client {
'/chain.v1.HubAdmin/SearchStore', '/chain.v1.HubAdmin/SearchStore',
($0.SearchStoreRequest value) => value.writeToBuffer(), ($0.SearchStoreRequest value) => value.writeToBuffer(),
$0.StoreSearchResponse.fromBuffer); $0.StoreSearchResponse.fromBuffer);
static final _$listStores =
$grpc.ClientMethod<$0.ListStoresRequest, $0.ListStoresResponse>(
'/chain.v1.HubAdmin/ListStores',
($0.ListStoresRequest value) => value.writeToBuffer(),
$0.ListStoresResponse.fromBuffer);
static final _$addStore =
$grpc.ClientMethod<$0.AddStoreRequest, $0.AddStoreResponse>(
'/chain.v1.HubAdmin/AddStore',
($0.AddStoreRequest value) => value.writeToBuffer(),
$0.AddStoreResponse.fromBuffer);
static final _$removeStore =
$grpc.ClientMethod<$0.RemoveStoreRequest, $0.RemoveStoreResponse>(
'/chain.v1.HubAdmin/RemoveStore',
($0.RemoveStoreRequest value) => value.writeToBuffer(),
$0.RemoveStoreResponse.fromBuffer);
static final _$installModule = static final _$installModule =
$grpc.ClientMethod<$0.InstallModuleRequest, $0.InstallModuleResponse>( $grpc.ClientMethod<$0.InstallModuleRequest, $0.InstallModuleResponse>(
'/chain.v1.HubAdmin/InstallModule', '/chain.v1.HubAdmin/InstallModule',
@ -876,6 +928,11 @@ class HubAdminClient extends $grpc.Client {
'/chain.v1.HubAdmin/ListSatellites', '/chain.v1.HubAdmin/ListSatellites',
($1.Empty value) => value.writeToBuffer(), ($1.Empty value) => value.writeToBuffer(),
$0.SatelliteList.fromBuffer); $0.SatelliteList.fromBuffer);
static final _$revokeSatellite =
$grpc.ClientMethod<$0.RevokeSatelliteRequest, $1.Empty>(
'/chain.v1.HubAdmin/RevokeSatellite',
($0.RevokeSatelliteRequest value) => value.writeToBuffer(),
$1.Empty.fromBuffer);
} }
@$pb.GrpcServiceName('chain.v1.HubAdmin') @$pb.GrpcServiceName('chain.v1.HubAdmin')
@ -968,6 +1025,29 @@ abstract class HubAdminServiceBase extends $grpc.Service {
($core.List<$core.int> value) => ($core.List<$core.int> value) =>
$0.SearchStoreRequest.fromBuffer(value), $0.SearchStoreRequest.fromBuffer(value),
($0.StoreSearchResponse value) => value.writeToBuffer())); ($0.StoreSearchResponse value) => value.writeToBuffer()));
$addMethod($grpc.ServiceMethod<$0.ListStoresRequest, $0.ListStoresResponse>(
'ListStores',
listStores_Pre,
false,
false,
($core.List<$core.int> value) => $0.ListStoresRequest.fromBuffer(value),
($0.ListStoresResponse value) => value.writeToBuffer()));
$addMethod($grpc.ServiceMethod<$0.AddStoreRequest, $0.AddStoreResponse>(
'AddStore',
addStore_Pre,
false,
false,
($core.List<$core.int> value) => $0.AddStoreRequest.fromBuffer(value),
($0.AddStoreResponse value) => value.writeToBuffer()));
$addMethod(
$grpc.ServiceMethod<$0.RemoveStoreRequest, $0.RemoveStoreResponse>(
'RemoveStore',
removeStore_Pre,
false,
false,
($core.List<$core.int> value) =>
$0.RemoveStoreRequest.fromBuffer(value),
($0.RemoveStoreResponse value) => value.writeToBuffer()));
$addMethod( $addMethod(
$grpc.ServiceMethod<$0.InstallModuleRequest, $0.InstallModuleResponse>( $grpc.ServiceMethod<$0.InstallModuleRequest, $0.InstallModuleResponse>(
'InstallModule', 'InstallModule',
@ -1265,6 +1345,14 @@ abstract class HubAdminServiceBase extends $grpc.Service {
false, false,
($core.List<$core.int> value) => $1.Empty.fromBuffer(value), ($core.List<$core.int> value) => $1.Empty.fromBuffer(value),
($0.SatelliteList value) => value.writeToBuffer())); ($0.SatelliteList value) => value.writeToBuffer()));
$addMethod($grpc.ServiceMethod<$0.RevokeSatelliteRequest, $1.Empty>(
'RevokeSatellite',
revokeSatellite_Pre,
false,
false,
($core.List<$core.int> value) =>
$0.RevokeSatelliteRequest.fromBuffer(value),
($1.Empty value) => value.writeToBuffer()));
} }
$async.Future<$0.CapabilityList> listCapabilities_Pre( $async.Future<$0.CapabilityList> listCapabilities_Pre(
@ -1357,6 +1445,30 @@ abstract class HubAdminServiceBase extends $grpc.Service {
$async.Future<$0.StoreSearchResponse> searchStore( $async.Future<$0.StoreSearchResponse> searchStore(
$grpc.ServiceCall call, $0.SearchStoreRequest request); $grpc.ServiceCall call, $0.SearchStoreRequest request);
$async.Future<$0.ListStoresResponse> listStores_Pre($grpc.ServiceCall $call,
$async.Future<$0.ListStoresRequest> $request) async {
return listStores($call, await $request);
}
$async.Future<$0.ListStoresResponse> listStores(
$grpc.ServiceCall call, $0.ListStoresRequest request);
$async.Future<$0.AddStoreResponse> addStore_Pre($grpc.ServiceCall $call,
$async.Future<$0.AddStoreRequest> $request) async {
return addStore($call, await $request);
}
$async.Future<$0.AddStoreResponse> addStore(
$grpc.ServiceCall call, $0.AddStoreRequest request);
$async.Future<$0.RemoveStoreResponse> removeStore_Pre($grpc.ServiceCall $call,
$async.Future<$0.RemoveStoreRequest> $request) async {
return removeStore($call, await $request);
}
$async.Future<$0.RemoveStoreResponse> removeStore(
$grpc.ServiceCall call, $0.RemoveStoreRequest request);
$async.Future<$0.InstallModuleResponse> installModule_Pre( $async.Future<$0.InstallModuleResponse> installModule_Pre(
$grpc.ServiceCall $call, $grpc.ServiceCall $call,
$async.Future<$0.InstallModuleRequest> $request) async { $async.Future<$0.InstallModuleRequest> $request) async {
@ -1670,4 +1782,12 @@ abstract class HubAdminServiceBase extends $grpc.Service {
$async.Future<$0.SatelliteList> listSatellites( $async.Future<$0.SatelliteList> listSatellites(
$grpc.ServiceCall call, $1.Empty request); $grpc.ServiceCall call, $1.Empty request);
$async.Future<$1.Empty> revokeSatellite_Pre($grpc.ServiceCall $call,
$async.Future<$0.RevokeSatelliteRequest> $request) async {
return revokeSatellite($call, await $request);
}
$async.Future<$1.Empty> revokeSatellite(
$grpc.ServiceCall call, $0.RevokeSatelliteRequest request);
} }

View file

@ -15,6 +15,19 @@ import 'dart:convert' as $convert;
import 'dart:core' as $core; import 'dart:core' as $core;
import 'dart:typed_data' as $typed_data; import 'dart:typed_data' as $typed_data;
@$core.Deprecated('Use revokeSatelliteRequestDescriptor instead')
const RevokeSatelliteRequest$json = {
'1': 'RevokeSatelliteRequest',
'2': [
{'1': 'hub_id', '3': 1, '4': 1, '5': 9, '10': 'hubId'},
],
};
/// Descriptor for `RevokeSatelliteRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List revokeSatelliteRequestDescriptor =
$convert.base64Decode(
'ChZSZXZva2VTYXRlbGxpdGVSZXF1ZXN0EhUKBmh1Yl9pZBgBIAEoCVIFaHViSWQ=');
@$core.Deprecated('Use submitRequestDescriptor instead') @$core.Deprecated('Use submitRequestDescriptor instead')
const SubmitRequest$json = { const SubmitRequest$json = {
'1': 'SubmitRequest', '1': 'SubmitRequest',
@ -51,10 +64,10 @@ const SubmitRequest_InputsEntry$json = {
/// Descriptor for `SubmitRequest`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `SubmitRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List submitRequestDescriptor = $convert.base64Decode( final $typed_data.Uint8List submitRequestDescriptor = $convert.base64Decode(
'Cg1TdWJtaXRSZXF1ZXN0EhsKCWZsb3dfeWFtbBgBIAEoDFIIZmxvd1lhbWwSOQoGaW5wdXRzGA' 'Cg1TdWJtaXRSZXF1ZXN0EhsKCWZsb3dfeWFtbBgBIAEoDFIIZmxvd1lhbWwSOwoGaW5wdXRzGA'
'IgAygLMiEuZmFpLnYxLlN1Ym1pdFJlcXVlc3QuSW5wdXRzRW50cnlSBmlucHV0cxpKCgtJbnB1' 'IgAygLMiMuY2hhaW4udjEuU3VibWl0UmVxdWVzdC5JbnB1dHNFbnRyeVIGaW5wdXRzGkwKC0lu'
'dHNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIlCgV2YWx1ZRgCIAEoCzIPLmZhaS52MS5QYXlsb2' 'cHV0c0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EicKBXZhbHVlGAIgASgLMhEuY2hhaW4udjEuUG'
'FkUgV2YWx1ZToCOAE='); 'F5bG9hZFIFdmFsdWU6AjgB');
@$core.Deprecated('Use submitResponseDescriptor instead') @$core.Deprecated('Use submitResponseDescriptor instead')
const SubmitResponse$json = { const SubmitResponse$json = {
@ -99,10 +112,10 @@ const SubmitResponse_OutputsEntry$json = {
/// Descriptor for `SubmitResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `SubmitResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List submitResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List submitResponseDescriptor = $convert.base64Decode(
'Cg5TdWJtaXRSZXNwb25zZRI5Cg1pbnZvY2F0aW9uX2lkGAEgASgLMhQuZmFpLnYxLkludm9jYX' 'Cg5TdWJtaXRSZXNwb25zZRI7Cg1pbnZvY2F0aW9uX2lkGAEgASgLMhYuY2hhaW4udjEuSW52b2'
'Rpb25JZFIMaW52b2NhdGlvbklkEj0KB291dHB1dHMYAiADKAsyIy5mYWkudjEuU3VibWl0UmVz' 'NhdGlvbklkUgxpbnZvY2F0aW9uSWQSPwoHb3V0cHV0cxgCIAMoCzIlLmNoYWluLnYxLlN1Ym1p'
'cG9uc2UuT3V0cHV0c0VudHJ5UgdvdXRwdXRzGksKDE91dHB1dHNFbnRyeRIQCgNrZXkYASABKA' 'dFJlc3BvbnNlLk91dHB1dHNFbnRyeVIHb3V0cHV0cxpNCgxPdXRwdXRzRW50cnkSEAoDa2V5GA'
'lSA2tleRIlCgV2YWx1ZRgCIAEoCzIPLmZhaS52MS5QYXlsb2FkUgV2YWx1ZToCOAE='); 'EgASgJUgNrZXkSJwoFdmFsdWUYAiABKAsyES5jaGFpbi52MS5QYXlsb2FkUgV2YWx1ZToCOAE=');
@$core.Deprecated('Use moduleListDescriptor instead') @$core.Deprecated('Use moduleListDescriptor instead')
const ModuleList$json = { const ModuleList$json = {
@ -121,8 +134,8 @@ const ModuleList$json = {
/// Descriptor for `ModuleList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ModuleList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List moduleListDescriptor = $convert.base64Decode( final $typed_data.Uint8List moduleListDescriptor = $convert.base64Decode(
'CgpNb2R1bGVMaXN0Ei8KB21vZHVsZXMYASADKAsyFS5mYWkudjEuTW9kdWxlU3VtbWFyeVIHbW' 'CgpNb2R1bGVMaXN0EjEKB21vZHVsZXMYASADKAsyFy5jaGFpbi52MS5Nb2R1bGVTdW1tYXJ5Ug'
'9kdWxlcw=='); 'dtb2R1bGVz');
@$core.Deprecated('Use moduleSummaryDescriptor instead') @$core.Deprecated('Use moduleSummaryDescriptor instead')
const ModuleSummary$json = { const ModuleSummary$json = {
@ -144,8 +157,8 @@ const ModuleSummary$json = {
/// Descriptor for `ModuleSummary`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ModuleSummary`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List moduleSummaryDescriptor = $convert.base64Decode( final $typed_data.Uint8List moduleSummaryDescriptor = $convert.base64Decode(
'Cg1Nb2R1bGVTdW1tYXJ5EhIKBG5hbWUYASABKAlSBG5hbWUSGAoHdmVyc2lvbhgCIAEoCVIHdm' 'Cg1Nb2R1bGVTdW1tYXJ5EhIKBG5hbWUYASABKAlSBG5hbWUSGAoHdmVyc2lvbhgCIAEoCVIHdm'
'Vyc2lvbhIxCghwcm92aWRlcxgDIAMoCzIVLmZhaS52MS5DYXBhYmlsaXR5UmVmUghwcm92aWRl' 'Vyc2lvbhIzCghwcm92aWRlcxgDIAMoCzIXLmNoYWluLnYxLkNhcGFiaWxpdHlSZWZSCHByb3Zp'
'cw=='); 'ZGVz');
@$core.Deprecated('Use healthStatusDescriptor instead') @$core.Deprecated('Use healthStatusDescriptor instead')
const HealthStatus$json = { const HealthStatus$json = {
@ -176,9 +189,9 @@ const HealthStatus_State$json = {
/// Descriptor for `HealthStatus`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `HealthStatus`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List healthStatusDescriptor = $convert.base64Decode( final $typed_data.Uint8List healthStatusDescriptor = $convert.base64Decode(
'CgxIZWFsdGhTdGF0dXMSMAoFc3RhdGUYASABKA4yGi5mYWkudjEuSGVhbHRoU3RhdHVzLlN0YX' 'CgxIZWFsdGhTdGF0dXMSMgoFc3RhdGUYASABKA4yHC5jaGFpbi52MS5IZWFsdGhTdGF0dXMuU3'
'RlUgVzdGF0ZRIWCgZkZXRhaWwYAiABKAlSBmRldGFpbCIyCgVTdGF0ZRILCgdVTktOT1dOEAAS' 'RhdGVSBXN0YXRlEhYKBmRldGFpbBgCIAEoCVIGZGV0YWlsIjIKBVN0YXRlEgsKB1VOS05PV04Q'
'CwoHU0VSVklORxABEg8KC05PVF9TRVJWSU5HEAI='); 'ABILCgdTRVJWSU5HEAESDwoLTk9UX1NFUlZJTkcQAg==');
@$core.Deprecated('Use capabilityListDescriptor instead') @$core.Deprecated('Use capabilityListDescriptor instead')
const CapabilityList$json = { const CapabilityList$json = {
@ -197,8 +210,8 @@ const CapabilityList$json = {
/// Descriptor for `CapabilityList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `CapabilityList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List capabilityListDescriptor = $convert.base64Decode( final $typed_data.Uint8List capabilityListDescriptor = $convert.base64Decode(
'Cg5DYXBhYmlsaXR5TGlzdBI7CgxjYXBhYmlsaXRpZXMYASADKAsyFy5mYWkudjEuQ2FwYWJpbG' 'Cg5DYXBhYmlsaXR5TGlzdBI9CgxjYXBhYmlsaXRpZXMYASADKAsyGS5jaGFpbi52MS5DYXBhYm'
'l0eUVudHJ5UgxjYXBhYmlsaXRpZXM='); 'lsaXR5RW50cnlSDGNhcGFiaWxpdGllcw==');
@$core.Deprecated('Use capabilityEntryDescriptor instead') @$core.Deprecated('Use capabilityEntryDescriptor instead')
const CapabilityEntry$json = { const CapabilityEntry$json = {
@ -282,12 +295,12 @@ const ModuleInfoResponse$json = {
/// Descriptor for `ModuleInfoResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ModuleInfoResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List moduleInfoResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List moduleInfoResponseDescriptor = $convert.base64Decode(
'ChJNb2R1bGVJbmZvUmVzcG9uc2USEgoEbmFtZRgBIAEoCVIEbmFtZRIYCgd2ZXJzaW9uGAIgAS' 'ChJNb2R1bGVJbmZvUmVzcG9uc2USEgoEbmFtZRgBIAEoCVIEbmFtZRIYCgd2ZXJzaW9uGAIgAS'
'gJUgd2ZXJzaW9uEjEKCHByb3ZpZGVzGAMgAygLMhUuZmFpLnYxLkNhcGFiaWxpdHlSZWZSCHBy' 'gJUgd2ZXJzaW9uEjMKCHByb3ZpZGVzGAMgAygLMhcuY2hhaW4udjEuQ2FwYWJpbGl0eVJlZlII'
'b3ZpZGVzEiAKC3Blcm1pc3Npb25zGAQgAygJUgtwZXJtaXNzaW9ucxIcCglkaXJlY3RvcnkYBS' 'cHJvdmlkZXMSIAoLcGVybWlzc2lvbnMYBCADKAlSC3Blcm1pc3Npb25zEhwKCWRpcmVjdG9yeR'
'ABKAlSCWRpcmVjdG9yeRIhCgxhY2NlcHRzX21pbWUYBiADKAlSC2FjY2VwdHNNaW1lEjYKCGNv' 'gFIAEoCVIJZGlyZWN0b3J5EiEKDGFjY2VwdHNfbWltZRgGIAMoCVILYWNjZXB0c01pbWUSOAoI'
'bnN1bWVzGAcgAygLMhouZmFpLnYxLkNvbnN1bWVkQ2FwYWJpbGl0eVIIY29uc3VtZXMSKwoGaW' 'Y29uc3VtZXMYByADKAsyHC5jaGFpbi52MS5Db25zdW1lZENhcGFiaWxpdHlSCGNvbnN1bWVzEi'
'5wdXRzGAggAygLMhMuZmFpLnYxLk1vZHVsZUZpZWxkUgZpbnB1dHMSLQoHb3V0cHV0cxgJIAMo' '0KBmlucHV0cxgIIAMoCzIVLmNoYWluLnYxLk1vZHVsZUZpZWxkUgZpbnB1dHMSLwoHb3V0cHV0'
'CzITLmZhaS52MS5Nb2R1bGVGaWVsZFIHb3V0cHV0cw=='); 'cxgJIAMoCzIVLmNoYWluLnYxLk1vZHVsZUZpZWxkUgdvdXRwdXRz');
@$core.Deprecated('Use consumedCapabilityDescriptor instead') @$core.Deprecated('Use consumedCapabilityDescriptor instead')
const ConsumedCapability$json = { const ConsumedCapability$json = {
@ -334,10 +347,10 @@ const ModuleField_DescriptionEntry$json = {
/// Descriptor for `ModuleField`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ModuleField`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List moduleFieldDescriptor = $convert.base64Decode( final $typed_data.Uint8List moduleFieldDescriptor = $convert.base64Decode(
'CgtNb2R1bGVGaWVsZBISCgRuYW1lGAEgASgJUgRuYW1lEhIKBHR5cGUYAiABKAlSBHR5cGUSRg' 'CgtNb2R1bGVGaWVsZBISCgRuYW1lGAEgASgJUgRuYW1lEhIKBHR5cGUYAiABKAlSBHR5cGUSSA'
'oLZGVzY3JpcHRpb24YAyADKAsyJC5mYWkudjEuTW9kdWxlRmllbGQuRGVzY3JpcHRpb25FbnRy' 'oLZGVzY3JpcHRpb24YAyADKAsyJi5jaGFpbi52MS5Nb2R1bGVGaWVsZC5EZXNjcmlwdGlvbkVu'
'eVILZGVzY3JpcHRpb24aPgoQRGVzY3JpcHRpb25FbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCg' 'dHJ5UgtkZXNjcmlwdGlvbho+ChBEZXNjcmlwdGlvbkVudHJ5EhAKA2tleRgBIAEoCVIDa2V5Eh'
'V2YWx1ZRgCIAEoCVIFdmFsdWU6AjgB'); 'QKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAE=');
@$core.Deprecated('Use checkPermissionRequestDescriptor instead') @$core.Deprecated('Use checkPermissionRequestDescriptor instead')
const CheckPermissionRequest$json = { const CheckPermissionRequest$json = {
@ -400,8 +413,8 @@ const EventLogResponse$json = {
/// Descriptor for `EventLogResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `EventLogResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List eventLogResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List eventLogResponseDescriptor = $convert.base64Decode(
'ChBFdmVudExvZ1Jlc3BvbnNlEisKBmV2ZW50cxgBIAMoCzITLmZhaS52MS5Mb2dnZWRFdmVudF' 'ChBFdmVudExvZ1Jlc3BvbnNlEi0KBmV2ZW50cxgBIAMoCzIVLmNoYWluLnYxLkxvZ2dlZEV2ZW'
'IGZXZlbnRz'); '50UgZldmVudHM=');
@$core.Deprecated('Use streamEventsRequestDescriptor instead') @$core.Deprecated('Use streamEventsRequestDescriptor instead')
const StreamEventsRequest$json = { const StreamEventsRequest$json = {
@ -518,7 +531,8 @@ const FlowList$json = {
/// Descriptor for `FlowList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `FlowList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List flowListDescriptor = $convert.base64Decode( final $typed_data.Uint8List flowListDescriptor = $convert.base64Decode(
'CghGbG93TGlzdBIpCgVmbG93cxgBIAMoCzITLmZhaS52MS5GbG93U3VtbWFyeVIFZmxvd3M='); 'CghGbG93TGlzdBIrCgVmbG93cxgBIAMoCzIVLmNoYWluLnYxLkZsb3dTdW1tYXJ5UgVmbG93cw'
'==');
@$core.Deprecated('Use flowSummaryDescriptor instead') @$core.Deprecated('Use flowSummaryDescriptor instead')
const FlowSummary$json = { const FlowSummary$json = {
@ -579,10 +593,10 @@ const RunSavedFlowRequest_InputsEntry$json = {
/// Descriptor for `RunSavedFlowRequest`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `RunSavedFlowRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List runSavedFlowRequestDescriptor = $convert.base64Decode( final $typed_data.Uint8List runSavedFlowRequestDescriptor = $convert.base64Decode(
'ChNSdW5TYXZlZEZsb3dSZXF1ZXN0EhIKBG5hbWUYASABKAlSBG5hbWUSPwoGaW5wdXRzGAIgAy' 'ChNSdW5TYXZlZEZsb3dSZXF1ZXN0EhIKBG5hbWUYASABKAlSBG5hbWUSQQoGaW5wdXRzGAIgAy'
'gLMicuZmFpLnYxLlJ1blNhdmVkRmxvd1JlcXVlc3QuSW5wdXRzRW50cnlSBmlucHV0cxpKCgtJ' 'gLMikuY2hhaW4udjEuUnVuU2F2ZWRGbG93UmVxdWVzdC5JbnB1dHNFbnRyeVIGaW5wdXRzGkwK'
'bnB1dHNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIlCgV2YWx1ZRgCIAEoCzIPLmZhaS52MS5QYX' 'C0lucHV0c0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EicKBXZhbHVlGAIgASgLMhEuY2hhaW4udj'
'lsb2FkUgV2YWx1ZToCOAE='); 'EuUGF5bG9hZFIFdmFsdWU6AjgB');
@$core.Deprecated('Use getFlowDefinitionRequestDescriptor instead') @$core.Deprecated('Use getFlowDefinitionRequestDescriptor instead')
const GetFlowDefinitionRequest$json = { const GetFlowDefinitionRequest$json = {
@ -615,8 +629,8 @@ const FlowDefinition$json = {
/// Descriptor for `FlowDefinition`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `FlowDefinition`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List flowDefinitionDescriptor = $convert.base64Decode( final $typed_data.Uint8List flowDefinitionDescriptor = $convert.base64Decode(
'Cg5GbG93RGVmaW5pdGlvbhISCgRuYW1lGAEgASgJUgRuYW1lEi0KBmlucHV0cxgCIAMoCzIVLm' 'Cg5GbG93RGVmaW5pdGlvbhISCgRuYW1lGAEgASgJUgRuYW1lEi8KBmlucHV0cxgCIAMoCzIXLm'
'ZhaS52MS5GbG93SW5wdXRTcGVjUgZpbnB1dHM='); 'NoYWluLnYxLkZsb3dJbnB1dFNwZWNSBmlucHV0cw==');
@$core.Deprecated('Use flowInputSpecDescriptor instead') @$core.Deprecated('Use flowInputSpecDescriptor instead')
const FlowInputSpec$json = { const FlowInputSpec$json = {
@ -670,8 +684,8 @@ const StoreSearchResponse$json = {
/// Descriptor for `StoreSearchResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `StoreSearchResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List storeSearchResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List storeSearchResponseDescriptor = $convert.base64Decode(
'ChNTdG9yZVNlYXJjaFJlc3BvbnNlEiwKB2VudHJpZXMYASADKAsyEi5mYWkudjEuU3RvcmVFbn' 'ChNTdG9yZVNlYXJjaFJlc3BvbnNlEi4KB2VudHJpZXMYASADKAsyFC5jaGFpbi52MS5TdG9yZU'
'RyeVIHZW50cmllcw=='); 'VudHJ5UgdlbnRyaWVz');
@$core.Deprecated('Use installModuleRequestDescriptor instead') @$core.Deprecated('Use installModuleRequestDescriptor instead')
const InstallModuleRequest$json = { const InstallModuleRequest$json = {
@ -890,8 +904,8 @@ const ApprovalList$json = {
/// Descriptor for `ApprovalList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ApprovalList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List approvalListDescriptor = $convert.base64Decode( final $typed_data.Uint8List approvalListDescriptor = $convert.base64Decode(
'CgxBcHByb3ZhbExpc3QSNgoHZW50cmllcxgBIAMoCzIcLmZhaS52MS5QZW5kaW5nQXBwcm92YW' 'CgxBcHByb3ZhbExpc3QSOAoHZW50cmllcxgBIAMoCzIeLmNoYWluLnYxLlBlbmRpbmdBcHByb3'
'xFbnRyeVIHZW50cmllcw=='); 'ZhbEVudHJ5UgdlbnRyaWVz');
@$core.Deprecated('Use pendingApprovalEntryDescriptor instead') @$core.Deprecated('Use pendingApprovalEntryDescriptor instead')
const PendingApprovalEntry$json = { const PendingApprovalEntry$json = {
@ -954,10 +968,10 @@ const DecideApprovalRequest_Decision$json = {
/// Descriptor for `DecideApprovalRequest`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `DecideApprovalRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List decideApprovalRequestDescriptor = $convert.base64Decode( final $typed_data.Uint8List decideApprovalRequestDescriptor = $convert.base64Decode(
'ChVEZWNpZGVBcHByb3ZhbFJlcXVlc3QSHwoLYXBwcm92YWxfaWQYASABKAlSCmFwcHJvdmFsSW' 'ChVEZWNpZGVBcHByb3ZhbFJlcXVlc3QSHwoLYXBwcm92YWxfaWQYASABKAlSCmFwcHJvdmFsSW'
'QSQgoIZGVjaXNpb24YAiABKA4yJi5mYWkudjEuRGVjaWRlQXBwcm92YWxSZXF1ZXN0LkRlY2lz' 'QSRAoIZGVjaXNpb24YAiABKA4yKC5jaGFpbi52MS5EZWNpZGVBcHByb3ZhbFJlcXVlc3QuRGVj'
'aW9uUghkZWNpc2lvbhIaCghyZXZpZXdlchgDIAEoCVIIcmV2aWV3ZXISFgoGcmVhc29uGAQgAS' 'aXNpb25SCGRlY2lzaW9uEhoKCHJldmlld2VyGAMgASgJUghyZXZpZXdlchIWCgZyZWFzb24YBC'
'gJUgZyZWFzb24iPQoIRGVjaXNpb24SGAoUREVDSVNJT05fVU5TUEVDSUZJRUQQABILCgdBUFBS' 'ABKAlSBnJlYXNvbiI9CghEZWNpc2lvbhIYChRERUNJU0lPTl9VTlNQRUNJRklFRBAAEgsKB0FQ'
'T1ZFEAESCgoGUkVKRUNUEAI='); 'UFJPVkUQARIKCgZSRUpFQ1QQAg==');
@$core.Deprecated('Use decideApprovalResponseDescriptor instead') @$core.Deprecated('Use decideApprovalResponseDescriptor instead')
const DecideApprovalResponse$json = { const DecideApprovalResponse$json = {
@ -1006,8 +1020,8 @@ const ServiceList$json = {
/// Descriptor for `ServiceList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ServiceList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List serviceListDescriptor = $convert.base64Decode( final $typed_data.Uint8List serviceListDescriptor = $convert.base64Decode(
'CgtTZXJ2aWNlTGlzdBIzCghzZXJ2aWNlcxgBIAMoCzIXLmZhaS52MS5EZWNsYXJlZFNlcnZpY2' 'CgtTZXJ2aWNlTGlzdBI1CghzZXJ2aWNlcxgBIAMoCzIZLmNoYWluLnYxLkRlY2xhcmVkU2Vydm'
'VSCHNlcnZpY2Vz'); 'ljZVIIc2VydmljZXM=');
@$core.Deprecated('Use declaredServiceDescriptor instead') @$core.Deprecated('Use declaredServiceDescriptor instead')
const DeclaredService$json = { const DeclaredService$json = {
@ -1100,8 +1114,8 @@ const ChannelStatusResponse$json = {
/// Descriptor for `ChannelStatusResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ChannelStatusResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List channelStatusResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List channelStatusResponseDescriptor = $convert.base64Decode(
'ChVDaGFubmVsU3RhdHVzUmVzcG9uc2USFgoGYWN0aXZlGAEgASgJUgZhY3RpdmUSMAoIY2hhbm' 'ChVDaGFubmVsU3RhdHVzUmVzcG9uc2USFgoGYWN0aXZlGAEgASgJUgZhY3RpdmUSMgoIY2hhbm'
'5lbHMYAiADKAsyFC5mYWkudjEuQ2hhbm5lbEVudHJ5UghjaGFubmVscw=='); '5lbHMYAiADKAsyFi5jaGFpbi52MS5DaGFubmVsRW50cnlSCGNoYW5uZWxz');
@$core.Deprecated('Use channelEntryDescriptor instead') @$core.Deprecated('Use channelEntryDescriptor instead')
const ChannelEntry$json = { const ChannelEntry$json = {
@ -1299,8 +1313,8 @@ const ListSystemAiModelsResponse$json = {
final $typed_data.Uint8List listSystemAiModelsResponseDescriptor = final $typed_data.Uint8List listSystemAiModelsResponseDescriptor =
$convert.base64Decode( $convert.base64Decode(
'ChpMaXN0U3lzdGVtQWlNb2RlbHNSZXNwb25zZRIdCgplcnJvcl9raW5kGAEgASgJUgllcnJvck' 'ChpMaXN0U3lzdGVtQWlNb2RlbHNSZXNwb25zZRIdCgplcnJvcl9raW5kGAEgASgJUgllcnJvck'
'tpbmQSEgoEdGV4dBgCIAEoCVIEdGV4dBItCgZtb2RlbHMYAyADKAsyFS5mYWkudjEuU3lzdGVt' 'tpbmQSEgoEdGV4dBgCIAEoCVIEdGV4dBIvCgZtb2RlbHMYAyADKAsyFy5jaGFpbi52MS5TeXN0'
'QWlNb2RlbFIGbW9kZWxz'); 'ZW1BaU1vZGVsUgZtb2RlbHM=');
@$core.Deprecated('Use systemAiModelDescriptor instead') @$core.Deprecated('Use systemAiModelDescriptor instead')
const SystemAiModel$json = { const SystemAiModel$json = {
@ -1388,9 +1402,9 @@ const ListSystemAiCuratedModelsResponse$json = {
/// Descriptor for `ListSystemAiCuratedModelsResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ListSystemAiCuratedModelsResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List listSystemAiCuratedModelsResponseDescriptor = final $typed_data.Uint8List listSystemAiCuratedModelsResponseDescriptor =
$convert.base64Decode( $convert.base64Decode(
'CiFMaXN0U3lzdGVtQWlDdXJhdGVkTW9kZWxzUmVzcG9uc2USLAoGbW9kZWxzGAEgAygLMhQuZm' 'CiFMaXN0U3lzdGVtQWlDdXJhdGVkTW9kZWxzUmVzcG9uc2USLgoGbW9kZWxzGAEgAygLMhYuY2'
'FpLnYxLkN1cmF0ZWRNb2RlbFIGbW9kZWxzEiMKDWxhc3RfcmV2aWV3ZWQYAiABKAlSDGxhc3RS' 'hhaW4udjEuQ3VyYXRlZE1vZGVsUgZtb2RlbHMSIwoNbGFzdF9yZXZpZXdlZBgCIAEoCVIMbGFz'
'ZXZpZXdlZA=='); 'dFJldmlld2Vk');
@$core.Deprecated('Use curatedModelDescriptor instead') @$core.Deprecated('Use curatedModelDescriptor instead')
const CuratedModel$json = { const CuratedModel$json = {
@ -1517,8 +1531,8 @@ const ListMcpClientsResponse$json = {
/// Descriptor for `ListMcpClientsResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ListMcpClientsResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List listMcpClientsResponseDescriptor = final $typed_data.Uint8List listMcpClientsResponseDescriptor =
$convert.base64Decode( $convert.base64Decode(
'ChZMaXN0TWNwQ2xpZW50c1Jlc3BvbnNlEjEKB2NsaWVudHMYASADKAsyFy5mYWkudjEuTWNwQ2' 'ChZMaXN0TWNwQ2xpZW50c1Jlc3BvbnNlEjMKB2NsaWVudHMYASADKAsyGS5jaGFpbi52MS5NY3'
'xpZW50U3RhdHVzUgdjbGllbnRz'); 'BDbGllbnRTdGF0dXNSB2NsaWVudHM=');
@$core.Deprecated('Use mcpClientStatusDescriptor instead') @$core.Deprecated('Use mcpClientStatusDescriptor instead')
const McpClientStatus$json = { const McpClientStatus$json = {
@ -1540,9 +1554,9 @@ const McpClientStatus$json = {
/// Descriptor for `McpClientStatus`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `McpClientStatus`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List mcpClientStatusDescriptor = $convert.base64Decode( final $typed_data.Uint8List mcpClientStatusDescriptor = $convert.base64Decode(
'Cg9NY3BDbGllbnRTdGF0dXMSNAoGY29uZmlnGAEgASgLMhwuZmFpLnYxLk1jcENsaWVudENvbm' 'Cg9NY3BDbGllbnRTdGF0dXMSNgoGY29uZmlnGAEgASgLMh4uY2hhaW4udjEuTWNwQ2xpZW50Q2'
'ZpZ0VudHJ5UgZjb25maWcSHQoKdG9vbF9jb3VudBgCIAEoDVIJdG9vbENvdW50Eh0KCmVycm9y' '9uZmlnRW50cnlSBmNvbmZpZxIdCgp0b29sX2NvdW50GAIgASgNUgl0b29sQ291bnQSHQoKZXJy'
'X2tpbmQYAyABKAlSCWVycm9yS2luZBIYCgdtZXNzYWdlGAQgASgJUgdtZXNzYWdl'); 'b3Jfa2luZBgDIAEoCVIJZXJyb3JLaW5kEhgKB21lc3NhZ2UYBCABKAlSB21lc3NhZ2U=');
@$core.Deprecated('Use removeMcpClientRequestDescriptor instead') @$core.Deprecated('Use removeMcpClientRequestDescriptor instead')
const RemoveMcpClientRequest$json = { const RemoveMcpClientRequest$json = {
@ -1592,8 +1606,8 @@ const ListN8nEndpointsResponse$json = {
/// Descriptor for `ListN8nEndpointsResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ListN8nEndpointsResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List listN8nEndpointsResponseDescriptor = final $typed_data.Uint8List listN8nEndpointsResponseDescriptor =
$convert.base64Decode( $convert.base64Decode(
'ChhMaXN0TjhuRW5kcG9pbnRzUmVzcG9uc2USNwoJZW5kcG9pbnRzGAEgAygLMhkuZmFpLnYxLk' 'ChhMaXN0TjhuRW5kcG9pbnRzUmVzcG9uc2USOQoJZW5kcG9pbnRzGAEgAygLMhsuY2hhaW4udj'
'44bkVuZHBvaW50U3RhdHVzUgllbmRwb2ludHM='); 'EuTjhuRW5kcG9pbnRTdGF0dXNSCWVuZHBvaW50cw==');
@$core.Deprecated('Use n8nEndpointStatusDescriptor instead') @$core.Deprecated('Use n8nEndpointStatusDescriptor instead')
const N8nEndpointStatus$json = { const N8nEndpointStatus$json = {
@ -1615,10 +1629,10 @@ const N8nEndpointStatus$json = {
/// Descriptor for `N8nEndpointStatus`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `N8nEndpointStatus`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List n8nEndpointStatusDescriptor = $convert.base64Decode( final $typed_data.Uint8List n8nEndpointStatusDescriptor = $convert.base64Decode(
'ChFOOG5FbmRwb2ludFN0YXR1cxI2CgZjb25maWcYASABKAsyHi5mYWkudjEuTjhuRW5kcG9pbn' 'ChFOOG5FbmRwb2ludFN0YXR1cxI4CgZjb25maWcYASABKAsyIC5jaGFpbi52MS5OOG5FbmRwb2'
'RDb25maWdFbnRyeVIGY29uZmlnEiUKDndvcmtmbG93X2NvdW50GAIgASgNUg13b3JrZmxvd0Nv' 'ludENvbmZpZ0VudHJ5UgZjb25maWcSJQoOd29ya2Zsb3dfY291bnQYAiABKA1SDXdvcmtmbG93'
'dW50Eh0KCmVycm9yX2tpbmQYAyABKAlSCWVycm9yS2luZBIYCgdtZXNzYWdlGAQgASgJUgdtZX' 'Q291bnQSHQoKZXJyb3Jfa2luZBgDIAEoCVIJZXJyb3JLaW5kEhgKB21lc3NhZ2UYBCABKAlSB2'
'NzYWdl'); '1lc3NhZ2U=');
@$core.Deprecated('Use removeN8nEndpointRequestDescriptor instead') @$core.Deprecated('Use removeN8nEndpointRequestDescriptor instead')
const RemoveN8nEndpointRequest$json = { const RemoveN8nEndpointRequest$json = {
@ -1684,8 +1698,8 @@ const SatelliteList$json = {
/// Descriptor for `SatelliteList`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `SatelliteList`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List satelliteListDescriptor = $convert.base64Decode( final $typed_data.Uint8List satelliteListDescriptor = $convert.base64Decode(
'Cg1TYXRlbGxpdGVMaXN0EjYKCnNhdGVsbGl0ZXMYASADKAsyFi5mYWkudjEuU2F0ZWxsaXRlRW' 'Cg1TYXRlbGxpdGVMaXN0EjgKCnNhdGVsbGl0ZXMYASADKAsyGC5jaGFpbi52MS5TYXRlbGxpdG'
'50cnlSCnNhdGVsbGl0ZXM='); 'VFbnRyeVIKc2F0ZWxsaXRlcw==');
@$core.Deprecated('Use satelliteEntryDescriptor instead') @$core.Deprecated('Use satelliteEntryDescriptor instead')
const SatelliteEntry$json = { const SatelliteEntry$json = {
@ -1706,3 +1720,113 @@ final $typed_data.Uint8List satelliteEntryDescriptor = $convert.base64Decode(
'gCIAEoCVILZGlzcGxheU5hbWUSHwoLaHViX3ZlcnNpb24YAyABKAlSCmh1YlZlcnNpb24SIQoM' 'gCIAEoCVILZGlzcGxheU5hbWUSHwoLaHViX3ZlcnNpb24YAyABKAlSCmh1YlZlcnNpb24SIQoM'
'd2lyZV92ZXJzaW9uGAQgASgNUgt3aXJlVmVyc2lvbhIWCgZyZWdpb24YBSABKAlSBnJlZ2lvbh' 'd2lyZV92ZXJzaW9uGAQgASgNUgt3aXJlVmVyc2lvbhIWCgZyZWdpb24YBSABKAlSBnJlZ2lvbh'
'IiCgxjYXBhYmlsaXRpZXMYBiADKAlSDGNhcGFiaWxpdGllcw=='); 'IiCgxjYXBhYmlsaXRpZXMYBiADKAlSDGNhcGFiaWxpdGllcw==');
@$core.Deprecated('Use listStoresRequestDescriptor instead')
const ListStoresRequest$json = {
'1': 'ListStoresRequest',
};
/// Descriptor for `ListStoresRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List listStoresRequestDescriptor =
$convert.base64Decode('ChFMaXN0U3RvcmVzUmVxdWVzdA==');
@$core.Deprecated('Use storeSourceDescriptor instead')
const StoreSource$json = {
'1': 'StoreSource',
'2': [
{'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'},
{'1': 'url', '3': 2, '4': 1, '5': 9, '10': 'url'},
{'1': 'removable', '3': 3, '4': 1, '5': 8, '10': 'removable'},
{'1': 'module_count', '3': 4, '4': 1, '5': 5, '10': 'moduleCount'},
],
};
/// Descriptor for `StoreSource`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List storeSourceDescriptor = $convert.base64Decode(
'CgtTdG9yZVNvdXJjZRISCgRuYW1lGAEgASgJUgRuYW1lEhAKA3VybBgCIAEoCVIDdXJsEhwKCX'
'JlbW92YWJsZRgDIAEoCFIJcmVtb3ZhYmxlEiEKDG1vZHVsZV9jb3VudBgEIAEoBVILbW9kdWxl'
'Q291bnQ=');
@$core.Deprecated('Use listStoresResponseDescriptor instead')
const ListStoresResponse$json = {
'1': 'ListStoresResponse',
'2': [
{
'1': 'stores',
'3': 1,
'4': 3,
'5': 11,
'6': '.chain.v1.StoreSource',
'10': 'stores'
},
],
};
/// Descriptor for `ListStoresResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List listStoresResponseDescriptor = $convert.base64Decode(
'ChJMaXN0U3RvcmVzUmVzcG9uc2USLQoGc3RvcmVzGAEgAygLMhUuY2hhaW4udjEuU3RvcmVTb3'
'VyY2VSBnN0b3Jlcw==');
@$core.Deprecated('Use addStoreRequestDescriptor instead')
const AddStoreRequest$json = {
'1': 'AddStoreRequest',
'2': [
{'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'},
{'1': 'url', '3': 2, '4': 1, '5': 9, '10': 'url'},
{'1': 'bearer_env', '3': 3, '4': 1, '5': 9, '10': 'bearerEnv'},
{'1': 'basic_user', '3': 4, '4': 1, '5': 9, '10': 'basicUser'},
{
'1': 'basic_password_env',
'3': 5,
'4': 1,
'5': 9,
'10': 'basicPasswordEnv'
},
],
};
/// Descriptor for `AddStoreRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List addStoreRequestDescriptor = $convert.base64Decode(
'Cg9BZGRTdG9yZVJlcXVlc3QSEgoEbmFtZRgBIAEoCVIEbmFtZRIQCgN1cmwYAiABKAlSA3VybB'
'IdCgpiZWFyZXJfZW52GAMgASgJUgliZWFyZXJFbnYSHQoKYmFzaWNfdXNlchgEIAEoCVIJYmFz'
'aWNVc2VyEiwKEmJhc2ljX3Bhc3N3b3JkX2VudhgFIAEoCVIQYmFzaWNQYXNzd29yZEVudg==');
@$core.Deprecated('Use addStoreResponseDescriptor instead')
const AddStoreResponse$json = {
'1': 'AddStoreResponse',
'2': [
{'1': 'modules_added', '3': 1, '4': 1, '5': 5, '10': 'modulesAdded'},
{'1': 'message', '3': 2, '4': 1, '5': 9, '10': 'message'},
],
};
/// Descriptor for `AddStoreResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List addStoreResponseDescriptor = $convert.base64Decode(
'ChBBZGRTdG9yZVJlc3BvbnNlEiMKDW1vZHVsZXNfYWRkZWQYASABKAVSDG1vZHVsZXNBZGRlZB'
'IYCgdtZXNzYWdlGAIgASgJUgdtZXNzYWdl');
@$core.Deprecated('Use removeStoreRequestDescriptor instead')
const RemoveStoreRequest$json = {
'1': 'RemoveStoreRequest',
'2': [
{'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'},
],
};
/// Descriptor for `RemoveStoreRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List removeStoreRequestDescriptor = $convert
.base64Decode('ChJSZW1vdmVTdG9yZVJlcXVlc3QSEgoEbmFtZRgBIAEoCVIEbmFtZQ==');
@$core.Deprecated('Use removeStoreResponseDescriptor instead')
const RemoveStoreResponse$json = {
'1': 'RemoveStoreResponse',
'2': [
{'1': 'removed', '3': 1, '4': 1, '5': 8, '10': 'removed'},
{'1': 'message', '3': 2, '4': 1, '5': 9, '10': 'message'},
],
};
/// Descriptor for `RemoveStoreResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List removeStoreResponseDescriptor = $convert.base64Decode(
'ChNSZW1vdmVTdG9yZVJlc3BvbnNlEhgKB3JlbW92ZWQYASABKAhSB3JlbW92ZWQSGAoHbWVzc2'
'FnZRgCIAEoCVIHbWVzc2FnZQ==');

View file

@ -67,12 +67,12 @@ const InvokeRequest_InputsEntry$json = {
/// Descriptor for `InvokeRequest`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `InvokeRequest`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List invokeRequestDescriptor = $convert.base64Decode( final $typed_data.Uint8List invokeRequestDescriptor = $convert.base64Decode(
'Cg1JbnZva2VSZXF1ZXN0EjkKDWludm9jYXRpb25faWQYASABKAsyFC5mYWkudjEuSW52b2NhdG' 'Cg1JbnZva2VSZXF1ZXN0EjsKDWludm9jYXRpb25faWQYASABKAsyFi5jaGFpbi52MS5JbnZvY2'
'lvbklkUgxpbnZvY2F0aW9uSWQSNQoKY2FwYWJpbGl0eRgCIAEoCzIVLmZhaS52MS5DYXBhYmls' 'F0aW9uSWRSDGludm9jYXRpb25JZBI3CgpjYXBhYmlsaXR5GAIgASgLMhcuY2hhaW4udjEuQ2Fw'
'aXR5UmVmUgpjYXBhYmlsaXR5EjkKBmlucHV0cxgDIAMoCzIhLmZhaS52MS5JbnZva2VSZXF1ZX' 'YWJpbGl0eVJlZlIKY2FwYWJpbGl0eRI7CgZpbnB1dHMYAyADKAsyIy5jaGFpbi52MS5JbnZva2'
'N0LklucHV0c0VudHJ5UgZpbnB1dHMSHwoLZGVhZGxpbmVfbXMYBCABKARSCmRlYWRsaW5lTXMa' 'VSZXF1ZXN0LklucHV0c0VudHJ5UgZpbnB1dHMSHwoLZGVhZGxpbmVfbXMYBCABKARSCmRlYWRs'
'SgoLSW5wdXRzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSJQoFdmFsdWUYAiABKAsyDy5mYWkudj' 'aW5lTXMaTAoLSW5wdXRzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSJwoFdmFsdWUYAiABKAsyES'
'EuUGF5bG9hZFIFdmFsdWU6AjgB'); '5jaGFpbi52MS5QYXlsb2FkUgV2YWx1ZToCOAE=');
@$core.Deprecated('Use invokeResponseDescriptor instead') @$core.Deprecated('Use invokeResponseDescriptor instead')
const InvokeResponse$json = { const InvokeResponse$json = {
@ -104,9 +104,9 @@ const InvokeResponse$json = {
/// Descriptor for `InvokeResponse`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `InvokeResponse`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List invokeResponseDescriptor = $convert.base64Decode( final $typed_data.Uint8List invokeResponseDescriptor = $convert.base64Decode(
'Cg5JbnZva2VSZXNwb25zZRIrCgdzdWNjZXNzGAEgASgLMg8uZmFpLnYxLlN1Y2Nlc3NIAFIHc3' 'Cg5JbnZva2VSZXNwb25zZRItCgdzdWNjZXNzGAEgASgLMhEuY2hhaW4udjEuU3VjY2Vzc0gAUg'
'VjY2VzcxIoCgVlcnJvchgCIAEoCzIQLmZhaS52MS5GYWlFcnJvckgAUgVlcnJvckIICgZyZXN1' 'dzdWNjZXNzEioKBWVycm9yGAIgASgLMhIuY2hhaW4udjEuRmFpRXJyb3JIAFIFZXJyb3JCCAoG'
'bHQ='); 'cmVzdWx0');
@$core.Deprecated('Use successDescriptor instead') @$core.Deprecated('Use successDescriptor instead')
const Success$json = { const Success$json = {
@ -143,9 +143,9 @@ const Success_OutputsEntry$json = {
/// Descriptor for `Success`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `Success`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List successDescriptor = $convert.base64Decode( final $typed_data.Uint8List successDescriptor = $convert.base64Decode(
'CgdTdWNjZXNzEjYKB291dHB1dHMYASADKAsyHC5mYWkudjEuU3VjY2Vzcy5PdXRwdXRzRW50cn' 'CgdTdWNjZXNzEjgKB291dHB1dHMYASADKAsyHi5jaGFpbi52MS5TdWNjZXNzLk91dHB1dHNFbn'
'lSB291dHB1dHMaSwoMT3V0cHV0c0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EiUKBXZhbHVlGAIg' 'RyeVIHb3V0cHV0cxpNCgxPdXRwdXRzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSJwoFdmFsdWUY'
'ASgLMg8uZmFpLnYxLlBheWxvYWRSBXZhbHVlOgI4AQ=='); 'AiABKAsyES5jaGFpbi52MS5QYXlsb2FkUgV2YWx1ZToCOAE=');
@$core.Deprecated('Use moduleDescriptorDescriptor instead') @$core.Deprecated('Use moduleDescriptorDescriptor instead')
const ModuleDescriptor$json = { const ModuleDescriptor$json = {
@ -168,5 +168,5 @@ const ModuleDescriptor$json = {
/// Descriptor for `ModuleDescriptor`. Decode as a `google.protobuf.DescriptorProto`. /// Descriptor for `ModuleDescriptor`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List moduleDescriptorDescriptor = $convert.base64Decode( final $typed_data.Uint8List moduleDescriptorDescriptor = $convert.base64Decode(
'ChBNb2R1bGVEZXNjcmlwdG9yEhIKBG5hbWUYASABKAlSBG5hbWUSGAoHdmVyc2lvbhgCIAEoCV' 'ChBNb2R1bGVEZXNjcmlwdG9yEhIKBG5hbWUYASABKAlSBG5hbWUSGAoHdmVyc2lvbhgCIAEoCV'
'IHdmVyc2lvbhIxCghwcm92aWRlcxgDIAMoCzIVLmZhaS52MS5DYXBhYmlsaXR5UmVmUghwcm92' 'IHdmVyc2lvbhIzCghwcm92aWRlcxgDIAMoCzIXLmNoYWluLnYxLkNhcGFiaWxpdHlSZWZSCHBy'
'aWRlcxIgCgtwZXJtaXNzaW9ucxgEIAMoCVILcGVybWlzc2lvbnM='); 'b3ZpZGVzEiAKC3Blcm1pc3Npb25zGAQgAygJUgtwZXJtaXNzaW9ucw==');

View file

@ -51,6 +51,9 @@ typedef VerifyEventChainResponse = pb.VerifyEventChainResponse;
typedef CheckUpdateResponse = pb.CheckUpdateResponse; typedef CheckUpdateResponse = pb.CheckUpdateResponse;
typedef ChannelStatusResponse = pb.ChannelStatusResponse; typedef ChannelStatusResponse = pb.ChannelStatusResponse;
typedef ChannelEntry = pb.ChannelEntry; typedef ChannelEntry = pb.ChannelEntry;
typedef StoreSource = pb.StoreSource;
typedef AddStoreResponse = pb.AddStoreResponse;
typedef RemoveStoreResponse = pb.RemoveStoreResponse;
typedef SystemAiStatusResponse = pb.SystemAiStatusResponse; typedef SystemAiStatusResponse = pb.SystemAiStatusResponse;
typedef AskAiResponse = pb.AskAiResponse; typedef AskAiResponse = pb.AskAiResponse;
typedef ListSystemAiModelsResponse = pb.ListSystemAiModelsResponse; typedef ListSystemAiModelsResponse = pb.ListSystemAiModelsResponse;
@ -646,6 +649,38 @@ class HubClient {
return r.entries; return r.entries;
} }
/// List the configured module stores (operator config `stores:`) plus
/// the bundled seed, each with how many modules it contributes to the
/// live index. Backs the Studio store manager.
Future<List<StoreSource>> listStores() async {
final r = await _admin.listStores(pb.ListStoresRequest());
return r.stores;
}
/// Register a new module store. The hub fetches + validates its index,
/// persists it to config, and merges it live so its modules are
/// immediately searchable + installable.
Future<AddStoreResponse> addStore({
required String name,
required String url,
String bearerEnv = '',
String basicUser = '',
String basicPasswordEnv = '',
}) {
return _admin.addStore(pb.AddStoreRequest(
name: name,
url: url,
bearerEnv: bearerEnv,
basicUser: basicUser,
basicPasswordEnv: basicPasswordEnv,
));
}
/// Drop a configured store by name. The bundled seed cannot be removed.
Future<RemoveStoreResponse> removeStore(String name) {
return _admin.removeStore(pb.RemoveStoreRequest(name: name));
}
/// Install a module from a `.fai` bundle. [source] is either a /// Install a module from a `.fai` bundle. [source] is either a
/// URL or a local filesystem path; [expectedSha256] is an /// URL or a local filesystem path; [expectedSha256] is an
/// optional hex digest the hub verifies before unpacking. /// optional hex digest the hub verifies before unpacking.