ICRA Artifact Evaluation
ICRA, unlike several software-systems conferences, has had no standing artifact
evaluation committee or badge system in recent cycles (re-check the current
year's calls before asserting this to authors — tracks appear and disappear).
The absence cuts both ways: nobody will certify your artifact, and nobody will
catch its problems before readers do. This skill applies an artifact-evaluator's
discipline voluntarily, because in robotics the artifact often is the
contribution's proof.
The robotics artifact stack
A robotics paper's artifact is rarely just "the code." Inventory all six layers
and decide, per layer, released / partially released / withheld-with-reason:
| Layer |
Typical contents |
Common blocker |
| Algorithms |
planners, controllers, learning code |
none — release |
| Integration |
ROS launch files, configs, calibration |
"works only on our stack" |
| Simulation |
worlds, robot models (URDF/SDF), randomization |
third-party asset licenses |
| Learned weights |
trained policies, perception models |
training data licensing |
| Hardware design |
CAD, PCB, BOM for custom parts |
patent/commercialization plans |
| Evidence |
rosbags, trial videos, session sheets |
raw-log size (TB-scale) |
A paper whose novelty is a custom end effector but which releases only Python
scripts has released the wrong layer. Match the release to the claim.
The five-minute-skeptic standard
Package for a reviewer who gives you five minutes before forming a judgment:
git clone <anonymized-artifact-url> && cd artifact
docker build -t icra-artifact . # or: ./setup.sh — one command, pinned deps
docker run icra-artifact make figure3 # regenerate a headline result in sim
docker run icra-artifact make table2 # recompute stats from released logs
cat CLAIMS.md # claim → command → expected output map
- The first runnable thing must not require a robot: a simulation reproduction
or a log-replay analysis gives the skeptic a win in minutes.
CLAIMS.md maps each paper claim to a command and its expected output, and
explicitly lists which claims require physical hardware (audit tier — see
icra-reproducibility).
- Pin everything: base image, ROS distro, Python deps, simulator version.
"Latest Gazebo" is a bug report generator.
Hardware-dependent artifacts
For layers that need the physical robot:
- Ship a log-replay mode: the perception and decision stack runs against
released rosbags, letting readers verify the pipeline without the arm.
- Ship the sim twin: the same launch files targeting the simulated platform,
clearly marked as not the source of the paper's hardware numbers.
- Document the hardware interface narrowly (which driver topics/services the
stack expects) so ports to other platforms are feasible.
- For custom mechanisms, releasing CAD + BOM converts "trust our gripper" into
"build our gripper"; if commercialization blocks this, say so in the paper
rather than staying silent.
Datasets and logs as artifacts
- Extracted per-trial features plus a representative raw sample beat an
undifferentiated terabyte dump; provide a download script with checksums.
- License explicitly (CC-BY for data, permissive or copyleft choice for code);
robotics data with humans in frame needs consent/ethics notes.
- Long-term hosting: university archives, Zenodo-style DOI services, or IEEE
DataPort outlive lab NAS boxes and personal cloud links.
Review-time vs acceptance-time states
Under the double-anonymous policy (2026 cycle onward), the artifact has two
lives:
- Review state: anonymized hosting, no org/usernames in URLs, git history
squashed (history leaks author emails), license file present but
copyright-holder line deferred ("held for anonymity").
- Public state (post-acceptance): real hosting, authors restored, DOI
minted, README linking the IEEE Xplore entry, camera-ready pointing at the
permanent URL (coordinate with
icra-camera-ready).
Prepare both from the start; converting a name-riddled repo to anonymous form
in deadline week always misses something.
Safety as an artifact property
Robotics artifacts can move mass. Before anyone external runs your controller:
- Ship conservative default limits (velocity, torque, workspace bounds) and
make the paper's aggressive settings an explicit opt-in flag.
- Document the E-stop assumption and any human-proximity constraints in the
hardware protocol, not just the lab's tribal knowledge.
- State firmware/driver versions known to behave; a controller tuned on one
firmware can oscillate on another, and that failure lands on your artifact's
reputation.
Withholding honestly
Legitimate reasons to withhold layers exist (industrial partners, export
controls, safety of a hazardous procedure). The rule is disclosure: state in
the paper what is withheld and why, and maximize the released remainder — e.g.,
withheld weights but released training code and evaluation harness. Undisclosed
gaps discovered later cost more reputation than declared ones.
Packaging sequence
- Inventory the six layers; mark release state and blockers for each.
- Build the Docker/pinned environment; verify
make figure3 on a clean machine.
- Write
CLAIMS.md; separate rerunnable from hardware-audit claims.
- Add log-replay mode and sim twin for hardware-bound layers.
- Produce the anonymized review state; leak-check URLs, history, metadata.
- Stage the public state for acceptance day.
Output format
[Layer inventory] released: <layers> | partial: <layers> | withheld: <layers+reason>
[Five-minute test] clean-machine run of headline command: pass / fail
[CLAIMS.md] complete: y/n — hardware-only claims flagged: <list>
[Replay/sim twin] present: y/n
[Anonymity state] review-safe: y/n — leaks: <list>
[Hosting] review URL type + acceptance-day plan
Source: brycewang-stanford/Awesome-Journal-Skills → ICRA-Skills/skills/icra-artifact-evaluation/SKILL.md
1---2name: icra-artifact-evaluation3description: Use when packaging the artifacts behind an ICRA paper — ROS packages, controllers, simulation environments, trained policies, CAD and PCB files, datasets, and trial logs — into something a robotics reviewer or reader can actually run or audit, given that ICRA has no formal artifact-badging track to certify it for you.4---567# ICRA Artifact Evaluation89ICRA, unlike several software-systems conferences, has had no standing artifact10evaluation committee or badge system in recent cycles (re-check the current11year's calls before asserting this to authors — tracks appear and disappear).12The absence cuts both ways: nobody will certify your artifact, and nobody will13catch its problems before readers do. This skill applies an artifact-evaluator's14discipline voluntarily, because in robotics the artifact often *is* the15contribution's proof.1617## The robotics artifact stack1819A robotics paper's artifact is rarely just "the code." Inventory all six layers20and decide, per layer, released / partially released / withheld-with-reason:2122| Layer | Typical contents | Common blocker |23|---|---|---|24| Algorithms | planners, controllers, learning code | none — release |25| Integration | ROS launch files, configs, calibration | "works only on our stack" |26| Simulation | worlds, robot models (URDF/SDF), randomization | third-party asset licenses |27| Learned weights | trained policies, perception models | training data licensing |28| Hardware design | CAD, PCB, BOM for custom parts | patent/commercialization plans |29| Evidence | rosbags, trial videos, session sheets | raw-log size (TB-scale) |3031A paper whose novelty is a custom end effector but which releases only Python32scripts has released the wrong layer. Match the release to the claim.3334## The five-minute-skeptic standard3536Package for a reviewer who gives you five minutes before forming a judgment:3738```bash39git clone <anonymized-artifact-url> && cd artifact40docker build -t icra-artifact . # or: ./setup.sh — one command, pinned deps41docker run icra-artifact make figure3 # regenerate a headline result in sim42docker run icra-artifact make table2 # recompute stats from released logs43cat CLAIMS.md # claim → command → expected output map44```4546- The first runnable thing must not require a robot: a simulation reproduction47 or a log-replay analysis gives the skeptic a win in minutes.48- `CLAIMS.md` maps each paper claim to a command and its expected output, and49 explicitly lists which claims require physical hardware (audit tier — see50 `icra-reproducibility`).51- Pin everything: base image, ROS distro, Python deps, simulator version.52 "Latest Gazebo" is a bug report generator.5354## Hardware-dependent artifacts5556For layers that need the physical robot:5758- Ship a **log-replay mode**: the perception and decision stack runs against59 released rosbags, letting readers verify the pipeline without the arm.60- Ship the **sim twin**: the same launch files targeting the simulated platform,61 clearly marked as not the source of the paper's hardware numbers.62- Document the hardware interface narrowly (which driver topics/services the63 stack expects) so ports to other platforms are feasible.64- For custom mechanisms, releasing CAD + BOM converts "trust our gripper" into65 "build our gripper"; if commercialization blocks this, say so in the paper66 rather than staying silent.6768## Datasets and logs as artifacts6970- Extracted per-trial features plus a representative raw sample beat an71 undifferentiated terabyte dump; provide a download script with checksums.72- License explicitly (CC-BY for data, permissive or copyleft choice for code);73 robotics data with humans in frame needs consent/ethics notes.74- Long-term hosting: university archives, Zenodo-style DOI services, or IEEE75 DataPort outlive lab NAS boxes and personal cloud links.7677## Review-time vs acceptance-time states7879Under the double-anonymous policy (2026 cycle onward), the artifact has two80lives:81821. **Review state:** anonymized hosting, no org/usernames in URLs, git history83 squashed (history leaks author emails), license file present but84 copyright-holder line deferred ("held for anonymity").852. **Public state (post-acceptance):** real hosting, authors restored, DOI86 minted, README linking the IEEE Xplore entry, camera-ready pointing at the87 permanent URL (coordinate with `icra-camera-ready`).8889Prepare both from the start; converting a name-riddled repo to anonymous form90in deadline week always misses something.9192## Safety as an artifact property9394Robotics artifacts can move mass. Before anyone external runs your controller:9596- Ship conservative default limits (velocity, torque, workspace bounds) and97 make the paper's aggressive settings an explicit opt-in flag.98- Document the E-stop assumption and any human-proximity constraints in the99 hardware protocol, not just the lab's tribal knowledge.100- State firmware/driver versions known to behave; a controller tuned on one101 firmware can oscillate on another, and that failure lands on your artifact's102 reputation.103104## Withholding honestly105106Legitimate reasons to withhold layers exist (industrial partners, export107controls, safety of a hazardous procedure). The rule is disclosure: state in108the paper what is withheld and why, and maximize the released remainder — e.g.,109withheld weights but released training code and evaluation harness. Undisclosed110gaps discovered later cost more reputation than declared ones.111112## Packaging sequence1131141. Inventory the six layers; mark release state and blockers for each.1152. Build the Docker/pinned environment; verify `make figure3` on a clean machine.1163. Write `CLAIMS.md`; separate rerunnable from hardware-audit claims.1174. Add log-replay mode and sim twin for hardware-bound layers.1185. Produce the anonymized review state; leak-check URLs, history, metadata.1196. Stage the public state for acceptance day.120121## Output format122123```text124[Layer inventory] released: <layers> | partial: <layers> | withheld: <layers+reason>125[Five-minute test] clean-machine run of headline command: pass / fail126[CLAIMS.md] complete: y/n — hardware-only claims flagged: <list>127[Replay/sim twin] present: y/n128[Anonymity state] review-safe: y/n — leaks: <list>129[Hosting] review URL type + acceptance-day plan130```131132---133134**Source:** [`brycewang-stanford/Awesome-Journal-Skills`](https://github.com/brycewang-stanford/Awesome-Journal-Skills) → `ICRA-Skills/skills/icra-artifact-evaluation/SKILL.md`