Commit ce3eed6
authored
fix: stop fallback to models.json when OPENCODE_MODELS_URL is set (#362)
When OPENCODE_MODELS_URL is configured, the URL-derived cache file
(models-<sha1(url)>.json) is the only authoritative source for that
registry. Falling through to the default models.json crosses a trust
domain boundary and can cause Systematic to pin source defaults from
unrelated availability data.
Per Option B in issue #361: treat a URL-derived cache miss as
status: 'unknown' rather than reading models.json. This aligns with
Systematic's existing safety posture of skipping source-default
emission when availability cannot be trusted.
Updates the OPENCODE_MODELS_URL test that previously asserted the
fallthrough, and adds a spy-based test confirming models.json is
never opened when OPENCODE_MODELS_URL is set.
Closes #3611 parent 107510c commit ce3eed6
2 files changed
Lines changed: 37 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
192 | 192 | | |
193 | 193 | | |
194 | 194 | | |
195 | | - | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
196 | 201 | | |
197 | 202 | | |
198 | 203 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
273 | 273 | | |
274 | 274 | | |
275 | 275 | | |
276 | | - | |
| 276 | + | |
277 | 277 | | |
278 | 278 | | |
279 | 279 | | |
| |||
289 | 289 | | |
290 | 290 | | |
291 | 291 | | |
292 | | - | |
293 | | - | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
294 | 322 | | |
295 | 323 | | |
296 | 324 | | |
| |||
0 commit comments