You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Bun mismatch switch: drop it from local gates once the pin's packageManager names the machines' Bun #450
The maintainer's rule is one Bun per machine; every machine now runs Bun 1.4.3 in ~/.bun, while the pinned upstream (external/opencode/package.json) names bun@1.4.2. Local gates therefore run with OPENCODE_SDK_TESTS_BUN_MISMATCH=allow and are local evidence only; CI installs the exact pin (setup-pinned-bun, bun-version-file) and never sets the switch (CiPinnedBunTests).
Removal trigger: the Faz 5 upstream refresh moves the pin to a release whose packageManager is the Bun on the machines. Then local gates stop setting the switch, and the manual/verify-array guidance returns to the plain pinned Bun. If the pin and the machines diverge again, the machines follow the pin (Estate canon), not the other way round.
The pin names the machines' Bun. Since feat!: refresh the upstream pin to v2.1.4 #532 the pin is v2.1.4, and external/opencode/package.json names bun@1.4.4. Every lane machine now runs 1.4.4 (KAER, dev-01, the Mac, UNDERDARK; UNDERDARK's upgrade finished 2026-10-23).
The local gates no longer set the switch:
the internal gate scripts (windows-gate.ps1, dev01-gate.sh);
the operating manual and the lane recipes;
the harness verify arrays and task templates.
An off-pin Bun now fails the tests' prerequisite check, and that is reported as a finding.
Evidence on UNDERDARK (Bun 1.4.4), with OPENCODE_SDK_TESTS_BUN_MISMATCH removed from the environment: Sdk.Tests passed on net10.0 and net472 (the door table, 336 / 336 each), and Tools.Tests passed 2095 / 2095. Each run included the pinned-server prerequisite check.
The switch stays in code (PinnedServerPrerequisites, quality-gates.md's exception paragraph) for a future divergence, as this issue says. If the pin and the machines diverge again, the machines follow the pin. CI keeps installing the exact pin (CiPinnedBunTests).
Activity
Blind-Striker commentedon Oct 23, 2026
The removal trigger is met.
The pin names the machines' Bun. Since feat!: refresh the upstream pin to v2.1.4 #532 the pin is v2.1.4, and
external/opencode/package.jsonnamesbun@1.4.4. Every lane machine now runs 1.4.4 (KAER, dev-01, the Mac, UNDERDARK; UNDERDARK's upgrade finished 2026-10-23).The local gates no longer set the switch:
windows-gate.ps1,dev01-gate.sh);An off-pin Bun now fails the tests' prerequisite check, and that is reported as a finding.
Evidence on UNDERDARK (Bun 1.4.4), with
OPENCODE_SDK_TESTS_BUN_MISMATCHremoved from the environment: Sdk.Tests passed on net10.0 and net472 (the door table, 336 / 336 each), and Tools.Tests passed 2095 / 2095. Each run included the pinned-server prerequisite check.The switch stays in code (
PinnedServerPrerequisites, quality-gates.md's exception paragraph) for a future divergence, as this issue says. If the pin and the machines diverge again, the machines follow the pin. CI keeps installing the exact pin (CiPinnedBunTests).