AER-1 corpus vectors / Workflow merkle seq output v1
xversion-seq-output-v1-evaluated-as-receipt-id-v0
Family: Workflow merkle seq output v1. Source: workflow-merkle-seq-output-v1.json in the AER-1 corpus published at zambo.dev/aer1/corpus.json (kit 1.5.7, draft-zambo-aer1-26), file SHA-256 30b63977d7ccc4177e2c2524520dcbbb0a352c572561aa3d3c4fe4d60cf55f40. Vector file schema: zambo-workflow-merkle-vectors/1.
What this vector covers
Cross-version must-fail: the seq-output-v1-multi-step close, evaluated under the receipt-id-v0 leaf rule (SHA-256 over the receipt_id string), recomputes to a different root and MUST be rejected. The close itself remains valid under its declared merkle_version; the cross_version_evaluation block carries the must-fail expectation, in the must_not_equal style of merkle-vectors.json.
Input
The vector input, exactly as published in the corpus:
{
"source_vector": "seq-output-v1-multi-step",
"merkle_version": "seq-output-v1",
"steps": [
{
"seq": 1,
"receipt_id": "receipt-1",
"output_hash": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"seq": 2,
"receipt_id": "receipt-2",
"output_hash": "1111111111111111111111111111111111111111111111111111111111111111"
}
],
"merkle_root": "05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637",
"cross_version_evaluation": {
"merkle_version": "receipt-id-v0",
"computed_root": "242397c374053da292c53b4854271684b030f3cc014d5d3f8dcda83f9f7a95de",
"must_not_equal": "05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637",
"expected_verdict": "invalid",
"rejected_by": "merkle_root mismatch"
}
}
Expected result
expected_verdict: validmerkle_root: 05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637cross_version_evaluation.merkle_version: receipt-id-v0cross_version_evaluation.computed_root: 242397c374053da292c53b4854271684b030f3cc014d5d3f8dcda83f9f7a95decross_version_evaluation.must_not_equal: 05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637cross_version_evaluation.expected_verdict: invalidcross_version_evaluation.rejected_by: merkle_root mismatch
Checks it exercises
| Check | Requirement | Why |
|---|---|---|
| verdict | must-pass | Cross-version must-fail: the seq-output-v1-multi-step close, evaluated under the receipt-id-v0 leaf rule (SHA-256 over the receipt_id string), recomputes to a different root and MUST be rejected. The close itself remains valid under its declared merkle_version; the cross_version_evaluation block carries the must-fail expectation, in the must_not_equal style of merkle-vectors.json. |
| merkle root | must-pass | The corpus records merkle_root as 05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637 for this vector. A correct run must produce this root value. |
| cross-version verdict | must-fail | Evaluated under receipt-id-v0, the corpus records expected_verdict: invalid. The block records rejected_by: merkle_root mismatch. |
| cross-version root must not equal | must-fail | The cross-version block records must_not_equal as 05c3b7f7dd7e18ba3ff6a7459d6950d3fa89f72ac2c88dc6c5576da25878a637. |
Try Zambo free: add Zambo to your AI to run this kind of check on your own agent work, with 20 free calls per day and a Day Pass at $0.99 for 24h when you need more. Every call returns a verifiable receipt, and a receipt proves the saved result was not changed.
See the full set in the AER-1 corpus vectors index and the AER-1 corpus checks index, or read the standard itself: draft-zambo-aer1-26.