Currently, CircleCI Slack notifications are routed to a single channel configured at the project level. For teams working in monorepos — where many services or jobs live within a single project — there's no way to send notifications to the right team's channel based on which job or service actually failed.
The ask: Allow customers to define a mapping from job name (or service name) to a Slack channel, so notifications are automatically routed to the appropriate channel for each job.
Proposed mechanism : Support a YAML configuration file checked into the repo that maps job names to Slack channel IDs. Teams with monorepos could code-generate this file from their internal service registry, keeping it in sync automatically.
For example:
notifications:
slack:
routing:
- job: build-payments-service
channel: C012ABC
- job: build-auth-service
channel: C034DEF
Alternatively, users can dynamically map job names to Slack channels using an API.
Why it matters: Without this, all failure notifications for a large monorepo go to a single shared channel, creating noise for teams that aren't responsible for the failure. This is a meaningful barrier to adoption for engineering orgs with 10+ services in a single repo.