Problem
TemporalTransferTypePayloadConverter rejects converter types with open generic parameters. This prevents generators such as nexgen from registering transfer converters for generic protobuf-backed models.
Proposed behavior
Allow a matching open generic converter declaration:
[TemporalTransferTypeConverter(typeof(ModelTransferTypeConverter<>))]
public sealed class Model<T>
{
}
When serializing a concrete runtime type, or deserializing to a requested closed type, the SDK should:
- Close the converter definition with the model type's generic arguments.
- Apply the existing converter validation to that closed type.
- Instantiate and cache the converter by closed model type.
Initial scope
The first version can require converter and model generic arity and argument order to match. That fully supports generated models.
A later converter-factory API could support hand-authored mappings whose converter generic shape differs from the model.
Problem
TemporalTransferTypePayloadConverterrejects converter types with open generic parameters. This prevents generators such as nexgen from registering transfer converters for generic protobuf-backed models.Proposed behavior
Allow a matching open generic converter declaration:
When serializing a concrete runtime type, or deserializing to a requested closed type, the SDK should:
Initial scope
The first version can require converter and model generic arity and argument order to match. That fully supports generated models.
A later converter-factory API could support hand-authored mappings whose converter generic shape differs from the model.