When CI fails on main, notification escalates to 🚨 with
"PRODUCTION CI FAILED" header and instructions to verify
tsharps.com is still working.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Telegram notifications now show which test suite was used (light/heavy)
and how many tests were not in that suite (deselected).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When tests fail, ci-runner.sh generates an HTML report with:
- Build metadata (branch, commit, actor, duration)
- Test stats (passed/failed/skipped/errors)
- Failed test table (file + test name)
- Failure detail output
ci-notify.sh sends the HTML as a document attachment alongside
the text notification in the CICD Pipeline topic.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Complete CI system that lives outside TSHARPS branches:
- ci-webhook.py: HTTP server on port 9500, receives Gitea push webhooks
- ci-runner.sh: runs feature manifests, pytest, package checks (read-only)
- ci-notify.sh: sends results to Telegram CICD Pipeline topic (4706)
- ci-config.json: branch→worktree mapping, tokens, timeouts
- README.md: branch model, promotion workflow, switch-back plan
Same tests for ALL branches. No drift. Runner self-monitors for crashes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>