---
name: dispatch-on-overlap-not-on-merge
description: "Wave sequencing keys on ACTUAL file overlap, not on merge order — during a pipeline stall, dispatch the next wave with deferred shared-file edits instead of parking the builder"
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 650aa13f-e98d-4c25-995f-c75873b0b298
  modified: 2026-07-20T03:42:07.182Z
---

2026-07-20, TEARDOWN-AUTHORITY: doyle held the W3 dispatch behind #36's merge per the standing "next wave dispatches on merge" rule while GitHub was down ~3h — todlando sat parked though W3 (spt-term) overlapped W2 (broker) by only a couple of toml lines. Operator called it out.

**Why:** the sequencing rule exists to avoid conflicts on shared files (traceable-reqs.toml, KNOWN-HAZARDS, ci.yml filters). That is an OVERLAP property, not a merge-order property. Applying it unconditionally is a claim keyed on the wrong thing — the milestone's own central lesson, committed by the gater.

**How to apply:** when the pipeline stalls (CI outage, long gate, held PR), check the next wave's actual file overlap with the in-flight wave. Small/deferrable overlap ⇒ dispatch NOW with constraints: no pushes to the held branch, shared-file edits (REQ activation lines, hazards, ci filters) deferred to a rebase step after the prior wave lands. Builder does reads/design/code meanwhile. Serialize only when overlap is genuinely conflict-y. Related: [[dont-solo-across-role-lines]], [[teardown-authority-progress]].
