fix: preserve monitor unknown and adapt doubao references
Desktop Client Build / Resolve Build Metadata (push) Successful in 32s
Backend CI / Backend (push) Successful in 15m37s
Desktop Client Build / Build Desktop Client (push) Successful in 22m53s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 30s
Desktop Client Build / Resolve Build Metadata (push) Successful in 32s
Backend CI / Backend (push) Successful in 15m37s
Desktop Client Build / Build Desktop Client (push) Successful in 22m53s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 30s
This commit is contained in:
@@ -947,7 +947,7 @@ func (s *DesktopTaskService) Complete(ctx context.Context, client *repository.De
|
||||
return nil, response.ErrUnauthorized(40108, "desktop_client_missing", "desktop client context is required")
|
||||
}
|
||||
|
||||
finalStatus := normalizeDesktopTaskTerminalStatus(req.Status)
|
||||
finalStatus := normalizeDesktopTaskCompletionStatus(req.Status)
|
||||
resultJSON, err := marshalOptionalJSON(req.Payload)
|
||||
if err != nil {
|
||||
return nil, response.ErrBadRequest(40086, "invalid_desktop_task_payload", "payload must be serializable")
|
||||
@@ -1520,7 +1520,7 @@ func scanDesktopTaskRows(rows pgx.Rows) ([]DesktopTaskView, error) {
|
||||
Platform: platform,
|
||||
Kind: kind,
|
||||
Payload: json.RawMessage(payload),
|
||||
Status: normalizeDesktopTaskTerminalStatus(status),
|
||||
Status: normalizeDesktopTaskViewStatus(kind, status),
|
||||
PublishJobStatus: publishJobStatus,
|
||||
ComplianceBlockedRecordID: complianceBlockedRecordID,
|
||||
ComplianceBlockedAt: complianceBlockedAt,
|
||||
@@ -1598,7 +1598,7 @@ func buildDesktopTaskView(task *repository.DesktopTask) DesktopTaskView {
|
||||
Platform: task.Platform,
|
||||
Kind: task.Kind,
|
||||
Payload: json.RawMessage(task.Payload),
|
||||
Status: normalizeDesktopTaskTerminalStatus(task.Status),
|
||||
Status: normalizeDesktopTaskViewStatus(task.Kind, task.Status),
|
||||
DedupKey: task.DedupKey,
|
||||
ActiveAttemptID: activeAttemptID,
|
||||
LeaseExpiresAt: task.LeaseExpiresAt,
|
||||
@@ -1637,6 +1637,22 @@ func normalizeDesktopTaskTerminalStatus(status string) string {
|
||||
}
|
||||
}
|
||||
|
||||
func normalizeDesktopTaskCompletionStatus(status string) string {
|
||||
switch strings.TrimSpace(status) {
|
||||
case "succeeded", "failed", "unknown":
|
||||
return strings.TrimSpace(status)
|
||||
default:
|
||||
return strings.TrimSpace(status)
|
||||
}
|
||||
}
|
||||
|
||||
func normalizeDesktopTaskViewStatus(kind string, status string) string {
|
||||
if strings.TrimSpace(kind) == "publish" {
|
||||
return normalizeDesktopTaskTerminalStatus(status)
|
||||
}
|
||||
return strings.TrimSpace(status)
|
||||
}
|
||||
|
||||
type desktopTaskRecoveryMode string
|
||||
|
||||
const (
|
||||
|
||||
@@ -138,6 +138,25 @@ func TestResolvePublishRecoveryOutcome(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeDesktopTaskCompletionStatusPreservesUnknown(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
if got := normalizeDesktopTaskCompletionStatus("unknown"); got != "unknown" {
|
||||
t.Fatalf("normalizeDesktopTaskCompletionStatus(unknown) = %q, want unknown", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeDesktopTaskViewStatusOnlyMapsPublishUnknownToFailed(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
if got := normalizeDesktopTaskViewStatus("monitor", "unknown"); got != "unknown" {
|
||||
t.Fatalf("monitor unknown view status = %q, want unknown", got)
|
||||
}
|
||||
if got := normalizeDesktopTaskViewStatus("publish", "unknown"); got != "failed" {
|
||||
t.Fatalf("publish unknown view status = %q, want failed", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestIsComplianceInvalidArticleVersionError(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user