Ctrl K
ComunidadGuías…

wrangler.jsonc

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
	"$schema": "./node_modules/wrangler/config-schema.json",
	"name": "chickpea",
	"workers_dev": true,
	"preview_urls": false,
	"assets": {
		"binding": "ASSETS",
		"html_handling": "none",
		"not_found_handling": "none"
	},
	"compatibility_date": "2026-08-20",
	"compatibility_flags": [
		"nodejs_compat",
		"global_fetch_strictly_public"
	],
	// Without this, a fresh install captures NO logs at all — the sanitized
	// Slack error is then the only trace of a provider failure (learned the
	// hard way: the raw error behind a keyless-anthropic 401 was unrecoverable).
	"observability": {
		"enabled": true,
		// Flue spans are registered explicitly in the Cloudflare-only entry with
		// `content: false`; platform tracing exports operational metadata only.
		"traces": {
			"enabled": true
		}
	},
	"ai": {
		"binding": "AI"
	},
	"version_metadata": {
		"binding": "CF_VERSION_METADATA"
	},
	"triggers": {
		"crons": [
			"* * * * *"
		]
	},
	// App-owned state Durable Object (src/cloudflare.ts): one singleton instance
	// hosts config agents/assignments, thread snapshots, claims, the thread
	// registry, and operator settings on the Cloudflare target. The optional
	// Sandbox binding/container is added only by the explicit Sandbox build
	// profile; its v3 migration remains here so the same Worker can add or
	// remove that deployment capability without changing Durable Object history.
	"durable_objects": {
		"bindings": [
			{
				"name": "TAG_STATE",
				"class_name": "TagStateStore"
			},
			{
				"name": "SLACK_GATEWAY_SESSION",
				"class_name": "SlackGatewaySession"
			},
			{
				"name": "SLACK_THREAD_RUNNER",
				"class_name": "SlackThreadRunner"
			}
		]
	},
	"d1_databases": [
		{
			"binding": "AUTH_DB",
			"database_name": "chickpea-auth-db",
			"database_id": "",
			"migrations_dir": "migrations/better-auth"
		}
	],
	// v6 is the deliberate prelaunch Flue 2 reset. It permanently deletes only
	// the four beta Flue namespaces and creates fresh v2 agents. TagStateStore,
	// Sandbox, ContainerProxy, and all other app-owned state are preserved.
	"migrations": [
		{
			"tag": "v1",
			"new_sqlite_classes": [
				"FlueRegistry",
				"FlueSlackThreadAgent"
			]
		},
		{
			"tag": "v2",
			"new_sqlite_classes": [
				"TagStateStore"
			]
		},
		{
			"tag": "v3",
			"new_sqlite_classes": [
				"Sandbox"
			]
		},
		{
			"tag": "v4",
			"new_sqlite_classes": [
				"FlueRoutineWorkflow"
			]
		},
		{
			"tag": "v5",
			"new_sqlite_classes": [
				"FlueRoutineIntentAgent"
			]
		},
		{
			"tag": "v6",
			"new_sqlite_classes": [
				"FlueChickpeaSlackV2Agent",
				"FlueChickpeaRoutineIntentV2Agent",
				"FlueChickpeaRoutineExecutionV2Agent"
			],
			"deleted_classes": [
				"FlueRegistry",
				"FlueSlackThreadAgent",
				"FlueRoutineIntentAgent",
				"FlueRoutineWorkflow"
			]
		},
		{
			// Immutable history for Workers that ran the retired password guard.
			"tag": "v7",
			"new_sqlite_classes": [
				"AuthGuard"
			]
		},
		{
			// Slack-only Better Auth moved its authority to AUTH_DB; retire only
			// the obsolete password/throttle Durable Object state.
			"tag": "v8",
			"deleted_classes": [
				"AuthGuard"
			]
		},
		{
			"tag": "v9",
			"new_sqlite_classes": [
				"SlackGatewaySession"
			]
		},
		{
			// Coding workers (src/agents/coding-worker.ts): one instance per
			// coding workspace and binding, driven by `workspace_task`.
			"tag": "v10",
			"new_sqlite_classes": [
				"FlueChickpeaCodingWorkerV1Agent"
			]
		},
		{
			// Per-thread Slack turn runners (src/slack/thread-runner.ts): one
			// instance per Slack thread key. Ships inactive; nothing addresses the
			// class until a later release moves turn execution onto it. Cloudflare
			// cannot roll a Worker back across this class lifecycle change.
			"tag": "v11",
			"new_sqlite_classes": [
				"SlackThreadRunner"
			]
		},
		{
			// Test runs (src/agents/test-turn.ts): one instance per run, erased
			// when it settles. Chickpea Cloud splices its own cloud-v1 after
			// v11, so a hosted build applies this after cloud-v1.
			"tag": "v12",
			"new_sqlite_classes": [
				"FlueChickpeaTestTurnV1Agent"
			]
		}
	]
}