fix publish record deletion
Desktop Client Build / Resolve Build Metadata (push) Successful in 26s
Frontend CI / Frontend (push) Successful in 2m47s
Backend CI / Backend (push) Failing after 10m1s
Desktop Client Build / Build Desktop Client (push) Successful in 23m3s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 29s

This commit is contained in:
2026-06-26 21:04:38 +08:00
parent 6780963c28
commit 04769dec78
12 changed files with 259 additions and 53 deletions
@@ -759,6 +759,20 @@ func (s *DesktopTaskService) leaseNextQueuedPublishTask(
AND dt.kind = 'publish'
AND dt.status = 'queued'
AND dt.attempts < $4
AND (
NOT (dt.payload ? 'publish_record_id')
OR EXISTS (
SELECT 1
FROM publish_records pr
WHERE pr.tenant_id = dt.tenant_id
AND pr.id = CASE
WHEN (dt.payload->>'publish_record_id') ~ '^[0-9]+$'
THEN (dt.payload->>'publish_record_id')::bigint
ELSE NULL
END
AND pr.deleted_at IS NULL
)
)
AND EXISTS (
SELECT 1
FROM platform_accounts AS pa
@@ -866,6 +880,21 @@ func leaseQueuedDesktopTaskByIDSQL() string {
AND dt.workspace_id = $2
AND dt.status = 'queued'
AND (dt.kind <> 'publish' OR dt.attempts < $7)
AND (
dt.kind <> 'publish'
OR NOT (dt.payload ? 'publish_record_id')
OR EXISTS (
SELECT 1
FROM publish_records pr
WHERE pr.tenant_id = dt.tenant_id
AND pr.id = CASE
WHEN (dt.payload->>'publish_record_id') ~ '^[0-9]+$'
THEN (dt.payload->>'publish_record_id')::bigint
ELSE NULL
END
AND pr.deleted_at IS NULL
)
)
AND (
dt.kind <> 'publish'
OR EXISTS (