Profile Audit Guide¶
Guide Maps¶
graph LR
family["Reproducible Research"]
program["Deep Dive Snakemake"]
guide["Capstone docs"]
section["Docs"]
page["Profile Audit Guide"]
proof["Proof route"]
family --> program --> guide --> section --> page
page -.checks against.-> proof
flowchart LR
orient["Read the guide boundary"] --> inspect["Inspect the named files, targets, or artifacts"]
inspect --> run["Run the confirm, demo, selftest, or proof command"]
run --> compare["Compare output with the stated contract"]
compare --> review["Return to the course claim with evidence"]
Use this guide when the question is about execution policy: executor choice, resources, or operating context. The point is not whether the profiles differ. The point is whether they differ only in policy, not in workflow meaning.
Use profile-summary after profile-audit when you want the compact comparison JSON.
What the Slurm profile represents¶
profiles/slurm/config.yaml is the portable scheduler-policy surface used by this
course. It deliberately defines only context-owned behavior that can be reviewed without
access to a particular cluster.
An operator supplies site-owned values such as executor plugin, account, partition, quality of service, and storage roots through a documented overlay or invocation. Those values may map declared resources and operating context; they may not replace sample membership, analytical parameters, final output identities, or publish paths.
This division keeps the capstone executable on ordinary machines while still teaching a real scheduler boundary. It is not a claim that one profile can submit unchanged to every Slurm installation.
Primary review route¶
- Run
make profile-audit. - Read
route.txtandreview-questions.txt. - Compare
profiles/local/config.yaml,profiles/ci/config.yaml, andprofiles/slurm/config.yaml. - Compare
local-dryrun.txt,ci-dryrun.txt, andslurm-dryrun.txt. - Run
make profile-summaryonly if you want the compact comparison surface.
What the audit should prove¶
- executor and resource policy are visible as configuration
- the workflow plan stays semantically stable across operating contexts
- profile differences do not become hidden analytical changes
Review questions¶
- Which differences are expected because of execution context?
- Which difference would worry you because it smells like semantic drift?
- Which profile should a maintainer inspect first before approving a move to new infrastructure?