From b0e6304e07450e298dc5f030b4bb9251223c2390 Mon Sep 17 00:00:00 2001 From: Oleg Proskurin Date: Fri, 26 Dec 2025 01:10:14 +0700 Subject: [PATCH] fix: urls and storage structure --- apps/api-service/src/routes/cdn.ts | 2 ++ apps/api-service/src/routes/upload.ts | 4 ++-- apps/api-service/src/routes/v1/generations.ts | 4 ++-- apps/api-service/src/routes/v1/live.ts | 4 ++++ apps/api-service/src/services/core/GenerationService.ts | 2 +- 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/apps/api-service/src/routes/cdn.ts b/apps/api-service/src/routes/cdn.ts index 4a7c52c..65f737c 100644 --- a/apps/api-service/src/routes/cdn.ts +++ b/apps/api-service/src/routes/cdn.ts @@ -422,6 +422,8 @@ cdnRouter.get( const generation = await genService.create({ projectId: project.id, apiKeyId: null as unknown as string, // System generation for live URLs + organizationSlug: orgSlug, + projectSlug: projectSlug, prompt, aspectRatio: (aspectRatio as string) || GENERATION_LIMITS.DEFAULT_ASPECT_RATIO, autoEnhance: normalizedAutoEnhance, diff --git a/apps/api-service/src/routes/upload.ts b/apps/api-service/src/routes/upload.ts index 031e766..8210fc6 100644 --- a/apps/api-service/src/routes/upload.ts +++ b/apps/api-service/src/routes/upload.ts @@ -40,8 +40,8 @@ uploadRouter.post( } // Extract org/project slugs from validated API key - const orgSlug = req.apiKey?.organizationSlug || process.env.DEFAULT_ORG_SLUG || 'default'; - const projectSlug = req.apiKey?.projectSlug || process.env.DEFAULT_PROJECT_SLUG || 'main'; // Guaranteed by requireProjectKey middleware + const orgSlug = req.apiKey?.organizationSlug || process.env['DEFAULT_ORG_SLUG'] || 'default'; + const projectSlug = req.apiKey?.projectSlug || process.env['DEFAULT_PROJECT_SLUG'] || 'main'; // Guaranteed by requireProjectKey middleware console.log( `[${timestamp}] [${requestId}] Starting file upload for org:${orgSlug}, project:${projectSlug}`, diff --git a/apps/api-service/src/routes/v1/generations.ts b/apps/api-service/src/routes/v1/generations.ts index 4f9fd0f..b6a32c7 100644 --- a/apps/api-service/src/routes/v1/generations.ts +++ b/apps/api-service/src/routes/v1/generations.ts @@ -114,8 +114,8 @@ generationsRouter.post( const projectId = req.apiKey.projectId; const apiKeyId = req.apiKey.id; - const organizationSlug = req.apiKey.organizationSlug || process.env.DEFAULT_ORG_SLUG || 'default'; - const projectSlug = req.apiKey.projectSlug || process.env.DEFAULT_PROJECT_SLUG || 'main'; + const organizationSlug = req.apiKey.organizationSlug || process.env['DEFAULT_ORG_SLUG'] || 'default'; + const projectSlug = req.apiKey.projectSlug || process.env['DEFAULT_PROJECT_SLUG'] || 'main'; const generation = await service.create({ projectId, diff --git a/apps/api-service/src/routes/v1/live.ts b/apps/api-service/src/routes/v1/live.ts index 36fd7eb..9c1474c 100644 --- a/apps/api-service/src/routes/v1/live.ts +++ b/apps/api-service/src/routes/v1/live.ts @@ -65,6 +65,8 @@ liveRouter.get( const projectId = req.apiKey.projectId; const apiKeyId = req.apiKey.id; + const organizationSlug = req.apiKey.organizationSlug || process.env['DEFAULT_ORG_SLUG'] || 'default'; + const projectSlug = req.apiKey.projectSlug || process.env['DEFAULT_PROJECT_SLUG'] || 'main'; try { // Compute prompt hash for cache lookup @@ -122,6 +124,8 @@ liveRouter.get( const generation = await genService.create({ projectId, apiKeyId, + organizationSlug, + projectSlug, prompt, aspectRatio: (aspectRatio as string) || GENERATION_LIMITS.DEFAULT_ASPECT_RATIO, requestId: req.requestId, diff --git a/apps/api-service/src/services/core/GenerationService.ts b/apps/api-service/src/services/core/GenerationService.ts index d01ec32..5bee6b5 100644 --- a/apps/api-service/src/services/core/GenerationService.ts +++ b/apps/api-service/src/services/core/GenerationService.ts @@ -1,7 +1,7 @@ import { randomUUID } from 'crypto'; import { eq, desc, count, and, isNull, inArray } from 'drizzle-orm'; import { db } from '@/db'; -import { generations, flows, images, projects, organizations } from '@banatie/database'; +import { generations, flows, images, projects } from '@banatie/database'; import type { Generation, NewGeneration,