From c1c9dd0b5fe96bd698ebd67d64efa0820a5ea23d Mon Sep 17 00:00:00 2001 From: Dario Gabriel Lipicar Date: Thu, 6 Aug 2026 22:47:07 -0300 Subject: [PATCH] chore: pin logos-protocol 0f26ffd, and move CI to Nix 2.35.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps this repo's own `logos-protocol` root pin from 3a31c91d (Jul 31) to 0f26ffd (Aug 6, current master). Span is two protocol PRs, #40 and #41. Why per-repo pins rather than `follows` overrides: on macOS, two different protocol revisions statically linked into one process get their weak definitions coalesced by dyld, so one image's protocol code silently binds to the other's. That is not a build error — it is a runtime miscompile, and it bites across real ABI changes (`awaitCompletion` gained parameters; `RpcValue`'s variant gained `uint64_t` in the middle, renumbering later alternatives). The durable fix is for every repo in the chain to pin the same protocol, so no override is needed anywhere. CI: cachix/install-nix-action v27 -> v31, i.e. Nix 2.22.1 -> 2.35.1. 2.22.1 is old enough to mis-evaluate flake input overrides newer Nix handles fine. Nothing in this commit needs 2.35.1 — verified to evaluate on 2.22.1 too — but the rest of the chain does, and logos-standalone-app already runs v31 for exactly this reason. Co-Authored-By: Claude Opus 5 --- .github/workflows/ci.yml | 7 ++++++- flake.lock | 6 +++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 913c735..68e0815 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,12 @@ jobs: steps: - uses: actions/checkout@v4 - - uses: cachix/install-nix-action@v27 + # v27 pins Nix 2.22.1, which is old enough to mis-evaluate flake input + # overrides that newer Nix handles fine (notably nested + # `a.inputs.b.inputs.c.follows`, which 2.22 rejects with "cannot find + # flake in the flake registries"). v31 pins 2.35.1. Keep this in step + # with logos-standalone-app, which already runs v31 for the same reason. + - uses: cachix/install-nix-action@v31 with: extra_nix_config: | experimental-features = nix-command flakes diff --git a/flake.lock b/flake.lock index 8a6b548..0f096e2 100644 --- a/flake.lock +++ b/flake.lock @@ -55,11 +55,11 @@ ] }, "locked": { - "lastModified": 1785523697, - "narHash": "sha256-8WdoCJDLNR/aLkcmeY8CeAZlTIN8ulG/7N1ZFEVDdsQ=", + "lastModified": 1786030193, + "narHash": "sha256-Z5rxmZBMJsNsUSb37ljbDMKrtrds9Enw5oPJcf8wbVU=", "owner": "logos-co", "repo": "logos-protocol", - "rev": "3a31c91d1322dae053bbe28b6e3f441fabcc2162", + "rev": "0f26ffdeef18fb9582dc0a95e2bee482464da40d", "type": "github" }, "original": {