prepare-artifacts
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChinesePrepare Artifacts
准备可复现性工件
Turn a research codebase into a submittable, badge-ready reproducibility
artifact. Artifact evaluation is a separate, post-acceptance track at most
systems/PL/ML venues with its own deadline, its own appendix, and badges that
change per venue per year — this skill builds the package (README,
appendix, run instructions, anonymized repo, archival deposit guidance),
produces an artifact-readiness checklist and a packaging plan, and lints the
artifact directory for the bars reviewers actually check.
It does not run the author's experiments or claim a result reproduces — it
prepares and checks the package, and tells the author exactly what reviewers
will verify by hand.
将研究代码库转换为可提交、符合徽章要求的可复现性工件。工件评估是大多数系统/编程语言/机器学习会议中独立于论文评审的、在论文录用后的环节,有单独的截止日期、专属附录,且徽章要求每年随会议不同而变化——本工具可构建工件包(README、附录、运行说明、匿名仓库、归档存储指导),生成工件就绪检查清单和打包方案,并针对评审人员实际检查的标准对工件目录进行校验。
本工具不会运行作者的实验或声称结果可复现——它仅负责准备和检查工件包,并明确告知作者评审人员会人工验证的内容。
When to use
使用场景
- "My paper was accepted — how do I do the artifact evaluation / get a badge?"
- "Package / clean up my code for submission." / "anonymize my repo for review."
- "What's an artifact appendix / Artifacts Available / Functional / Reusable?"
- "Do I need a Zenodo DOI? concept vs version?" / "Software Heritage?"
- "Fill out the NeurIPS code/reproducibility or ACL repro checklist."
- "What does Reproduced vs Replicated mean for this badge?"
- Alongside (de-anonymization + final deposit overlap).
prepare-camera-ready
- "我的论文录用了——如何进行工件评估/获取徽章?"
- "打包/清理我的代码用于提交。" / "匿名化我的仓库用于评审。"
- "什么是工件附录/Artifacts Available/Functional/Reusable?"
- "我需要Zenodo DOI吗?概念DOI和版本DOI有什么区别?" / "什么是Software Heritage?"
- "填写NeurIPS代码/可复现性清单或ACL可复现性清单。"
- "对于该徽章,Reproduced和Replicated分别是什么意思?"
- 与配合使用(去匿名化+最终归档环节重叠)。
prepare-camera-ready
Inputs
输入信息
- The artifact directory — the code/data repo to be packaged (path).
- The target venue + track, and ideally (supplies the review blind level; create with
venues/conferences/<v>-<year>.ymlif missing). The venue profile does NOT encode the artifact track's badge offering or its separate deadline — those are fetched live (step 1).parse-cfp - The paper's major claims (for a per-claim reproduction plan) and whether the artifact is for review-phase (often double-blind) or the final deposit. These change everything (anonymized ZIP vs version DOI).
- 工件目录——待打包的代码/数据仓库(路径)。
- 目标会议+环节,理想情况下提供文件(提供评审盲审级别;若缺失可使用
venues/conferences/<v>-<year>.yml生成)。会议配置文件不包含工件环节的徽章类型或单独截止日期——这些信息会实时获取(步骤1)。parse-cfp - 论文的核心结论(用于制定逐结论的复现方案),以及工件是用于评审阶段(通常为双盲)还是最终归档。这会影响所有流程(匿名ZIP包 vs 版本DOI)。
Process
流程步骤
-
Fetch the venue's CURRENT Call for Artifacts — mandatory, live. Badge offerings vary per venue per year (OSDI '26 evaluates ONLY "Artifacts Available"; SOSP '26 offers all three). Memory and last year are stale by construction; verify live. From the live CFA confirm: which badges are offered this cycle, the separate artifact deadline, the archival-hosting requirement, the appendix template/length, and the blind model. Snapshots to start from (re-verify, don't trust): references/venue-artifact-rails.md. Record the chosen badge target + artifact deadline in.
.paper-memory/decisions.md -
Resolve the badge taxonomy and the era trap. Useto print the ACM v1.1 families/tiers and, critically, the Reproduced/Replicated swap: ACM inverted these terms on 2020-05-14, so a pre-2020 badge means the inverse (
python3 scripts/badge_advisor.py --badge <name>). Reproduction is never bit-exact — it must agree within a tolerance that does not change the paper's claims. Background: references/badging-standards.md.--era pre-2020 -
Lint the artifact directory against the bars reviewers check:
python3 scripts/check_artifact.py <artifact_dir> \ --venue venues/conferences/<v>-<year>.yml [--blind double]It reports, with file paths: the ML Code Completeness 5 items (dependency spec, training code, evaluation code, pre-trained models or a documented way to get them, a README with a results table + the exact reproduce command); archival readiness (GitHub-only vs a DOI/SWHID); double-blind anonymization (author names/emails, identifying URLs, adirectory, PDF/appendix metadata) — driven by the venue's blind level or.git; and hygiene (a LICENSE, upload-size cap). Flags:--blind,--json,--strict,--zip-cap-mb N. Exit codes: 0 clean, 1 errors, 2 usage. The lint covers FILES only — it cannot prove the build runs, that results reproduce, or that a DOI resolves.--venues-dir -
Build the package the venue asks for (with the author, not for them):
- README — overview, exact dependency install, the precise command to reproduce each result, a results table, hardware/runtime expectations, and the license. (ML Code Completeness item 5.)
- Artifact appendix — for USENIX-family Phase 2, a ≤3-page PDF (their LaTeX template): hardware/software/config, the paper's major claims, and a per-claim reproduction procedure + result-comparison method ("agrees if within X%"). For SIGMOD ARI, include experiment scripts AND graph-generation scripts ("similar behavior", not exact numbers).
- Checklists — fill the NeurIPS Paper Checklist / Code policy or the ACL "Responsible NLP Research" checklist accurately: an honest "no"/"n/a" with justification is safe; a missing or misleading filing is the desk-reject (ARR desk-rejects misleading filings since Dec 2024). Do not game boxes to "yes."
-
Anonymize for double-blind review (if review-phase). Ship an anonymized ZIP without, or proxy through Anonymous GitHub (anonymous.4open.science), listing every identifying term to scrub. Cover PDF/appendix metadata, acknowledgments, funding, and self-citation phrasing — same rules as the paper (
.git). Details: references/archival-hosting.md.anonymize-paper -
Plan the archival deposit. For "Artifacts Available," the permanent copy must be on an archival host — USENIX-family rejects GitHub/personal sites. Use a Zenodo version DOI for the final (a concept DOI is OK only during evaluation) and/or a Software Heritage SWHID (intrinsic, ISO/IEC 18670); they are complementary. Add CITATION.cff/codemeta so the archive emits citation metadata. De-anonymize and deposit the FINAL version at camera-ready ().
prepare-camera-ready -
Write the artifact-readiness checklist + packaging plan toand append a line to
paper-workspace/submission/artifact-readiness.md. Order by severity; cite each finding's source (the lint, the live CFA, the badge taxonomy). Re-run the lint until the file-level bars pass.paper-workspace/INDEX.md
-
实时获取目标会议当前的工件征集要求——强制步骤。徽章类型每年随会议不同而变化(OSDI '26仅评估「Artifacts Available」;SOSP '26提供全部三种徽章)。仅凭记忆或去年的信息必然过时;必须实时验证。从实时征集要求中确认:本届会议提供哪些徽章、工件环节的单独截止日期、归档存储要求、附录模板/篇幅限制,以及盲审模式。可参考快照(需重新验证,不可直接信任):references/venue-artifact-rails.md。将选定的目标徽章+工件截止日期记录到中。
.paper-memory/decisions.md -
解析徽章分类体系与术语陷阱。使用命令打印ACM v1.1的徽章分类层级,关键是要注意Reproduced/Replicated术语的变更:ACM在2020-05-14反转了这两个术语的含义,因此2020年前的徽章含义与现在相反(使用
python3 scripts/badge_advisor.py --badge <name>参数)。复现绝非完全精确的比特级匹配——只需在不改变论文结论的误差范围内达成一致。背景参考:references/badging-standards.md。--era pre-2020 -
针对评审标准校验工件目录:
python3 scripts/check_artifact.py <artifact_dir> \ --venue venues/conferences/<v>-<year>.yml [--blind double]该脚本会带文件路径报告以下内容:ML代码完整性的5项要求(依赖说明、训练代码、评估代码、预训练模型或获取方式说明、包含结果表+精确复现命令的README);归档就绪性(仅GitHub存储 vs DOI/SWHID存储);双盲匿名化(作者姓名/邮箱、可识别URL、目录、PDF/附录元数据)——由会议盲审级别或.git参数驱动;以及规范性检查(LICENSE文件、上传大小限制)。支持参数:--blind、--json、--strict、--zip-cap-mb N。退出码:0表示无问题,1表示存在错误,2表示使用不当。校验仅针对文件层面——无法证明构建可运行、结果可复现或DOI可访问。--venues-dir -
按照会议要求构建工件包(与作者协作,而非代劳):
- README——概述、精确的依赖安装步骤、复现每个结果的具体命令、结果表、硬件/运行时预期,以及许可证信息。(ML代码完整性第5项要求)
- 工件附录——对于USENIX系列的第二阶段,需提交**≤3页的PDF**(使用其LaTeX模板):硬件/软件/配置信息、论文的核心结论,以及逐结论的复现流程+结果对比方法(如“误差在X%以内即视为一致”)。对于SIGMOD ARI,需包含实验脚本和图表生成脚本(要求“行为相似”,而非精确数值)。
- 清单填写——准确填写NeurIPS论文清单/代码政策或ACL“负责任NLP研究”清单:诚实填写“否”/“不适用”并说明理由是安全的;遗漏或误导性填写会导致直接拒稿(自2024年12月起,ARR会因误导性填写直接拒稿)。不要为了勾选“是”而弄虚作假。
-
为双盲评审进行匿名化处理(若处于评审阶段)。提供不含的匿名ZIP包,或通过Anonymous GitHub(anonymous.4open.science)代理,列出所有需要清理的可识别内容。清理PDF/附录元数据、致谢、资助信息和自引用表述——遵循与论文匿名化相同的规则(
.git工具)。详细说明:references/archival-hosting.md。anonymize-paper -
规划归档存储方案。对于“Artifacts Available”徽章,永久副本必须存储在归档级平台——USENIX系列拒绝GitHub/个人站点。最终版本使用Zenodo版本DOI(评审阶段可使用概念DOI)和/或Software Heritage SWHID(符合ISO/IEC 18670标准);两者可互补。添加CITATION.cff/codemeta文件,以便归档平台生成引用元数据。在终稿提交阶段()进行去匿名化并完成最终归档。
prepare-camera-ready -
编写工件就绪检查清单+打包方案,保存到,并在
paper-workspace/submission/artifact-readiness.md中添加一行记录。按问题严重程度排序;注明每个发现的来源(校验结果、实时征集要求、徽章分类体系)。重新运行校验工具,直到文件层面的要求全部达标。paper-workspace/INDEX.md
Output
输出内容
- An artifact-readiness checklist (PASS / PASS-WITH-WARNINGS / FAIL with
file paths) plus a packaging plan: target badges (from the live CFA),
hosting (anonymized review copy + final version DOI/SWHID), the completeness
gaps to close, the appendix/checklist to fill, and the separate artifact
deadline. Written to .
paper-workspace/submission/ - Draft README / appendix / checklist content the author edits and owns.
- 工件就绪检查清单(通过/带警告通过/失败并附文件路径)和打包方案:目标徽章(来自实时征集要求)、存储方案(匿名评审副本+最终版本DOI/SWHID)、需填补的完整性缺口、需填写的附录/清单,以及工件环节的单独截止日期。保存到目录。
paper-workspace/submission/ - 供作者编辑和确认的README/附录/清单草稿内容。
Adapt to your discipline
适配不同学科
The badge taxonomy here is ACM/USENIX/SIGMOD/ETAPS/ML-venue specific. For other
fields, swap in your venue's artifact/data-availability rules (e.g. journal
"data availability statements", FAIR data deposits) — the completeness and
anonymization lints read the directory, not a discipline, so they still apply.
此处的徽章分类体系针对ACM/USENIX/SIGMOD/ETAPS/机器学习会议。对于其他领域,可替换为对应会议的工件/数据可用性规则(如期刊的“数据可用性声明”、FAIR数据归档要求)——完整性和匿名化校验仅针对目录内容,不局限于特定学科,因此仍适用。
Guardrails
注意事项
- Re-verify the venue's CURRENT artifact rules live (step 1 is not optional). Badge offerings change per venue per year; never assume from memory or last year. Overconfidence is highest right after a fetch — re-check the primary CFA.
- Never claim a result reproduces, and never demand bit-exact reproduction. ACM/SIGMOD/ETAPS require agreement within a tolerance that doesn't change the paper's claims. This skill prepares and checks the package; it does not run the experiments or judge the science.
- The Reproduced/Replicated terms were swapped in 2020 — check the badge era
() before interpreting them.
badge_advisor.py --era - Archival hosting is specific: a GitHub URL is not "Available" for the USENIX family — direct authors to a Zenodo version DOI / SWHID.
- Anonymization-aware: for double-blind, scrub , names, emails, URLs, and metadata before any review-phase upload.
.git - Accurate checklists, not gamed ones: honest "no"/"n/a" with justification is safe; misleading filings get desk-rejected.
- Copilot, not pilot: never deposit, never submit to an artifact-evaluation system, never complete a checklist form on the author's behalf. Prepare, lint, explain — the author clicks.
- Quote at most the flagged line/path; never bundle the author's artifact into this repo.
- 必须实时验证目标会议当前的工件规则(步骤1不可省略)。徽章类型每年随会议不同而变化;绝不要仅凭记忆或去年的信息判断。实时获取信息后仍需再次确认——务必核对官方征集要求原文。
- 绝不声称结果可复现,也绝不要求比特级精确复现。ACM/SIGMOD/ETAPS要求结果在不改变论文结论的误差范围内一致。本工具仅负责准备和检查工件包;不运行实验或评判科研内容。
- Reproduced/Replicated术语在2020年发生了含义反转——解读前需确认徽章的时代(使用参数)。
badge_advisor.py --era - 归档存储有明确要求:对于USENIX系列,GitHub链接不满足“Available”徽章要求——需引导作者使用Zenodo版本DOI/SWHID。
- 支持匿名化处理:双盲评审阶段,上传前需清理目录、姓名、邮箱、URL和元数据。
.git - 准确填写清单,拒绝弄虚作假:诚实填写“否”/“不适用”并说明理由是安全的;误导性填写会导致直接拒稿。
- 仅做辅助,不代劳:绝不自动归档、绝不向工件评估系统提交、绝不代作者填写清单表单。仅负责准备、校验、解释——最终操作由作者完成。
- 最多引用标记的行/路径;绝不将作者的工件打包到本仓库。
Memory
记忆机制
Uses the shared convention (full spec:
).
.paper-memory/paper-memory-convention.md- At start: read (skip re-flagging fixed items; lead with any
lessons.mdpackaging habits, e.g. "you tend to ship arecurringdirectory") and.git(the chosen venue/badge target + artifact deadline).decisions.md - At end: append the target badge + artifact deadline to , and one dated entry per finding worth remembering to
decisions.mdin the sharedlessons.mdformat (use- [YYYY-MM-DD] (prepare-artifacts | <scope>) issue -> recommendation'sreflect-and-improve, which dedupes/dates).reflect_log.py append - Create on demand and offer to add it to the project
.paper-memory/. Local-only; never upload it or copy it into this repo..gitignore
遵循共享的约定(完整规范:)。
.paper-memory/paper-memory-convention.md- 开始时:读取(跳过已修复的问题;优先提示重复出现的打包习惯,如“你通常会包含
lessons.md目录”)和.git(选定的会议/目标徽章+工件截止日期)。decisions.md - 结束时:将目标徽章+工件截止日期追加到,并将每个值得记录的发现按
decisions.md格式追加到- [YYYY-MM-DD] (prepare-artifacts | <范围>) 问题 -> 建议(可使用lessons.md的reflect-and-improve命令,该命令会自动去重并添加日期)。reflect_log.py append - 按需创建目录,并建议将其添加到项目的
.paper-memory/中。该目录仅本地存储;绝不上传或复制到本仓库。.gitignore