Bläddra i källkod

release: sm121 0.2.7 — FLARE runtime override, controller outside the launch cluster

- [flare].executable / per-cluster executable -> orbit run --executable:
  a patched FLARE runtime serves a lane without replacing the packaged agent
  install (absolute paths only).
- controller_node resolves across all configured clusters: prod-no4 serves on
  dgx1+dgx2+dgx3+dgx8 with dgx4 (package store, orbit controller) outside.
- The orbit-file preflight follows the resolved controller, not our rank 0
  (fixes 'no cluster named prod4b in the orbit file' on a reordered orbit).
- orbit run passes the controller-local package path without a NODE: prefix
  (fixes 'cannot stat package file' when the controller is not orbit rank 0).
Alexander Korolev 10 timmar sedan
förälder
incheckning
7271c95ae2
3 ändrade filer med 28 tillägg och 2 borttagningar
  1. 26 0
      CHANGELOG.md
  2. 1 1
      Cargo.lock
  3. 1 1
      Cargo.toml

+ 26 - 0
CHANGELOG.md

@@ -3,6 +3,32 @@
 Semantic versioning for the launcher CLI (`sm121`). The add-on image has its
 own version and its own `sm121/CHANGELOG.md`; do not mix them.
 
+## 0.2.7 — 2026-11-04
+
+- **A FLARE lane can serve a locally built runtime.**
+  `[flare.clusters.<cluster>].executable` (flat `[flare].executable` as the
+  fallback) adds `orbit run --executable <path>`: serving ranks run that build
+  instead of each node's packaged agent install, so a patched engine serves a
+  lane without touching `/usr/bin/flare`. Absolute paths only — the CLI's cwd
+  is on the controller, not the operator's. This is how the Engram disk-reader
+  fix (upstream `main` + PR #184) runs on the prod lanes; see
+  `specs/tech-architecture/flare-roce-poison.md`.
+- **The pinned controller may sit outside the launch cluster.** `prod-no4`
+  serves on dgx1+dgx2+dgx3+dgx8 while `controller_node` is dgx4 (it holds the
+  488 GB package store and is the orbit's controller), which used to fail with
+  `controller_node 'dgx4.lan' is not a node of cluster 'prod-no4'`. The pin is
+  now resolved across every configured cluster; a name that matches nothing
+  still errors, now saying so.
+- **The orbit-file preflight check follows the resolved controller.** It ran
+  on *our* rank 0, which after a re-pair/reorder has no orbit file (dgx4 is
+  rank 3 of `prod4b`), so every serve died with
+  `no cluster named prod4b in the orbit file`. Only the node that actually
+  runs `flare orbit` gets the cluster check.
+- **`orbit run` no longer prefixes the package with a node name.** The path is
+  controller-local (the download and the mirror both land there) and `flare`
+  stages it to rank 0 itself; the `<orbit-rank-0>:` prefix broke the
+  controller-outside-the-cluster lane (`cannot stat package file …`).
+
 ## 0.2.6 — 2026-11-02
 
 - **FLARE package mirroring survives the new package format.** Current

+ 1 - 1
Cargo.lock

@@ -2941,7 +2941,7 @@ checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"
 
 [[package]]
 name = "sm121"
-version = "0.2.6"
+version = "0.2.7"
 dependencies = [
  "anyhow",
  "axum",

+ 1 - 1
Cargo.toml

@@ -1,6 +1,6 @@
 [package]
 name = "sm121"
-version = "0.2.6"
+version = "0.2.7"
 edition = "2024"
 license = "MIT"