chore(proto): regenerate Dart bindings for 0.12.0 CapabilityEntry
Some checks failed
Security / Security check (push) Failing after 2s

Hub-side proto (fai/platform 879bd97) grew three fields on
CapabilityEntry: `provider`, `source_kind`, `version_advisory`.
Dart SDK now surfaces them — Studio + DigiScout can read
which transport delivered each capability, the publisher
identity, and whether the version pin is advisory.

No hand-written code changed; only the regenerated files
under lib/src/generated/. dart analyze + dart test green.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
flemming-it 2026-05-28 10:45:07 +02:00
parent f882b7f955
commit 27278b89a9
4 changed files with 102 additions and 23 deletions

View file

@ -337,6 +337,9 @@ class CapabilityEntry extends $pb.GeneratedMessage {
$core.String? moduleName, $core.String? moduleName,
$core.String? moduleVersion, $core.String? moduleVersion,
$core.String? kind, $core.String? kind,
$core.String? provider,
$core.String? sourceKind,
$core.bool? versionAdvisory,
}) { }) {
final $result = create(); final $result = create();
if (capability != null) { if (capability != null) {
@ -354,6 +357,15 @@ class CapabilityEntry extends $pb.GeneratedMessage {
if (kind != null) { if (kind != null) {
$result.kind = kind; $result.kind = kind;
} }
if (provider != null) {
$result.provider = provider;
}
if (sourceKind != null) {
$result.sourceKind = sourceKind;
}
if (versionAdvisory != null) {
$result.versionAdvisory = versionAdvisory;
}
return $result; return $result;
} }
CapabilityEntry._() : super(); CapabilityEntry._() : super();
@ -366,6 +378,9 @@ class CapabilityEntry extends $pb.GeneratedMessage {
..aOS(3, _omitFieldNames ? '' : 'moduleName') ..aOS(3, _omitFieldNames ? '' : 'moduleName')
..aOS(4, _omitFieldNames ? '' : 'moduleVersion') ..aOS(4, _omitFieldNames ? '' : 'moduleVersion')
..aOS(5, _omitFieldNames ? '' : 'kind') ..aOS(5, _omitFieldNames ? '' : 'kind')
..aOS(6, _omitFieldNames ? '' : 'provider')
..aOS(7, _omitFieldNames ? '' : 'sourceKind')
..aOB(8, _omitFieldNames ? '' : 'versionAdvisory')
..hasRequiredFields = false ..hasRequiredFields = false
; ;
@ -441,6 +456,55 @@ class CapabilityEntry extends $pb.GeneratedMessage {
$core.bool hasKind() => $_has(4); $core.bool hasKind() => $_has(4);
@$pb.TagNumber(5) @$pb.TagNumber(5)
void clearKind() => $_clearField(5); void clearKind() => $_clearField(5);
/// Publisher identity (provider segment) of the capability.
/// Always set on registered capabilities. "fai" for legacy
/// bundles that didn't declare a provider. For federated
/// capabilities, this is the operator's service `name:`
/// (e.g. "deepwiki", "bmds.spark"). Wire-level addition for
/// the naming convention; see
/// `docs/reference/capability-namespaces.yaml`.
@$pb.TagNumber(6)
$core.String get provider => $_getSZ(5);
@$pb.TagNumber(6)
set provider($core.String v) { $_setString(5, v); }
@$pb.TagNumber(6)
$core.bool hasProvider() => $_has(5);
@$pb.TagNumber(6)
void clearProvider() => $_clearField(6);
/// Transport that delivers this capability to the Hub.
/// Distinct from `kind` (which captures the install-vs-builtin
/// distinction) `source_kind` records HOW the Hub reaches
/// the implementation. Studio renders this as a badge next to
/// the capability name.
/// "bundle" installed .fai WASM bundle
/// "system" Hub built-in (fai.system/*)
/// "mcp" federated via an MCP service
/// "n8n" federated via an n8n endpoint
/// "temporal" federated via a Temporal service (e.g. SPARK)
/// "webhook" reserved for Phase 1+
@$pb.TagNumber(7)
$core.String get sourceKind => $_getSZ(6);
@$pb.TagNumber(7)
set sourceKind($core.String v) { $_setString(6, v); }
@$pb.TagNumber(7)
$core.bool hasSourceKind() => $_has(6);
@$pb.TagNumber(7)
void clearSourceKind() => $_clearField(7);
/// Whether the version on this capability is advisory rather
/// than a hard contract. True for federated capabilities whose
/// upstream service does not honour semver; operator pins are
/// labels, not guarantees. Studio renders a warning badge.
@$pb.TagNumber(8)
$core.bool get versionAdvisory => $_getBF(7);
@$pb.TagNumber(8)
set versionAdvisory($core.bool v) { $_setBool(7, v); }
@$pb.TagNumber(8)
$core.bool hasVersionAdvisory() => $_has(7);
@$pb.TagNumber(8)
void clearVersionAdvisory() => $_clearField(8);
} }
class ModuleInfoRequest extends $pb.GeneratedMessage { class ModuleInfoRequest extends $pb.GeneratedMessage {

View file

@ -144,6 +144,9 @@ const CapabilityEntry$json = {
{'1': 'module_name', '3': 3, '4': 1, '5': 9, '10': 'moduleName'}, {'1': 'module_name', '3': 3, '4': 1, '5': 9, '10': 'moduleName'},
{'1': 'module_version', '3': 4, '4': 1, '5': 9, '10': 'moduleVersion'}, {'1': 'module_version', '3': 4, '4': 1, '5': 9, '10': 'moduleVersion'},
{'1': 'kind', '3': 5, '4': 1, '5': 9, '10': 'kind'}, {'1': 'kind', '3': 5, '4': 1, '5': 9, '10': 'kind'},
{'1': 'provider', '3': 6, '4': 1, '5': 9, '10': 'provider'},
{'1': 'source_kind', '3': 7, '4': 1, '5': 9, '10': 'sourceKind'},
{'1': 'version_advisory', '3': 8, '4': 1, '5': 8, '10': 'versionAdvisory'},
], ],
}; };
@ -152,7 +155,8 @@ final $typed_data.Uint8List capabilityEntryDescriptor = $convert.base64Decode(
'Cg9DYXBhYmlsaXR5RW50cnkSHgoKY2FwYWJpbGl0eRgBIAEoCVIKY2FwYWJpbGl0eRIYCgd2ZX' 'Cg9DYXBhYmlsaXR5RW50cnkSHgoKY2FwYWJpbGl0eRgBIAEoCVIKY2FwYWJpbGl0eRIYCgd2ZX'
'JzaW9uGAIgASgJUgd2ZXJzaW9uEh8KC21vZHVsZV9uYW1lGAMgASgJUgptb2R1bGVOYW1lEiUK' 'JzaW9uGAIgASgJUgd2ZXJzaW9uEh8KC21vZHVsZV9uYW1lGAMgASgJUgptb2R1bGVOYW1lEiUK'
'Dm1vZHVsZV92ZXJzaW9uGAQgASgJUg1tb2R1bGVWZXJzaW9uEhIKBGtpbmQYBSABKAlSBGtpbm' 'Dm1vZHVsZV92ZXJzaW9uGAQgASgJUg1tb2R1bGVWZXJzaW9uEhIKBGtpbmQYBSABKAlSBGtpbm'
'Q='); 'QSGgoIcHJvdmlkZXIYBiABKAlSCHByb3ZpZGVyEh8KC3NvdXJjZV9raW5kGAcgASgJUgpzb3Vy'
'Y2VLaW5kEikKEHZlcnNpb25fYWR2aXNvcnkYCCABKAhSD3ZlcnNpb25BZHZpc29yeQ==');
@$core.Deprecated('Use moduleInfoRequestDescriptor instead') @$core.Deprecated('Use moduleInfoRequestDescriptor instead')
const ModuleInfoRequest$json = { const ModuleInfoRequest$json = {

View file

@ -20,14 +20,19 @@ export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;
export 'struct.pbenum.dart'; export 'struct.pbenum.dart';
/// `Struct` represents a structured data value, consisting of fields /// Represents a JSON object.
/// which map to dynamically typed values. In some languages, `Struct`
/// might be supported by a native representation. For example, in
/// scripting languages like JS a struct is represented as an
/// object. The details of that representation are described together
/// with the proto support for the language.
/// ///
/// The JSON representation for `Struct` is JSON object. /// An unordered key-value map, intending to perfectly capture the semantics of a
/// JSON object. This enables parsing any arbitrary JSON payload as a message
/// field in ProtoJSON format.
///
/// This follows RFC 8259 guidelines for interoperable JSON: notably this type
/// cannot represent large Int64 values or `NaN`/`Infinity` numbers,
/// since the JSON format generally does not support those values in its number
/// type.
///
/// If you do not intend to parse arbitrary JSON into your message, a custom
/// typed message should be preferred instead of using this type.
class Struct extends $pb.GeneratedMessage with $mixin.StructMixin { class Struct extends $pb.GeneratedMessage with $mixin.StructMixin {
factory Struct({ factory Struct({
$core.Iterable<$core.MapEntry<$core.String, Value>>? fields, $core.Iterable<$core.MapEntry<$core.String, Value>>? fields,
@ -77,12 +82,12 @@ enum Value_Kind {
notSet notSet
} }
/// Represents a JSON value.
///
/// `Value` represents a dynamically typed value which can be either /// `Value` represents a dynamically typed value which can be either
/// null, a number, a string, a boolean, a recursive struct value, or a /// null, a number, a string, a boolean, a recursive struct value, or a
/// list of values. A producer of value is expected to set one of these /// list of values. A producer of value is expected to set one of these
/// variants. Absence of any variant indicates an error. /// variants. Absence of any variant is an invalid state.
///
/// The JSON representation for `Value` is JSON value.
class Value extends $pb.GeneratedMessage with $mixin.ValueMixin { class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
factory Value({ factory Value({
NullValue? nullValue, NullValue? nullValue,
@ -155,7 +160,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
Value_Kind whichKind() => _Value_KindByTag[$_whichOneof(0)]!; Value_Kind whichKind() => _Value_KindByTag[$_whichOneof(0)]!;
void clearKind() => $_clearField($_whichOneof(0)); void clearKind() => $_clearField($_whichOneof(0));
/// Represents a null value. /// Represents a JSON `null`.
@$pb.TagNumber(1) @$pb.TagNumber(1)
NullValue get nullValue => $_getN(0); NullValue get nullValue => $_getN(0);
@$pb.TagNumber(1) @$pb.TagNumber(1)
@ -165,7 +170,10 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
@$pb.TagNumber(1) @$pb.TagNumber(1)
void clearNullValue() => $_clearField(1); void clearNullValue() => $_clearField(1);
/// Represents a double value. /// Represents a JSON number. Must not be `NaN`, `Infinity` or
/// `-Infinity`, since those are not supported in JSON. This also cannot
/// represent large Int64 values, since JSON format generally does not
/// support them in its number type.
@$pb.TagNumber(2) @$pb.TagNumber(2)
$core.double get numberValue => $_getN(1); $core.double get numberValue => $_getN(1);
@$pb.TagNumber(2) @$pb.TagNumber(2)
@ -175,7 +183,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
@$pb.TagNumber(2) @$pb.TagNumber(2)
void clearNumberValue() => $_clearField(2); void clearNumberValue() => $_clearField(2);
/// Represents a string value. /// Represents a JSON string.
@$pb.TagNumber(3) @$pb.TagNumber(3)
$core.String get stringValue => $_getSZ(2); $core.String get stringValue => $_getSZ(2);
@$pb.TagNumber(3) @$pb.TagNumber(3)
@ -185,7 +193,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
@$pb.TagNumber(3) @$pb.TagNumber(3)
void clearStringValue() => $_clearField(3); void clearStringValue() => $_clearField(3);
/// Represents a boolean value. /// Represents a JSON boolean (`true` or `false` literal in JSON).
@$pb.TagNumber(4) @$pb.TagNumber(4)
$core.bool get boolValue => $_getBF(3); $core.bool get boolValue => $_getBF(3);
@$pb.TagNumber(4) @$pb.TagNumber(4)
@ -195,7 +203,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
@$pb.TagNumber(4) @$pb.TagNumber(4)
void clearBoolValue() => $_clearField(4); void clearBoolValue() => $_clearField(4);
/// Represents a structured value. /// Represents a JSON object.
@$pb.TagNumber(5) @$pb.TagNumber(5)
Struct get structValue => $_getN(4); Struct get structValue => $_getN(4);
@$pb.TagNumber(5) @$pb.TagNumber(5)
@ -207,7 +215,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
@$pb.TagNumber(5) @$pb.TagNumber(5)
Struct ensureStructValue() => $_ensure(4); Struct ensureStructValue() => $_ensure(4);
/// Represents a repeated `Value`. /// Represents a JSON array.
@$pb.TagNumber(6) @$pb.TagNumber(6)
ListValue get listValue => $_getN(5); ListValue get listValue => $_getN(5);
@$pb.TagNumber(6) @$pb.TagNumber(6)
@ -220,9 +228,7 @@ class Value extends $pb.GeneratedMessage with $mixin.ValueMixin {
ListValue ensureListValue() => $_ensure(5); ListValue ensureListValue() => $_ensure(5);
} }
/// `ListValue` is a wrapper around a repeated field of values. /// Represents a JSON array.
///
/// The JSON representation for `ListValue` is JSON array.
class ListValue extends $pb.GeneratedMessage with $mixin.ListValueMixin { class ListValue extends $pb.GeneratedMessage with $mixin.ListValueMixin {
factory ListValue({ factory ListValue({
$core.Iterable<Value>? values, $core.Iterable<Value>? values,

View file

@ -13,10 +13,15 @@ import 'dart:core' as $core;
import 'package:protobuf/protobuf.dart' as $pb; import 'package:protobuf/protobuf.dart' as $pb;
/// `NullValue` is a singleton enumeration to represent the null value for the /// Represents a JSON `null`.
/// `Value` type union.
/// ///
/// The JSON representation for `NullValue` is JSON `null`. /// `NullValue` is a sentinel, using an enum with only one value to represent
/// the null value for the `Value` type union.
///
/// A field of type `NullValue` with any value other than `0` is considered
/// invalid. Most ProtoJSON serializers will emit a Value with a `null_value` set
/// as a JSON `null` regardless of the integer value, and so will round trip to
/// a `0` value.
class NullValue extends $pb.ProtobufEnum { class NullValue extends $pb.ProtobufEnum {
/// Null value. /// Null value.
static const NullValue NULL_VALUE = NullValue._(0, _omitEnumNames ? '' : 'NULL_VALUE'); static const NullValue NULL_VALUE = NullValue._(0, _omitEnumNames ? '' : 'NULL_VALUE');