model-orchestrator 1.0.3 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/AGENTS.md CHANGED
@@ -33,6 +33,6 @@ When using the Claude Code plugin, follow [plugin/README.md](plugin/README.md).
33
33
  - **Installer safety:** writes remain inside `--dir` and `--project`; preserve user edits according to manifest hashes and explicit flags. Run no third-party installer.
34
34
  - **Runner safety:** preserve exit codes and the log schema. Before changing an output judge, add a failing case in `test/judges.test.js`.
35
35
  - **Secrets:** use environment-variable names only. Never add a credential value to code, examples or tests.
36
- - **Proof:** measure through `proof/scripts/`, store results in `proof/results.json` and regenerate the proof page. The suite rejects expired entries.
36
+ - **Proof:** measure through `proof/scripts/`, store results in `proof/results.json` and regenerate the proof page. An expired entry warns and is re-measured; it never blocks tests or releases.
37
37
  - **Verify:** run `npm test` and report tests, pass, fail, skipped and exit code. The suite prints current counts. Use `npm pack --dry-run` to inspect publication contents.
38
38
  - **Style:** use short condition-to-action instructions and no em dashes. `test/prose.test.js` checks public vocabulary and examples.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,23 @@ All notable changes to this project are documented here. The format follows [Kee
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [1.0.5] - 2026-09-28
8
+
9
+ ### Changed
10
+
11
+ - The proof page keeps only figures that measure this package. The two browser token figures measured the author's own browser subagent, which model-orchestrator does not ship, and are removed from the proof data, the site and the trailer.
12
+ - An expired proof figure is a signal to re-measure: it warns and never fails tests, CI or a release. The product site leaves expired figures off.
13
+
14
+ ## [1.0.4] - 2026-09-28
15
+
16
+ ### Security
17
+
18
+ - Level 3 images move to `ghcr.io/berriai/litellm:v1.100.3` (from v1.99.1, 23 advisories to 9) and `ollama/ollama:0.34.4` (from 0.33.3). The advisories still inside those vendor images are recorded as reviewed exceptions that expire on 2026-10-28, so the check flags anything new and asks for a fresh review then.
19
+
20
+ ### Fixed
21
+
22
+ - The container advisory check records a Go binary's own unversioned module by name instead of reporting the whole image as unknown; any other package without a version still makes the image unknown.
23
+
7
24
  ## [1.0.3] - 2026-09-28
8
25
 
9
26
  ### Security
@@ -540,7 +557,9 @@ First release.
540
557
  - Tests: a case per fix, judges proven to go red, mutation checks; `npm test` prints the current count.
541
558
  - Adversarial audit: two Codex rounds plus a two-engine review (Codex, Antigravity); findings and fixes in `docs/audit-brief.md`. After the review: subagents go to the project root (`--project`), snippet paths computed from `--dir`, lane sections rendered from the selection, a primary agent required, level 3 asks for API keys separately from CLIs, images and CLI installs pinned, an activation summary at the end of every install.
542
559
 
543
- [Unreleased]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.3...HEAD
560
+ [Unreleased]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.5...HEAD
561
+ [1.0.5]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.4...v1.0.5
562
+ [1.0.4]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.3...v1.0.4
544
563
  [1.0.3]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.2...v1.0.3
545
564
  [1.0.2]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.1...v1.0.2
546
565
  [1.0.1]: https://github.com/aunysillyme/model-orchestrator/compare/v1.0.0...v1.0.1
package/README.md CHANGED
@@ -239,7 +239,7 @@ The lane wiring and the output judges were written against these versions, which
239
239
  | `grok` | xAI | 1.0.5 | `test/fixtures/grok-1.0.5.json`, a recorded run |
240
240
  | `hermes` | Nous Research | 0.20.0 | `test/fixtures/hermes-0.20.0.txt`, a recorded run |
241
241
  | `qwen` | Alibaba | 0.22.3 | `test/fixtures/qwen-0.22.3-nokey.json`, a recorded run |
242
- | `ollama` | Ollama | 0.33.3 | the pinned image the level 3 box runs, `ollama/ollama:0.33.3` |
242
+ | `ollama` | Ollama | 0.34.4 | the pinned image the level 3 box runs, `ollama/ollama:0.34.4` |
243
243
 
244
244
  Generated from `src/catalog.js` by `npm run gen:catalog`; `npm test` fails if this table and the catalog disagree. Fixtures were captured 2026-09-06.
245
245
 
@@ -59,6 +59,8 @@ GitHub Actions is the watcher. A maintainer reviews every affected or unknown re
59
59
  | unknown | Missing, unavailable, unsupported or malformed evidence, or an invalid exception policy | 2 |
60
60
  | excepted | Every advisory match has an exact, reviewed, unexpired exception | 0 if every result is clean or excepted |
61
61
 
62
+ A Go binary built without module version stamping lists its own main module with no version (Trivy marks it `Relationship: root` in a language-package result). Its dependencies are still listed and scanned, so that one entry is recorded by name in `unversionedRoots` and does not make the image unknown. Any other package without a version keeps the image unknown.
63
+
62
64
  Any unknown takes precedence over affected for the exit code. Known advisory IDs are still retained when a detail lookup fails. Empty results never pass. Read the exclusions alongside the status; exclusions are never counted as clean pins.
63
65
 
64
66
  ## Failure modes
@@ -1 +1,1019 @@
1
- []
1
+ [
2
+ {
3
+ "ecosystem": "wolfi",
4
+ "package": "glibc-2.44",
5
+ "version": "2.44-r1",
6
+ "advisory": "CVE-2026-18374",
7
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
8
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
9
+ "expires": "2026-10-28"
10
+ },
11
+ {
12
+ "ecosystem": "wolfi",
13
+ "package": "glibc-2.44",
14
+ "version": "2.44-r1",
15
+ "advisory": "CVE-2026-19499",
16
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
17
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
18
+ "expires": "2026-10-28"
19
+ },
20
+ {
21
+ "ecosystem": "wolfi",
22
+ "package": "glibc-2.44-locale-posix",
23
+ "version": "2.44-r1",
24
+ "advisory": "CVE-2026-18374",
25
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
26
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
27
+ "expires": "2026-10-28"
28
+ },
29
+ {
30
+ "ecosystem": "wolfi",
31
+ "package": "glibc-2.44-locale-posix",
32
+ "version": "2.44-r1",
33
+ "advisory": "CVE-2026-19499",
34
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
35
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
36
+ "expires": "2026-10-28"
37
+ },
38
+ {
39
+ "ecosystem": "wolfi",
40
+ "package": "ld-linux-2.44",
41
+ "version": "2.44-r1",
42
+ "advisory": "CVE-2026-18374",
43
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
44
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
45
+ "expires": "2026-10-28"
46
+ },
47
+ {
48
+ "ecosystem": "wolfi",
49
+ "package": "ld-linux-2.44",
50
+ "version": "2.44-r1",
51
+ "advisory": "CVE-2026-19499",
52
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
53
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
54
+ "expires": "2026-10-28"
55
+ },
56
+ {
57
+ "ecosystem": "wolfi",
58
+ "package": "libcrypt1-2.44",
59
+ "version": "2.44-r1",
60
+ "advisory": "CVE-2026-18374",
61
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
62
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
63
+ "expires": "2026-10-28"
64
+ },
65
+ {
66
+ "ecosystem": "wolfi",
67
+ "package": "libcrypt1-2.44",
68
+ "version": "2.44-r1",
69
+ "advisory": "CVE-2026-19499",
70
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
71
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
72
+ "expires": "2026-10-28"
73
+ },
74
+ {
75
+ "ecosystem": "wolfi",
76
+ "package": "zlib",
77
+ "version": "1.3.2-r5",
78
+ "advisory": "CVE-2026-85091",
79
+ "target": "ghcr.io/berriai/litellm:v1.100.3",
80
+ "rationale": "Inside the vendor's own image. v1.100.3 and the newest v1.103.0 both carry these 9 MEDIUM advisories (Trivy 0.74.0, 2026-09-28); no image without them exists yet. Level 3 gateway only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
81
+ "expires": "2026-10-28"
82
+ },
83
+ {
84
+ "ecosystem": "ubuntu",
85
+ "package": "libc-bin",
86
+ "version": "2.39-0ubuntu8.9",
87
+ "advisory": "CVE-2026-18374",
88
+ "target": "ollama/ollama:0.34.4",
89
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
90
+ "expires": "2026-10-28"
91
+ },
92
+ {
93
+ "ecosystem": "ubuntu",
94
+ "package": "libc-bin",
95
+ "version": "2.39-0ubuntu8.9",
96
+ "advisory": "CVE-2026-89092",
97
+ "target": "ollama/ollama:0.34.4",
98
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
99
+ "expires": "2026-10-28"
100
+ },
101
+ {
102
+ "ecosystem": "ubuntu",
103
+ "package": "libc6",
104
+ "version": "2.39-0ubuntu8.9",
105
+ "advisory": "CVE-2026-18374",
106
+ "target": "ollama/ollama:0.34.4",
107
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
108
+ "expires": "2026-10-28"
109
+ },
110
+ {
111
+ "ecosystem": "ubuntu",
112
+ "package": "libc6",
113
+ "version": "2.39-0ubuntu8.9",
114
+ "advisory": "CVE-2026-89092",
115
+ "target": "ollama/ollama:0.34.4",
116
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
117
+ "expires": "2026-10-28"
118
+ },
119
+ {
120
+ "ecosystem": "ubuntu",
121
+ "package": "libelf1t64",
122
+ "version": "0.190-1.1ubuntu0.1",
123
+ "advisory": "CVE-2025-1352",
124
+ "target": "ollama/ollama:0.34.4",
125
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
126
+ "expires": "2026-10-28"
127
+ },
128
+ {
129
+ "ecosystem": "ubuntu",
130
+ "package": "libelf1t64",
131
+ "version": "0.190-1.1ubuntu0.1",
132
+ "advisory": "CVE-2025-1376",
133
+ "target": "ollama/ollama:0.34.4",
134
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
135
+ "expires": "2026-10-28"
136
+ },
137
+ {
138
+ "ecosystem": "ubuntu",
139
+ "package": "libexpat1",
140
+ "version": "2.6.1-2ubuntu0.5",
141
+ "advisory": "CVE-2025-66382",
142
+ "target": "ollama/ollama:0.34.4",
143
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
144
+ "expires": "2026-10-28"
145
+ },
146
+ {
147
+ "ecosystem": "ubuntu",
148
+ "package": "libexpat1",
149
+ "version": "2.6.1-2ubuntu0.5",
150
+ "advisory": "CVE-2026-56131",
151
+ "target": "ollama/ollama:0.34.4",
152
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
153
+ "expires": "2026-10-28"
154
+ },
155
+ {
156
+ "ecosystem": "ubuntu",
157
+ "package": "libexpat1",
158
+ "version": "2.6.1-2ubuntu0.5",
159
+ "advisory": "CVE-2026-56132",
160
+ "target": "ollama/ollama:0.34.4",
161
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
162
+ "expires": "2026-10-28"
163
+ },
164
+ {
165
+ "ecosystem": "ubuntu",
166
+ "package": "libexpat1",
167
+ "version": "2.6.1-2ubuntu0.5",
168
+ "advisory": "CVE-2026-56406",
169
+ "target": "ollama/ollama:0.34.4",
170
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
171
+ "expires": "2026-10-28"
172
+ },
173
+ {
174
+ "ecosystem": "ubuntu",
175
+ "package": "libexpat1",
176
+ "version": "2.6.1-2ubuntu0.5",
177
+ "advisory": "CVE-2026-56407",
178
+ "target": "ollama/ollama:0.34.4",
179
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
180
+ "expires": "2026-10-28"
181
+ },
182
+ {
183
+ "ecosystem": "ubuntu",
184
+ "package": "libexpat1",
185
+ "version": "2.6.1-2ubuntu0.5",
186
+ "advisory": "CVE-2026-56409",
187
+ "target": "ollama/ollama:0.34.4",
188
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
189
+ "expires": "2026-10-28"
190
+ },
191
+ {
192
+ "ecosystem": "ubuntu",
193
+ "package": "libexpat1",
194
+ "version": "2.6.1-2ubuntu0.5",
195
+ "advisory": "CVE-2026-56410",
196
+ "target": "ollama/ollama:0.34.4",
197
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
198
+ "expires": "2026-10-28"
199
+ },
200
+ {
201
+ "ecosystem": "ubuntu",
202
+ "package": "libexpat1",
203
+ "version": "2.6.1-2ubuntu0.5",
204
+ "advisory": "CVE-2026-56411",
205
+ "target": "ollama/ollama:0.34.4",
206
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
207
+ "expires": "2026-10-28"
208
+ },
209
+ {
210
+ "ecosystem": "ubuntu",
211
+ "package": "libexpat1",
212
+ "version": "2.6.1-2ubuntu0.5",
213
+ "advisory": "CVE-2026-66046",
214
+ "target": "ollama/ollama:0.34.4",
215
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
216
+ "expires": "2026-10-28"
217
+ },
218
+ {
219
+ "ecosystem": "ubuntu",
220
+ "package": "libexpat1",
221
+ "version": "2.6.1-2ubuntu0.5",
222
+ "advisory": "CVE-2026-72522",
223
+ "target": "ollama/ollama:0.34.4",
224
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
225
+ "expires": "2026-10-28"
226
+ },
227
+ {
228
+ "ecosystem": "ubuntu",
229
+ "package": "libexpat1",
230
+ "version": "2.6.1-2ubuntu0.5",
231
+ "advisory": "CVE-2026-76641",
232
+ "target": "ollama/ollama:0.34.4",
233
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
234
+ "expires": "2026-10-28"
235
+ },
236
+ {
237
+ "ecosystem": "ubuntu",
238
+ "package": "libexpat1",
239
+ "version": "2.6.1-2ubuntu0.5",
240
+ "advisory": "CVE-2026-76957",
241
+ "target": "ollama/ollama:0.34.4",
242
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
243
+ "expires": "2026-10-28"
244
+ },
245
+ {
246
+ "ecosystem": "ubuntu",
247
+ "package": "libicu74",
248
+ "version": "74.2-1ubuntu3.1",
249
+ "advisory": "CVE-2025-5222",
250
+ "target": "ollama/ollama:0.34.4",
251
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
252
+ "expires": "2026-10-28"
253
+ },
254
+ {
255
+ "ecosystem": "ubuntu",
256
+ "package": "libpcre2-8-0",
257
+ "version": "10.42-4ubuntu2.1",
258
+ "advisory": "CVE-2026-86145",
259
+ "target": "ollama/ollama:0.34.4",
260
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
261
+ "expires": "2026-10-28"
262
+ },
263
+ {
264
+ "ecosystem": "ubuntu",
265
+ "package": "libpcre2-8-0",
266
+ "version": "10.42-4ubuntu2.1",
267
+ "advisory": "CVE-2026-89161",
268
+ "target": "ollama/ollama:0.34.4",
269
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
270
+ "expires": "2026-10-28"
271
+ },
272
+ {
273
+ "ecosystem": "ubuntu",
274
+ "package": "libsystemd0",
275
+ "version": "255.4-1ubuntu8.17",
276
+ "advisory": "CVE-2026-40228",
277
+ "target": "ollama/ollama:0.34.4",
278
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
279
+ "expires": "2026-10-28"
280
+ },
281
+ {
282
+ "ecosystem": "ubuntu",
283
+ "package": "libudev1",
284
+ "version": "255.4-1ubuntu8.17",
285
+ "advisory": "CVE-2026-40228",
286
+ "target": "ollama/ollama:0.34.4",
287
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
288
+ "expires": "2026-10-28"
289
+ },
290
+ {
291
+ "ecosystem": "ubuntu",
292
+ "package": "login",
293
+ "version": "1:4.13+dfsg1-4ubuntu3.2",
294
+ "advisory": "CVE-2024-56433",
295
+ "target": "ollama/ollama:0.34.4",
296
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
297
+ "expires": "2026-10-28"
298
+ },
299
+ {
300
+ "ecosystem": "ubuntu",
301
+ "package": "passwd",
302
+ "version": "1:4.13+dfsg1-4ubuntu3.2",
303
+ "advisory": "CVE-2024-56433",
304
+ "target": "ollama/ollama:0.34.4",
305
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
306
+ "expires": "2026-10-28"
307
+ },
308
+ {
309
+ "ecosystem": "ubuntu",
310
+ "package": "perl-base",
311
+ "version": "5.38.2-3.2ubuntu0.4",
312
+ "advisory": "CVE-2026-15534",
313
+ "target": "ollama/ollama:0.34.4",
314
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
315
+ "expires": "2026-10-28"
316
+ },
317
+ {
318
+ "ecosystem": "ubuntu",
319
+ "package": "perl-base",
320
+ "version": "5.38.2-3.2ubuntu0.4",
321
+ "advisory": "CVE-2026-19487",
322
+ "target": "ollama/ollama:0.34.4",
323
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
324
+ "expires": "2026-10-28"
325
+ },
326
+ {
327
+ "ecosystem": "ubuntu",
328
+ "package": "tar",
329
+ "version": "1.35+dfsg-3ubuntu0.4",
330
+ "advisory": "CVE-2026-18477",
331
+ "target": "ollama/ollama:0.34.4",
332
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
333
+ "expires": "2026-10-28"
334
+ },
335
+ {
336
+ "ecosystem": "ubuntu",
337
+ "package": "tar",
338
+ "version": "1.35+dfsg-3ubuntu0.4",
339
+ "advisory": "CVE-2026-18508",
340
+ "target": "ollama/ollama:0.34.4",
341
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
342
+ "expires": "2026-10-28"
343
+ },
344
+ {
345
+ "ecosystem": "ubuntu",
346
+ "package": "zlib1g",
347
+ "version": "1:1.3.dfsg-3.1ubuntu2.2",
348
+ "advisory": "CVE-2026-85091",
349
+ "target": "ollama/ollama:0.34.4",
350
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
351
+ "expires": "2026-10-28"
352
+ },
353
+ {
354
+ "ecosystem": "gobinary",
355
+ "package": "github.com/buger/jsonparser",
356
+ "version": "v1.1.1",
357
+ "advisory": "CVE-2026-32285",
358
+ "target": "ollama/ollama:0.34.4",
359
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
360
+ "expires": "2026-10-28"
361
+ },
362
+ {
363
+ "ecosystem": "gobinary",
364
+ "package": "golang.org/x/crypto",
365
+ "version": "v0.43.0",
366
+ "advisory": "CVE-2026-39828",
367
+ "target": "ollama/ollama:0.34.4",
368
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
369
+ "expires": "2026-10-28"
370
+ },
371
+ {
372
+ "ecosystem": "gobinary",
373
+ "package": "golang.org/x/crypto",
374
+ "version": "v0.43.0",
375
+ "advisory": "CVE-2026-39829",
376
+ "target": "ollama/ollama:0.34.4",
377
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
378
+ "expires": "2026-10-28"
379
+ },
380
+ {
381
+ "ecosystem": "gobinary",
382
+ "package": "golang.org/x/crypto",
383
+ "version": "v0.43.0",
384
+ "advisory": "CVE-2026-39830",
385
+ "target": "ollama/ollama:0.34.4",
386
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
387
+ "expires": "2026-10-28"
388
+ },
389
+ {
390
+ "ecosystem": "gobinary",
391
+ "package": "golang.org/x/crypto",
392
+ "version": "v0.43.0",
393
+ "advisory": "CVE-2026-39831",
394
+ "target": "ollama/ollama:0.34.4",
395
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
396
+ "expires": "2026-10-28"
397
+ },
398
+ {
399
+ "ecosystem": "gobinary",
400
+ "package": "golang.org/x/crypto",
401
+ "version": "v0.43.0",
402
+ "advisory": "CVE-2026-39832",
403
+ "target": "ollama/ollama:0.34.4",
404
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
405
+ "expires": "2026-10-28"
406
+ },
407
+ {
408
+ "ecosystem": "gobinary",
409
+ "package": "golang.org/x/crypto",
410
+ "version": "v0.43.0",
411
+ "advisory": "CVE-2026-39835",
412
+ "target": "ollama/ollama:0.34.4",
413
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
414
+ "expires": "2026-10-28"
415
+ },
416
+ {
417
+ "ecosystem": "gobinary",
418
+ "package": "golang.org/x/crypto",
419
+ "version": "v0.43.0",
420
+ "advisory": "CVE-2026-42508",
421
+ "target": "ollama/ollama:0.34.4",
422
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
423
+ "expires": "2026-10-28"
424
+ },
425
+ {
426
+ "ecosystem": "gobinary",
427
+ "package": "golang.org/x/crypto",
428
+ "version": "v0.43.0",
429
+ "advisory": "CVE-2026-46595",
430
+ "target": "ollama/ollama:0.34.4",
431
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
432
+ "expires": "2026-10-28"
433
+ },
434
+ {
435
+ "ecosystem": "gobinary",
436
+ "package": "golang.org/x/crypto",
437
+ "version": "v0.43.0",
438
+ "advisory": "CVE-2026-46597",
439
+ "target": "ollama/ollama:0.34.4",
440
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
441
+ "expires": "2026-10-28"
442
+ },
443
+ {
444
+ "ecosystem": "gobinary",
445
+ "package": "golang.org/x/crypto",
446
+ "version": "v0.43.0",
447
+ "advisory": "CVE-2026-56854",
448
+ "target": "ollama/ollama:0.34.4",
449
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
450
+ "expires": "2026-10-28"
451
+ },
452
+ {
453
+ "ecosystem": "gobinary",
454
+ "package": "golang.org/x/crypto",
455
+ "version": "v0.43.0",
456
+ "advisory": "CVE-2025-47914",
457
+ "target": "ollama/ollama:0.34.4",
458
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
459
+ "expires": "2026-10-28"
460
+ },
461
+ {
462
+ "ecosystem": "gobinary",
463
+ "package": "golang.org/x/crypto",
464
+ "version": "v0.43.0",
465
+ "advisory": "CVE-2025-58181",
466
+ "target": "ollama/ollama:0.34.4",
467
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
468
+ "expires": "2026-10-28"
469
+ },
470
+ {
471
+ "ecosystem": "gobinary",
472
+ "package": "golang.org/x/crypto",
473
+ "version": "v0.43.0",
474
+ "advisory": "CVE-2026-39827",
475
+ "target": "ollama/ollama:0.34.4",
476
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
477
+ "expires": "2026-10-28"
478
+ },
479
+ {
480
+ "ecosystem": "gobinary",
481
+ "package": "golang.org/x/crypto",
482
+ "version": "v0.43.0",
483
+ "advisory": "CVE-2026-39833",
484
+ "target": "ollama/ollama:0.34.4",
485
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
486
+ "expires": "2026-10-28"
487
+ },
488
+ {
489
+ "ecosystem": "gobinary",
490
+ "package": "golang.org/x/crypto",
491
+ "version": "v0.43.0",
492
+ "advisory": "CVE-2026-39834",
493
+ "target": "ollama/ollama:0.34.4",
494
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
495
+ "expires": "2026-10-28"
496
+ },
497
+ {
498
+ "ecosystem": "gobinary",
499
+ "package": "golang.org/x/crypto",
500
+ "version": "v0.43.0",
501
+ "advisory": "CVE-2026-46598",
502
+ "target": "ollama/ollama:0.34.4",
503
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
504
+ "expires": "2026-10-28"
505
+ },
506
+ {
507
+ "ecosystem": "gobinary",
508
+ "package": "golang.org/x/crypto",
509
+ "version": "v0.43.0",
510
+ "advisory": "CVE-2026-56855",
511
+ "target": "ollama/ollama:0.34.4",
512
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
513
+ "expires": "2026-10-28"
514
+ },
515
+ {
516
+ "ecosystem": "gobinary",
517
+ "package": "golang.org/x/crypto",
518
+ "version": "v0.43.0",
519
+ "advisory": "CVE-2026-78662",
520
+ "target": "ollama/ollama:0.34.4",
521
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
522
+ "expires": "2026-10-28"
523
+ },
524
+ {
525
+ "ecosystem": "gobinary",
526
+ "package": "golang.org/x/crypto",
527
+ "version": "v0.43.0",
528
+ "advisory": "GO-2026-5932",
529
+ "target": "ollama/ollama:0.34.4",
530
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
531
+ "expires": "2026-10-28"
532
+ },
533
+ {
534
+ "ecosystem": "gobinary",
535
+ "package": "golang.org/x/image",
536
+ "version": "v0.22.0",
537
+ "advisory": "CVE-2026-46602",
538
+ "target": "ollama/ollama:0.34.4",
539
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
540
+ "expires": "2026-10-28"
541
+ },
542
+ {
543
+ "ecosystem": "gobinary",
544
+ "package": "golang.org/x/image",
545
+ "version": "v0.22.0",
546
+ "advisory": "CVE-2026-46603",
547
+ "target": "ollama/ollama:0.34.4",
548
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
549
+ "expires": "2026-10-28"
550
+ },
551
+ {
552
+ "ecosystem": "gobinary",
553
+ "package": "golang.org/x/image",
554
+ "version": "v0.22.0",
555
+ "advisory": "CVE-2026-33809",
556
+ "target": "ollama/ollama:0.34.4",
557
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
558
+ "expires": "2026-10-28"
559
+ },
560
+ {
561
+ "ecosystem": "gobinary",
562
+ "package": "golang.org/x/image",
563
+ "version": "v0.22.0",
564
+ "advisory": "CVE-2026-33812",
565
+ "target": "ollama/ollama:0.34.4",
566
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
567
+ "expires": "2026-10-28"
568
+ },
569
+ {
570
+ "ecosystem": "gobinary",
571
+ "package": "golang.org/x/image",
572
+ "version": "v0.22.0",
573
+ "advisory": "CVE-2026-33813",
574
+ "target": "ollama/ollama:0.34.4",
575
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
576
+ "expires": "2026-10-28"
577
+ },
578
+ {
579
+ "ecosystem": "gobinary",
580
+ "package": "golang.org/x/image",
581
+ "version": "v0.22.0",
582
+ "advisory": "CVE-2026-42500",
583
+ "target": "ollama/ollama:0.34.4",
584
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
585
+ "expires": "2026-10-28"
586
+ },
587
+ {
588
+ "ecosystem": "gobinary",
589
+ "package": "golang.org/x/image",
590
+ "version": "v0.22.0",
591
+ "advisory": "CVE-2026-46599",
592
+ "target": "ollama/ollama:0.34.4",
593
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
594
+ "expires": "2026-10-28"
595
+ },
596
+ {
597
+ "ecosystem": "gobinary",
598
+ "package": "golang.org/x/image",
599
+ "version": "v0.22.0",
600
+ "advisory": "CVE-2026-46601",
601
+ "target": "ollama/ollama:0.34.4",
602
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
603
+ "expires": "2026-10-28"
604
+ },
605
+ {
606
+ "ecosystem": "gobinary",
607
+ "package": "golang.org/x/image",
608
+ "version": "v0.22.0",
609
+ "advisory": "CVE-2026-46604",
610
+ "target": "ollama/ollama:0.34.4",
611
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
612
+ "expires": "2026-10-28"
613
+ },
614
+ {
615
+ "ecosystem": "gobinary",
616
+ "package": "golang.org/x/mod",
617
+ "version": "v0.30.0",
618
+ "advisory": "CVE-2026-56864",
619
+ "target": "ollama/ollama:0.34.4",
620
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
621
+ "expires": "2026-10-28"
622
+ },
623
+ {
624
+ "ecosystem": "gobinary",
625
+ "package": "golang.org/x/mod",
626
+ "version": "v0.30.0",
627
+ "advisory": "CVE-2026-56865",
628
+ "target": "ollama/ollama:0.34.4",
629
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
630
+ "expires": "2026-10-28"
631
+ },
632
+ {
633
+ "ecosystem": "gobinary",
634
+ "package": "golang.org/x/net",
635
+ "version": "v0.46.0",
636
+ "advisory": "CVE-2026-25681",
637
+ "target": "ollama/ollama:0.34.4",
638
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
639
+ "expires": "2026-10-28"
640
+ },
641
+ {
642
+ "ecosystem": "gobinary",
643
+ "package": "golang.org/x/net",
644
+ "version": "v0.46.0",
645
+ "advisory": "CVE-2026-27136",
646
+ "target": "ollama/ollama:0.34.4",
647
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
648
+ "expires": "2026-10-28"
649
+ },
650
+ {
651
+ "ecosystem": "gobinary",
652
+ "package": "golang.org/x/net",
653
+ "version": "v0.46.0",
654
+ "advisory": "CVE-2026-33814",
655
+ "target": "ollama/ollama:0.34.4",
656
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
657
+ "expires": "2026-10-28"
658
+ },
659
+ {
660
+ "ecosystem": "gobinary",
661
+ "package": "golang.org/x/net",
662
+ "version": "v0.46.0",
663
+ "advisory": "CVE-2026-39821",
664
+ "target": "ollama/ollama:0.34.4",
665
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
666
+ "expires": "2026-10-28"
667
+ },
668
+ {
669
+ "ecosystem": "gobinary",
670
+ "package": "golang.org/x/net",
671
+ "version": "v0.46.0",
672
+ "advisory": "CVE-2026-46600",
673
+ "target": "ollama/ollama:0.34.4",
674
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
675
+ "expires": "2026-10-28"
676
+ },
677
+ {
678
+ "ecosystem": "gobinary",
679
+ "package": "golang.org/x/net",
680
+ "version": "v0.46.0",
681
+ "advisory": "CVE-2026-25680",
682
+ "target": "ollama/ollama:0.34.4",
683
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
684
+ "expires": "2026-10-28"
685
+ },
686
+ {
687
+ "ecosystem": "gobinary",
688
+ "package": "golang.org/x/net",
689
+ "version": "v0.46.0",
690
+ "advisory": "CVE-2026-42502",
691
+ "target": "ollama/ollama:0.34.4",
692
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
693
+ "expires": "2026-10-28"
694
+ },
695
+ {
696
+ "ecosystem": "gobinary",
697
+ "package": "golang.org/x/net",
698
+ "version": "v0.46.0",
699
+ "advisory": "CVE-2026-42506",
700
+ "target": "ollama/ollama:0.34.4",
701
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
702
+ "expires": "2026-10-28"
703
+ },
704
+ {
705
+ "ecosystem": "gobinary",
706
+ "package": "golang.org/x/sys",
707
+ "version": "v0.37.0",
708
+ "advisory": "CVE-2026-39824",
709
+ "target": "ollama/ollama:0.34.4",
710
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
711
+ "expires": "2026-10-28"
712
+ },
713
+ {
714
+ "ecosystem": "gobinary",
715
+ "package": "golang.org/x/text",
716
+ "version": "v0.30.0",
717
+ "advisory": "CVE-2026-56852",
718
+ "target": "ollama/ollama:0.34.4",
719
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
720
+ "expires": "2026-10-28"
721
+ },
722
+ {
723
+ "ecosystem": "gobinary",
724
+ "package": "stdlib",
725
+ "version": "v1.26.0",
726
+ "advisory": "CVE-2026-25679",
727
+ "target": "ollama/ollama:0.34.4",
728
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
729
+ "expires": "2026-10-28"
730
+ },
731
+ {
732
+ "ecosystem": "gobinary",
733
+ "package": "stdlib",
734
+ "version": "v1.26.0",
735
+ "advisory": "CVE-2026-27137",
736
+ "target": "ollama/ollama:0.34.4",
737
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
738
+ "expires": "2026-10-28"
739
+ },
740
+ {
741
+ "ecosystem": "gobinary",
742
+ "package": "stdlib",
743
+ "version": "v1.26.0",
744
+ "advisory": "CVE-2026-27145",
745
+ "target": "ollama/ollama:0.34.4",
746
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
747
+ "expires": "2026-10-28"
748
+ },
749
+ {
750
+ "ecosystem": "gobinary",
751
+ "package": "stdlib",
752
+ "version": "v1.26.0",
753
+ "advisory": "CVE-2026-32280",
754
+ "target": "ollama/ollama:0.34.4",
755
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
756
+ "expires": "2026-10-28"
757
+ },
758
+ {
759
+ "ecosystem": "gobinary",
760
+ "package": "stdlib",
761
+ "version": "v1.26.0",
762
+ "advisory": "CVE-2026-32281",
763
+ "target": "ollama/ollama:0.34.4",
764
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
765
+ "expires": "2026-10-28"
766
+ },
767
+ {
768
+ "ecosystem": "gobinary",
769
+ "package": "stdlib",
770
+ "version": "v1.26.0",
771
+ "advisory": "CVE-2026-32283",
772
+ "target": "ollama/ollama:0.34.4",
773
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
774
+ "expires": "2026-10-28"
775
+ },
776
+ {
777
+ "ecosystem": "gobinary",
778
+ "package": "stdlib",
779
+ "version": "v1.26.0",
780
+ "advisory": "CVE-2026-33810",
781
+ "target": "ollama/ollama:0.34.4",
782
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
783
+ "expires": "2026-10-28"
784
+ },
785
+ {
786
+ "ecosystem": "gobinary",
787
+ "package": "stdlib",
788
+ "version": "v1.26.0",
789
+ "advisory": "CVE-2026-33811",
790
+ "target": "ollama/ollama:0.34.4",
791
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
792
+ "expires": "2026-10-28"
793
+ },
794
+ {
795
+ "ecosystem": "gobinary",
796
+ "package": "stdlib",
797
+ "version": "v1.26.0",
798
+ "advisory": "CVE-2026-33814",
799
+ "target": "ollama/ollama:0.34.4",
800
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
801
+ "expires": "2026-10-28"
802
+ },
803
+ {
804
+ "ecosystem": "gobinary",
805
+ "package": "stdlib",
806
+ "version": "v1.26.0",
807
+ "advisory": "CVE-2026-33818",
808
+ "target": "ollama/ollama:0.34.4",
809
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
810
+ "expires": "2026-10-28"
811
+ },
812
+ {
813
+ "ecosystem": "gobinary",
814
+ "package": "stdlib",
815
+ "version": "v1.26.0",
816
+ "advisory": "CVE-2026-39820",
817
+ "target": "ollama/ollama:0.34.4",
818
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
819
+ "expires": "2026-10-28"
820
+ },
821
+ {
822
+ "ecosystem": "gobinary",
823
+ "package": "stdlib",
824
+ "version": "v1.26.0",
825
+ "advisory": "CVE-2026-39821",
826
+ "target": "ollama/ollama:0.34.4",
827
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
828
+ "expires": "2026-10-28"
829
+ },
830
+ {
831
+ "ecosystem": "gobinary",
832
+ "package": "stdlib",
833
+ "version": "v1.26.0",
834
+ "advisory": "CVE-2026-39822",
835
+ "target": "ollama/ollama:0.34.4",
836
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
837
+ "expires": "2026-10-28"
838
+ },
839
+ {
840
+ "ecosystem": "gobinary",
841
+ "package": "stdlib",
842
+ "version": "v1.26.0",
843
+ "advisory": "CVE-2026-39836",
844
+ "target": "ollama/ollama:0.34.4",
845
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
846
+ "expires": "2026-10-28"
847
+ },
848
+ {
849
+ "ecosystem": "gobinary",
850
+ "package": "stdlib",
851
+ "version": "v1.26.0",
852
+ "advisory": "CVE-2026-42499",
853
+ "target": "ollama/ollama:0.34.4",
854
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
855
+ "expires": "2026-10-28"
856
+ },
857
+ {
858
+ "ecosystem": "gobinary",
859
+ "package": "stdlib",
860
+ "version": "v1.26.0",
861
+ "advisory": "CVE-2026-42504",
862
+ "target": "ollama/ollama:0.34.4",
863
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
864
+ "expires": "2026-10-28"
865
+ },
866
+ {
867
+ "ecosystem": "gobinary",
868
+ "package": "stdlib",
869
+ "version": "v1.26.0",
870
+ "advisory": "CVE-2026-46600",
871
+ "target": "ollama/ollama:0.34.4",
872
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
873
+ "expires": "2026-10-28"
874
+ },
875
+ {
876
+ "ecosystem": "gobinary",
877
+ "package": "stdlib",
878
+ "version": "v1.26.0",
879
+ "advisory": "CVE-2026-56853",
880
+ "target": "ollama/ollama:0.34.4",
881
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
882
+ "expires": "2026-10-28"
883
+ },
884
+ {
885
+ "ecosystem": "gobinary",
886
+ "package": "stdlib",
887
+ "version": "v1.26.0",
888
+ "advisory": "CVE-2026-56858",
889
+ "target": "ollama/ollama:0.34.4",
890
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
891
+ "expires": "2026-10-28"
892
+ },
893
+ {
894
+ "ecosystem": "gobinary",
895
+ "package": "stdlib",
896
+ "version": "v1.26.0",
897
+ "advisory": "CVE-2026-56859",
898
+ "target": "ollama/ollama:0.34.4",
899
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
900
+ "expires": "2026-10-28"
901
+ },
902
+ {
903
+ "ecosystem": "gobinary",
904
+ "package": "stdlib",
905
+ "version": "v1.26.0",
906
+ "advisory": "CVE-2026-56860",
907
+ "target": "ollama/ollama:0.34.4",
908
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
909
+ "expires": "2026-10-28"
910
+ },
911
+ {
912
+ "ecosystem": "gobinary",
913
+ "package": "stdlib",
914
+ "version": "v1.26.0",
915
+ "advisory": "CVE-2026-56862",
916
+ "target": "ollama/ollama:0.34.4",
917
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
918
+ "expires": "2026-10-28"
919
+ },
920
+ {
921
+ "ecosystem": "gobinary",
922
+ "package": "stdlib",
923
+ "version": "v1.26.0",
924
+ "advisory": "CVE-2026-27142",
925
+ "target": "ollama/ollama:0.34.4",
926
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
927
+ "expires": "2026-10-28"
928
+ },
929
+ {
930
+ "ecosystem": "gobinary",
931
+ "package": "stdlib",
932
+ "version": "v1.26.0",
933
+ "advisory": "CVE-2026-32282",
934
+ "target": "ollama/ollama:0.34.4",
935
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
936
+ "expires": "2026-10-28"
937
+ },
938
+ {
939
+ "ecosystem": "gobinary",
940
+ "package": "stdlib",
941
+ "version": "v1.26.0",
942
+ "advisory": "CVE-2026-32288",
943
+ "target": "ollama/ollama:0.34.4",
944
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
945
+ "expires": "2026-10-28"
946
+ },
947
+ {
948
+ "ecosystem": "gobinary",
949
+ "package": "stdlib",
950
+ "version": "v1.26.0",
951
+ "advisory": "CVE-2026-32289",
952
+ "target": "ollama/ollama:0.34.4",
953
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
954
+ "expires": "2026-10-28"
955
+ },
956
+ {
957
+ "ecosystem": "gobinary",
958
+ "package": "stdlib",
959
+ "version": "v1.26.0",
960
+ "advisory": "CVE-2026-39823",
961
+ "target": "ollama/ollama:0.34.4",
962
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
963
+ "expires": "2026-10-28"
964
+ },
965
+ {
966
+ "ecosystem": "gobinary",
967
+ "package": "stdlib",
968
+ "version": "v1.26.0",
969
+ "advisory": "CVE-2026-39825",
970
+ "target": "ollama/ollama:0.34.4",
971
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
972
+ "expires": "2026-10-28"
973
+ },
974
+ {
975
+ "ecosystem": "gobinary",
976
+ "package": "stdlib",
977
+ "version": "v1.26.0",
978
+ "advisory": "CVE-2026-39826",
979
+ "target": "ollama/ollama:0.34.4",
980
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
981
+ "expires": "2026-10-28"
982
+ },
983
+ {
984
+ "ecosystem": "gobinary",
985
+ "package": "stdlib",
986
+ "version": "v1.26.0",
987
+ "advisory": "CVE-2026-42505",
988
+ "target": "ollama/ollama:0.34.4",
989
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
990
+ "expires": "2026-10-28"
991
+ },
992
+ {
993
+ "ecosystem": "gobinary",
994
+ "package": "stdlib",
995
+ "version": "v1.26.0",
996
+ "advisory": "CVE-2026-42507",
997
+ "target": "ollama/ollama:0.34.4",
998
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
999
+ "expires": "2026-10-28"
1000
+ },
1001
+ {
1002
+ "ecosystem": "gobinary",
1003
+ "package": "stdlib",
1004
+ "version": "v1.26.0",
1005
+ "advisory": "CVE-2026-27138",
1006
+ "target": "ollama/ollama:0.34.4",
1007
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
1008
+ "expires": "2026-10-28"
1009
+ },
1010
+ {
1011
+ "ecosystem": "gobinary",
1012
+ "package": "stdlib",
1013
+ "version": "v1.26.0",
1014
+ "advisory": "CVE-2026-27139",
1015
+ "target": "ollama/ollama:0.34.4",
1016
+ "rationale": "Inside the vendor's own image, which is the newest release (0.34.4); most are in Go libraries compiled into the ollama binary, so no newer image clears them. Level 3 local model only. Auny's ruling 2026-09-28: upgrade and dated exceptions; re-check at expiry.",
1017
+ "expires": "2026-10-28"
1018
+ }
1019
+ ]
package/docs/catalog.md CHANGED
@@ -207,7 +207,7 @@ Generated from `src/catalog.js`. Do not hand-edit; `npm run gen:catalog` rewrite
207
207
  - **What it is:** A local model runtime; work sent here stays on the machine
208
208
  - **Install:** https://ollama.com/download (or `brew install ollama`)
209
209
  - **Sign in:** none
210
- - **Built against:** 0.33.3
210
+ - **Built against:** 0.34.4
211
211
 
212
212
  **Capability facts.** An unverified value needs a current capability check before use. Role assignments come from the selected stack, using these facts.
213
213
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "model-orchestrator",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Model router for AI coding agents: installs routing rules, 8 subagents, hooks and a CLI runner so your AI picks model and effort per task and saves tokens",
5
5
  "type": "module",
6
6
  "bin": {
package/proof/README.md CHANGED
@@ -10,8 +10,6 @@ Environment: Node v22.22.3, darwin arm64. Timing varies with startup caches and
10
10
  | Lane runner overhead | 63.74 ms median difference | 7 | 2026-09-27 | 2026-10-11 | [script](../proof/scripts/runner-overhead.js) |
11
11
  | Empty results flagged | 10 fixtures rejected | 10 | 2026-09-27 | 2026-10-11 | [script](../proof/scripts/missing-results.js) |
12
12
  | Acceptance failures blocked | 4 fixtures rejected | 4 | 2026-09-27 | 2026-10-11 | [script](../proof/scripts/check-gate.js) |
13
- | Main conversation browser tokens | 408147 tokens per browser step (median) | 9775 | 2026-09-26 | 2026-10-27 | author setup, re-measured locally |
14
- | Small browser subagent tokens | 17197 tokens per step (highest of 5 runs) | 5 | 2026-09-27 | 2026-10-27 | author setup, re-measured locally |
15
13
 
16
14
  ## Run the proof scripts
17
15
 
@@ -21,7 +19,7 @@ node proof/scripts/render.js
21
19
  npm test
22
20
  ```
23
21
 
24
- The measurement command refreshes reproducible entries and preserves separately sourced author-setup entries. The test suite rejects expired, future-dated or incomplete entries and checks this page against the data. The weekly [refresh workflow](../.github/workflows/proof.yml) reruns the scripts and commits their data and generated page.
22
+ The measurement command refreshes the reproducible entries. An expired entry is a signal to re-measure; the test suite rejects future-dated or incomplete entries and checks this page against the data. The weekly [refresh workflow](../.github/workflows/proof.yml) reruns the scripts and commits their data and generated page.
25
23
 
26
24
  ## Try the acceptance gate
27
25
 
@@ -70,22 +68,6 @@ Kind: reproducible local measurement. Sample size: 4. Measured: 2026-09-27. Expi
70
68
 
71
69
  Source: [proof/scripts/check-gate.js](../proof/scripts/check-gate.js).
72
70
 
73
- ### Main conversation browser tokens
74
-
75
- Measured on the author's Claude Code sessions: every browser tool call in the transcripts, counting tokens re-read by the main conversation per step. Median: 408,147 tokens per browser step across 145 sessions and 9,775 browser steps. Sample size counts browser steps.
76
-
77
- Kind: measured on the author's setup. Sample size: 9775. Measured: 2026-09-26. Expires: 2026-10-27.
78
-
79
- Source: author setup, re-measured locally.
80
-
81
- ### Small browser subagent tokens
82
-
83
- At least 23x fewer tokens per step in this sample: the main conversation median of 408,147 divided by the highest subagent run of 17,197 is 23.73x. Measured on the author's Claude Code sessions, with the same kind of work handed to a small browser subagent. Five runs, tokens divided by steps or tool calls per run: 17,197 (206,369 tokens / 12 steps, 2026-09-26); 4,077 (93,773 / 23), 4,201 (105,034 / 25), 4,585 (91,709 / 20), and 4,489 (94,263 / 21), all four on 2026-09-27. Range: 4,077 to 17,197; median of 5 runs: 4,489. Typical context, using the median of 5 runs: about 91x fewer tokens per step. These are measurements from the author's own sessions, not a controlled comparison or a guarantee for other setups. The four 2026-09-27 runs shared one browser pane, so some steps were spent recovering a drifting tab, which raises the step count and lowers per-step tokens. The first run counted steps; the later runs counted tool calls. Sample size counts runs.
84
-
85
- Kind: measured on the author's setup. Sample size: 5. Measured: 2026-09-27. Expires: 2026-10-27.
86
-
87
- Source: author setup, re-measured locally.
88
-
89
71
  ## Operation and verification
90
72
 
91
73
  - **What and why:** executable measurements keep public figures traceable to current output.
@@ -95,6 +77,6 @@ Source: author setup, re-measured locally.
95
77
  - **Reads:** package scripts, the installer, runner and acceptance-check runner. Fixture tests use an isolated home and PATH.
96
78
  - **Writes:** results.json, this generated page, temporary fixture directories and local fixture logs. The recorder writes gate-demo.cast and gate-demo.gif.
97
79
  - **Closed loop:** the workflow fails when measurement or tests fail. GitHub Actions records the failure; repository notification settings decide who receives it. No separate alert service is configured.
98
- - **Failure modes:** runner behavior changes, an expired catalog snapshot, missing runtime, unavailable write permission, or timing noise. Review the failed job, rerun locally, and send a reproducible issue to the repository maintainers.
99
- - **Run and verify:** run the commands above, inspect sample arrays and fixture exit codes in results.json, and require npm test to pass. A future-time unit test proves expiry can fail.
100
- - **Source of truth:** results.json and the scripts it names. Author-setup evidence is added separately by its owner.
80
+ - **Failure modes:** runner behavior changes, missing runtime, unavailable write permission, or timing noise. Review the failed job, rerun locally, and send a reproducible issue to the repository maintainers.
81
+ - **Run and verify:** run the commands above, inspect sample arrays and fixture exit codes in results.json, and require npm test to pass.
82
+ - **Source of truth:** results.json and the scripts it names.
@@ -169,30 +169,6 @@
169
169
  "exitCode": 1
170
170
  }
171
171
  ]
172
- },
173
- {
174
- "id": "author-main-browser-tokens",
175
- "label": "Main conversation browser tokens",
176
- "kind": "author-setup",
177
- "value": 408147,
178
- "unit": "tokens per browser step (median)",
179
- "measuredAt": "2026-09-26",
180
- "method": "Measured on the author's Claude Code sessions: every browser tool call in the transcripts, counting tokens re-read by the main conversation per step. Median: 408,147 tokens per browser step across 145 sessions and 9,775 browser steps. Sample size counts browser steps.",
181
- "sampleSize": 9775,
182
- "script": "author setup, re-measured locally",
183
- "expiresAt": "2026-10-27"
184
- },
185
- {
186
- "id": "author-subagent-browser-tokens",
187
- "label": "Small browser subagent tokens",
188
- "kind": "author-setup",
189
- "value": 17197,
190
- "unit": "tokens per step (highest of 5 runs)",
191
- "measuredAt": "2026-09-27",
192
- "method": "At least 23x fewer tokens per step in this sample: the main conversation median of 408,147 divided by the highest subagent run of 17,197 is 23.73x. Measured on the author's Claude Code sessions, with the same kind of work handed to a small browser subagent. Five runs, tokens divided by steps or tool calls per run: 17,197 (206,369 tokens / 12 steps, 2026-09-26); 4,077 (93,773 / 23), 4,201 (105,034 / 25), 4,585 (91,709 / 20), and 4,489 (94,263 / 21), all four on 2026-09-27. Range: 4,077 to 17,197; median of 5 runs: 4,489. Typical context, using the median of 5 runs: about 91x fewer tokens per step. These are measurements from the author's own sessions, not a controlled comparison or a guarantee for other setups. The four 2026-09-27 runs shared one browser pane, so some steps were spent recovering a drifting tab, which raises the step count and lowers per-step tokens. The first run counted steps; the later runs counted tool calls. Sample size counts runs.",
193
- "sampleSize": 5,
194
- "script": "author setup, re-measured locally",
195
- "expiresAt": "2026-10-27"
196
172
  }
197
173
  ]
198
174
  }
@@ -64,7 +64,9 @@ export function validateResults(data, now = new Date()) {
64
64
  else {
65
65
  if (item.measuredAt > today) errors.push(`${item.id}: measurement is in the future`);
66
66
  if (item.expiresAt < item.measuredAt) errors.push(`${item.id}: expiry precedes measurement`);
67
- if (item.expiresAt < today) errors.push(`${item.id}: expired ${item.expiresAt}`);
67
+ // Expiry is a refresh signal, never a gate: an expired figure is reported and
68
+ // left off the pages, and tests, CI and releases keep running.
69
+ if (item.expiresAt < today) console.warn(`proof: ${item.id} expired ${item.expiresAt}; rerun node proof/scripts/measure.js`);
68
70
  }
69
71
  const localAuthorSource = item.kind === 'author-setup' && item.script === 'author setup, re-measured locally';
70
72
  if (!localAuthorSource && (typeof item.script !== 'string' || !/^proof\/scripts\/[A-Za-z0-9_-]+\.js$/.test(item.script))) errors.push(`${item.id}: script must name a proof script`);
@@ -7,7 +7,7 @@ export function proofMarkdown(data) {
7
7
  const source = (e, label) => e.kind === 'author-setup' && e.script === 'author setup, re-measured locally' ? e.script : `[${label}](../${e.script})`;
8
8
  const rows = data.entries.map(e => `| ${e.label} | ${e.value.toFixed(Number.isInteger(e.value) ? 0 : 2)} ${e.unit} | ${e.sampleSize} | ${e.measuredAt} | ${e.expiresAt} | ${source(e, 'script')} |`);
9
9
  const methods = data.entries.map(e => `### ${e.label}\n\n${e.method}\n\nKind: ${e.kind === 'author-setup' ? "measured on the author's setup" : 'reproducible local measurement'}. Sample size: ${e.sampleSize}. Measured: ${e.measuredAt}. Expires: ${e.expiresAt}.\n\nSource: ${source(e, e.script)}.`).join('\n\n');
10
- return `# Reproduce the measurements\n\nGenerated from [results.json](results.json). Each figure has a method, sample size, measurement date and expiry. Run the scripts on your own machine to compare.\n\nEnvironment: Node ${data.environment.node}, ${data.environment.platform} ${data.environment.arch}. Timing varies with startup caches and other work on the machine. Synthetic cases show what those fixtures exercise.\n\n| Measurement | Result | Sample size | Measured | Expires | Reproduce |\n|---|---|---|---|---|---|\n${rows.join('\n')}\n\n## Run the proof scripts\n\n\`\`\`sh\nnode proof/scripts/measure.js\nnode proof/scripts/render.js\nnpm test\n\`\`\`\n\nThe measurement command refreshes reproducible entries and preserves separately sourced author-setup entries. The test suite rejects expired, future-dated or incomplete entries and checks this page against the data. The weekly [refresh workflow](../.github/workflows/proof.yml) reruns the scripts and commits their data and generated page.\n\n## Try the acceptance gate\n\n\`\`\`sh\naunx checks ACCEPTANCE_CHECKS.json\naunx checks run ACCEPTANCE_CHECKS.json\n\`\`\`\n\nThe scaffold starts red. Replace the sample with commands that prove your requirements, then put \`aunx checks run ACCEPTANCE_CHECKS.json && <your-release-command>\` in your own release sequence. Commands are local code you review before running. Manual evidence stays UNVERIFIED and blocks the gate.\n\n![Acceptance gate rejects a missing output, then passes after the output exists](gate-demo.gif)\n\nThe [recording script](scripts/record-gate.js) captures real command output into an asciicast, then renders it with an already installed agg. Companion tools are installed by their users.\n\n## Measurement methods\n\n${methods}\n\n## Operation and verification\n\n- **What and why:** executable measurements keep public figures traceable to current output.\n- **Trigger:** weekly schedule, workflow dispatch, or \`node proof/scripts/measure.js\`.\n- **Invocation chain:** workflow -> measurement functions -> isolated Node fixtures -> results.json -> this page -> npm test.\n- **Dependencies:** Node and the repository. The optional GIF recorder uses agg from the asciinema project.\n- **Reads:** package scripts, the installer, runner and acceptance-check runner. Fixture tests use an isolated home and PATH.\n- **Writes:** results.json, this generated page, temporary fixture directories and local fixture logs. The recorder writes gate-demo.cast and gate-demo.gif.\n- **Closed loop:** the workflow fails when measurement or tests fail. GitHub Actions records the failure; repository notification settings decide who receives it. No separate alert service is configured.\n- **Failure modes:** runner behavior changes, an expired catalog snapshot, missing runtime, unavailable write permission, or timing noise. Review the failed job, rerun locally, and send a reproducible issue to the repository maintainers.\n- **Run and verify:** run the commands above, inspect sample arrays and fixture exit codes in results.json, and require npm test to pass. A future-time unit test proves expiry can fail.\n- **Source of truth:** results.json and the scripts it names. Author-setup evidence is added separately by its owner.\n`;
10
+ return `# Reproduce the measurements\n\nGenerated from [results.json](results.json). Each figure has a method, sample size, measurement date and expiry. Run the scripts on your own machine to compare.\n\nEnvironment: Node ${data.environment.node}, ${data.environment.platform} ${data.environment.arch}. Timing varies with startup caches and other work on the machine. Synthetic cases show what those fixtures exercise.\n\n| Measurement | Result | Sample size | Measured | Expires | Reproduce |\n|---|---|---|---|---|---|\n${rows.join('\n')}\n\n## Run the proof scripts\n\n\`\`\`sh\nnode proof/scripts/measure.js\nnode proof/scripts/render.js\nnpm test\n\`\`\`\n\nThe measurement command refreshes the reproducible entries. An expired entry is a signal to re-measure; the test suite rejects future-dated or incomplete entries and checks this page against the data. The weekly [refresh workflow](../.github/workflows/proof.yml) reruns the scripts and commits their data and generated page.\n\n## Try the acceptance gate\n\n\`\`\`sh\naunx checks ACCEPTANCE_CHECKS.json\naunx checks run ACCEPTANCE_CHECKS.json\n\`\`\`\n\nThe scaffold starts red. Replace the sample with commands that prove your requirements, then put \`aunx checks run ACCEPTANCE_CHECKS.json && <your-release-command>\` in your own release sequence. Commands are local code you review before running. Manual evidence stays UNVERIFIED and blocks the gate.\n\n![Acceptance gate rejects a missing output, then passes after the output exists](gate-demo.gif)\n\nThe [recording script](scripts/record-gate.js) captures real command output into an asciicast, then renders it with an already installed agg. Companion tools are installed by their users.\n\n## Measurement methods\n\n${methods}\n\n## Operation and verification\n\n- **What and why:** executable measurements keep public figures traceable to current output.\n- **Trigger:** weekly schedule, workflow dispatch, or \`node proof/scripts/measure.js\`.\n- **Invocation chain:** workflow -> measurement functions -> isolated Node fixtures -> results.json -> this page -> npm test.\n- **Dependencies:** Node and the repository. The optional GIF recorder uses agg from the asciinema project.\n- **Reads:** package scripts, the installer, runner and acceptance-check runner. Fixture tests use an isolated home and PATH.\n- **Writes:** results.json, this generated page, temporary fixture directories and local fixture logs. The recorder writes gate-demo.cast and gate-demo.gif.\n- **Closed loop:** the workflow fails when measurement or tests fail. GitHub Actions records the failure; repository notification settings decide who receives it. No separate alert service is configured.\n- **Failure modes:** runner behavior changes, missing runtime, unavailable write permission, or timing noise. Review the failed job, rerun locally, and send a reproducible issue to the repository maintainers.\n- **Run and verify:** run the commands above, inspect sample arrays and fixture exit codes in results.json, and require npm test to pass.\n- **Source of truth:** results.json and the scripts it names.\n`;
11
11
  }
12
12
  export function renderPage() {
13
13
  const data = readResults();
package/src/catalog.js CHANGED
@@ -300,7 +300,7 @@ export const AIS = [
300
300
  summary: 'A local model runtime; work sent here stays on the machine',
301
301
  minLevel: 2,
302
302
  install: { url: 'https://ollama.com/download', brew: 'ollama' },
303
- builtAgainst: '0.33.3',
303
+ builtAgainst: '0.34.4',
304
304
  auth: 'none',
305
305
  rulesFile: null,
306
306
  },
@@ -457,8 +457,8 @@ export const providerById = Object.fromEntries(PROVIDERS.map((p) => [p.id, p]));
457
457
  // Container image pins for the level 3 templates. Bump deliberately; a
458
458
  // reviewed box should not change underneath the user on a restart.
459
459
  export const IMAGES = {
460
- litellm: 'ghcr.io/berriai/litellm:v1.99.1',
461
- ollama: 'ollama/ollama:0.33.3'
460
+ litellm: 'ghcr.io/berriai/litellm:v1.100.3',
461
+ ollama: 'ollama/ollama:0.34.4'
462
462
  };
463
463
 
464
464
  export const byId = Object.fromEntries(AIS.map((a) => [a.id, a]));