Observed
The published crate is 1.4.1 (2026-08-03). The fixes from #66 (merged 2026-08-24, closing #43, #45 and #46) are on main but unreleased; release PR #67 is open with them staged. Executed today against both binaries:
| Command |
crates.io 1.4.1 |
main (9f91c3d) |
ucp-schema validate inst.json --op create --schema source/schemas/common/types/payment_instrument.json --def selected_payment_instrument in the ucp repo at v2026-08-25 |
stack overflow, exit 134 |
normal verdict |
ucp-schema resolve recursive.json --op create --request --bundle on an internal #/$defs/node self cycle |
stack overflow, exit 134 |
exit 0 |
inst.json is {"handler_id":"h","type":"card"}; recursive.json is the schema from #46. The first row runs against the released spec tree: payment_instrument.json at v2026-08-25 carries the $ref: "#" def pattern from #45, so def selection on the current release of the spec aborts under the current release of the crate. #43 also recorded verdict flips in both directions on the checkout payment instrument chain under 1.4.1.
Consequence
cargo install ucp-schema serves 1.4.1, and the ucp repo CI installs whatever version crates.io reports, so consumers validating the v2026-08-25 schemas outside this repo get the pre #66 binary. The spec repo gates stay green under 1.4.1 only because no example in the repo exercises these paths.
Ask
Cut the release staged in #67 so the published crate carries #66.
Observed
The published crate is 1.4.1 (2026-08-03). The fixes from #66 (merged 2026-08-24, closing #43, #45 and #46) are on main but unreleased; release PR #67 is open with them staged. Executed today against both binaries:
ucp-schema validate inst.json --op create --schema source/schemas/common/types/payment_instrument.json --def selected_payment_instrumentin the ucp repo at v2026-08-25ucp-schema resolve recursive.json --op create --request --bundleon an internal#/$defs/nodeself cycleinst.jsonis{"handler_id":"h","type":"card"};recursive.jsonis the schema from #46. The first row runs against the released spec tree:payment_instrument.jsonat v2026-08-25 carries the$ref: "#"def pattern from #45, so def selection on the current release of the spec aborts under the current release of the crate. #43 also recorded verdict flips in both directions on the checkout payment instrument chain under 1.4.1.Consequence
cargo install ucp-schemaserves 1.4.1, and the ucp repo CI installs whatever version crates.io reports, so consumers validating the v2026-08-25 schemas outside this repo get the pre #66 binary. The spec repo gates stay green under 1.4.1 only because no example in the repo exercises these paths.Ask
Cut the release staged in #67 so the published crate carries #66.