Skip to content
This repository was archived by the owner on May 24, 2026. It is now read-only.

Fix v1.1.0 commercial schema blockers: verify $ref, purchase duplicates, requester docs, and duplicate-key guard#16

Merged
GsCommand merged 1 commit into
mainfrom
codex/fix-release-blockers-for-v1.1.0
Mar 19, 2026
Merged

Fix v1.1.0 commercial schema blockers: verify $ref, purchase duplicates, requester docs, and duplicate-key guard#16
GsCommand merged 1 commit into
mainfrom
codex/fix-release-blockers-for-v1.1.0

Conversation

@GsCommand
Copy link
Copy Markdown
Contributor

Motivation

  • Eliminate release-blocking schema errors that break strict AJV compilation and create ambiguous JSON artifacts.
  • Restore intended commercial semantics for purchase receipts (strict x402 proof) and verify flows (explicit verifier typing).
  • Make duplicate-key regressions easier to detect in CI by adding a small pre-parse guard.

Description

  • Replace the broken inlined verifier actor in schemas/v1.1.0/commercial/verify/verify.receipt.schema.json with a reference to the existing #/$defs/verifier_actor, preserving the role = verifier constraint.
  • Remove duplicate $defs.settlement and duplicate payment_proof keys from schemas/v1.1.0/commercial/purchase/purchase.receipt.schema.json and keep the stricter x402_proof shape as the active payment_proof mapping.
  • Clarify requester semantics by updating schemas/v1.1.0/commercial/verify/verify.request.schema.json description and the two main normative docs (README.md, SPEC.md) to state that requester is a verify-specific initiator field reusing the general actor identity rather than adding a new governed actor role.
  • Add a lightweight duplicate-object-key detector (assertNoDuplicateObjectKeys) to scripts/validate-all.mjs and scripts/validate-examples.mjs so JSON sources fail fast before JSON.parse can hide duplicate keys, and regenerate checksums.txt to reflect the schema edits.

Testing

  • Ran npm run validate and it passed (schema tree, AJV strict compile, index/manifest/layout checks all OK).
  • Ran npm run validate:examples and it passed (all verb example groups validated as expected).
  • Confirmed verify.receipt compiles under strict AJV with a focused ajv.compile check and it succeeded.
  • Ran the duplicate-key source check against schemas/v1.1.0/commercial/purchase/purchase.receipt.schema.json and verified the file is valid JSON with no duplicate object keys.
  • Regenerated checksums.txt and re-ran integrity validation; the integrity check passed.

Codex Task

@GsCommand GsCommand merged commit f5c558a into main Mar 19, 2026
1 check passed
@GsCommand GsCommand deleted the codex/fix-release-blockers-for-v1.1.0 branch March 20, 2026 01:49
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant