com.publicdomainrelay.temp.market.receipt

johnandersen777.bsky.social

Schema Diff

+17 -1

From

CID
bafyreiagsm5fpnm...
Indexed At
2026-05-17 20:59 UTC
View this version

To

CID
bafyreiddn2yrpxl...
Indexed At
2026-06-11 14:13 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 6 non-breaking changes.

Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.cid" }
  • AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.signatures" }
  • AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.submitEvent" }
  • AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.cid", kind: "prop", name: Some("cid") }
  • AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.signatures", kind: "prop", name: Some("signatures") }
  • AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.submitEvent", kind: "prop", name: Some("submitEvent") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.cid" }
  • AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.signatures" }
  • AddedVertex { vertex_id: "com.publicdomainrelay.temp.market.receipt:body.submitEvent" }

Additional Notes

  • Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.cid", kind: "prop", name: Some("cid") }
  • Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.signatures", kind: "prop", name: Some("signatures") }
  • Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.market.receipt:body", tgt: "com.publicdomainrelay.temp.market.receipt:body.submitEvent", kind: "prop", name: Some("submitEvent") }
1 1
{
2 2
  "id": "com.publicdomainrelay.temp.market.receipt",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "tid",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "rfp",
11 11
          "bid",
12 -
          "accept"
12 +
          "accept",
13 +
          "cid",
14 +
          "signatures"
13 15
        ],
14 16
        "properties": {
15 17
          "bid": {
16 18
            "ref": "com.atproto.repo.strongRef",
17 19
            "type": "ref",
18 20
            "description": "Strong reference to the bid record (for example a com.publicdomainrelay.temp.market.bid.x402)."
19 21
          },
22 +
          "cid": {
23 +
            "type": "string",
24 +
            "format": "cid",
25 +
            "description": "badge.blue attestation CID over the referenced accept record, making this receipt a remote attestation proof: computed from the accept record (signatures stripped), this receipt's metadata (cid/signatures stripped, repository = accept's repo DID added) as $sig, via DAG-CBOR + SHA-256 + CIDv1. Binds the receipt to the accept's exact content in the requester's repository."
26 +
          },
20 27
          "rfp": {
21 28
            "ref": "com.atproto.repo.strongRef",
22 29
            "type": "ref",
23 30
            "description": "Strong reference to the rfp record (for example a com.publicdomainrelay.temp.market.rfp)."
24 31
          },
25 32
          "accept": {
26 33
            "ref": "com.atproto.repo.strongRef",
27 34
            "type": "ref",
28 35
            "description": "Strong reference to the accept record (for example a com.publicdomainrelay.temp.market.accept.x402)."
29 36
          },
30 37
          "payload": {
31 38
            "ref": "com.atproto.repo.strongRef",
32 39
            "type": "ref",
33 40
            "description": "Strong reference to the receipt record if there is anything to note about the receipt (for example a com.publicdomainrelay.temp.market.receipt.x402)."
41 +
          },
42 +
          "signatures": {
43 +
            "ref": "network.attested.signature#signatures",
44 +
            "type": "ref",
45 +
            "description": "badge.blue attestations over this receipt. Must include the provider's inline signature, attached at creation."
46 +
          },
47 +
          "submitEvent": {
48 +
            "type": "string",
49 +
            "description": "Service DID reference (did:web:HOST#compute_event) of the provider's compute-event service, scoped to this receipt's strongRef. The requester calls com.publicdomainrelay.temp.market.submitEvent via PDS service-proxying using this value as the atproto-proxy target, to report lifecycle events the provider cannot observe itself (e.g. compute.events.vm.delete when a workflow finishes or its policy engine never comes up), since the provider treats provisioned resources as a black box."
34 50
          }
35 51
        }
36 52
      },
37 53
      "description": "Receipt for acceptance of a bid on an RFP"
38 54
    }
39 55
  },
40 56
  "$type": "com.atproto.lexicon.schema",
41 57
  "lexicon": 1
42 58
}

Compare Other Versions

Lexicon Garden

@