348 lines
10 KiB
JSON
348 lines
10 KiB
JSON
{
|
|
"$schema": "./node_modules/wrangler/config-schema.json",
|
|
"name": "autumn-server",
|
|
"main": "src/index.ts",
|
|
"compatibility_date": "2026-06-17",
|
|
"compatibility_flags": [
|
|
"nodejs_compat"
|
|
],
|
|
"observability": {
|
|
"enabled": true,
|
|
"head_sampling_rate": 1
|
|
},
|
|
"routes": [
|
|
{
|
|
"pattern": "autumn-api.bowong.cc",
|
|
"custom_domain": true
|
|
}
|
|
],
|
|
"triggers": {
|
|
"crons": [
|
|
"* * * * *"
|
|
]
|
|
},
|
|
// Cloudflare Hyperdrive proxies the Postgres connection for the Worker.
|
|
// `env.HYPERDRIVE.connectionString` is passed to postgres.js in initDrizzle.ts.
|
|
// 2026-07-12: migrated prod off AlloyDB (34.21.187.198, PG18) to Volcengine PG17
|
|
// (cp-droll-tide-f46bb1fd). See docs/postgres-database-migration-runbook.md.
|
|
"hyperdrive": [
|
|
{
|
|
"binding": "HYPERDRIVE",
|
|
"id": "18ef808566e64baea3935688555fd6fe"
|
|
}
|
|
],
|
|
"kv_namespaces": [
|
|
{
|
|
"binding": "STRIPE_WEBHOOK_TRACE_KV",
|
|
"id": "bee161b0d50c4fa68bb66afe51a780b6"
|
|
}
|
|
],
|
|
"r2_buckets": [
|
|
{
|
|
"binding": "ADMIN_R2_BUCKET",
|
|
"bucket_name": "autumn-prod-server"
|
|
}
|
|
],
|
|
"send_email": [
|
|
{
|
|
"name": "EMAIL",
|
|
"remote": true
|
|
}
|
|
],
|
|
"ai": {
|
|
"binding": "AI",
|
|
"remote": true
|
|
},
|
|
"analytics_engine_datasets": [
|
|
{
|
|
"binding": "EVENTS_ANALYTICS",
|
|
"dataset": "autumn_events_hot"
|
|
}
|
|
],
|
|
"pipelines": [
|
|
{
|
|
"binding": "EVENTS_ARCHIVE_PIPELINE",
|
|
"stream": "b197b38da53e4ecea3d095c5f54ea820",
|
|
"remote": true
|
|
}
|
|
],
|
|
"queues": {
|
|
"producers": [
|
|
{
|
|
"binding": "JOB_QUEUE",
|
|
"queue": "autumn-prod-jobs"
|
|
},
|
|
{
|
|
"binding": "TRACK_QUEUE",
|
|
"queue": "autumn-prod-track"
|
|
},
|
|
{
|
|
"binding": "TRACK_ASYNC_QUEUE",
|
|
"queue": "autumn-prod-track-async"
|
|
}
|
|
],
|
|
"consumers": [
|
|
{
|
|
"queue": "autumn-prod-jobs",
|
|
"max_batch_size": 10
|
|
},
|
|
{
|
|
"queue": "autumn-prod-track",
|
|
"max_batch_size": 10
|
|
},
|
|
{
|
|
"queue": "autumn-prod-track-async",
|
|
"max_batch_size": 10
|
|
}
|
|
]
|
|
},
|
|
"durable_objects": {
|
|
"bindings": [
|
|
{
|
|
"name": "IDEMPOTENCY_DO",
|
|
"class_name": "IdempotencyDurableObject"
|
|
},
|
|
{
|
|
"name": "LOCK_DO",
|
|
"class_name": "LockDurableObject"
|
|
},
|
|
{
|
|
"name": "RATE_LIMIT_DO",
|
|
"class_name": "RateLimitDurableObject"
|
|
},
|
|
{
|
|
"name": "SCHEDULED_WORKFLOW_DO",
|
|
"class_name": "ScheduledWorkflowDurableObject"
|
|
}
|
|
]
|
|
},
|
|
"migrations": [
|
|
{
|
|
"tag": "scheduled-workflow-v1",
|
|
"new_sqlite_classes": [
|
|
"ScheduledWorkflowDurableObject"
|
|
]
|
|
},
|
|
{
|
|
"tag": "redis-replacement-do-v1",
|
|
"new_sqlite_classes": [
|
|
"IdempotencyDurableObject",
|
|
"LockDurableObject",
|
|
"RateLimitDurableObject"
|
|
]
|
|
}
|
|
],
|
|
"vars": {
|
|
"STRIPE_WEBHOOK_URL": "https://autumn-api.bowong.cc",
|
|
"SERVER_URL": "https://autumn-api.bowong.cc",
|
|
"ANTHROPIC_API_KEY": "sk-ant-peS21Css5BSUPZoMGgILNB5Np2Nmn1oQ",
|
|
"ATMN_OAUTH_CLIENT_IDS": "atmn_oauth_9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"AUTUMN_SECRET_KEY": "v10gyuESyVHQ1_vaL77m1dhAxIUZIs8DETIsnM7IJ00",
|
|
"AUTUMN_TEST_BASE_URL": "http://localhost:8080",
|
|
"AUTUMN_WEBHOOK_SECRET": "FQDtBEatjzOBq_CKWhmGManJ2S0zdZ66yk0DNvMd0VU",
|
|
"AWS_REGION": "us-west-2",
|
|
"AXIOM_ADMIN_TOKEN": "c8rVP3fnDj5GdCGT18dmGjMzUrKUuFEpD0wOxOcahUc",
|
|
"AXIOM_METRICS_DATASET": "autumn-server",
|
|
"AXIOM_ORG_ID": "org_9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"AXIOM_SUCCESS_REQUEST_LOG_SAMPLE_RATE": "0",
|
|
"AXIOM_TOKEN": "4frkVCrowiyhnQqKuFuHsVKDAQOMf0xLtWgmVSu0dws",
|
|
"BETTER_AUTH_SECRET": "twa5IYZ5KXJ1rzxFJ2xOXUgWOsZSjmMd",
|
|
"BETTER_AUTH_URL": "https://autumn-api.bowong.cc",
|
|
"CHAT_SERVER_URL": "http://localhost:3099",
|
|
"CHAT_STATE_SECRET": "bw0TnGqX22pl7REqvACnngXKq4zUhE-L",
|
|
"CLIENT_URL": "https://autumn.bowong.ai",
|
|
"CLOUDFLARE_ANALYTICS_ARCHIVE_ENABLED": "false",
|
|
"CLOUDFLARE_ANALYTICS_DATASET": "autumn_events_hot",
|
|
"CLOUDFLARE_ANALYTICS_HOT_READ_ENABLED": "true",
|
|
"CLOUDFLARE_ANALYTICS_HOT_RETENTION_DAYS": "90",
|
|
"CLOUDFLARE_ANALYTICS_WRITE_ENABLED": "false",
|
|
"CLOUDFLARE_ACCOUNT_ID": "67720b647ff2b55cf37ba3ef9e677083",
|
|
"CLOUDFLARE_API_TOKEN": "dlGquMNiAX-S7SV9pXne7YGfdH_fEgq3TfIGgNcQ",
|
|
"CRON": "false",
|
|
"DATABASE_URL": "postgresql://postgres:7vPR9ADqZxoZr4@cp-droll-tide-f46bb1fd.pg.aidap-global.ap-southeast-1.volces.com/autumn?sslmode=require&channel_binding=require",
|
|
"DISABLE_CORS_CHECK": "true",
|
|
"DISABLE_CRON": "false",
|
|
"DISCORD_FEEDBACK_WEBHOOK": "http://localhost:8080/webhooks/discord-feedback",
|
|
"ECS_CONTAINER_METADATA_URI_V4": "http://localhost:51678/v4/metadata",
|
|
"EMULATE_GOOGLE_URL": "http://localhost:9099",
|
|
"EMAIL_DOMAIN": "email.bowong.cc",
|
|
"ENCRYPTION_IV": "fa324743336b16162df0078ad2e00db7",
|
|
"ENCRYPTION_PASSWORD": "mYG5lElNEpgUXbcuBYfPTmwqNk-bAGtA",
|
|
"ENV_FILE": ".env",
|
|
"FC_GIT_COMMIT_SHA": "9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"GOOGLE_CLIENT_ID": "google-client-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"GOOGLE_CLIENT_SECRET": "WwLfi-nCVpllgCwIuqT5qD9sj3PLqFF-",
|
|
"HATCHET_CLIENT_TOKEN": "kosHZI2AyKsRQMUwYxPX6UxXu58VtZqq",
|
|
"IMAGE_TAG": "local-9546ff0",
|
|
"INFISICAL_CLIENT_ID": "infisical-client-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"INFISICAL_CLIENT_SECRET": "qu0fg5PRhMYPPtI0MsQS9NDLVmeN6L0i",
|
|
"INFISICAL_ENVIRONMENT": "dev",
|
|
"INFISICAL_PROJECT_ID": "infisical-project-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"INTERNAL_MCP_OAUTH_CLIENT_ID": "internal-mcp-client-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"LOCALTUNNEL_RESERVED_KEY": "lt-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"LOOPS_API_KEY": "aPy6VQffB1QW6MPJpsKbFd0wBu6NUhKk",
|
|
"MCP_RESOURCE_URLS": "http://localhost:8080/mcp,http://localhost:3099/mcp",
|
|
"MCP_SERVER_URL": "http://localhost:3099",
|
|
"NGROK_URL": "http://localhost:4040",
|
|
"NODE_ENV": "production",
|
|
"OTEL_SERVICE_NAME": "autumn-server",
|
|
"POSTHOG_API_KEY": "J0F-EqP2xveQtY2DmrfAtriPuKT2tZh4",
|
|
"POSTHOG_HOST": "https://us.i.posthog.com",
|
|
"READY_CHECK_TOKEN": "O5R77JHGjRKBuLquqVCtqzzspX0wByQ7",
|
|
"REVENUECAT_OAUTH_CLIENT_ID": "revenuecat-client-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"REVENUECAT_OAUTH_CLIENT_SECRET": "9Yo_NJob9m6tviExkB_cu_2rdMfjgJL3",
|
|
"SENTRY_DSN": "https://9546ff0bd6ee3d3a551b9f277ea3e181@o0.ingest.sentry.io/0",
|
|
"SERVER_PORT": "8080",
|
|
"SLACK_BOT_SCOPES": "app_mentions:read,assistant:write,channels:history,channels:read,chat:write,groups:history,groups:read,im:history,im:read,im:write,mpim:history,mpim:read,users:read",
|
|
"SLACK_CLIENT_ID": "slack-client-9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"SLACK_REDIRECT_URI": "http://localhost:8080/api/chat/slack/oauth/callback",
|
|
"SLACK_STATE_SECRET": "IUcjC0HMvinaqWcBvtB3Z7j8giGDWGva",
|
|
"STRIPE_LIVE_CLIENT_ID": "ca_live_9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"STRIPE_LIVE_SECRET_KEY": "sk_live_atqKXH-ji67vaqhOX_TypUtSY5WyVBRf",
|
|
"STRIPE_LIVE_WEBHOOK_SECRET": "whsec_lV2YzyjMm1WcxpJIxRstRFiIB4c3EZnV",
|
|
"STRIPE_SANDBOX_CLIENT_ID": "ca_test_9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"STRIPE_SANDBOX_SECRET_KEY": "sk_test_ZkqfCzHwunOTVUiLluRkAxcU3c5x9vzg",
|
|
"STRIPE_SANDBOX_WEBHOOK_SECRET": "whsec_Bp2p2BuYWZBmRfFxhmJGECB382p5TWFt",
|
|
"STRIPE_WEBHOOK_SKIP_VERIFY": "false",
|
|
"SVIX_API_KEY": "sk_svix_IMsy8zrwtFxEuJ5ukq6lnRrODlifyuBb",
|
|
"TEST_FILE_CONCURRENCY": "1",
|
|
"TESTS_ORG_ID": "org_9546ff0bd6ee3d3a551b9f277ea3e1815b2db37d",
|
|
"TINYBIRD_API_URL": "https://api.tinybird.co",
|
|
"TINYBIRD_TOKEN": "NgF7Sqb2H6PqSwFkSAi5g3rLmLuB4GvW",
|
|
"TINYBIRD_US_EAST_API_URL": "https://api.us-east.aws.tinybird.co",
|
|
"TRIGGER_SERVER_SECRET_KEY": "tr_dev_JA4es5bvBMkCdct5F0wjbI0_pxnutXhA",
|
|
"UNIT_TEST_AUTUMN_SECRET_KEY": "am_sk_test_b7EUaxdSr3m0ImxkQEKghp9IGmFNYjd8",
|
|
"USE_DO_IDEMPOTENCY": "true",
|
|
"USE_DO_LOCK": "true",
|
|
"USE_DO_RATE_LIMIT": "true",
|
|
"VITE_FRONTEND_URL": "https://autumn.bowong.ai",
|
|
"WORKER": "true"
|
|
},
|
|
"env": {
|
|
"staging": {
|
|
"name": "autumn-server-staging",
|
|
"hyperdrive": [
|
|
{
|
|
"binding": "HYPERDRIVE",
|
|
"id": "9f952eb0603044d4beb78e634fe503bc"
|
|
}
|
|
],
|
|
"kv_namespaces": [
|
|
{
|
|
"binding": "CACHE_KV",
|
|
"id": "6393771886e14276bdbef903f1b0cd13"
|
|
}
|
|
],
|
|
"r2_buckets": [
|
|
{
|
|
"binding": "ADMIN_R2_BUCKET",
|
|
"bucket_name": "autumn-staging-server"
|
|
}
|
|
],
|
|
"send_email": [
|
|
{
|
|
"name": "EMAIL",
|
|
"remote": true
|
|
}
|
|
],
|
|
"ai": {
|
|
"binding": "AI",
|
|
"remote": true
|
|
},
|
|
"analytics_engine_datasets": [
|
|
{
|
|
"binding": "EVENTS_ANALYTICS",
|
|
"dataset": "autumn_events_hot_staging"
|
|
}
|
|
],
|
|
"pipelines": [
|
|
{
|
|
"binding": "EVENTS_ARCHIVE_PIPELINE",
|
|
"stream": "6af7319fb01742cfaf042318a7ea91ce",
|
|
"remote": true
|
|
}
|
|
],
|
|
"queues": {
|
|
"producers": [
|
|
{
|
|
"binding": "JOB_QUEUE",
|
|
"queue": "autumn-staging-jobs"
|
|
},
|
|
{
|
|
"binding": "TRACK_QUEUE",
|
|
"queue": "autumn-staging-track"
|
|
},
|
|
{
|
|
"binding": "TRACK_ASYNC_QUEUE",
|
|
"queue": "autumn-staging-track-async"
|
|
}
|
|
],
|
|
"consumers": [
|
|
{
|
|
"queue": "autumn-staging-jobs",
|
|
"max_batch_size": 10
|
|
},
|
|
{
|
|
"queue": "autumn-staging-track",
|
|
"max_batch_size": 10
|
|
},
|
|
{
|
|
"queue": "autumn-staging-track-async",
|
|
"max_batch_size": 10
|
|
}
|
|
]
|
|
},
|
|
"durable_objects": {
|
|
"bindings": [
|
|
{
|
|
"name": "IDEMPOTENCY_DO",
|
|
"class_name": "IdempotencyDurableObject"
|
|
},
|
|
{
|
|
"name": "LOCK_DO",
|
|
"class_name": "LockDurableObject"
|
|
},
|
|
{
|
|
"name": "RATE_LIMIT_DO",
|
|
"class_name": "RateLimitDurableObject"
|
|
},
|
|
{
|
|
"name": "SCHEDULED_WORKFLOW_DO",
|
|
"class_name": "ScheduledWorkflowDurableObject"
|
|
}
|
|
]
|
|
},
|
|
"migrations": [
|
|
{
|
|
"tag": "v1",
|
|
"new_sqlite_classes": [
|
|
"IdempotencyDurableObject",
|
|
"LockDurableObject",
|
|
"RateLimitDurableObject"
|
|
]
|
|
},
|
|
{
|
|
"tag": "v2",
|
|
"new_sqlite_classes": [
|
|
"ScheduledWorkflowDurableObject"
|
|
]
|
|
}
|
|
],
|
|
"vars": {
|
|
"CLOUDFLARE_ANALYTICS_ARCHIVE_ENABLED": "false",
|
|
"CLOUDFLARE_ANALYTICS_DATASET": "autumn_events_hot_staging",
|
|
"CLOUDFLARE_ANALYTICS_HOT_READ_ENABLED": "true",
|
|
"CLOUDFLARE_ANALYTICS_HOT_RETENTION_DAYS": "90",
|
|
"CLOUDFLARE_ANALYTICS_WRITE_ENABLED": "false",
|
|
"CLOUDFLARE_ACCOUNT_ID": "67720b647ff2b55cf37ba3ef9e677083",
|
|
"CLOUDFLARE_API_TOKEN": "dlGquMNiAX-S7SV9pXne7YGfdH_fEgq3TfIGgNcQ",
|
|
"EMAIL_DOMAIN": "email.bowong.cc",
|
|
"USE_KV_CACHE": "true",
|
|
"USE_DO_IDEMPOTENCY": "true",
|
|
"USE_DO_LOCK": "true",
|
|
"USE_DO_RATE_LIMIT": "true"
|
|
}
|
|
}
|
|
}
|
|
}
|