src/autoskillit/skills_extended/exp-lens-reproducibility-artifacts/SKILL.md
Create Reproducibility Artifacts experimental design diagram showing run instructions, environment capture, data availability, determinism controls, and audit trail. Transparency lens answering "Could an independent party reproduce this?"
npx skillsauth add talont-org/autoskillit exp-lens-reproducibility-artifactsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Philosophical Mode: Transparency Primary Question: "Could an independent party reproduce this?" Focus: Run Instructions, Environment Capture, Data Availability, Determinism Controls, Audit Trail
/autoskillit:exp-lens-reproducibility-artifacts [context_path] [experiment_plan_path]
/autoskillit:exp-lens-reproducibility-artifacts or /autoskillit:make-experiment-diag reproducibilityNEVER:
{{AUTOSKILLIT_TEMP}}/exp-lens-reproducibility-artifacts/run_in_background: true is prohibited)ALWAYS:
Trace the full chain from "clone repo" to "reproduce figures"
Classify every artifact as available/unavailable and versioned/floating
Identify the weakest link in the reproduction chain
Flag all silent non-determinism risks
BEFORE creating any diagram, LOAD the /autoskillit:mermaid skill using the Skill tool - this is MANDATORY
If the Skill tool cannot be used (disable-model-invocation) or refuses this invocation, do NOT proceed with diagram creation. Abort this step and omit the diagram from output.
Write output to {{AUTOSKILLIT_TEMP}}/exp-lens-reproducibility-artifacts/exp_diag_reproducibility_artifacts_{YYYY-MM-DD_HHMMSS}.md
After writing the file, emit the structured output token as literal plain text with no markdown formatting on the token name (the adjudicator performs a regex match):
diagram_path = /absolute/path/to/{{AUTOSKILLIT_TEMP}}/exp-lens-reproducibility-artifacts/exp_diag_reproducibility_artifacts_{...}.md
If positional arg 1 (context_path) is provided and the file exists, read it to obtain IV/DV tables, H0/H1 hypotheses, controlled variables, and success criteria. If positional arg 2 (experiment_plan_path) is provided and exists, read the experiment plan for full methodology. Use this structured context as the foundation for Steps 1-5; skip the CWD exploration for these fields if the context file supplies them.
Spawn Explore subagents to investigate:
Environment & Dependencies
Data Provenance
Execution Entry Points
Random Seed & Determinism
Output Artifacts & Logging
Map the full chain from "clone repo" to "reproduce figures." Identify each link:
CRITICAL — Analyze Reproduction Chain: For every artifact dependency:
Assign a status of Pass, Warn, or Fail to each link in the chain based on reproducibility confidence.
Use flowchart with:
Direction: LR (reproduction chain flows left to right)
Subgraphs:
Node Styling:
cli class: Entry points and run commandsstateNode class: Versioned and pinned artifactshandler class: Transforms and scriptsoutput class: Results and figuresgap class: Missing or undocumented linksdetector class: Checksum and validation gatesphase class: External dependenciesEdge Labels: pinned, floating, deterministic, nondeterministic, gated
Write the diagram to: {{AUTOSKILLIT_TEMP}}/exp-lens-reproducibility-artifacts/exp_diag_reproducibility_artifacts_{YYYY-MM-DD_HHMMSS}.md (relative to the current working directory)
# Reproducibility Artifacts Diagram: {Experiment Name}
**Lens:** Reproducibility Artifacts (Transparency)
**Question:** Could an independent party reproduce this?
**Date:** {YYYY-MM-DD}
**Scope:** {What was analyzed}
## Artifact Inventory
| Artifact | Available? | Versioned? | Deterministic? |
|----------|------------|------------|----------------|
| {artifact} | {Yes/No/Gated} | {Pinned/Floating/None} | {Yes/No/Unknown} |
## Reproduction Chain Diagram
```mermaid
%%{init: {'flowchart': {'nodeSpacing': 50, 'rankSpacing': 60, 'curve': 'basis'}}}%%
flowchart LR
%% CLASS DEFINITIONS %%
classDef cli fill:#1a237e,stroke:#7986cb,stroke-width:2px,color:#fff;
classDef stateNode fill:#004d40,stroke:#4db6ac,stroke-width:2px,color:#fff;
classDef handler fill:#e65100,stroke:#ffb74d,stroke-width:2px,color:#fff;
classDef phase fill:#6a1b9a,stroke:#ba68c8,stroke-width:2px,color:#fff;
classDef newComponent fill:#2e7d32,stroke:#81c784,stroke-width:2px,color:#fff;
classDef output fill:#00695c,stroke:#4db6ac,stroke-width:2px,color:#fff;
classDef detector fill:#b71c1c,stroke:#ef5350,stroke-width:2px,color:#fff;
classDef gap fill:#ff6f00,stroke:#ffa726,stroke-width:2px,color:#000;
classDef integration fill:#c62828,stroke:#ef9a9a,stroke-width:2px,color:#fff;
subgraph Source ["SOURCE CODE"]
REPO["Git Repository<br/>━━━━━━━━━━<br/>Commit hash<br/>Branch"]
ENTRY["Entry Point<br/>━━━━━━━━━━<br/>run.sh / Makefile"]
end
subgraph Env ["ENVIRONMENT"]
DEPS["Dependencies<br/>━━━━━━━━━━<br/>requirements.txt / lock"]
MISSING["Undocumented Dep<br/>━━━━━━━━━━<br/>No version pin"]
EXTDEP["External Service<br/>━━━━━━━━━━<br/>API / cloud resource"]
end
subgraph Data ["DATA"]
RAW["Raw Dataset<br/>━━━━━━━━━━<br/>Checksum available?"]
CHKSUM["Checksum Gate<br/>━━━━━━━━━━<br/>sha256 / md5"]
GATED["Gated Dataset<br/>━━━━━━━━━━<br/>Access required"]
end
subgraph Exec ["EXECUTION"]
SEED["Seed Control<br/>━━━━━━━━━━<br/>PYTHONHASHSEED<br/>random_state"]
SCRIPT["Pipeline Script<br/>━━━━━━━━━━<br/>Deterministic?"]
end
subgraph Outputs ["OUTPUTS"]
RESULTS["Results / Metrics<br/>━━━━━━━━━━<br/>Logged?"]
FIGS["Figures<br/>━━━━━━━━━━<br/>Reproducible?"]
end
%% REPRODUCTION CHAIN %%
REPO -->|"pinned"| ENTRY
ENTRY -->|"loads"| DEPS
DEPS -.->|"floating"| MISSING
MISSING -.->|"nondeterministic"| SCRIPT
EXTDEP -->|"gated"| SCRIPT
RAW -->|"verify"| CHKSUM
CHKSUM -->|"deterministic"| SCRIPT
GATED -.->|"gated"| SCRIPT
SEED -->|"controls"| SCRIPT
SCRIPT -->|"produces"| RESULTS
SCRIPT -->|"generates"| FIGS
%% CLASS ASSIGNMENTS %%
class REPO,ENTRY cli;
class DEPS,RAW stateNode;
class SCRIPT,SEED handler;
class EXTDEP phase;
class RESULTS,FIGS output;
class CHKSUM detector;
class MISSING,GATED gap;
Color Legend: | Color | Category | Description | |-------|----------|-------------| | Dark Blue | Entry Point | Run commands and source code | | Teal | Versioned Artifact | Pinned dependencies and checksummed data | | Orange | Transform / Script | Pipeline scripts and execution steps | | Purple | External Dependency | External services and APIs | | Dark Teal | Output | Results, metrics, and figures | | Red | Validation Gate | Checksum and integrity checks | | Amber | Missing Link | Undocumented or gated dependencies |
Step-by-step instructions with pass/fail status:
| Link | Issue | Severity | Recommendation | |------|-------|----------|----------------| | {link} | {undocumented/gated/floating/nondeterministic} | {High/Medium/Low} | {action} |
---
## Pre-Diagram Checklist
Before creating the diagram, verify:
- [ ] LOADED `/autoskillit:mermaid` skill using the Skill tool
- [ ] Using ONLY classDef styles from the mermaid skill (no invented colors)
- [ ] Diagram will include a color legend table
---
## Related Skills
- `/autoskillit:make-experiment-diag` - Parent skill for lens selection
- `/autoskillit:mermaid` - MUST BE LOADED before creating diagram
- `/autoskillit:exp-lens-pipeline-integrity` - For data leakage audit
- `/autoskillit:exp-lens-variance-stability` - For result stability across seeds
development
Generate YAML recipes for .autoskillit/recipes/. Use when user says "make script skill", "generate script", "script a workflow", "write a script", "create a script", "new recipe", "write a pipeline", or when loaded by other skills for script formatting.
data-ai
Create Uncertainty Representation visualization planning spec showing error bar definitions, distribution-aware alternatives, and multi-seed variance protocols. Statistical lens answering "How is uncertainty honestly represented?"
data-ai
Create Temporal Dynamics visualization planning spec showing axis scaling (linear vs log), smoothing disclosure, epoch/step alignment, run aggregation (mean + variance bands), early-stopping markers, and wall-clock vs step-count x-axis. Temporal lens answering "Are training dynamics shown clearly and honestly?"
data-ai
Create Narrative Story Arc visualization planning spec showing visual consistency across the report (same color = same model everywhere), logical figure progression, redundant figure detection, and narrative dependency between figures. Narrative lens answering "Do the figures tell a coherent story across the report?"