Skip to content

docs: the Lemonade release rows and the HRX checklist describe the GA port, not a candidate - #1123

Merged
bong-water-water-bong merged 4 commits into
mainfrom
docs/lemonade-release-rows
Nov 5, 2026
Merged

bong-water-water-bong merged 4 commits into
mainfrom
docs/lemonade-release-rows

Conversation

@bong-water-water-bong

@bong-water-water-bong bong-water-water-bong commented Nov 5, 2026 •

Copy link
Copy Markdown
Collaborator

@/dev/null

agent added 2 commits November 5, 2026 11:49
…ts are 23 + 4 (not 22 + 3)

Two rows in this file had drifted from what the fork actually ships:

* **The pin.** `Lemonade (fork) | 27abcc24da99` names the *v2026.43 candidate*, two releases behind
  what the engine builds. It is now the fork's `main` tip, `e58c9f111`, with the standing caveat that
  `bump-lemonade` re-pins the submodule to whatever `main` is at cut time, so the row is re-read from
  `git ls-tree` then rather than trusted.
* **The catalog.** "22 HRX entries ... and 3 NPU entries" is the pre-flint, pre-35B count. The fork's
  `server_models.json` carries **27 onebit rows: 23 non-NPU + 4 NPU** (verified against the file).

The paragraph also gains what this pin changed, because a release note that omits it would not describe
the shipped behaviour:

* the port target is now **`v2026.45.3` (GA, fork #29)**, so the suite evidence for this pin is a run
  against the *ported* `lemond` — `Ran 31 tests in 110.6s`, `OK (skipped=2)`, measured at load 28.5
  with two foreign HRX clients resident;
* **an NPU model switch evicts the previous NPU model before the new one starts** (fork #34, the
  fleet's NPU-exclusivity decision: the array runs one hardware context at a time);
* a **refused** context is queued on a budget instead of being declared a dead array
  (engine #1100, `1bit serve --load-queue-ms`).

Counts verified from the fork: 27 onebit rows, 23 with no `onebit_backend: npu` and 4 with it
(`Qwen3-0.6B/1.7B/4B-NPU-1bit`, `Qwen3.6-35B-A3B-NPU-1bit`). `tools/copyright.py --check` rc 0.
… sha #1126 pins

The row was written against the fork tip before `bump-lemonade` ran. #1126 pins f44ff953bcd8 (which is
e58c9f111 + #36, the LayaClientTest ctest fix), so name that sha and say where it comes from, rather than
a tip that moves under the reader.

@bong-water-water-bong bong-water-water-bong left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VERDICT: READY at c79ee3c3 — docs, and its pin row matches the bump that is in review, which is the one cross-check that matters here.

The row now reads f44ff953 — the same sha #1126 pins (compare ef0f3b490a27...f44ff953bcd8 → ahead 7, behind 0) — and
the added sentence tells the next person to re-read the row from git ls-tree third_party/lemonade at cut time, because the
workflow follows the tip
. That is the right instruction for a value that a bot can move under the document, and it is the
same class of problem as the stale-fixture in rowproof-k74-zdrv.sh that bit the Puppy lane tonight.

The catalog evidence moves with it: 22 → 23 HRX entries (fork #23's 22 plus flint from #24) and 3 → 4 NPU entries
(the three Qwen3 sizes plus Qwen3.6-35B-A3B), with the same "each with a proven row on the box" claim. The two new
NPU-exclusivity behaviours are described as behaviours of this pin, which they are — #34 and #35 are in it.

Ordering note: land #1126 with or before this, so the document does not describe a pin the tree does not have. They
agree today, and the only way they stop agreeing is if one lands alone and the bot moves the tip.

Doc only, +18/−4, nothing to run.

…22 package

The row is what a future pin is verified against, and it named `lemonade-onebit-rc-2026-11-03-c22` — a
package built before the v2026.45.3 port. Since the port is what ships now, the evidence has to be a run of
the ported server: 31/31, 2 skipped, exit 0, `Ran 31 tests in 110.605s`, against `lemond
2026.47.0~1759.f44ff953`, measured at load 28.5 with two foreign HRX clients resident. The row also said
"29 / 29 run" against a 31-test suite, which reads as two tests never counted; it is 31.
@bong-water-water-bong bong-water-water-bong changed the title docs(releases): the Lemonade pin is the GA port (not a v2026.43 candidate), and the catalog is 23 HRX + 4 NPU docs: the Lemonade release rows and the HRX checklist describe the GA port, not a candidate Nov 5, 2026

@bong-water-water-bong bong-water-water-bong left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VERDICT: READY at 246905ad — the file changed since my last review, so I re-read the line rather than carrying it, and the new line is correct. One ordering requirement, and it is now sharper than when I last flagged it.

The changed line:

-  | Lemonade (fork) | `e58c9f111` (…)
+  | Lemonade (fork) | `f44ff953` (the fork's `main` tip, and the sha `bump-lemonade`'s PR #1126 pins; re-read this row from
+                            `git ls-tree third_party/lemonade` at cut time, because the workflow follows the tip)

f44ff953 is the right value: #1126 (still open, head 47e8783f) pins f44ff953bcd8, and that is the fork's main tip I
verified with compare ef0f3b490a27...f44ff953bcd8 → ahead 7, behind 0. So the document and the bump agree.

The ordering requirement: the engine's main still pins ef0f3b490a27 right now, because #1126 has not merged. So this
row describes a pin the tree will not have until #1126 lands — merge #1126 first (or in the same batch, ahead of this one),
or the release page will name a Lemonade sha that git ls-tree third_party/lemonade does not show, which is precisely the
confusion the row's own parenthetical is trying to prevent.

The previous value (e58c9f111) matched neither the tree's pin nor #1126's target, so this is a correction rather than a churn.

The rest of my last review stands: 23 HRX entries (22 + flint), 4 NPU entries, and the two NPU-exclusivity behaviours described
as behaviours of this pin — which they are, since #34 and #35 are in it.

@bong-water-water-bong
bong-water-water-bong merged commit 6211c2f into main Nov 5, 2026
9 checks passed
@bong-water-water-bong
bong-water-water-bong deleted the docs/lemonade-release-rows branch November 5, 2026 16:48
@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Inconsistent Release Pin Reference

The documentation states that the HRX run was performed against the ported lemond 2026.47.0~1759.f44ff953, but the release notes in docs/releases.md still reference the old Lemonade fork commit 27abcc24da99. This inconsistency could mislead users about which version of Lemonade is actually being used in the release.

| HRX | 19 / 31 | **31 / 31 run, all pass** (2 skipped; 2026-11-05, against the **ported** `lemond` `2026.47.0~1759.f44ff953` — the server this pin ships — not the c22 package that booted the board: `test/server_llm.py --wrapped-server onebit --backend hrx`, exit status 0, 110.6 s, every backend on `HRX0`, measured at load 28.5 with two foreign HRX clients resident, engine payload `lemonade-onebit-rc-2026-11-05-c25`) |
Outdated Release Information

The release notes mention that the Lemonade fork is synced to upstream #3771 (fork #21, #520) and now to the GA release (v2026.45.3, fork #29), but the commit hash listed under "Lemonade (fork)" is still 27abcc24da99. This discrepancy suggests that the documentation has not been updated to reflect the actual commit being used in the release.

| Lemonade (fork) | `f44ff953` (the fork's `main` tip, and the sha `bump-lemonade`'s PR #1126 pins; re-read this row from `git ls-tree third_party/lemonade` at cut time, because the workflow follows the tip) |

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant