merge: external-system retry policy end-to-end (register row 27) — MaxRetries/RetryDelay now travel artifact→gRPC→site schema→S&F enqueue, CLI --max-retries/--retry-delay-seconds, ArtifactDiff compares them
This commit is contained in:
@@ -506,7 +506,9 @@ public static class SiteCommandDtoMapper
|
||||
AuthType = artifact.AuthType,
|
||||
AuthConfiguration = OrEmpty(artifact.AuthConfiguration),
|
||||
MethodDefinitionsJson = OrEmpty(artifact.MethodDefinitionsJson),
|
||||
TimeoutSeconds = artifact.TimeoutSeconds
|
||||
TimeoutSeconds = artifact.TimeoutSeconds,
|
||||
MaxRetries = artifact.MaxRetries,
|
||||
RetryDelay = Duration.FromTimeSpan(artifact.RetryDelay)
|
||||
};
|
||||
}
|
||||
|
||||
@@ -523,7 +525,9 @@ public static class SiteCommandDtoMapper
|
||||
dto.AuthType,
|
||||
NullIfEmpty(dto.AuthConfiguration),
|
||||
NullIfEmpty(dto.MethodDefinitionsJson),
|
||||
dto.TimeoutSeconds);
|
||||
dto.TimeoutSeconds,
|
||||
dto.MaxRetries,
|
||||
dto.RetryDelay?.ToTimeSpan() ?? TimeSpan.Zero);
|
||||
}
|
||||
|
||||
/// <summary>Projects a <see cref="DatabaseConnectionArtifact"/> onto the wire.</summary>
|
||||
|
||||
@@ -224,6 +224,11 @@ message ExternalSystemArtifactDto {
|
||||
string auth_configuration = 4; // empty string represents null
|
||||
string method_definitions_json = 5; // empty string represents null
|
||||
int32 timeout_seconds = 6;
|
||||
// Store-and-Forward retry policy for this system's cached calls. Additive (fields 7-8);
|
||||
// a pre-existing site decodes them as 0/absent, which is exactly the "unset" value that
|
||||
// makes the engine defaults apply — i.e. the old behaviour.
|
||||
int32 max_retries = 7;
|
||||
google.protobuf.Duration retry_delay = 8;
|
||||
}
|
||||
|
||||
message DatabaseConnectionArtifactDto {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user