The model never does the arithmetic.
Every number in a report comes from a tested, deterministic function. The language model is handed those results and writes the narrative — it cannot compute a severity, move a threshold or invent a frequency, because it is never asked to. The same functions run whether or not a model is involved, so the numbers are identical either way.
The order is fixed
Not chosen per file, not decided by a model. The same six steps in the same order, every time, so two runs of one file cannot disagree.
-
Quality gate — first, always
Is this data good enough to diagnose from? Sample rate, resolution, saturation, whether the machine was actually running. A gate failure ends the analysis: the only valid output is an insufficient-data report that names exactly what to re-collect. No diagnosis is made before the gate passes.
-
Machine context and ISO classification
Overall vibration velocity against the ISO 20816-3 zone boundaries for the machine's group and support — A good, B acceptable, C unsatisfactory, D unacceptable. Severity in the report is anchored to that zone, never to a model's adjective.
-
Trend, when there is history
A regression through the machine's own readings, and a projection to the next zone boundary. With one reading there is no trend, and the report says so rather than implying one.
-
Bearing fault identification
Fault frequencies are computed from the named bearing's geometry and the shaft speed — not looked up, not remembered — then matched against the peaks actually present. A match becomes a committed finding, or a differential candidate — something the evidence allows but does not establish — or nothing at all.
-
Synthesis
Findings across the layers are reconciled into one committed differential: the calls we stand behind, plus the candidates the interaction rules suppressed, each with the reason it was suppressed. Confidence is a computed grade — high, medium or low — from a weighted rubric of evidence factors, and the factors are printed.
-
What to measure next
Whenever the evidence cannot settle the differential, the report names the measurement that would. The same channel carries the gate-failure case: bad data in, a specific list of what to re-capture out.
Each step is one tested module, and the record of what they score against real laboratory data — including every miss — is on the validation record.
What it declines to do
Two of the five analysis layers stand down on a single uploaded file, and the report says so under Limitations rather than quietly reporting nothing:
-
Statistical baseline
The z-score layer needs a streaming baseline that a single file does not carry. On upload it declines; the history story is carried by the trend layer instead.
-
Multivariate anomaly
The Isolation Forest layer is stubbed pending a port, and is reported as declined — not as "no anomalies found", which would be a different and false statement.
Three guards that stop it guessing
Most of what makes a diagnostic tool trustworthy is what it refuses to say. These three were added because each removed real false positives without costing a true one — on the MAFAULDA healthy files, clean reports went from 1 in 10 to 6 in 10.
-
Synchronous-collision guard
Some bearing frequencies land almost exactly on a multiple of shaft speed. Within 2%, the two are indistinguishable. We report it as a possibility rather than a finding, and ask for a capture locked to shaft speed — that measurement tells them apart.
-
Amplitude floor
A matched peak must stand at least 12.73× above the average of the spectrum before we commit to it. Below that it is a possibility, and the report asks for an enveloping measurement.
-
Two-condition imbalance gate
Imbalance requires both radial-velocity dominance and a 1× line that leads the higher radial harmonics. The second condition is what separates imbalance from misalignment — which is why the axial channel matters.
These guards cost recall as well as buying precision, and the validation record states both sides: the four CWRU misses are all one weak-signal fault condition sitting below the floor, and that is written down rather than explained away.
Then a person signs it
The draft is checked claim by claim against the computed result before the report issues. If the drafting pass is unavailable, the deterministic report ships anyway with a visible note — a job degrades to fewer words, never to different numbers. Every report is marked DRAFT and carries a signature block, because a condition assessment is not certified until a qualified analyst says it is.