diff --git a/backend/src/services/GiteaService.ts b/backend/src/services/GiteaService.ts index 0087009..6314c79 100644 --- a/backend/src/services/GiteaService.ts +++ b/backend/src/services/GiteaService.ts @@ -391,19 +391,24 @@ class GiteaService { try { const sha = await this.commitEndpointFiles(ep, cfg.prod_branch || 'main', `Sync: ${ep.name}`); // Mark published version as synced - if (sha && ep.published_version_id) { - await mainPool.query( - 'UPDATE endpoint_versions SET gitea_commit_sha = $1 WHERE id = $2', - [sha, ep.published_version_id] - ); - } else if (sha) { - // No published version yet — mark the latest version - await mainPool.query( - `UPDATE endpoint_versions SET gitea_commit_sha = $1 - WHERE endpoint_id = $2 AND gitea_commit_sha IS NULL - ORDER BY version_number DESC LIMIT 1`, - [sha, ep.id] - ); + if (sha) { + const versionId = ep.published_version_id; + if (versionId) { + await mainPool.query( + 'UPDATE endpoint_versions SET gitea_commit_sha = $1 WHERE id = $2', + [sha, versionId] + ); + } else { + await mainPool.query( + `UPDATE endpoint_versions SET gitea_commit_sha = $1 + WHERE id = ( + SELECT id FROM endpoint_versions + WHERE endpoint_id = $2 + ORDER BY version_number DESC LIMIT 1 + )`, + [sha, ep.id] + ); + } } synced++; } catch (err: any) {