mirror of
https://github.com/tiennm99/claude-status-webhook.git
synced 2026-04-17 15:20:37 +00:00
- Statuspage webhook always returns 200 to prevent subscriber removal - Fix parseKvKey returning string chatId instead of number - Queue consumer retries on Telegram 5xx instead of acking (prevents message loss) - Fix observability top-level enabled flag (false → true) - Add defensive null checks for webhook payload body - Cache Bot instance per isolate to avoid middleware rebuild per request - Add vitest + @cloudflare/vitest-pool-workers with 31 tests - Document DLQ and KV sharding as declined features
46 lines
841 B
JSON
46 lines
841 B
JSON
{
|
|
"name": "claude-status-webhook",
|
|
"main": "src/index.js",
|
|
"compatibility_date": "2024-12-01",
|
|
"kv_namespaces": [
|
|
{
|
|
"binding": "claude_status",
|
|
"id": "d026d63d84bf49268364deb27d3dc28a",
|
|
"remote": true
|
|
}
|
|
],
|
|
"queues": {
|
|
"producers": [
|
|
{
|
|
"binding": "claude-status",
|
|
"queue": "claude-status"
|
|
}
|
|
],
|
|
"consumers": [
|
|
{
|
|
"queue": "claude-status",
|
|
"max_batch_size": 30,
|
|
"max_retries": 3
|
|
}
|
|
]
|
|
},
|
|
"observability": {
|
|
"enabled": true,
|
|
"head_sampling_rate": 1,
|
|
"logs": {
|
|
"enabled": true,
|
|
"head_sampling_rate": 1,
|
|
"persist": true,
|
|
"invocation_logs": true
|
|
},
|
|
"traces": {
|
|
"enabled": true,
|
|
"persist": true,
|
|
"head_sampling_rate": 1
|
|
}
|
|
}
|
|
// Secrets (set via `wrangler secret put`):
|
|
// BOT_TOKEN - Telegram bot token
|
|
// WEBHOOK_SECRET - Statuspage webhook URL secret
|
|
}
|