cloud.substratum.passport.receipt

official.fileorbit.cloud

Schema Diff

+5 -9

From

CID
bafyreihr6xnudyd...
Indexed At
2026-08-03 15:55 UTC
View this version

To

CID
bafyreibxxa4ukvw...
Indexed At
2026-08-15 19:24 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 2 non-breaking changes.

Breaking Changes (4)
  • RemovedVertex RemovedVertex { vertex_id: "cloud.substratum.passport.receipt.access_control" }
  • RemovedVertex RemovedVertex { vertex_id: "cloud.substratum.passport.receipt.access_control:items" }
  • RemovedEdge RemovedEdge { src: "cloud.substratum.passport.receipt", tgt: "cloud.substratum.passport.receipt.access_control", kind: "prop", name: Some("access_control") }
  • RemovedEdge RemovedEdge { src: "cloud.substratum.passport.receipt.access_control", tgt: "cloud.substratum.passport.receipt.access_control:items", kind: "items", name: None }
Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "cloud.substratum.passport.receipt.aclCid" }
  • AddedEdge AddedEdge { src: "cloud.substratum.passport.receipt", tgt: "cloud.substratum.passport.receipt.aclCid", kind: "prop", name: Some("aclCid") }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "cloud.substratum.passport.receipt.access_control" }
  • RemovedVertex { vertex_id: "cloud.substratum.passport.receipt.access_control:items" }

Added Elements

  • AddedVertex { vertex_id: "cloud.substratum.passport.receipt.aclCid" }

Additional Notes

  • Breaking: RemovedEdge { src: "cloud.substratum.passport.receipt", tgt: "cloud.substratum.passport.receipt.access_control", kind: "prop", name: Some("access_control") }
  • Breaking: RemovedEdge { src: "cloud.substratum.passport.receipt.access_control", tgt: "cloud.substratum.passport.receipt.access_control:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "cloud.substratum.passport.receipt", tgt: "cloud.substratum.passport.receipt.aclCid", kind: "prop", name: Some("aclCid") }
1 1
{
2 2
  "id": "cloud.substratum.passport.receipt",
3 3
  "defs": {
4 4
    "main": {
5 5
      "type": "object",
6 6
      "required": [
7 7
        "version",
8 8
        "assetCid",
9 9
        "ownerDid",
10 10
        "timestamp"
11 11
      ],
12 12
      "properties": {
13 +
        "aclCid": {
14 +
          "type": "string",
15 +
          "description": "CID of the share-ACL block in the drive metadata file (ADR 91). Never the ACL itself."
16 +
        },
13 17
        "version": {
14 18
          "type": "string",
15 19
          "description": "Schema version (e.g., '1.0.0')"
16 20
        },
17 21
        "assetCid": {
18 22
          "type": "string",
19 23
          "description": "The IPFS Content Identifier of the underlying asset"
20 24
        },
21 25
        "metadata": {
22 26
          "ref": "cloud.substratum.passport.assetMetadata#main",
23 27
          "type": "ref"
24 28
        },
25 29
        "ownerDid": {
26 30
          "type": "string",
27 31
          "format": "did",
28 32
          "description": "The DID of the user who owns the asset"
29 33
        },
30 34
        "timestamp": {
31 35
          "type": "string",
32 36
          "format": "datetime",
33 37
          "description": "ISO 8601 timestamp of the upload"
34 -
        },
35 -
        "access_control": {
36 -
          "type": "array",
37 -
          "items": {
38 -
            "type": "string",
39 -
            "format": "did"
40 -
          },
41 -
          "description": "List of DIDs authorized to access this asset."
42 38
        }
43 39
      },
44 -
      "description": "Cryptographic binding between an asset CID and its owner/Access Control."
40 +
      "description": "Cryptographic provenance binding between an asset CID and its owner. No grantee DIDs are stored here (ADR 91); the share ACL lives in the encrypted-at-rest metadata file on the private Swarm blockstore, referenced by aclCid."
45 41
    }
46 42
  },
47 43
  "$type": "com.atproto.lexicon.schema",
48 44
  "lexicon": 1
49 45
}

Compare Other Versions

Lexicon Garden

@