fix(dynamic): remove force-dynamic from routes that don't need it (#888)

This commit is contained in:
Waleed Latif
2025-08-05 18:44:02 -07:00
committed by GitHub
parent 94368eb1c2
commit 1b0d304a87
13 changed files with 11 additions and 36 deletions

View File

@@ -6,8 +6,6 @@ import { createLogger } from '@/lib/logs/console/logger'
import { db } from '@/db'
import { account, user } from '@/db/schema'
export const dynamic = 'force-dynamic'
const logger = createLogger('OAuthConnectionsAPI')
interface GoogleIdToken {

View File

@@ -9,8 +9,6 @@ import { member } from '@/db/schema'
const logger = createLogger('UnifiedBillingAPI')
export const dynamic = 'force-dynamic'
/**
* Unified Billing Endpoint
*/

View File

@@ -13,8 +13,6 @@ import {
getContentType,
} from '@/app/api/files/utils'
export const dynamic = 'force-dynamic'
const logger = createLogger('FilesServeAPI')
async function streamToBuffer(readableStream: NodeJS.ReadableStream): Promise<Buffer> {

View File

@@ -2,9 +2,6 @@ import { and, eq } from 'drizzle-orm'
import { type NextRequest, NextResponse } from 'next/server'
import { getSession } from '@/lib/auth'
import { createLogger } from '@/lib/logs/console/logger'
export const dynamic = 'force-dynamic'
import { getUserEntityPermissions } from '@/lib/permissions/utils'
import { db } from '@/db'
import { workflow, workflowFolder } from '@/db/schema'

View File

@@ -8,8 +8,6 @@ import { workflowFolder } from '@/db/schema'
const logger = createLogger('FoldersAPI')
export const dynamic = 'force-dynamic'
// GET - Fetch folders for a workspace
export async function GET(request: NextRequest) {
try {

View File

@@ -41,7 +41,6 @@ function extractBlockExecutionsFromTraceSpans(traceSpans: any[]): any[] {
return blockExecutions
}
export const dynamic = 'force-dynamic'
export const revalidate = 0
const QueryParamsSchema = z.object({

View File

@@ -7,9 +7,6 @@ import {
updateOrganizationSeats,
} from '@/lib/billing/validation/seat-management'
import { createLogger } from '@/lib/logs/console/logger'
export const dynamic = 'force-dynamic'
import { db } from '@/db'
import { member, organization } from '@/db/schema'

View File

@@ -7,8 +7,6 @@ import { member, permissions, user, workspace } from '@/db/schema'
const logger = createLogger('OrganizationWorkspacesAPI')
export const dynamic = 'force-dynamic'
/**
* GET /api/organizations/[id]/workspaces
* Get workspaces related to the organization with optional filtering

View File

@@ -7,7 +7,6 @@ import { templates } from '@/db/schema'
const logger = createLogger('TemplateByIdAPI')
export const dynamic = 'force-dynamic'
export const revalidate = 0
// GET /api/templates/[id] - Retrieve a single template by ID

View File

@@ -9,7 +9,6 @@ import { templateStars, templates, workflow } from '@/db/schema'
const logger = createLogger('TemplatesAPI')
export const dynamic = 'force-dynamic'
export const revalidate = 0
// Function to sanitize sensitive data from workflow state

View File

@@ -4,9 +4,6 @@ import { NextResponse } from 'next/server'
import { z } from 'zod'
import { getSession } from '@/lib/auth'
import { createLogger } from '@/lib/logs/console/logger'
export const dynamic = 'force-dynamic'
import { db } from '@/db'
import { settings } from '@/db/schema'

View File

@@ -3,9 +3,6 @@ import { and, desc, eq, isNull } from 'drizzle-orm'
import { NextResponse } from 'next/server'
import { getSession } from '@/lib/auth'
import { createLogger } from '@/lib/logs/console/logger'
export const dynamic = 'force-dynamic'
import { db } from '@/db'
import { permissions, workflow, workflowBlocks, workspace } from '@/db/schema'

View File

@@ -21,10 +21,10 @@ app:
# Production URLs (REQUIRED - update with your actual domain names)
env:
NEXT_PUBLIC_APP_URL: "https://simstudio.acme.com"
BETTER_AUTH_URL: "https://simstudio.acme.com"
SOCKET_SERVER_URL: "https://simstudio-ws.acme.com"
NEXT_PUBLIC_SOCKET_URL: "https://simstudio-ws.acme.com"
NEXT_PUBLIC_APP_URL: "https://sim.acme.ai"
BETTER_AUTH_URL: "https://sim.acme.ai"
SOCKET_SERVER_URL: "https://sim-ws.acme.ai"
NEXT_PUBLIC_SOCKET_URL: "https://sim-ws.acme.ai"
# Security settings (REQUIRED - replace with your own secure secrets)
BETTER_AUTH_SECRET: "your-production-auth-secret-here"
@@ -49,11 +49,11 @@ realtime:
cpu: "500m"
env:
NEXT_PUBLIC_APP_URL: "https://simstudio.acme.com"
BETTER_AUTH_URL: "https://simstudio.acme.com"
NEXT_PUBLIC_SOCKET_URL: "https://simstudio-ws.acme.com"
NEXT_PUBLIC_APP_URL: "https://sim.acme.ai"
BETTER_AUTH_URL: "https://sim.acme.ai"
NEXT_PUBLIC_SOCKET_URL: "https://sim-ws.acme.ai"
BETTER_AUTH_SECRET: "your-production-auth-secret-here"
ALLOWED_ORIGINS: "https://simstudio.acme.com"
ALLOWED_ORIGINS: "https://sim.acme.ai"
# Database migrations
migrations:
@@ -118,14 +118,14 @@ ingress:
# Main application
app:
host: simstudio.acme.com
host: sim.acme.ai
paths:
- path: /
pathType: Prefix
# Realtime service
realtime:
host: simstudio-ws.acme.com
host: sim-ws.acme.ai
paths:
- path: /
pathType: Prefix
@@ -133,7 +133,7 @@ ingress:
# TLS configuration
tls:
enabled: true
secretName: simstudio-tls-secret
secretName: sim-tls-secret
# Horizontal Pod Autoscaler (automatically scales pods based on CPU/memory usage)
autoscaling: