- Sanitize AI responses by replacing BLIGHT: with BLIGHT: to prevent
the service's own commits from triggering another processing cycle
- Pass branch (extracted from refs/heads/<branch>) through to Gitea get/update
calls so pushes to non-default branches are read and written correctly
- Commit message now includes the file path: "BLIGHT: process triggers in <path>"
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Gitea's test delivery sends null instead of empty arrays for
added/modified commit fields, causing a TypeError on concatenation.
Also removes temporary debug logging.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Gitea sends X-Gitea-Signature as a raw hex digest with no scheme
prefix, unlike GitHub's sha256=<digest> format. Removed the prefix
parsing that was causing every request to fail validation.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
On each restart, CUE pulls the latest code from origin before
binding to the port, so deployments just require a service restart.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Webhook listener that monitors Gitea repos for BLIGHT: triggers in
markdown files, processes them via Gemini 2.5 Flash-Lite, and writes
results back in-place.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>