Diff baseline p8-43-invoice-tolerance-5pct · 1250813d6b0b against candidate p8-44-invoice-quantity-changed · e16123f05acd
What changed Proof Both runs' records agree. Every check behind this is on Proof
The short answer
The runs first differ at read_invoice, where input invoice changed.
No stage comes before it. Both stages after it differ.
read_invoice First difference match Changed after it approve_payment Changed after it Checked from the records. The same answer every time.
What changed between the two runs
The two runs differ.
First difference: stage 1 · read_invoice.
No stage comes before it.
input invoice changed: 08c2ed453001 -> d18a612009b4 · the changed lines
Both runs' records agree. No recorded setting of read_invoice differs. Its output differs, and all 2 stages after it changed too.
onetrace diff runs/p8-43-invoice-tolerance-5pct runs/p8-44-invoice-quantity-changed --text
recorded as a straight line (no graph recorded)
A link shows which recorded output a stage read. It does not by itself prove that one stage caused the next.
Settings that changed No recorded setting differs between the two runs.
The first difference is at stage 1 · read_invoice. No smaller set was reported.
The text diff Shown with at most 200 lines per output (the SDK's default).
Open the text diff on its own page
first difference: read_invoice — output text changed; settings unchanged; input invoice changed
read_invoice · First difference settings: none changed
input invoice (externally-sourced) changed: 08c2ed453001 -> d18a612009b4; text kept
invoice.json application/json Baseline: verified Candidate: verified
1 line removed · 1 added
1 1 {
2 2 "item": "steel bracket, 40 mm",
3 3 "order": "PO-501",
4 - "quantity": "40 ",
4 + "quantity": "400 ",
5 5 "unit_price": "12.80"
6 6 }match · Changed after it settings: none changed
input invoice.json (operator-authored) changed: b3faf9601bdd -> 3840d84e286e; content not stored
match.json application/json Baseline: verified Candidate: verified
3 lines removed · 5 added
1 1 {
2 - "amount": "512 .00",
2 + "amount": "5120 .00",
3 - "matched": true ,
3 + "matched": false ,
4 4 "order": "PO-501",
5 - "problems": []
5 + "problems": [
6 + "quantity invoiced 400, quantity received 40"
7 + ]
6 8 }approve_payment · Changed after it settings: none changed
input match.json (operator-authored) changed: e61819271007 -> 4ee97c400dce; content not stored
payment.json application/json Baseline: verified Candidate: verified
3 lines removed · 5 added
1 1 {
2 - "amount": "512.00",
3 - "decision": "pay",
4 - "problems": []
2 + "amount": "5120.00",
3 + "decision": "hold",
4 + "problems": [
5 + "quantity invoiced 400, quantity received 40"
6 + ]
5 7 }Command: onetrace diff runs/p8-43-invoice-tolerance-5pct runs/p8-44-invoice-quantity-changed --text
Repeat this yourself:
onetrace diff runs/p8-43-invoice-tolerance-5pct runs/p8-44-invoice-quantity-changed
Other runs that recorded the same value Matching rule: the same input invoice digest at stage 1 · read_invoice, by exact equality: sha256:d18a612009b4…. sha256:d18a612009b4ca9718de43df4fc7b0f3d06a976f327a906d8376df6c45bc1766
1 of 4 stored runs in P8 recorded the same input invoice digest at stage 1 · read_invoice, the candidate among them.
Nothing here says what the change did in those runs.
What may have happened This demo kept no explanation of this comparison.
This record shows what was verified and evaluated at the time — not what was ultimately true.