Request
@iduartgomez asked (in the freenet-dev River room) for bot announcements like the team had in Matrix — specifically main CI failures and nightly results — "for visibility and discipline", plus PR merges. @sanity approved proceeding.
Plan
A shared composite action (.github/actions/river-dev-notify) posts to the private freenet-dev room via riverctl, wired into:
ci.yml — new job that fires only on push to main when CI fails (the merge queue already gates PRs, so a failure here means main itself is red).
simulation-nightly.yml — mirror the existing nightly-failure notification into the dev room.
river_pr_merge_notify.yml — mirror the PR-merge notification into the dev room.
The existing public official-room notifications are left in place (this adds the dev room alongside them).
Prerequisites (done)
PR to follow.
[AI-assisted - Claude]
Request
@iduartgomez asked (in the freenet-dev River room) for bot announcements like the team had in Matrix — specifically main CI failures and nightly results — "for visibility and discipline", plus PR merges. @sanity approved proceeding.
Plan
A shared composite action (
.github/actions/river-dev-notify) posts to the private freenet-dev room viariverctl, wired into:ci.yml— new job that fires only onpushtomainwhen CI fails (the merge queue already gates PRs, so a failure here means main itself is red).simulation-nightly.yml— mirror the existing nightly-failure notification into the dev room.river_pr_merge_notify.yml— mirror the PR-merge notification into the dev room.The existing public official-room notifications are left in place (this adds the dev room alongside them).
Prerequisites (done)
riverctl0.1.70 publishes private-room message sending (feat(cli): send encrypted messages to private rooms river#350) — earlier versions can only post to public rooms.RIVER_DEV_ROOM_IDandRIVER_DEV_BOT_CONFIGconfigured (reusingRIVER_GATEWAY_URL).PR to follow.
[AI-assisted - Claude]