A technician asks why the alert fired. If the honest answer is “we retuned the threshold a few weeks ago and I am not sure which baseline it was tuned against,” the condition-monitoring system has a lineage problem, not a modelling problem. The model may be fine. What is missing is the versioned record that ties a specific reading-to-alert path back to the exact calibrated baseline and threshold configuration that produced it. This is the gap a Weights & Biases (W&B) artifact is supposed to close. In practice, most teams use it for something much smaller — a place to stash the latest trained anomaly model so a colleague can grab it. That works right up until someone has to sign off on a fired alert, at which point the convenience view collapses and the auditability view is the only one that matters. What does a wandb artifact actually do? A wandb artifact is a versioned, named object stored against a W&B project. You log something — a file, a directory, a reference to external storage — under a name, and W&B records it as a new version if the contents changed. Each version gets an immutable identifier; you can attach aliases (latest, production, signed-off) that move between versions as your workflow advances. When a training run consumes an artifact and produces another, W&B records that dependency, so the lineage between input data, model, and downstream artifacts is queryable rather than tribal knowledge. That is the mechanism. The reason it matters for condition monitoring is narrower than the general “track your ML assets” pitch. A vibration or temperature anomaly detector fires alerts based on a threshold, and that threshold was tuned against a specific baseline on a specific dataset. The alert is only defensible if all three — baseline, threshold config, and the data the sensitivity was tuned against — can be reconstructed for the exact version that was live when the alert fired. An untracked model gives you none of that. You have a binary and a vague memory of how it was calibrated. A wandb artifact, used properly, gives you the calibration lineage a sign-off actually requires. The misconception: an artifact is a model store The naive framing treats the artifact as a bucket for the model binary. Train, log the .pt or .onnx file as an artifact, move on. The teammate who needs it pulls latest. This is not wrong so much as incomplete — it captures the least reviewable part of the system. Here is why it fails under review. The model weights rarely explain an alert on their own. In an anomaly-detection setup, the operationally decisive quantities are the calibrated baseline (what “normal” was defined as), the threshold configuration (how far from normal triggers an alert), and the dataset that sensitivity was tuned against. Two deployments can share identical weights and behave completely differently because their thresholds were tuned against different baseline windows. If the artifact only holds the binary, the lineage you can reconstruct stops exactly where the reviewer’s question begins. The correct framing is that a wandb artifact earns its place when it captures the calibration lineage a sign-off requires — not just the model. That usually means logging the baseline, the threshold config, and a reference to the tuning dataset as artifacts (or as one composite artifact with its inputs recorded), so the fired alert traces back to a specific, immutable version of each. What should a condition-monitoring team version as an artifact? The short answer is: everything the reading-to-alert path depends on, separated so each can drift independently and be diffed independently. Bundling them into one opaque blob defeats the purpose, because you lose the ability to see which component changed between two re-calibrations. The table below is the decision surface we reach for when a team asks what belongs in an artifact versus what belongs elsewhere. Decision table: what to version, and where Asset Version as a W&B artifact? Why Trained anomaly model (weights) Yes Immutable reference for the model that scored the reading Calibrated baseline (definition of “normal”) Yes The alert is meaningless without the baseline it deviated from Threshold / sensitivity config Yes The single most drift-prone input; must be diffable version-to-version Tuning dataset (or a reference to it) Yes — as a distinct artifact Proves what the sensitivity was tuned against; needed for re-calibration audits Per-alert scalar telemetry (scores, timestamps) No — log as run metrics High-frequency, better in the run’s metric stream than as versioned files False-positive review decisions No — belongs in the review queue system Human adjudication governs precision at runtime, not calibration lineage The last two rows are the boundary that trips people up. The artifact captures calibration lineage; it is not a live event log and it is not the false-positive review queue. Runtime alert precision is still governed by whatever human-in-the-loop process adjudicates alerts — the artifact tells you which calibration produced the alert, not whether an operator later judged it a false positive. How does artifact versioning give a fired alert a reproducible lineage? The reproducibility comes from immutability plus consumed-input tracking. When a calibration run consumes a baseline artifact v4 and a tuning dataset v2 and produces a threshold-config artifact v7, W&B records that v7 was built from v4 and v2. If the deployment stamps every fired alert with the threshold-config version it used, then answering “why did this alert fire” becomes a lookup: alert → config v7 → baseline v4 → dataset v2. No archaeology, no guessing which spreadsheet held the thresholds that week. This is the same discipline we describe in how to use Weights & Biases to feed a production AI monitoring harness, applied to the calibration layer specifically rather than to training telemetry. It also complements what TensorBoard logging captures so calibration evidence survives — the run-level scalars live in the tracker, while the versioned, sign-off-grade objects live as artifacts. The measurable outcome we care about is the share of fired alerts whose calibration provenance can be reconstructed on demand. When that share is high, an audit that used to mean days of reconstructing what was live becomes a single artifact diff between two versions. That is the ROI, and it is directly checkable — either you can name the baseline and threshold version behind an arbitrary historical alert, or you cannot. How do versions and aliases track threshold drift across re-calibrations? Thresholds drift because sensors age, operating conditions shift, and teams retune to suppress nuisance alerts. Each retune is a new threshold-config artifact version. Because W&B versions are immutable and diffable, you can compare v6 against v7 and see precisely how the sensitivity moved, when, and against which baseline. Aliases such as production and signed-off let you distinguish “the version currently live” from “the version a reviewer approved” — a distinction that matters the moment those two diverge. Without this, drift is silent. Someone widens a threshold to quiet a noisy channel, nobody records the before-state, and three months later a genuine fault sits just inside the loosened band and never fires. That is the failure the versioning discipline exists to prevent: a threshold regression shipping unnoticed into a live condition-monitoring deployment. The concern connects to the broader question of tuning anomaly-detection sensitivity thresholds that hold — the tuning produces the threshold; the artifact makes the tuning defensible afterward. Across the condition-monitoring engagements we have worked on, the teams that suffer most from drift are almost always the ones that treated retuning as an operational adjustment rather than a versioned change (observed pattern across our engagements; not a benchmarked rate). The tooling to fix it was usually already in place — it was being used as a model store, not a lineage store. Where a wandb artifact fits alongside the validation pack A validation pack for an operational anomaly system has to exercise the sensitivity-calibration evidence, not just the model. The artifact is the concrete storage form of that evidence: a versioned, reviewable lineage for the sensor-to-alert path. This is the anchoring point for production reliability generally — the same principle that governs where reliability gates belong at each stage of an ML pipeline applies here, with the artifact serving as the evidence a calibration gate consumes. For teams building this into a broader reliability practice, the artifact-as-evidence pattern is part of how we think about production AI reliability: the validation lens treats calibrated thresholds as auditable objects, and W&B artifacts are one practical way to make them so. In energy and rotating-equipment deployments especially, where anomaly thresholds run against live vibration and temperature sensors, the versioned calibration artifact is what backs a reviewer’s willingness to sign off on the thresholds in production. FAQ What matters most about a wandb artifact in practice? A wandb artifact is a named, versioned object logged to a W&B project. Each time the contents change, W&B stores a new immutable version and records which runs produced or consumed it. In practice, this means you can trace any downstream output back to the exact inputs it was built from — which, for condition monitoring, is how a fired alert becomes reconstructable rather than a matter of memory. What should a condition-monitoring team store as a wandb artifact — the model, the calibrated baseline, the threshold config, or all three? All three, plus a reference to the dataset the sensitivity was tuned against, and each as a distinct version so it can drift and be diffed independently. The model binary alone is the least reviewable part; the baseline and threshold config are what make an alert defensible. Bundling them into one opaque blob defeats the purpose because you lose the ability to see which component changed between re-calibrations. How does artifact versioning give a fired alert a reproducible lineage a reviewer can sign off on? Because versions are immutable and consumed inputs are recorded, an alert stamped with its threshold-config version can be traced back through the baseline and dataset it was built from. Answering “why did this alert fire” becomes a lookup rather than archaeology. That turns an audit from days of reconstruction into a single artifact diff. How do artifact versions and aliases let you track threshold drift across successive re-calibrations? Each retune produces a new immutable threshold-config version, so you can diff v6 against v7 and see exactly how sensitivity moved and against which baseline. Aliases like production and signed-off separate what is currently live from what a reviewer approved. This makes drift visible and reviewable instead of silent. How does a wandb artifact fit alongside the sensitivity-calibration evidence a validation pack requires? The artifact is the concrete storage form of that evidence — a versioned, reviewable lineage for the sensor-to-alert path. A validation pack has to exercise the calibration evidence, and the artifact gives it immutable objects to point at. It is the evidence a calibration gate consumes. Where is the boundary between what a wandb artifact captures and the false-positive review queue that still governs alert precision in production? The artifact captures calibration lineage: which baseline and threshold version produced an alert. It is not a live event log and not the adjudication system. Runtime alert precision is still governed by whatever human-in-the-loop process judges alerts as true or false positives — the artifact tells you which calibration produced the alert, not what an operator concluded about it afterward. What is the difference between logging a model as an artifact and logging the dataset a threshold was tuned against, and why does condition monitoring need both? Logging the model versions the scorer; logging the tuning dataset versions the evidence for what the sensitivity was calibrated against. Condition monitoring needs both because identical weights can behave differently under different thresholds, and a threshold is only defensible if the data it was tuned against is reconstructable. Without the dataset artifact, a re-calibration audit cannot prove the threshold was ever appropriate. The question worth sitting with is not “which model version is live” but “for an alert that fired six weeks ago, can we name the baseline and threshold version that produced it — and prove they were signed off.” If the answer is no, the calibration evidence is not being versioned; it is being remembered. That is the exact failure the SVC-VALIDATION lens exists to catch before a threshold regression reaches a live sensor.