Spec-driven MVC foundation
Webhook ingress, queued processing, summaries, and Telegram delivery.
This project follows the PDF architecture: GitHub receives a fast 2xx response, work is queued into an in-memory channel, summaries are cached in SQL Server, and Telegram replies can fan out into follow-up detail messages.
POST
/webhooks/github
POST /webhooks/telegram
GET /health
MVP runtime
- Queue capacity: 200
- Persistence: SQL Server
- Summarizer: heuristic fallback
- Idempotency: X-GitHub-Delivery
Configuration
GitHub webhook secret
Configured
GitHub API token
Configured
Telegram bot token
Configured
Telegram target chat
Configured
Processing flow
- Validate GitHub HMAC on the raw request body.
- Persist delivery ID for idempotency and replay protection.
- Queue the webhook for background processing.
- Enrich with GitHub REST data when an access token exists.
- Build a bounded change digest and summary snapshot.
- Send a Telegram message with a “More details” callback button.
Recent deliveries
Stored in SQL Server so you can inspect idempotency, failures, and replay behavior.
| Delivery | Event | Repository | Status | Received |
|---|---|---|---|---|
e1d766d6-1f88-11f1-8fa7-b76239e5ee16
|
push | CuscenPTE/TelegramBot | Processed | 2026-03-14 16:33:40 |
86e353de-1f88-11f1-856b-d531a5469949
|
push | CuscenPTE/TelegramBot | Processed | 2026-03-14 16:31:07 |
8c3794e0-1f87-11f1-9839-ca09b4cdc91a
|
push | CuscenPTE/CX.UI | Processed | 2026-03-14 16:24:07 |
95a49786-1f86-11f1-9dc0-ab763ef1d4dc
|
ping | CuscenPTE/CX.UI | Processed | 2026-03-14 16:17:14 |
516d0810-1f85-11f1-8ef2-680e60bee5db
|
push | CuscenPTE/TelegramBot | Processed | 2026-03-14 16:08:09 |
7c91ef90-1f82-11f1-85bd-dc4395475a51
|
push | CuscenPTE/TelegramBot | Processed | 2026-03-14 15:47:53 |
3a8192b0-1f80-11f1-9535-ff18b94fad99
|
push | CuscenPTE/TelegramBot | Processed | 2026-03-14 15:31:44 |
ce7c8354-1f7f-11f1-8044-337b72bf1f2c
An invalid request URI was provided. Either the request URI must be an absolute URI or BaseAddress must be set.
|
push | CuscenPTE/TelegramBot | Failed | 2026-03-14 15:28:42 |
2813133e-1f7f-11f1-8ff9-08b9aa83dd69
An invalid request URI was provided. Either the request URI must be an absolute URI or BaseAddress must be set.
|
push | CuscenPTE/TelegramBot | Failed | 2026-03-14 15:24:03 |
f60e83c0-1f7c-11f1-8d73-ebcb89b27103
|
ping | CuscenPTE/TelegramBot | Processed | 2026-03-14 15:20:21 |