From b94150fcdb485c94530a83a6fad93c91c753460c Mon Sep 17 00:00:00 2001 From: jochen Date: Mon, 26 Oct 2026 12:15:20 +0100 Subject: [PATCH] =?UTF-8?q?gitea:=20the=20merge=20tool=20reads=20a=20carri?= =?UTF-8?q?ed=20verdict's=20line=20as=20judged=20on=20the=20new=20trunk,?= =?UTF-8?q?=20so=20it=20merges=20a=20carried=20verdict=20(ADR=200548=20?= =?UTF-8?q?=C2=A78;=20issue=20568,=20review=20round=201)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/gitea/test/trunk.test.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/gitea/test/trunk.test.ts b/modules/gitea/test/trunk.test.ts index 020af6bd..5df4c788 100644 --- a/modules/gitea/test/trunk.test.ts +++ b/modules/gitea/test/trunk.test.ts @@ -34,6 +34,9 @@ test("both statuses say the head and the trunk commit the verdict judged, first, const [old] = statusesFor({ ...c, trunk: undefined, gate: { verdict: "pass", summary: "every machine composes" } }); assert.equal(old.description, "pass: every machine composes"); assert.equal(trunkNamed(old.description), undefined); + // ADR 0548 ยง8: a carried verdict's line names the head on the new trunk first, so the merge tool merges it on that trunk. + assert.equal(trunkNamed(`pass ${HEAD.slice(0, 12)} on ${MOVED.slice(0, 12)} | carried from ${TRUNK.slice(0, 12)}, mesh-catalog 0123456789ab | unit 0 run, 4 kept`), + MOVED.slice(0, 12)); }); test("a trunk's move puts an open head's merge check out of date, naming both commits, unless a check is on its way", () => {