A camera frame decides pass or reject. See which step's output moved, and whether the decision did.
A camera's frame of a bottle on a line comes in as a small array of brightness values. The pipeline measures the fill level, passes or rejects the bottle, and records the command a line would be given.
Invented example data, recorded when the demo was built. The demo records and compares; it controls nothing. The screenshots are from a build of the same demo: each build gives its runs new fingerprints and times, so those differ from the live demo's, and what the screenshots show is the same.
The pipeline
Three steps, from a frame to a reject command.
measurereads the fill level, with the toolfill-level-camera.classifypasses a bottle filled to the reject line or above, and rejects one below it.reject_commandrecords the command a line would be given.
What the demo plants
The runs, and what was changed in each.
| Run | What was changed |
|---|---|
p6-36-fill-baseline | Nothing: the baseline. |
p6-37-fill-exposure-changed | The camera's exposure, a setting of measure's tool. |
p6-38-fill-below-reject-line | A bottle filled below the reject line. |
What onetrace shows
Each change, located in the record.
The exposure change: the level moves, the decision doesn't
measure reads 130 mm where it read 110, so it is the first difference. The bottle still passes: classify and reject_command produce the same output as in the baseline, and the page marks them Same again. The exposure sits inside the tool's configuration, shown as its fingerprint differing.
measure, then Same again.The under-filled bottle: rejected
The frame itself differs, so measure reads 70 mm, classify says reject where it said pass, and reject_command records "reject the bottle" where it recorded none. No setting changed: the page says the input differs.
What it doesn't say
A located change, not a reason.
The comparison shows where the outputs part and that the decision held or flipped. It doesn't say whether the exposure or the reject line is set right. See what each verdict means and what onetrace does not claim.
Try it yourself: this pipeline in the live demo, or on your machine with pip install onetrace-console and onetrace-console demo --open.

