diff --git a/lib/result-codes-release.ts b/lib/result-codes-release.ts index f719deaab..52ae0616a 100644 --- a/lib/result-codes-release.ts +++ b/lib/result-codes-release.ts @@ -150,8 +150,8 @@ export const RELEASE_RESULT_CODES = { }, QUEUE_WAVE_MOVED: { anchor: 'queue-wave-moved', - summary: 'a constituent is no longer open at its pinned head, or the wave branch no longer merges every pin unchanged, so the wave would not land what its record names', - fix: 'rebuild without the moved PR (wave build --wave --drop ) and READY the new wave PR; the moved PR goes back to its owner', + summary: 'a constituent is no longer open at its pinned head or targets another branch, the wave branch no longer merges every pin unchanged, the wave was rebuilt or released, or its wave PR is still open for a drop or release', + fix: 'close the wave PR, rebuild without the moved PR (wave build --wave --drop ) and READY the new wave PR; the moved PR goes back to its owner', }, QUEUE_WAVE_DUPLICATE: { anchor: 'queue-wave-duplicate', diff --git a/lib/ship-queue-wave.ts b/lib/ship-queue-wave.ts index 72686d1cf..f26dabc72 100644 --- a/lib/ship-queue-wave.ts +++ b/lib/ship-queue-wave.ts @@ -431,7 +431,7 @@ function dropFrom(env: TrainEnv, w: WaveRecord, o: WaveBuildOptions): TrainOut { if (carrier) return outRefused(fail('QUEUE_WAVE_DEPENDENT', `#${carrier.pr}'s pin contains #${dropped.pr}'s pin, so dropping #${dropped.pr} would still land its code`), [], `drop #${carrier.pr} too, or keep #${dropped.pr}`, wavePath(w.nonce)); if (rest.length < o.min) return release(env, w, [`DROP: #${dropped.pr} from ${w.nonce} leaves ${rest.length} PR(s), under the wave minimum ${o.min}`], o.dryRun); const out = newWave(env, { ...o, area: w.area }, w, rest.map(c => ({ pr: c.pr, sha: c.head }))); - out.lines.unshift(`DROP: #${dropped.pr} from ${w.nonce}; the rebuilt wave gets a new branch and PR, and the integrator closes ${w.branch}'s PR`); + out.lines.unshift(`DROP: #${dropped.pr} from ${w.nonce}; the rebuilt wave gets a new branch and PR (${w.branch}'s PR is already closed)`); return out; }