Go service for XinFin/XDC node stall incidents. Handles Slack alerts and workflows, pulls peer logs from Loki, generates RCA with Claude, and publishes write-ups to Confluence.
cp .env.example .env
# fill in Slack, Confluence, Loki, and optional Claude settings
docker compose up -d --buildService listens on http://localhost:8080 (or AIOPS_PORT).
| Path | Purpose |
|---|---|
cmd/app |
Entrypoint |
internal/ |
Slack, Loki, Confluence, RCA, store |
schema/ |
Postgres SQL (applied on first boot) |
docker-compose.yaml |
App + Postgres |
- Secrets live in
.env(gitignored). Commit only.env.example. - Clone or mount node repos under
REPOS_HOST_DIR(default../repositories) for git-diff / Claude CLI context. - Claude can run via API (
CLAUDE_PROVIDER=api) or host CLI (cli); CLI mounts are configured in.env.