~/ klt.codes
v0.3.2 · Tampa, FL
← all entries
2025-11-12 · 4 min read

There shouldn't be a storm

On rejecting per-change fanout in favor of scheduled reconciliation.

The proposed design was: when a workflow file changes upstream, fan it out to every downstream repo as a PR. Every change. Every repo.

I said: there shouldn’t be a storm.

What I meant: the change frequency of the canonical artifact is much higher than the change frequency at which downstream repos can absorb noise. Per-change fanout treats those frequencies as the same. They aren’t. Reconciliation on a schedule treats them as different — the canonical artifact changes whenever you want, and downstream catches up at whatever cadence the team can stomach.

The pattern translates. Anywhere you have a high-frequency authoritative source and a low-frequency tolerance for downstream noise, scheduled reconciliation beats change-triggered fanout.

This works for now. The better answer is around the corner I’m sure.

cipattern
back to log →