Files
fusion/.changeset/github-app-badge-webhooks.md
gsxdsm a75b743808 feat(KB-335): rename environment variables from KB_* to FUSION_*
- Rename all KB_* environment variables to FUSION_* prefix across CLI and dashboard
- Update CLI runtime files (native-patch.ts) and build configuration
- Update dashboard server, badge-pubsub, GitHub webhooks, and terminal service
- Update test files to use new FUSION_API_KEY and related env vars
- Update documentation in README, AGENTS.md, STANDALONE.md, and dashboard README
- Update changeset files with new environment variable names
2026-03-31 17:03:23 -07:00

27 lines
1.0 KiB
Markdown

---
"@gsxdsm/fusion": patch
---
Replace GitHub badge polling with GitHub App webhook ingestion
- Added `POST /api/github/webhooks` endpoint for verified GitHub App webhook delivery
- Webhook signature verification using `X-Hub-Signature-256` header
- Support for `pull_request`, `issues`, and `issue_comment` (on PRs) events
- GitHub App installation token authentication for canonical badge fetches
- Multi-task resource matching by parsed badge URL (supports cross-repo badges)
- Idempotent freshness updates without duplicate websocket broadcasts
- Retained 5-minute REST refresh endpoints as fallback path
- Removed live `/api/ws` dependency on `GitHubPollingService` lifecycle
**Configuration:**
- `FUSION_GITHUB_APP_ID` - GitHub App ID
- `FUSION_GITHUB_APP_PRIVATE_KEY` or `FUSION_GITHUB_APP_PRIVATE_KEY_PATH` - PEM private key
- `FUSION_GITHUB_WEBHOOK_SECRET` - Webhook secret for signature verification
**Required GitHub App Permissions:**
- Metadata: Read
- Pull requests: Read
- Issues: Read
**Webhook Events:** `pull_request`, `issues`, `issue_comment`