Correct a stale count repeated in four places: 10 floating pins, not 23
gates / gates (push) Successful in 25s

Recounted at catalog 18a6d2d8: 66 unique pins — 48 full X.Y.Z, 6 two-part
lines, 4 major lines (10 float), 8 exact versions wearing a variant suffix.
The '23' carried since v0.233.0 matches no definition the catalog supports.
Definition written down beside the number so it can be rechecked.

Also: CONTEXT said the fleet floor was 0.257.0; the hub says 0.259.0.

Comment and doc only — no behaviour change.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-09-21 13:02:48 +02:00
parent bdeb1c0d8e
commit d0d431b42b
5 changed files with 24 additions and 10 deletions
+5 -1
View File
@@ -95,7 +95,11 @@ func CatalogOrder(s Stack) UpdateOrder {
// - two references to DIFFERENT images (`alpine:3.20` against `…/bookstack:26.05.2`) — the numbers
// are comparable and the comparison is meaningless, which is the worst kind of false positive;
// - any tag that is not plain digits and dots: `16-alpine`, `latest`, `26.05.2-ls310`, `stable`,
// a date stamp, a git sha. 23 of the catalog's 66 pins float exactly like this (§8.1).
// a date stamp, a git sha. **10 of the catalog's 66 pins float like this**, RECOUNTED
// 2026-09-21 — 6 two-part lines (mariadb:11.4/11.6/12.3, claper:2.5, opengist:1.13,
// wger/server:2.6) and 4 major lines (postgres:15/16-alpine, redis:7-alpine,
// postgis:16-3.5-alpine). The "23" this comment used to carry matched no definition the
// catalog supports today; see 09 §8.1.
//
// THE ORDER ITSELF IS util.Version.Compare AND NOTHING ELSE. The house rule is one comparator in
// this repo; this function is a tag NORMALISER in front of it, never a second implementation.
+5 -3
View File
@@ -42,9 +42,11 @@ const (
// once the catalog moves past it, so installed would equal template and this function would
// answer „Naprakész" on precisely the apps that are behind — with every test still green,
// because the two fields have the same type and shape.
// - KNOWN LIMITATION: 23 of the catalog's 66 distinct pins FLOAT (postgres:16-alpine,
// mariadb:11.6, …). For those the reference can be identical while the image behind it has moved
// upstream. Those apps read „Naprakész" when they may not be — R-446.
// - KNOWN LIMITATION: **10 of the catalog's 66 distinct pins FLOAT** (recounted 2026-09-21;
// the "23" this comment carried since v0.233.0 matched no definition the catalog supports
// today). For those the reference can be identical while the image behind it has moved
// upstream, and 6 of the 7 measurable ones HAVE moved since the catalog set them. Those apps
// read „Naprakész" when they may not be — R-446.
func compareInstalledToTemplate(s stacks.Stack) updateState {
switch stacks.CatalogOrder(s) {
case stacks.UpdateOrderCurrent: