artifact-indexinglisted
Install: claude install-skill a-green-hand-jack/ml-project-repo-agent-native-template
# artifact-indexing
维护 repo 里所有产出 asset 的索引,让每个 asset 可被检索、可追溯到它的 commit/config/run,并能报告 stale/缺元数据的 asset。**只登记,不搬运字节。**
## 适用边界
适用:新 checkpoint/dataset/table/figure 产生、需要盘点或出 stale report、发现索引与磁盘不一致时。
不适用:需要删除或移动实际文件(禁止;只能出 archive-recommendation 供人类执行)。
## 输入 / 输出 artifact
- 输入:新产出的 asset 文件及其来源(run、config、commit)。
- 输出 / 维护:
- `lab/artifacts/*.yaml`
- `lab/models/checkpoint-index.yaml`
- `lab/data/dataset-index.yaml`
- `deliverables/index.md`
- stale asset report(写入 `lab/artifacts/` 下的 report 文件)。
## 需要读取的 ledger
- `.agent/artifact-policy.md`(索引字段、归档规则、命名)。
- 现有各 index YAML,用于 diff 出缺口。
## 允许修改的路径
- `lab/artifacts/*.yaml`
- `lab/models/checkpoint-index.yaml`
- `lab/data/dataset-index.yaml`
- `deliverables/index.md`
- 其余一律只读;**任何 asset 的 bytes 不得删除/移动**。
## 步骤
1. 发现 asset:定位新文件与其来源 run/config/commit。
2. 为每个 asset 记录关键字段(共同最小 schema 见 `.agent/artifact-policy.md`「provenance 链」,全部 7 类 index 统一,以 `result-index.yaml` 为基准):唯一 `id` / 描述性字段(`summary`,图表/模型对应 `caption`/`name`)/ `location`(外部 URI 或安全的 repo-relative regular file,拒绝 absolute/`..`/symlink escape/目录) / 非占位 `how_to_inspect` / `commit` + `config` + `run_id`(可复现三元组,全部 7 类统一必填,`run_id` 须指向 experiment-ledger 中已闭环 run;确无 run 来源的合法场景——外部 dataset、human-cc/agent trace、历史遗留——须显式豁免:`provenance_unavailable_reason` 固定枚举 external-origin/human-authored/legacy-untracked + `provenance_unavailable_justification` 非占位理由,不允许静默留空) / `supports`(支持哪个 claim,图表里是 `supports_claim`;model 另有 `checkpoint_ref` 指向 checkpoint-index