Avoid redundant smoke report copying
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"time"
|
||||
|
||||
"gitea.maximumdirect.net/eric/promptkit/internal/domain"
|
||||
"gitea.maximumdirect.net/eric/promptkit/internal/jsonvalue"
|
||||
)
|
||||
|
||||
// SmokeTestKind identifies one built-in diagnostic operation.
|
||||
@@ -294,35 +295,35 @@ func toDomainSmokeTestRequest(request SmokeTestRequest) (domain.SmokeTestRequest
|
||||
}
|
||||
|
||||
func fromDomainSmokeTestReport(report domain.SmokeTestReport) (*SmokeTestReport, error) {
|
||||
owned, err := domain.CloneSmokeTestReport(report)
|
||||
extraParams, err := jsonvalue.CopyMap(report.Target.EffectiveSettings.ExtraParams)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
result := &SmokeTestReport{
|
||||
Kind: SmokeTestKind(owned.Kind),
|
||||
Supported: owned.Supported,
|
||||
Applicable: copySmokeTestBoolPtr(owned.Applicable),
|
||||
Completed: owned.Completed,
|
||||
Reason: SmokeTestReason(owned.Reason),
|
||||
Kind: SmokeTestKind(report.Kind),
|
||||
Supported: report.Supported,
|
||||
Applicable: copySmokeTestBoolPtr(report.Applicable),
|
||||
Completed: report.Completed,
|
||||
Reason: SmokeTestReason(report.Reason),
|
||||
Target: SmokeTestTarget{
|
||||
BackendID: owned.Target.BackendID,
|
||||
ProfileID: owned.Target.ProfileID,
|
||||
PromptID: owned.Target.PromptID,
|
||||
PromptVersion: owned.Target.PromptVersion,
|
||||
DefaultSourceBackendID: owned.Target.DefaultSourceBackendID,
|
||||
SelectionSource: owned.Target.SelectionSource,
|
||||
Endpoint: owned.Target.Endpoint,
|
||||
EffectiveSettings: fromDomainExecutionTarget(owned.Target.EffectiveSettings),
|
||||
SettingsPresence: fromDomainExecutionTargetPresence(owned.Target.SettingsPresence),
|
||||
BackendID: report.Target.BackendID,
|
||||
ProfileID: report.Target.ProfileID,
|
||||
PromptID: report.Target.PromptID,
|
||||
PromptVersion: report.Target.PromptVersion,
|
||||
DefaultSourceBackendID: report.Target.DefaultSourceBackendID,
|
||||
SelectionSource: report.Target.SelectionSource,
|
||||
Endpoint: report.Target.Endpoint,
|
||||
EffectiveSettings: fromDomainExecutionTargetWithOwnedParams(report.Target.EffectiveSettings, extraParams),
|
||||
SettingsPresence: fromDomainExecutionTargetPresence(report.Target.SettingsPresence),
|
||||
},
|
||||
Facts: fromDomainSmokeTestFacts(owned.Facts),
|
||||
Timing: fromDomainSmokeTestTiming(owned.Timing),
|
||||
Usage: fromDomainObservedTokenUsage(owned.Usage),
|
||||
Failure: ExecutionFailureKind(owned.Failure),
|
||||
Facts: fromDomainSmokeTestFacts(report.Facts),
|
||||
Timing: fromDomainSmokeTestTiming(report.Timing),
|
||||
Usage: fromDomainObservedTokenUsage(report.Usage),
|
||||
Failure: ExecutionFailureKind(report.Failure),
|
||||
}
|
||||
if owned.Attempts != nil {
|
||||
result.Attempts = make([]SmokeTestAttempt, len(owned.Attempts))
|
||||
for index, attempt := range owned.Attempts {
|
||||
if report.Attempts != nil {
|
||||
result.Attempts = make([]SmokeTestAttempt, len(report.Attempts))
|
||||
for index, attempt := range report.Attempts {
|
||||
result.Attempts[index] = SmokeTestAttempt{
|
||||
Dispatched: attempt.Dispatched,
|
||||
InitialEndpoint: attempt.InitialEndpoint,
|
||||
|
||||
Reference in New Issue
Block a user