fix(render): real AE render — pass -comp, fix export insert, ensure exports bucket

Three bugs surfaced bringing up a real After Effects node (verified: AE 2026
claimed + ran, but produced no usable output):

1. aerender got no -comp/-rqindex → "output argument ignored", nothing rendered.
   - Claim now returns comp_name from content.projects.render_aep_comp (e.g. "frfinal")
     via new Store.GetTemplateCompName; threaded through ClaimedJob → runner.Job →
     aerender args (`-comp <name>`, or `-rqindex 1` fallback when unknown).

2. CreateExportForJob INSERT passed render_quality as a bare param into an enum
   column → 500 ("output-upload-url HTTP 500"), so completed renders had no export.
   - Cast $8::render.render_quality (+ explicit casts for file_type/create_type enums).

3. flatrender-exports bucket didn't exist → uploads would fail anyway.
   - render-svc now MakeBucket(exports, templates) idempotently at startup.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
soroush.asadi
2026-06-05 22:40:20 +03:30
parent d8d0f6c363
commit 9d499a89de
7 changed files with 51 additions and 5 deletions
@@ -289,6 +289,9 @@ func (h *InternalHandler) Claim(c *gin.Context) {
}
}
// Composition to render (-comp). Non-fatal: empty → node uses the render queue.
compName, _ := h.store.GetTemplateCompName(c.Request.Context(), job.OriginalProjectID)
c.JSON(http.StatusOK, models.ClaimedJob{
JobID: job.ID,
SavedProjectID: job.SavedProjectID,
@@ -300,6 +303,7 @@ func (h *InternalHandler) Claim(c *gin.Context) {
AEPDownloadURL: aepURL,
IsBundle: isBundle,
BundleMD5: bundleMD5,
CompName: compName,
})
}