addrbookFor publishers
← The evidence ledger

Evidence row 3064974

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://api.fresh402.com/v2/smart-diff
Recorded
Previous row
#2633869
Body SHA-256
425cf2c85daa3b7a265c1c3d1d931b68cbdc38a62e7a2f35404b8c83064805a3
Leaf
0xb087f72add77f42bff19713f43507217f23ae90aac506de193505ab44a08ee5f

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://api.fresh402.com/v2/smart-diff"
    ]
  ],
  "name": "Fresh402",
  "owner_address": "0xfac492a8d7843c9afcca6a1691bccb5425ab14f3",
  "raw": {
    "accepts": [
      {
        "amount": "15000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0xFAC492A8D7843C9aFCCa6A1691BCCB5425ab14F3",
        "scheme": "exact"
      }
    ],
    "description": "Use Smart Diff for structured document changes and rule-based significance evidence after free registration. Compare against the previous snapshot, fixed baseline or an available same-watch hash. Saved scope is reused; legacy HTML can lack structure. Not an API compatibility proof. x402 $0.015 USDC on Base.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "compare_to": "previous",
              "watch_id": "w_0123456789abcdef0123456789abcdef"
            },
            "bodyType": "json",
            "method": "POST",
            "type": "http"
          },
          "output": {
            "example": {
              "algorithm": "deterministic-v1",
              "changed": true,
              "changes": {
                "added": [],
                "modified": [
                  {
                    "after": 20,
                    "before": 10,
                    "path": "/price"
                  }
                ],
                "removed": []
              },
              "changes_truncated": false,
              "compare_to": "previous",
              "comparison_quality": "structural",
              "comparison_source": "smart_snapshot",
              "content_kind": "json",
              "counts": {
                "added": 0,
                "modified": 1,
                "removed": 0
              },
              "final_url": "https://example.com/",
              "hash": "1111111111111111111111111111111111111111111111111111111111111111",
              "previous_hash": "0000000000000000000000000000000000000000000000000000000000000000",
              "semantic_model_used": false,
              "significance": {
                "level": "medium",
                "reasons": [
                  "content_changed",
                  "numeric_or_price_change"
                ],
                "rules_version": 2,
                "score": 45
              },
              "url": "https://example.com/",
              "watch_id": "w_0123456789abcdef0123456789abcdef"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "body": {
                  "$schema": "https://json-schema.org/draft/2020-12/schema",
                  "additionalProperties": false,
                  "description": "Compare a required existing watch against previous or baseline (default previous), or use previous_hash to override the mode. Fetches the current source using saved rules; no cache-age option. Truncated or incompatible legacy baselines can return 409; legacy HTML may have text-only fidelity. Unknown fields are rejected.",
                  "properties": {
                    "compare_to": {
                      "default": "previous",
                      "description": "Optional comparison mode: 'previous' (default) uses the latest Smart Diff snapshot, falling back to the current registered watch state on the first call. 'baseline' uses the fixed Smart Diff baseline, initially seeded from the earliest retained compatible watch snapshot. previous_hash overrides either mode. 'hash' is a result label, not an accepted input value.",
                      "enum": [
                        "previous",
                        "baseline"
                      ],
                      "type": "string"
                    },
                    "json_array_keys": {
                      "description": "Optional1-4 explicit nonoverlapping JSON array identity rules, JSON only. Omit for existing index comparison. Matches unique typed scalar keys, reports moves separately from content changes; pure reorder is changed:false while source hashes remain order-sensitive. At most2000 combined array items/20000 comparison work units, no fallback for ambiguity. Rules affect this comparison only, not the watch/hash; persist identical input for payment recovery. Example:[{path:'/items',key:'/id'}].",
                      "items": {
                        "additionalProperties": false,
                        "description": "Explicit JSON array identity rule. Both paths must resolve; missing/duplicate/invalid identities fail422 without index fallback. Source snapshot ordering/hash is retained.",
                        "properties": {
                          "key": {
                            "description": "Nonempty exact RFC6901 pointer within each object item, up to256 characters/64 segments; e.g.'/id' or '/product/sku'. Every key must exist and be a unique nonempty string<=256 characters or safe integer; number1 differs from string'1'.",
                            "maxLength": 256,
                            "minLength": 1,
                            "pattern": "^(?:\\/(?:[^~]|~[01])*)?$",
                            "type": "string"
                          },
                          "path": {
                            "description": "Exact RFC6901 pointer to an array on both compared JSON documents, up to256 characters/64 segments. Empty string selects a root array. Example:'/items'; no wildcards or automatic ID guessing.",
                            "maxLength": 256,
                            "pattern": "^(?:\\/(?:[^~]|~[01])*)?$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "path",
                          "key"
                        ],
                        "type": "object"
                      },
                      "maxItems": 4,
                      "minItems": 1,
                      "type": "array"
                    },
                    "previous_hash": {
                      "description": "Optional explicit reference hash: 64 hexadecimal characters, case-insensitive, from this same watch's retained Smart Diff snapshot, fixed baseline or retained registration/Check snapshot. Overrides compare_to. Unknown or pruned hashes return 404; recent snapshot history is limited to 20 per store, with the fixed Smart Diff baseline retained separately. Omit for the selected mode.",
                      "pattern": "^[a-fA-F0-9]{64}$",
                      "type": "string"
                    },
                    "watch_id": {
                      "description": "Required existing watch ID: 'w_' plus 32 lowercase hexadecimal characters, returned by free fresh402_register or POST /v1/register (a URL-based Check can also create it). Reuses the saved public URL and content rules; do not pass url or new rules here. Replace illustrative IDs with a real returned ID before paying.",
                      "pattern": "^w_[a-f0-9]{32}$",
                      "type": "string"
                    }
                  },
                  "required": [
                    "watch_id"
                  ],
                  "type": "object"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "algorithm": {
                      "type": "string"
                    },
                    "array_move_count": {
                      "type": "integer"
                    },
                    "array_moves": {
                      "items": {
                        "properties": {
                          "after_path": {
                            "type": "string"
                          },
                          "array_key": {
                            "properties": {
                              "pointer": {
                                "type": "string"
                              },
                              "value": {
                                "type": [
                                  "string",
                                  "integer"
                                ]
                              }
                            },
                            "required": [
                              "pointer",
                              "value"
                            ],
                            "type": "object"
                          },
                          "before_path": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "before_path",
                          "after_path",
                          "array_key"
                        ],
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "array_moves_truncated": {
                      "type": "boolean"
                    },
                    "changed": {
                      "type": "boolean"
                    },
                    "changes": {
                      "properties": {
                        "added": {
                          "items": {
                            "properties": {
                              "after": {},
                              "after_path": {
                                "type": "string"
                              },
                              "array_key": {
                                "properties": {
                                  "pointer": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": [
                                      "string",
                                      "integer"
                                    ]
                                  }
                                },
                                "required": [
                                  "pointer",
                                  "value"
                                ],
                                "type": "object"
                              },
                              "before": {},
                              "before_path": {
                                "type": "string"
                              },
                              "path": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "path"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        },
                        "modified": {
                          "items": {
                            "properties": {
                              "after": {},
                              "after_path": {
                                "type": "string"
                              },
                              "array_key": {
                                "properties": {
                                  "pointer": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": [
                                      "string",
                                      "integer"
                                    ]
                                  }
                                },
                                "required": [
                                  "pointer",
                                  "value"
                                ],
                                "type": "object"
                              },
                              "before": {},
                              "before_path": {
                                "type": "string"
                              },
                              "path": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "path"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        },
                        "removed": {
                          "items": {
                            "properties": {
                              "after": {},
                              "after_path": {
                                "type": "string"
                              },
                              "array_key": {
                                "properties": {
                                  "pointer": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": [
                                      "string",
                                      "integer"
                                    ]
                                  }
                                },
                                "required": [
                                  "pointer",
                                  "value"
                                ],
                                "type": "object"
                              },
                              "before": {},
                              "before_path": {
                                "type": "string"
                              },
                              "path": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "path"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        }
                      },
                      "type": "object"
                    },
                    "changes_truncated": {
                      "type": "boolean"
                    },
                    "compare_to": {
                      "enum": [
                        "previous",
                        "baseline",
                        "hash"
                      ]
                    },
                    "comparison_quality": {
                      "enum": [
                        "structural",
                        "legacy_text"
                      ]
                    },
                    "comparison_source": {
                      "type": "string"
                    },
                    "content_kind": {
                      "type": "string"
                    },
                    "counts": {
                      "properties": {
                        "added": {
                          "type": "integer"
                        },
                        "modified": {
                          "type": "integer"
                        },
                        "removed": {
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "fetched_at": {
                      "type": "string"
                    },
                    "final_url": {
                      "type": "string"
                    },
                    "hash": {
                      "type": "string"
                    },
                    "html_attribute_rules_version": {
                      "const": 1
                    },
                    "html_attributes": {
                      "items": {
                        "enum": [
                          "href",
                          "title",
                          "alt",
                          "aria-label"
                        ]
                      },
                      "type": "array"
                    },
                    "json_array_keys": {
                      "items": {
                        "properties": {
                          "key": {
                            "type": "string"
                          },
                          "path": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "path",
                          "key"
                        ],
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "persistence_error": {
                      "type": "string"
                    },
                    "previous_hash": {
                      "type": "string"
                    },
                    "semantic_model_used": {
                      "type": "boolean"
                    },
                    "significance": {
                      "properties": {
                        "level": {
                          "enum": [
                            "none",
                            "low",
                            "medium",
                            "high"
                          ]
                        },
                        "reasons": {
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "rules_version": {
                          "type": "integer"
                        },
                        "score": {
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "url": {
                      "type": "string"
                    },
                    "warnings": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "watch_id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "watch_id",
                    "hash",
                    "changed",
                    "changes",
                    "counts",
                    "significance"
                  ],
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1793758835/bazaar-icons/ff5e17044e175886.png",
    "lastUpdated": "2026-11-04T02:20:49.463Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-11-04T02:20:48.665Z"
    },
    "resource": "https://api.fresh402.com/v2/smart-diff",
    "serviceName": "Fresh402",
    "tags": [
      "document-comparison",
      "json-diff",
      "html-diff"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Use Smart Diff for structured document changes and rule-based significance evidence after free registration. Compare against the previous snapshot, fixed baseline or an available same-watch hash. Saved scope is reused; legacy HTML can lack structure. Not an API compatibility proof. x402 $0.015 USDC on Base."
}

What the leaf hashes

{"body":"425cf2c85daa3b7a265c1c3d1d931b68cbdc38a62e7a2f35404b8c83064805a3","id":3064974,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793822235414047,"prev":2633869,"subject":"x402_bazaar:https://api.fresh402.com/v2/smart-diff","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (424109 rows).

  1. 0xb087ea03518ec1d498bebac471bc97c7e38d3ccb5de8322e6c9731e535c20413
  2. 0x3bd9cda99fee7cc4352d2db8eb737f54f859fe5a22d901b1cecdeaa5fe93f18a
  3. 0x3dca5b35645e54896e174e68e76756924b6b14d88796e502f69b7f7f663b185c
  4. 0xadccf51f0eb118c4365ded8c90337b83ffe586036384cd851bb41e9c9c3f9c0f
  5. 0xdd410adb019a1da2639d0c02f1572fc82a1a9b47f6400943508e720fb5dcc545
  6. 0x13283780f3926d8f7d02d25c42b5b70a9922668dd95c38e32ad1c2eabb15aa8f
  7. 0x96d6a10a06e9a9761b865892e43d2c528ba0cbd295a606a752ec13407da0f609
  8. 0xedff99f0310ee68e2cc6b15b020f15cd9fcc2db0343ae964fb6e43601c3ca6d3
  9. 0x8e06fe1047fb960eead0146c9b7d25c73366bdb1d4bb0abd4e8e6bda7e4e03ab
  10. 0x683f81540026ba2bb4700b3a10e1afe8010f75d82d865437e0cee6147c227223
  11. 0xc3966760d556d9c5dfc591dbb9905d9eead297319b92ef149e15bd7227e13517
  12. 0x9de4b6e228ea97444945b5210721ef75db9da660cabae836f3e0688b85a14603
  13. 0xe0c107caa77d5efbcc89600269de124b9669a0ee20ae1f6465c79cd503bfc9ae
  14. 0x1088369e34916a33a3c583323d2fc4f49164cbac20b02de75926f72398b939bf
  15. 0x9efef3631f971f9adf134dd93a6862b2ba10ef6a355b78514b4cc469a0d1496c
  16. 0xaf6861b690de8e69efdec688615139e2df9624a773d4c6017d1ef5841d1ac724
  17. 0x321a352f90893ccd0656c1544d31825cd29cf74464e924a4ca7fb29b1f8ee0fd
  18. 0x9c1c771179da4a002386557e8601b2d4983c3e366808477ee20da18c282c1dd8
  19. 0xbb1998892a86d9633ea7b5de06760114b45777da649c217062ff0d65d7095f34
Day root
0xd4eed8c0ea3c90ec6f262b19fcc3b849f30cb82a0f84b8b89569e48af7d0c1ee
Chained
0x59305749c32724a02a23c368834d8a36ae9908da93a915e2962fffe01b4e591b
Published
On Arc Testnet, block 70772483: 0x813d56041c1efd407e56047129b597b154a1cb26458bb2768fd0a4630ac97345

How to check it · This row as JSON