|
1 | | -# interscript-ml model index — the stable URL every runtime resolves |
2 | | -# model ids against (Ruby / TypeScript / Python implement the same |
3 | | -# algorithm; this file is the contract). |
| 1 | +# interscript-ml model index — the contract every runtime resolves model |
| 2 | +# ids against (Ruby / TypeScript / Python implement the same algorithm). |
| 3 | +# |
| 4 | +# DISTRIBUTION: this file is published as a GitHub Release asset, never |
| 5 | +# via raw.githubusercontent.com. Tag shape: index-vN. Assets per release: |
| 6 | +# models-index.yaml |
| 7 | +# models-index.yaml.sha256 |
| 8 | +# URL shape runtimes pin: |
| 9 | +# https://github.com/interscript/interscript-ml/releases/download/index-vN/models-index.yaml |
| 10 | +# Cut a new index-vN tag (or dispatch release-index.yml) whenever the |
| 11 | +# index content changes in a way production consumers must see. |
4 | 12 | # |
5 | 13 | # Resolution algorithm (identical in all runtimes): |
6 | | -# 1. resolve `id` in models.models |
7 | | -# 2. prefer an installed cache copy at <cache_dir>/<id>/<filename> |
| 14 | +# 1. fetch the pinned index URL + its .sha256 sidecar; verify the body |
| 15 | +# 2. resolve `id` in models.models |
| 16 | +# 3. prefer an installed cache copy at <cache_dir>/<id>/<filename> |
8 | 17 | # whose whole-file sha256 matches `sha256` |
9 | | -# 3. else download `url` to a temp file in the same directory, |
| 18 | +# 4. else download `url` (or assemble `parts`) to a temp file, |
10 | 19 | # verify sha256, atomically rename into place |
11 | | -# 4. load the zip (IMF v1: member sha256 verification on load) |
| 20 | +# 5. load the zip (IMF v1: member sha256 verification on load) |
12 | 21 | # |
13 | | -# Overrides: SECRYST_INDEX (URL or path to an index like this one), |
14 | | -# SECRYST_CACHE (cache directory; default ~/.cache/secryst). |
| 22 | +# Overrides: SECRYST_INDEX (URL or path to an index like this one — |
| 23 | +# HTTP sources must ship a sibling .sha256), SECRYST_CACHE (cache |
| 24 | +# directory; default ~/.cache/secryst or ~/.cache/interscript). |
15 | 25 | # |
16 | 26 | # Adding a model: it must have passed the WO03 gate (strict validation, |
17 | | -# parity written into the zip) before an entry ships here. |
| 27 | +# parity written into the zip) before an entry ships here. Then cut a |
| 28 | +# new index-vN so runtimes pick it up on their next pin bump. |
18 | 29 | version: 1 |
19 | 30 | models: |
20 | 31 | khm-latn-1.0: |
|
0 commit comments