From
bafyreigknnmb6mqy3xoszv3xvgoqafgdm6ppdcl2b2slrqwc4xfyp4bjdi
indexed 2026-07-26 20:07 UTC
View this version
To
bafyreie3buvlrassadyjq7yq2mk7py66zneqopcbwji2wfuvwp2z62zy64
indexed 2026-09-29 18:38 UTC
View this version
Compatibility
backward compatible No changes detected.
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"main": {5
"description": "A stems group: a structural grouping of stems that is downloadable/sellable as a unit, independent of any release (FM-549 s38). First record under the net-new group.* segment (named group.stems, not group.stemsGroup — the segment already says 'group') (for sets that fit neither collection.* — the curatorial lens — nor release — the put-out work). Points DOWN at its member stems; the sold-product name lives here.",5
"description": "A stems group: a structural grouping of stems that is downloadable/sellable as a unit, independent of any release (FM-549 s38). First record under the net-new group.* segment (named group.stems, not group.stemsGroup — the segment already says 'group') (for sets that fit neither collection.* — the curatorial lens — nor release — the put-out work). Points DOWN at its member stems; the sold-product name lives here. RELATIONSHIP TO fm.freemix.release: a release is a separate 'put-out work' wrapper that MAY include this record as one of its members; this record is the structural group itself, not the release.",66
"key": "tid",77
"record": {88
"properties": {99
"coverArtUrl": {1010
"description": "URL to cover art image.",1111
"format": "uri",1212
"maxLength": 3000,1313
"type": "string"1414
},1515
"createdAt": {1616
"description": "Record creation timestamp.",1717
"format": "datetime",1818
"maxLength": 100,1919
"type": "string"2020
},2121
"currency": {2222
"description": "ISO-4217 currency code. Phase 1 = USD only. INLINE sellability shape — keep in sync across sellable types.",2323
"knownValues": [2424
"USD"2525
],2626
"maxLength": 3,2727
"type": "string"2828
},2929
"description": {3030
"description": "Stems-group description.",3131
"maxLength": 5000,3232
"type": "string"3333
},3434
"members": {3535
"description": "Ordered member stems (container points DOWN at members). AT-URI refs to fm.freemix.stem records. Stems also carry an optional parentGroup back-ref (the only upward ref).",3636
"items": {3737
"properties": {3838
"cid": {3939
"description": "CID of the member stem (pins to exact version). Optional.",4040
"format": "cid",4141
"maxLength": 200,4242
"type": "string"4343
},4444
"position": {4545
"description": "Display order within the group (0-indexed).",4646
"minimum": 0,4747
"type": "integer"4848
},4949
"uri": {5050
"description": "AT URI of the member stem record.",5151
"format": "at-uri",5252
"maxLength": 3000,5353
"type": "string"5454
}5555
},5656
"required": [5757
"uri"5858
],5959
"type": "object"6060
},6161
"maxLength": 200,6262
"type": "array"6363
},6464
"parentTrack": {6565
"description": "AT URI of the track these stems derive from, when the group is the stems FOR a specific track (S1 upload scenario: track/remix uploaded with stems). Optional — absent for a standalone stems-only group (S2 scenario).",6666
"format": "at-uri",6767
"maxLength": 3000,6868
"type": "string"6969
},7070
"priceCents": {7171
"description": "On-network price in integer cents (FM-549: price on-network; offer public, sale private). 0 or absent = free. The bundle price: one price covers the whole stems group (no per-stem pricing — that's deferred, FM-546). Hard price floor enforced in app. INLINE sellability shape — authored identically in fm.freemix.release and fm.freemix.group.stemsGroup; keep in sync (s41).",7272
"minimum": 0,7373
"type": "integer"7474
},7575
"seller": {7676
"description": "parties.seller (s39): the single account DID that owns and sells this stems group. Charge/entitlement read THIS field. INLINE — keep in sync.",7777
"format": "did",7878
"type": "string"7979
},8080
"title": {8181
"description": "The stems-group name = the sold-product name buyers see (e.g. 'Midnight Drive — Stems').",8282
"maxLength": 300,8383
"type": "string"8484
}8585
},8686
"required": [8787
"title",8888
"seller",8989
"createdAt"9090
],9191
"type": "object"9292
},9393
"type": "record"9494
}9595
},9696
"id": "fm.freemix.group.stems",9797
"lexicon": 19898
}