A membership item placing one edition in a custom collection. Duplicate convention: the rkey is a TID minted once at first create and never changes. Several records may exist for one actor and edition (for example from out-of-band writers); consumers SHOULD treat the record with the greatest `addedAt` as the winner and break ties by the lowest TID, ignoring the others. This is a convention, not an enforced contract: AppViews MUST tolerate a differing winner, and may see a record's catalogTarget change over time.
tid
Timestamp-based ID
Properties
addedAt
string
datetime
Required
Canonical UTC instant serialized as ISO 8601 with a trailing Z suffix.
catalogSnapshot
ref
social.dracome.work.defs#catalogSnapshot
Required
Point-in-time catalog metadata for the added work or edition, captured when this record was last written. Refreshed on every update.
catalogTarget
ref
social.dracome.work.defs#catalogTarget
Required
The work and edition that this membership item represents. Mutable.
collection
ref
#collectionRef
Required
Reference to the custom collection this item belongs to.
position
integer
Required
Sparse integer ordering within one custom collection. Gaps are allowed so reorder writes can stay bounded.
minimum: 0View raw schema
{
"description": "A membership item placing one edition in a custom collection. Duplicate convention: the rkey is a TID minted once at first create and never changes. Several records may exist for one actor and edition (for example from out-of-band writers); consumers SHOULD treat the record with the greatest `addedAt` as the winner and break ties by the lowest TID, ignoring the others. This is a convention, not an enforced contract: AppViews MUST tolerate a differing winner, and may see a record's catalogTarget change over time.",
"key": "tid",
"record": {
"properties": {
"addedAt": {
"description": "Canonical UTC instant serialized as ISO 8601 with a trailing Z suffix.",
"format": "datetime",
"type": "string"
},
"catalogSnapshot": {
"description": "Point-in-time catalog metadata for the added work or edition, captured when this record was last written. Refreshed on every update.",
"ref": "social.dracome.work.defs#catalogSnapshot",
"type": "ref"
},
"catalogTarget": {
"description": "The work and edition that this membership item represents. Mutable.",
"ref": "social.dracome.work.defs#catalogTarget",
"type": "ref"
},
"collection": {
"description": "Reference to the custom collection this item belongs to.",
"ref": "#collectionRef",
"type": "ref"
},
"position": {
"description": "Sparse integer ordering within one custom collection. Gaps are allowed so reorder writes can stay bounded.",
"minimum": 0,
"type": "integer"
}
},
"required": [
"collection",
"catalogTarget",
"catalogSnapshot",
"position",
"addedAt"
],
"type": "object"
},
"type": "record"
}