From 758838938a9033440ece3ac5059314374e0d4603 Mon Sep 17 00:00:00 2001 From: Glenn Neuber Date: Sat, 19 Sep 2026 18:34:06 +1000 Subject: [PATCH] docs: fix the three stale link forms, so every relative link in docs/maxusai resolves MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Found while checking that yesterday's ADR renumbering left nothing dangling — it did not, but seven older links were already broken: - five `vision-suite/file.py:340` links, which GitHub cannot resolve; the anchor form `#L340` is what it wants, and the colon form is a Claude Code convention that does not survive into a rendered document - `llama/compat/apply-patch.cmake`, renamed to `compat.cmake` - `mlx-prefill-dequant-gemm.md`, a document that was never written; the dequant-GEMM work is PR #287, so the link points there A checker over all 135 markdown files now reports zero broken relative links. Co-Authored-By: Claude Opus 5 --- docs/maxusai/runaway-reasoning-under-think.md | 10 +++++----- docs/maxusai/spec/apple-silicon-build.md | 4 ++-- docs/maxusai/tasks/upstream-sync-2026-09-04.md | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/maxusai/runaway-reasoning-under-think.md b/docs/maxusai/runaway-reasoning-under-think.md index 5fb2b7582bd..9fa915fcaa9 100644 --- a/docs/maxusai/runaway-reasoning-under-think.md +++ b/docs/maxusai/runaway-reasoning-under-think.md @@ -110,7 +110,7 @@ temperature (0.0/0.7/1.0) and top_k (0/40/64/None) but, on the published evidenc ## Evidence 3 — the failure is stochastic, even at `temperature: 0` `gemma4:12b-nvfp4`, `finetext`, think-on, same rung, minutes apart. Both paths send -the *same prompt object* — [vision_suite.py:340](vision-suite/vision_suite.py:340) +the *same prompt object* — [vision_suite.py:340](vision-suite/vision_suite.py#L340) imports it: `from finetext_probe import PROMPT as FINETEXT_PROMPT` — with identical `num_predict=28672`, `num_ctx=32768`, `temperature=0`, `format:"json"`, endpoint. @@ -147,7 +147,7 @@ Retracted or fixed after an adversarial audit: | claim | status | |---|---| | "at ~73 tok/s, 122 880 tokens cannot finish in 30 min" | **wrong number.** Measured `gen_tps` is 56.5 → 36.2 min. The conclusion held on a figure that, as written (122880/73 = 28 min), refuted it. | -| "Measured on … `/api/generate`" | **wrong for the matrix.** [run_engine_compare.sh:126](vision-suite/run_engine_compare.sh:126) sets `ENDPOINT="${ENDPOINT:-chat}"`. Only the hand probes used `generate`. | +| "Measured on … `/api/generate`" | **wrong for the matrix.** [run_engine_compare.sh:126](vision-suite/run_engine_compare.sh#L126) sets `ENDPOINT="${ENDPOINT:-chat}"`. Only the hand probes used `generate`. | | The 5×4 think-on matrix | **withdrawn.** Cells are single observations of a stochastic process (Evidence 3), and `num_predict` varied up to 7× across rows (8 192 → 57 344) — 2.3× between the two `gemma4:12b` rows carrying its central claim — undisclosed. | | "gemma4:12b caps on both engines" → "the determining factors are the model and the workload" | **contradicted by its own table.** For `gemma4:12b`, `document_single` capped on GGUF but passed on MLX, and `finetext` did the reverse. | | The degenerate-loop transcript as the mechanism for all capped cells | **over-generalized.** Reasoning text was captured for one model, one test, one budget. | @@ -159,9 +159,9 @@ Retracted or fixed after an adversarial audit: 1. **Sample on-policy for think-on cells.** `temperature: 0` is hardcoded in three places with no env knob and no `presence_penalty` anywhere: - [vision_suite.py:37](vision-suite/vision_suite.py:37), - [finetext_probe.py:111](vision-suite/finetext_probe.py:111), - [preflight/probes.py:135](vision-suite/preflight/probes.py:135). + [vision_suite.py:37](vision-suite/vision_suite.py#L37), + [finetext_probe.py:111](vision-suite/finetext_probe.py#L111), + [preflight/probes.py:135](vision-suite/preflight/probes.py#L135). Follow the [ADR 0005](adr/0005-per-model-kv-cache-type.md) precedent: per-model configuration from each model card rather than one global constant. 2. **Run n ≥ 3 per think-on cell.** On-policy sampling is stochastic by design, and diff --git a/docs/maxusai/spec/apple-silicon-build.md b/docs/maxusai/spec/apple-silicon-build.md index 7450ecf49d6..be904bfe4ba 100644 --- a/docs/maxusai/spec/apple-silicon-build.md +++ b/docs/maxusai/spec/apple-silicon-build.md @@ -25,7 +25,7 @@ So: native for speed, container for distribution to other M-family Macs. ## The patch mechanism is shared Both artifacts get the full patch set from one place. -[`llama/compat/apply-patch.cmake`](../../../llama/compat/apply-patch.cmake) uses +[`llama/compat/compat.cmake`](../../../llama/compat/compat.cmake) uses `file(GLOB_RECURSE)` over `llama/compat/*.patch` and applies the results in numeric filename order during llama.cpp's `FetchContent`, wired in by [`compat.cmake`](../../../llama/compat/compat.cmake) at @@ -188,7 +188,7 @@ patch is live. | Metal live (native) | `build/lib/ollama` contents; serve logs | `mlx_metal_v4` present, Metal backend selected | | Container identity | `docker run --rm --version` | fork version string | -A `FATAL_ERROR` from `apply-patch.cmake` means a patch no longer fits the pinned +A `FATAL_ERROR` from `compat.cmake` means a patch no longer fits the pinned `LLAMA_CPP_VERSION` (currently `b10091`) and must be regenerated — the message says so explicitly. Because it is fatal, a build that *completes* has necessarily applied every patch. That is the strongest guarantee available, and it is worth more than diff --git a/docs/maxusai/tasks/upstream-sync-2026-09-04.md b/docs/maxusai/tasks/upstream-sync-2026-09-04.md index 2b8521aac4e..7a2f66221e7 100644 --- a/docs/maxusai/tasks/upstream-sync-2026-09-04.md +++ b/docs/maxusai/tasks/upstream-sync-2026-09-04.md @@ -651,7 +651,7 @@ every "runner CPU" figure we have quoted. Bumping `MLX_VERSION` past `4452` with picks it up; it cannot be a Go-only binary swap because MLX is part of the native payload. Nothing in those 24 commits touches the prefill matmul kernel, so none of them addresses the -mixed-input kernel's speed ([the dequant-GEMM task](mlx-prefill-dequant-gemm.md)), and MLX's open +mixed-input kernel's speed ([the dequant-GEMM work](https://github.com/MaxusAI/ollama/pull/287)), and MLX's open Blackwell defects (notably #3879, mxfp4 numerically wrong on sm_120/121/110) are still open. ### One deliberate divergence to carry into the sync: `runnerRef.LogValue`