用途
本技能为单个实验的 skore 报告生成人类可读的叙述性审计。审计文件采用 jupytext percent 格式(# %%),路径为 audit/NN_<short_name>.py,与 experiments/ 和 journal/ 保持一一对应,该文件作为人类笔记本不会被 AI 执行。materialize.py 在一次运行中写出摘要与 HTML 查看器,整个过程对 skore Project 保持只读。
主要能力
- 生成人类面向的审计叙述,描述该报告自身的发现,而非技能框架、CLI 或产出命令。
- 执行一次
materialize.py后产出 digest、checks、metrics 以及额外的查看器。 - 通过
project.summarize()、project.get(id)和report.*访问器读取报告。 - 派生 G-AUDIT-FINDING 归一化发现,供
manage-ml-backlog的 record-outcome 消费。
使用方式
- 先运行
python -m skore_skills status,检查status.setup.pending。若待处理且已安装 setup-ml-project,则先加载它并停止本技能。 - 确认四方配对:
journal/NN_<short_name>.md设计说明、experiments/NN_<short_name>.py脚本、tests/smoke/test_NN_<short_name>.py通过的冒烟测试、以及audit/NN_<short_name>.py。 - 确认报告存在于 skore Project 中对应 key 下,通过本轮的
project.summarize()验证。 - 确认 agent feature 可用(
ipython/ipykernel),缺失则委托给 add-python-package 安装,不得自行编写安装命令。 - 从
templates/audit.py放置审计文件,并将templates/materialize.py复制到scratch/,仅执行一次。 - 派生 G-AUDIT-FINDING,然后进入继续或关闭的关卡。
- 使用
python -m skore_skills api get解析本轮所需的 skore 符号,禁止凭记忆使用符号。
适用场景
- 已完成的运行需要审计。
- 用户要求审计、展示或重新审计某个实验。
- 重跑覆盖了同一个
put()键。 - 用户希望在没有
journal/ideas/文件的情况下获得过往实验的叙述。
限制
- 对 skore Project 只读:禁止
skore.evaluate(...)和project.put(...)。 - 审计文件不得写快照文件、
locator.txt、help()循环;这些属于materialize.py。 - 不得写入
data/、reports/或src/<pkg>/。 project.get(...)按 id 而非 key 查询;hub 模式需从put()打印的 URL 读取 id。- 每个实验 stem 仅一个审计文件,重跑时原地覆盖。
- 执行产物写入
scratch/audit/<stem>/,不得复制审计文件到 scratch。 - 不得在审计单元中过滤警告,除非用户明确要求。
- 停止条件:
status.setup.pending非空、无已批准设计、无报告、无 agent feature,或涉及原始数据探索或未来实验取材。 - 缺失的事实(如具体价格、平台、执行时长)暂未提供。