You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
for the 56 github event+action notification combinations, i setup rules for fields to exclude that arent needed for that event, cutting the data down by 83% (in total github has sent us 3.6gb of data in event notifications, this brings that down to 614mb) making it much easier to look at/work with and pass round.
Copy file name to clipboardExpand all lines: CLAUDE.md
+23-29Lines changed: 23 additions & 29 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# GitHub Webhooks RocketChat/Teams Announcer
2
2
3
-
PHP webhook receiver (`web/github.php`) that validates GitHub event signatures, routes by event type, logs to `log/`, and POSTs to Rocket Chat + Microsoft Teams.
3
+
PHP webhook receiver (`web/github.php`) that validates GitHub event signatures, builds chat-formatted notifications, and enqueues them to Redis (with direct Power Automate POST fallback) for RocketChat + Microsoft Teams delivery.
-`$Where` maps to `$chatChannels['rocketchat'][$Where]` and `$chatChannels['teams'][$Where]`
52
-
- Pre-switch sets `$channelName = 'notifications'` (or `'int-dev-announce'` for `sugarcraft/*` and `detain/scoop-emulators` / `detain/detain` / `detain/sugarcraft`); pass it as `$Where`
53
-
- Pre-switch defaults: `$useRC = false`, `$useTeams = true` — set `$useRC = true` per-case to enable Rocket Chat
54
-
- Teams payload wraps `$Payload['text']` in `['type' => 'message', 'message' => ...]`
55
-
- Always set `$useRC`/`$useTeams` flags per-case; some repos skip Teams (see `issues` case)
49
+
`src/NotificationQueue.php` enqueues a JSON envelope to Redis via `LPUSH` when `NOTIF_QUEUE_ENABLED=true` (default); otherwise it POSTs directly to the Power Automate `fallback_webhook_url`.
Read `CALIBER_LEARNINGS.md` for patterns and anti-patterns learned from previous sessions.
94
93
These are auto-extracted from real tool usage — treat them as project-specific rules.
95
94
96
-
<!-- caliber:managed:model-config -->
97
95
## Model Configuration
98
96
99
97
Recommended default: `claude-sonnet-4-6` with high effort (stronger reasoning; higher cost and latency than smaller models).
100
98
Smaller/faster models trade quality for speed and cost — pick what fits the task.
101
99
Pin your choice (`/model` in Claude Code, or `CALIBER_MODEL` when using Caliber with an API provider) so upstream default changes do not silently change behavior.
102
100
103
-
<!-- /caliber:managed:model-config -->
104
-
105
-
<!-- caliber:managed:sync -->
106
101
## Context Sync
107
102
108
103
This project uses [Caliber](https://github.com/caliber-ai-org/ai-setup) to keep AI agent configs in sync across Claude Code, Cursor, Copilot, and Codex.
109
104
Configs update automatically before each commit via `caliber refresh`.
110
105
If the pre-commit hook is not set up, run `/setup-caliber` to configure everything automatically.
0 commit comments