Diff

baseline p8-43-invoice-tolerance-5pct · 1250813d6b0b against candidate p8-44-invoice-quantity-changed · e16123f05acd

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.

  1. read_invoiceFirst difference
  2. matchChanged after it
  3. approve_paymentChanged 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 kept input text Baseline: verified Candidate: verified

1 line removed · 1 added

11  # invented example data for this demo
22  # invoice INV-1001, against purchase order PO-501
33  item,quantity,unit_price
4- steel bracket, 40 mm,40,12.80
4+ steel bracket, 40 mm,400,12.80

invoice.json application/json Baseline: verified Candidate: verified

1 line removed · 1 added

11  {
22    "item": "steel bracket, 40 mm",
33    "order": "PO-501",
4-   "quantity": "40",
4+   "quantity": "400",
55    "unit_price": "12.80"
66  }

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

11  {
2-   "amount": "512.00",
2+   "amount": "5120.00",
3-   "matched": true,
3+   "matched": false,
44    "order": "PO-501",
5-   "problems": []
5+   "problems": [
6+     "quantity invoiced 400, quantity received 40"
7+   ]
68  }

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

11  {
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+   ]
57  }

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.