This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

Add island-shared module, lexmin hash IDs, regenerated lexicons

- Extract shared island utilities (islandId, findComponents, etc.) into island-shared.ts
- All island:* commands now use 12-char lexmin hash as canonical island ID
- Regenerate lexicons/generated/ with org.latha.island namespace
- Fix island:analyze execFileSync import and null guards

👾 Generated with [Letta Code](https://letta.com)

Co-Authored-By: Letta Code <noreply@letta.com>

author
nandi
co-author
Letta Code
date (May 15, 2026, 5:07 AM UTC) commit 219156b7 parent 0e91ab0c
+4044
+33
lexicons/generated/index.ts
··· 1 + // Auto-generated by @atmo-dev/contrail-lexicons. Do not edit. 2 + // Pass `lexicons` to `createWorker(config, { lexicons })` to expose them 3 + // at `/xrpc/<namespace>.lexicons` for consumer apps to typegen against. 4 + 5 + import _0 from "../pulled/app/bsky/actor/profile.json"; 6 + import _1 from "../pulled/network/cosmik/card.json"; 7 + import _2 from "../pulled/network/cosmik/collection.json"; 8 + import _3 from "../pulled/network/cosmik/connection.json"; 9 + import _4 from "../pulled/network/cosmik/defs.json"; 10 + import _5 from "../pulled/network/cosmik/follow.json"; 11 + import _6 from "./org/latha/island/authFull.json"; 12 + import _7 from "./org/latha/island/card/getRecord.json"; 13 + import _8 from "./org/latha/island/card/listRecords.json"; 14 + import _9 from "./org/latha/island/citation/getRecord.json"; 15 + import _10 from "./org/latha/island/citation/listRecords.json"; 16 + import _11 from "./org/latha/island/collection/getRecord.json"; 17 + import _12 from "./org/latha/island/collection/listRecords.json"; 18 + import _13 from "./org/latha/island/connection/getRecord.json"; 19 + import _14 from "./org/latha/island/connection/listRecords.json"; 20 + import _15 from "./org/latha/island/entity/getRecord.json"; 21 + import _16 from "./org/latha/island/entity/listRecords.json"; 22 + import _17 from "./org/latha/island/follow/getRecord.json"; 23 + import _18 from "./org/latha/island/follow/listRecords.json"; 24 + import _19 from "./org/latha/island/getCursor.json"; 25 + import _20 from "./org/latha/island/getOverview.json"; 26 + import _21 from "./org/latha/island/getProfile.json"; 27 + import _22 from "./org/latha/island/notifyOfUpdate.json"; 28 + import _23 from "./org/latha/island/reasoning/getRecord.json"; 29 + import _24 from "./org/latha/island/reasoning/listRecords.json"; 30 + import _25 from "./org/latha/island/strata/getRecord.json"; 31 + import _26 from "./org/latha/island/strata/listRecords.json"; 32 + 33 + export const lexicons: object[] = [_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26];
+50
lexicons/generated/org/latha/island/authFull.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.authFull", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "org.latha.island", 8 + "description": "Full access to the org.latha.island service", 9 + "permissions": [ 10 + { 11 + "type": "permission", 12 + "resource": "rpc", 13 + "aud": "*", 14 + "lxm": [ 15 + "org.latha.island.card.getRecord", 16 + "org.latha.island.card.listRecords", 17 + "org.latha.island.citation.getRecord", 18 + "org.latha.island.citation.listRecords", 19 + "org.latha.island.collection.getRecord", 20 + "org.latha.island.collection.listRecords", 21 + "org.latha.island.connection.getRecord", 22 + "org.latha.island.connection.listRecords", 23 + "org.latha.island.entity.getRecord", 24 + "org.latha.island.entity.listRecords", 25 + "org.latha.island.follow.getRecord", 26 + "org.latha.island.follow.listRecords", 27 + "org.latha.island.getCursor", 28 + "org.latha.island.getOverview", 29 + "org.latha.island.getProfile", 30 + "org.latha.island.notifyOfUpdate", 31 + "org.latha.island.reasoning.getRecord", 32 + "org.latha.island.reasoning.listRecords", 33 + "org.latha.island.strata.getRecord", 34 + "org.latha.island.strata.listRecords" 35 + ] 36 + }, 37 + { 38 + "type": "permission", 39 + "resource": "repo", 40 + "collection": [ 41 + "org.latha.island", 42 + "org.latha.island.citation", 43 + "org.latha.island.entity", 44 + "org.latha.island.reasoning" 45 + ] 46 + } 47 + ] 48 + } 49 + } 50 + }
+218
lexicons/generated/org/latha/island/card/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.card.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single network.cosmik.card record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + }, 23 + "hydrateParentCard": { 24 + "type": "boolean", 25 + "description": "Embed the referenced parentCard record" 26 + } 27 + } 28 + }, 29 + "output": { 30 + "encoding": "application/json", 31 + "schema": { 32 + "type": "object", 33 + "required": [ 34 + "uri", 35 + "value", 36 + "did", 37 + "collection", 38 + "rkey", 39 + "time_us" 40 + ], 41 + "properties": { 42 + "uri": { 43 + "type": "string", 44 + "format": "at-uri" 45 + }, 46 + "cid": { 47 + "type": "string", 48 + "format": "cid" 49 + }, 50 + "value": { 51 + "type": "ref", 52 + "ref": "network.cosmik.card#main" 53 + }, 54 + "did": { 55 + "type": "string", 56 + "format": "did" 57 + }, 58 + "collection": { 59 + "type": "string", 60 + "format": "nsid" 61 + }, 62 + "rkey": { 63 + "type": "string" 64 + }, 65 + "time_us": { 66 + "type": "integer" 67 + }, 68 + "parentCard": { 69 + "type": "ref", 70 + "ref": "#refParentCardRecord" 71 + }, 72 + "profiles": { 73 + "type": "array", 74 + "items": { 75 + "type": "ref", 76 + "ref": "#profileEntry" 77 + } 78 + } 79 + } 80 + } 81 + } 82 + }, 83 + "refParentCardRecord": { 84 + "type": "object", 85 + "required": [ 86 + "uri", 87 + "did", 88 + "collection", 89 + "rkey", 90 + "time_us" 91 + ], 92 + "properties": { 93 + "uri": { 94 + "type": "string", 95 + "format": "at-uri" 96 + }, 97 + "did": { 98 + "type": "string", 99 + "format": "did" 100 + }, 101 + "collection": { 102 + "type": "string", 103 + "format": "nsid" 104 + }, 105 + "rkey": { 106 + "type": "string" 107 + }, 108 + "cid": { 109 + "type": "string" 110 + }, 111 + "record": { 112 + "type": "ref", 113 + "ref": "network.cosmik.card#main" 114 + }, 115 + "time_us": { 116 + "type": "integer" 117 + } 118 + } 119 + }, 120 + "profileEntry": { 121 + "type": "object", 122 + "required": [ 123 + "did" 124 + ], 125 + "properties": { 126 + "did": { 127 + "type": "string", 128 + "format": "did" 129 + }, 130 + "handle": { 131 + "type": "string" 132 + }, 133 + "uri": { 134 + "type": "string", 135 + "format": "at-uri" 136 + }, 137 + "cid": { 138 + "type": "string", 139 + "format": "cid" 140 + }, 141 + "value": { 142 + "type": "ref", 143 + "ref": "#appBskyActorProfile" 144 + }, 145 + "collection": { 146 + "type": "string", 147 + "format": "nsid" 148 + }, 149 + "rkey": { 150 + "type": "string" 151 + } 152 + } 153 + }, 154 + "appBskyActorProfile": { 155 + "type": "object", 156 + "properties": { 157 + "avatar": { 158 + "type": "blob", 159 + "accept": [ 160 + "image/png", 161 + "image/jpeg" 162 + ], 163 + "maxSize": 1000000, 164 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 165 + }, 166 + "banner": { 167 + "type": "blob", 168 + "accept": [ 169 + "image/png", 170 + "image/jpeg" 171 + ], 172 + "maxSize": 1000000, 173 + "description": "Larger horizontal image to display behind profile view." 174 + }, 175 + "labels": { 176 + "refs": [ 177 + "com.atproto.label.defs#selfLabels" 178 + ], 179 + "type": "union", 180 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 181 + }, 182 + "website": { 183 + "type": "string", 184 + "format": "uri" 185 + }, 186 + "pronouns": { 187 + "type": "string", 188 + "maxLength": 200, 189 + "description": "Free-form pronouns text.", 190 + "maxGraphemes": 20 191 + }, 192 + "createdAt": { 193 + "type": "string", 194 + "format": "datetime" 195 + }, 196 + "pinnedPost": { 197 + "ref": "com.atproto.repo.strongRef", 198 + "type": "ref" 199 + }, 200 + "description": { 201 + "type": "string", 202 + "maxLength": 2560, 203 + "description": "Free-form profile description text.", 204 + "maxGraphemes": 256 205 + }, 206 + "displayName": { 207 + "type": "string", 208 + "maxLength": 640, 209 + "maxGraphemes": 64 210 + }, 211 + "joinedViaStarterPack": { 212 + "ref": "com.atproto.repo.strongRef", 213 + "type": "ref" 214 + } 215 + } 216 + } 217 + } 218 + }
+271
lexicons/generated/org/latha/island/card/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.card.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query network.cosmik.card records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: content.url, content.text, content.metadata.title, content.metadata.description" 32 + }, 33 + "type": { 34 + "type": "string", 35 + "description": "Filter by type" 36 + }, 37 + "contentUrl": { 38 + "type": "string", 39 + "description": "Filter by content.url" 40 + }, 41 + "hydrateParentCard": { 42 + "type": "boolean", 43 + "description": "Embed the referenced parentCard record" 44 + }, 45 + "sort": { 46 + "type": "string", 47 + "knownValues": [ 48 + "type", 49 + "contentUrl" 50 + ], 51 + "description": "Field to sort by (default: time_us)" 52 + }, 53 + "order": { 54 + "type": "string", 55 + "knownValues": [ 56 + "asc", 57 + "desc" 58 + ], 59 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 60 + } 61 + } 62 + }, 63 + "output": { 64 + "encoding": "application/json", 65 + "schema": { 66 + "type": "object", 67 + "required": [ 68 + "records" 69 + ], 70 + "properties": { 71 + "records": { 72 + "type": "array", 73 + "items": { 74 + "type": "ref", 75 + "ref": "#record" 76 + } 77 + }, 78 + "cursor": { 79 + "type": "string" 80 + }, 81 + "profiles": { 82 + "type": "array", 83 + "items": { 84 + "type": "ref", 85 + "ref": "#profileEntry" 86 + } 87 + } 88 + } 89 + } 90 + } 91 + }, 92 + "record": { 93 + "type": "object", 94 + "required": [ 95 + "uri", 96 + "cid", 97 + "value", 98 + "did", 99 + "collection", 100 + "rkey", 101 + "time_us" 102 + ], 103 + "properties": { 104 + "uri": { 105 + "type": "string", 106 + "format": "at-uri" 107 + }, 108 + "cid": { 109 + "type": "string", 110 + "format": "cid" 111 + }, 112 + "value": { 113 + "type": "ref", 114 + "ref": "network.cosmik.card#main" 115 + }, 116 + "did": { 117 + "type": "string", 118 + "format": "did" 119 + }, 120 + "collection": { 121 + "type": "string", 122 + "format": "nsid" 123 + }, 124 + "rkey": { 125 + "type": "string" 126 + }, 127 + "time_us": { 128 + "type": "integer" 129 + }, 130 + "parentCard": { 131 + "type": "ref", 132 + "ref": "#refParentCardRecord" 133 + } 134 + } 135 + }, 136 + "refParentCardRecord": { 137 + "type": "object", 138 + "required": [ 139 + "uri", 140 + "did", 141 + "collection", 142 + "rkey", 143 + "time_us" 144 + ], 145 + "properties": { 146 + "uri": { 147 + "type": "string", 148 + "format": "at-uri" 149 + }, 150 + "did": { 151 + "type": "string", 152 + "format": "did" 153 + }, 154 + "collection": { 155 + "type": "string", 156 + "format": "nsid" 157 + }, 158 + "rkey": { 159 + "type": "string" 160 + }, 161 + "cid": { 162 + "type": "string" 163 + }, 164 + "record": { 165 + "type": "ref", 166 + "ref": "network.cosmik.card#main" 167 + }, 168 + "time_us": { 169 + "type": "integer" 170 + } 171 + } 172 + }, 173 + "profileEntry": { 174 + "type": "object", 175 + "required": [ 176 + "did" 177 + ], 178 + "properties": { 179 + "did": { 180 + "type": "string", 181 + "format": "did" 182 + }, 183 + "handle": { 184 + "type": "string" 185 + }, 186 + "uri": { 187 + "type": "string", 188 + "format": "at-uri" 189 + }, 190 + "cid": { 191 + "type": "string", 192 + "format": "cid" 193 + }, 194 + "value": { 195 + "type": "ref", 196 + "ref": "#appBskyActorProfile" 197 + }, 198 + "collection": { 199 + "type": "string", 200 + "format": "nsid" 201 + }, 202 + "rkey": { 203 + "type": "string" 204 + } 205 + } 206 + }, 207 + "appBskyActorProfile": { 208 + "type": "object", 209 + "properties": { 210 + "avatar": { 211 + "type": "blob", 212 + "accept": [ 213 + "image/png", 214 + "image/jpeg" 215 + ], 216 + "maxSize": 1000000, 217 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 218 + }, 219 + "banner": { 220 + "type": "blob", 221 + "accept": [ 222 + "image/png", 223 + "image/jpeg" 224 + ], 225 + "maxSize": 1000000, 226 + "description": "Larger horizontal image to display behind profile view." 227 + }, 228 + "labels": { 229 + "refs": [ 230 + "com.atproto.label.defs#selfLabels" 231 + ], 232 + "type": "union", 233 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 234 + }, 235 + "website": { 236 + "type": "string", 237 + "format": "uri" 238 + }, 239 + "pronouns": { 240 + "type": "string", 241 + "maxLength": 200, 242 + "description": "Free-form pronouns text.", 243 + "maxGraphemes": 20 244 + }, 245 + "createdAt": { 246 + "type": "string", 247 + "format": "datetime" 248 + }, 249 + "pinnedPost": { 250 + "ref": "com.atproto.repo.strongRef", 251 + "type": "ref" 252 + }, 253 + "description": { 254 + "type": "string", 255 + "maxLength": 2560, 256 + "description": "Free-form profile description text.", 257 + "maxGraphemes": 256 258 + }, 259 + "displayName": { 260 + "type": "string", 261 + "maxLength": 640, 262 + "maxGraphemes": 64 263 + }, 264 + "joinedViaStarterPack": { 265 + "ref": "com.atproto.repo.strongRef", 266 + "type": "ref" 267 + } 268 + } 269 + } 270 + } 271 + }
+225
lexicons/generated/org/latha/island/citation/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.citation.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single org.latha.island.citation record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + }, 23 + "hydrateReasoning": { 24 + "type": "integer", 25 + "minimum": 1, 26 + "maximum": 50, 27 + "description": "Number of reasoning records to embed" 28 + } 29 + } 30 + }, 31 + "output": { 32 + "encoding": "application/json", 33 + "schema": { 34 + "type": "object", 35 + "required": [ 36 + "uri", 37 + "value", 38 + "did", 39 + "collection", 40 + "rkey", 41 + "time_us" 42 + ], 43 + "properties": { 44 + "uri": { 45 + "type": "string", 46 + "format": "at-uri" 47 + }, 48 + "cid": { 49 + "type": "string", 50 + "format": "cid" 51 + }, 52 + "value": { 53 + "type": "unknown" 54 + }, 55 + "did": { 56 + "type": "string", 57 + "format": "did" 58 + }, 59 + "collection": { 60 + "type": "string", 61 + "format": "nsid" 62 + }, 63 + "rkey": { 64 + "type": "string" 65 + }, 66 + "time_us": { 67 + "type": "integer" 68 + }, 69 + "reasoningCount": { 70 + "type": "integer", 71 + "description": "Total reasoning count" 72 + }, 73 + "reasoning": { 74 + "type": "array", 75 + "items": { 76 + "type": "ref", 77 + "ref": "#hydrateReasoningRecord" 78 + } 79 + }, 80 + "profiles": { 81 + "type": "array", 82 + "items": { 83 + "type": "ref", 84 + "ref": "#profileEntry" 85 + } 86 + } 87 + } 88 + } 89 + } 90 + }, 91 + "hydrateReasoningRecord": { 92 + "type": "object", 93 + "required": [ 94 + "uri", 95 + "did", 96 + "collection", 97 + "rkey", 98 + "time_us" 99 + ], 100 + "properties": { 101 + "uri": { 102 + "type": "string", 103 + "format": "at-uri" 104 + }, 105 + "did": { 106 + "type": "string", 107 + "format": "did" 108 + }, 109 + "collection": { 110 + "type": "string", 111 + "format": "nsid" 112 + }, 113 + "rkey": { 114 + "type": "string" 115 + }, 116 + "cid": { 117 + "type": "string" 118 + }, 119 + "record": { 120 + "type": "unknown" 121 + }, 122 + "time_us": { 123 + "type": "integer" 124 + } 125 + } 126 + }, 127 + "profileEntry": { 128 + "type": "object", 129 + "required": [ 130 + "did" 131 + ], 132 + "properties": { 133 + "did": { 134 + "type": "string", 135 + "format": "did" 136 + }, 137 + "handle": { 138 + "type": "string" 139 + }, 140 + "uri": { 141 + "type": "string", 142 + "format": "at-uri" 143 + }, 144 + "cid": { 145 + "type": "string", 146 + "format": "cid" 147 + }, 148 + "value": { 149 + "type": "ref", 150 + "ref": "#appBskyActorProfile" 151 + }, 152 + "collection": { 153 + "type": "string", 154 + "format": "nsid" 155 + }, 156 + "rkey": { 157 + "type": "string" 158 + } 159 + } 160 + }, 161 + "appBskyActorProfile": { 162 + "type": "object", 163 + "properties": { 164 + "avatar": { 165 + "type": "blob", 166 + "accept": [ 167 + "image/png", 168 + "image/jpeg" 169 + ], 170 + "maxSize": 1000000, 171 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 172 + }, 173 + "banner": { 174 + "type": "blob", 175 + "accept": [ 176 + "image/png", 177 + "image/jpeg" 178 + ], 179 + "maxSize": 1000000, 180 + "description": "Larger horizontal image to display behind profile view." 181 + }, 182 + "labels": { 183 + "refs": [ 184 + "com.atproto.label.defs#selfLabels" 185 + ], 186 + "type": "union", 187 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 188 + }, 189 + "website": { 190 + "type": "string", 191 + "format": "uri" 192 + }, 193 + "pronouns": { 194 + "type": "string", 195 + "maxLength": 200, 196 + "description": "Free-form pronouns text.", 197 + "maxGraphemes": 20 198 + }, 199 + "createdAt": { 200 + "type": "string", 201 + "format": "datetime" 202 + }, 203 + "pinnedPost": { 204 + "ref": "com.atproto.repo.strongRef", 205 + "type": "ref" 206 + }, 207 + "description": { 208 + "type": "string", 209 + "maxLength": 2560, 210 + "description": "Free-form profile description text.", 211 + "maxGraphemes": 256 212 + }, 213 + "displayName": { 214 + "type": "string", 215 + "maxLength": 640, 216 + "maxGraphemes": 64 217 + }, 218 + "joinedViaStarterPack": { 219 + "ref": "com.atproto.repo.strongRef", 220 + "type": "ref" 221 + } 222 + } 223 + } 224 + } 225 + }
+288
lexicons/generated/org/latha/island/citation/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.citation.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query org.latha.island.citation records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: title, takeaway" 32 + }, 33 + "url": { 34 + "type": "string", 35 + "description": "Filter by url" 36 + }, 37 + "confidence": { 38 + "type": "string", 39 + "description": "Filter by confidence" 40 + }, 41 + "domain": { 42 + "type": "string", 43 + "description": "Filter by domain" 44 + }, 45 + "reasoningCountMin": { 46 + "type": "integer", 47 + "description": "Minimum total reasoning count" 48 + }, 49 + "hydrateReasoning": { 50 + "type": "integer", 51 + "minimum": 1, 52 + "maximum": 50, 53 + "description": "Number of reasoning records to embed per record" 54 + }, 55 + "sort": { 56 + "type": "string", 57 + "knownValues": [ 58 + "url", 59 + "confidence", 60 + "domain", 61 + "reasoningCount" 62 + ], 63 + "description": "Field to sort by (default: time_us)" 64 + }, 65 + "order": { 66 + "type": "string", 67 + "knownValues": [ 68 + "asc", 69 + "desc" 70 + ], 71 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 72 + } 73 + } 74 + }, 75 + "output": { 76 + "encoding": "application/json", 77 + "schema": { 78 + "type": "object", 79 + "required": [ 80 + "records" 81 + ], 82 + "properties": { 83 + "records": { 84 + "type": "array", 85 + "items": { 86 + "type": "ref", 87 + "ref": "#record" 88 + } 89 + }, 90 + "cursor": { 91 + "type": "string" 92 + }, 93 + "profiles": { 94 + "type": "array", 95 + "items": { 96 + "type": "ref", 97 + "ref": "#profileEntry" 98 + } 99 + } 100 + } 101 + } 102 + } 103 + }, 104 + "record": { 105 + "type": "object", 106 + "required": [ 107 + "uri", 108 + "cid", 109 + "value", 110 + "did", 111 + "collection", 112 + "rkey", 113 + "time_us" 114 + ], 115 + "properties": { 116 + "uri": { 117 + "type": "string", 118 + "format": "at-uri" 119 + }, 120 + "cid": { 121 + "type": "string", 122 + "format": "cid" 123 + }, 124 + "value": { 125 + "type": "unknown" 126 + }, 127 + "did": { 128 + "type": "string", 129 + "format": "did" 130 + }, 131 + "collection": { 132 + "type": "string", 133 + "format": "nsid" 134 + }, 135 + "rkey": { 136 + "type": "string" 137 + }, 138 + "time_us": { 139 + "type": "integer" 140 + }, 141 + "reasoningCount": { 142 + "type": "integer", 143 + "description": "Total reasoning count" 144 + }, 145 + "reasoning": { 146 + "type": "array", 147 + "items": { 148 + "type": "ref", 149 + "ref": "#hydrateReasoningRecord" 150 + } 151 + } 152 + } 153 + }, 154 + "hydrateReasoningRecord": { 155 + "type": "object", 156 + "required": [ 157 + "uri", 158 + "did", 159 + "collection", 160 + "rkey", 161 + "time_us" 162 + ], 163 + "properties": { 164 + "uri": { 165 + "type": "string", 166 + "format": "at-uri" 167 + }, 168 + "did": { 169 + "type": "string", 170 + "format": "did" 171 + }, 172 + "collection": { 173 + "type": "string", 174 + "format": "nsid" 175 + }, 176 + "rkey": { 177 + "type": "string" 178 + }, 179 + "cid": { 180 + "type": "string" 181 + }, 182 + "record": { 183 + "type": "unknown" 184 + }, 185 + "time_us": { 186 + "type": "integer" 187 + } 188 + } 189 + }, 190 + "profileEntry": { 191 + "type": "object", 192 + "required": [ 193 + "did" 194 + ], 195 + "properties": { 196 + "did": { 197 + "type": "string", 198 + "format": "did" 199 + }, 200 + "handle": { 201 + "type": "string" 202 + }, 203 + "uri": { 204 + "type": "string", 205 + "format": "at-uri" 206 + }, 207 + "cid": { 208 + "type": "string", 209 + "format": "cid" 210 + }, 211 + "value": { 212 + "type": "ref", 213 + "ref": "#appBskyActorProfile" 214 + }, 215 + "collection": { 216 + "type": "string", 217 + "format": "nsid" 218 + }, 219 + "rkey": { 220 + "type": "string" 221 + } 222 + } 223 + }, 224 + "appBskyActorProfile": { 225 + "type": "object", 226 + "properties": { 227 + "avatar": { 228 + "type": "blob", 229 + "accept": [ 230 + "image/png", 231 + "image/jpeg" 232 + ], 233 + "maxSize": 1000000, 234 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 235 + }, 236 + "banner": { 237 + "type": "blob", 238 + "accept": [ 239 + "image/png", 240 + "image/jpeg" 241 + ], 242 + "maxSize": 1000000, 243 + "description": "Larger horizontal image to display behind profile view." 244 + }, 245 + "labels": { 246 + "refs": [ 247 + "com.atproto.label.defs#selfLabels" 248 + ], 249 + "type": "union", 250 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 251 + }, 252 + "website": { 253 + "type": "string", 254 + "format": "uri" 255 + }, 256 + "pronouns": { 257 + "type": "string", 258 + "maxLength": 200, 259 + "description": "Free-form pronouns text.", 260 + "maxGraphemes": 20 261 + }, 262 + "createdAt": { 263 + "type": "string", 264 + "format": "datetime" 265 + }, 266 + "pinnedPost": { 267 + "ref": "com.atproto.repo.strongRef", 268 + "type": "ref" 269 + }, 270 + "description": { 271 + "type": "string", 272 + "maxLength": 2560, 273 + "description": "Free-form profile description text.", 274 + "maxGraphemes": 256 275 + }, 276 + "displayName": { 277 + "type": "string", 278 + "maxLength": 640, 279 + "maxGraphemes": 64 280 + }, 281 + "joinedViaStarterPack": { 282 + "ref": "com.atproto.repo.strongRef", 283 + "type": "ref" 284 + } 285 + } 286 + } 287 + } 288 + }
+227
lexicons/generated/org/latha/island/collection/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.collection.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single network.cosmik.collection record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + }, 23 + "hydrateCards": { 24 + "type": "integer", 25 + "minimum": 1, 26 + "maximum": 50, 27 + "description": "Number of cards records to embed" 28 + } 29 + } 30 + }, 31 + "output": { 32 + "encoding": "application/json", 33 + "schema": { 34 + "type": "object", 35 + "required": [ 36 + "uri", 37 + "value", 38 + "did", 39 + "collection", 40 + "rkey", 41 + "time_us" 42 + ], 43 + "properties": { 44 + "uri": { 45 + "type": "string", 46 + "format": "at-uri" 47 + }, 48 + "cid": { 49 + "type": "string", 50 + "format": "cid" 51 + }, 52 + "value": { 53 + "type": "ref", 54 + "ref": "network.cosmik.collection#main" 55 + }, 56 + "did": { 57 + "type": "string", 58 + "format": "did" 59 + }, 60 + "collection": { 61 + "type": "string", 62 + "format": "nsid" 63 + }, 64 + "rkey": { 65 + "type": "string" 66 + }, 67 + "time_us": { 68 + "type": "integer" 69 + }, 70 + "cardsCount": { 71 + "type": "integer", 72 + "description": "Total cards count" 73 + }, 74 + "cards": { 75 + "type": "array", 76 + "items": { 77 + "type": "ref", 78 + "ref": "#hydrateCardsRecord" 79 + } 80 + }, 81 + "profiles": { 82 + "type": "array", 83 + "items": { 84 + "type": "ref", 85 + "ref": "#profileEntry" 86 + } 87 + } 88 + } 89 + } 90 + } 91 + }, 92 + "hydrateCardsRecord": { 93 + "type": "object", 94 + "required": [ 95 + "uri", 96 + "did", 97 + "collection", 98 + "rkey", 99 + "time_us" 100 + ], 101 + "properties": { 102 + "uri": { 103 + "type": "string", 104 + "format": "at-uri" 105 + }, 106 + "did": { 107 + "type": "string", 108 + "format": "did" 109 + }, 110 + "collection": { 111 + "type": "string", 112 + "format": "nsid" 113 + }, 114 + "rkey": { 115 + "type": "string" 116 + }, 117 + "cid": { 118 + "type": "string" 119 + }, 120 + "record": { 121 + "type": "ref", 122 + "ref": "network.cosmik.card#main" 123 + }, 124 + "time_us": { 125 + "type": "integer" 126 + } 127 + } 128 + }, 129 + "profileEntry": { 130 + "type": "object", 131 + "required": [ 132 + "did" 133 + ], 134 + "properties": { 135 + "did": { 136 + "type": "string", 137 + "format": "did" 138 + }, 139 + "handle": { 140 + "type": "string" 141 + }, 142 + "uri": { 143 + "type": "string", 144 + "format": "at-uri" 145 + }, 146 + "cid": { 147 + "type": "string", 148 + "format": "cid" 149 + }, 150 + "value": { 151 + "type": "ref", 152 + "ref": "#appBskyActorProfile" 153 + }, 154 + "collection": { 155 + "type": "string", 156 + "format": "nsid" 157 + }, 158 + "rkey": { 159 + "type": "string" 160 + } 161 + } 162 + }, 163 + "appBskyActorProfile": { 164 + "type": "object", 165 + "properties": { 166 + "avatar": { 167 + "type": "blob", 168 + "accept": [ 169 + "image/png", 170 + "image/jpeg" 171 + ], 172 + "maxSize": 1000000, 173 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 174 + }, 175 + "banner": { 176 + "type": "blob", 177 + "accept": [ 178 + "image/png", 179 + "image/jpeg" 180 + ], 181 + "maxSize": 1000000, 182 + "description": "Larger horizontal image to display behind profile view." 183 + }, 184 + "labels": { 185 + "refs": [ 186 + "com.atproto.label.defs#selfLabels" 187 + ], 188 + "type": "union", 189 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 190 + }, 191 + "website": { 192 + "type": "string", 193 + "format": "uri" 194 + }, 195 + "pronouns": { 196 + "type": "string", 197 + "maxLength": 200, 198 + "description": "Free-form pronouns text.", 199 + "maxGraphemes": 20 200 + }, 201 + "createdAt": { 202 + "type": "string", 203 + "format": "datetime" 204 + }, 205 + "pinnedPost": { 206 + "ref": "com.atproto.repo.strongRef", 207 + "type": "ref" 208 + }, 209 + "description": { 210 + "type": "string", 211 + "maxLength": 2560, 212 + "description": "Free-form profile description text.", 213 + "maxGraphemes": 256 214 + }, 215 + "displayName": { 216 + "type": "string", 217 + "maxLength": 640, 218 + "maxGraphemes": 64 219 + }, 220 + "joinedViaStarterPack": { 221 + "ref": "com.atproto.repo.strongRef", 222 + "type": "ref" 223 + } 224 + } 225 + } 226 + } 227 + }
+285
lexicons/generated/org/latha/island/collection/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.collection.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query network.cosmik.collection records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: name, description" 32 + }, 33 + "name": { 34 + "type": "string", 35 + "description": "Filter by name" 36 + }, 37 + "accessType": { 38 + "type": "string", 39 + "description": "Filter by accessType" 40 + }, 41 + "cardsCountMin": { 42 + "type": "integer", 43 + "description": "Minimum total cards count" 44 + }, 45 + "hydrateCards": { 46 + "type": "integer", 47 + "minimum": 1, 48 + "maximum": 50, 49 + "description": "Number of cards records to embed per record" 50 + }, 51 + "sort": { 52 + "type": "string", 53 + "knownValues": [ 54 + "name", 55 + "accessType", 56 + "cardsCount" 57 + ], 58 + "description": "Field to sort by (default: time_us)" 59 + }, 60 + "order": { 61 + "type": "string", 62 + "knownValues": [ 63 + "asc", 64 + "desc" 65 + ], 66 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 67 + } 68 + } 69 + }, 70 + "output": { 71 + "encoding": "application/json", 72 + "schema": { 73 + "type": "object", 74 + "required": [ 75 + "records" 76 + ], 77 + "properties": { 78 + "records": { 79 + "type": "array", 80 + "items": { 81 + "type": "ref", 82 + "ref": "#record" 83 + } 84 + }, 85 + "cursor": { 86 + "type": "string" 87 + }, 88 + "profiles": { 89 + "type": "array", 90 + "items": { 91 + "type": "ref", 92 + "ref": "#profileEntry" 93 + } 94 + } 95 + } 96 + } 97 + } 98 + }, 99 + "record": { 100 + "type": "object", 101 + "required": [ 102 + "uri", 103 + "cid", 104 + "value", 105 + "did", 106 + "collection", 107 + "rkey", 108 + "time_us" 109 + ], 110 + "properties": { 111 + "uri": { 112 + "type": "string", 113 + "format": "at-uri" 114 + }, 115 + "cid": { 116 + "type": "string", 117 + "format": "cid" 118 + }, 119 + "value": { 120 + "type": "ref", 121 + "ref": "network.cosmik.collection#main" 122 + }, 123 + "did": { 124 + "type": "string", 125 + "format": "did" 126 + }, 127 + "collection": { 128 + "type": "string", 129 + "format": "nsid" 130 + }, 131 + "rkey": { 132 + "type": "string" 133 + }, 134 + "time_us": { 135 + "type": "integer" 136 + }, 137 + "cardsCount": { 138 + "type": "integer", 139 + "description": "Total cards count" 140 + }, 141 + "cards": { 142 + "type": "array", 143 + "items": { 144 + "type": "ref", 145 + "ref": "#hydrateCardsRecord" 146 + } 147 + } 148 + } 149 + }, 150 + "hydrateCardsRecord": { 151 + "type": "object", 152 + "required": [ 153 + "uri", 154 + "did", 155 + "collection", 156 + "rkey", 157 + "time_us" 158 + ], 159 + "properties": { 160 + "uri": { 161 + "type": "string", 162 + "format": "at-uri" 163 + }, 164 + "did": { 165 + "type": "string", 166 + "format": "did" 167 + }, 168 + "collection": { 169 + "type": "string", 170 + "format": "nsid" 171 + }, 172 + "rkey": { 173 + "type": "string" 174 + }, 175 + "cid": { 176 + "type": "string" 177 + }, 178 + "record": { 179 + "type": "ref", 180 + "ref": "network.cosmik.card#main" 181 + }, 182 + "time_us": { 183 + "type": "integer" 184 + } 185 + } 186 + }, 187 + "profileEntry": { 188 + "type": "object", 189 + "required": [ 190 + "did" 191 + ], 192 + "properties": { 193 + "did": { 194 + "type": "string", 195 + "format": "did" 196 + }, 197 + "handle": { 198 + "type": "string" 199 + }, 200 + "uri": { 201 + "type": "string", 202 + "format": "at-uri" 203 + }, 204 + "cid": { 205 + "type": "string", 206 + "format": "cid" 207 + }, 208 + "value": { 209 + "type": "ref", 210 + "ref": "#appBskyActorProfile" 211 + }, 212 + "collection": { 213 + "type": "string", 214 + "format": "nsid" 215 + }, 216 + "rkey": { 217 + "type": "string" 218 + } 219 + } 220 + }, 221 + "appBskyActorProfile": { 222 + "type": "object", 223 + "properties": { 224 + "avatar": { 225 + "type": "blob", 226 + "accept": [ 227 + "image/png", 228 + "image/jpeg" 229 + ], 230 + "maxSize": 1000000, 231 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 232 + }, 233 + "banner": { 234 + "type": "blob", 235 + "accept": [ 236 + "image/png", 237 + "image/jpeg" 238 + ], 239 + "maxSize": 1000000, 240 + "description": "Larger horizontal image to display behind profile view." 241 + }, 242 + "labels": { 243 + "refs": [ 244 + "com.atproto.label.defs#selfLabels" 245 + ], 246 + "type": "union", 247 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 248 + }, 249 + "website": { 250 + "type": "string", 251 + "format": "uri" 252 + }, 253 + "pronouns": { 254 + "type": "string", 255 + "maxLength": 200, 256 + "description": "Free-form pronouns text.", 257 + "maxGraphemes": 20 258 + }, 259 + "createdAt": { 260 + "type": "string", 261 + "format": "datetime" 262 + }, 263 + "pinnedPost": { 264 + "ref": "com.atproto.repo.strongRef", 265 + "type": "ref" 266 + }, 267 + "description": { 268 + "type": "string", 269 + "maxLength": 2560, 270 + "description": "Free-form profile description text.", 271 + "maxGraphemes": 256 272 + }, 273 + "displayName": { 274 + "type": "string", 275 + "maxLength": 640, 276 + "maxGraphemes": 64 277 + }, 278 + "joinedViaStarterPack": { 279 + "ref": "com.atproto.repo.strongRef", 280 + "type": "ref" 281 + } 282 + } 283 + } 284 + } 285 + }
+173
lexicons/generated/org/latha/island/connection/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.connection.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single network.cosmik.connection record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + } 23 + } 24 + }, 25 + "output": { 26 + "encoding": "application/json", 27 + "schema": { 28 + "type": "object", 29 + "required": [ 30 + "uri", 31 + "value", 32 + "did", 33 + "collection", 34 + "rkey", 35 + "time_us" 36 + ], 37 + "properties": { 38 + "uri": { 39 + "type": "string", 40 + "format": "at-uri" 41 + }, 42 + "cid": { 43 + "type": "string", 44 + "format": "cid" 45 + }, 46 + "value": { 47 + "type": "ref", 48 + "ref": "network.cosmik.connection#main" 49 + }, 50 + "did": { 51 + "type": "string", 52 + "format": "did" 53 + }, 54 + "collection": { 55 + "type": "string", 56 + "format": "nsid" 57 + }, 58 + "rkey": { 59 + "type": "string" 60 + }, 61 + "time_us": { 62 + "type": "integer" 63 + }, 64 + "profiles": { 65 + "type": "array", 66 + "items": { 67 + "type": "ref", 68 + "ref": "#profileEntry" 69 + } 70 + } 71 + } 72 + } 73 + } 74 + }, 75 + "profileEntry": { 76 + "type": "object", 77 + "required": [ 78 + "did" 79 + ], 80 + "properties": { 81 + "did": { 82 + "type": "string", 83 + "format": "did" 84 + }, 85 + "handle": { 86 + "type": "string" 87 + }, 88 + "uri": { 89 + "type": "string", 90 + "format": "at-uri" 91 + }, 92 + "cid": { 93 + "type": "string", 94 + "format": "cid" 95 + }, 96 + "value": { 97 + "type": "ref", 98 + "ref": "#appBskyActorProfile" 99 + }, 100 + "collection": { 101 + "type": "string", 102 + "format": "nsid" 103 + }, 104 + "rkey": { 105 + "type": "string" 106 + } 107 + } 108 + }, 109 + "appBskyActorProfile": { 110 + "type": "object", 111 + "properties": { 112 + "avatar": { 113 + "type": "blob", 114 + "accept": [ 115 + "image/png", 116 + "image/jpeg" 117 + ], 118 + "maxSize": 1000000, 119 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 120 + }, 121 + "banner": { 122 + "type": "blob", 123 + "accept": [ 124 + "image/png", 125 + "image/jpeg" 126 + ], 127 + "maxSize": 1000000, 128 + "description": "Larger horizontal image to display behind profile view." 129 + }, 130 + "labels": { 131 + "refs": [ 132 + "com.atproto.label.defs#selfLabels" 133 + ], 134 + "type": "union", 135 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 136 + }, 137 + "website": { 138 + "type": "string", 139 + "format": "uri" 140 + }, 141 + "pronouns": { 142 + "type": "string", 143 + "maxLength": 200, 144 + "description": "Free-form pronouns text.", 145 + "maxGraphemes": 20 146 + }, 147 + "createdAt": { 148 + "type": "string", 149 + "format": "datetime" 150 + }, 151 + "pinnedPost": { 152 + "ref": "com.atproto.repo.strongRef", 153 + "type": "ref" 154 + }, 155 + "description": { 156 + "type": "string", 157 + "maxLength": 2560, 158 + "description": "Free-form profile description text.", 159 + "maxGraphemes": 256 160 + }, 161 + "displayName": { 162 + "type": "string", 163 + "maxLength": 640, 164 + "maxGraphemes": 64 165 + }, 166 + "joinedViaStarterPack": { 167 + "ref": "com.atproto.repo.strongRef", 168 + "type": "ref" 169 + } 170 + } 171 + } 172 + } 173 + }
+231
lexicons/generated/org/latha/island/connection/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.connection.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query network.cosmik.connection records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: note" 32 + }, 33 + "source": { 34 + "type": "string", 35 + "description": "Filter by source" 36 + }, 37 + "target": { 38 + "type": "string", 39 + "description": "Filter by target" 40 + }, 41 + "connectionType": { 42 + "type": "string", 43 + "description": "Filter by connectionType" 44 + }, 45 + "sort": { 46 + "type": "string", 47 + "knownValues": [ 48 + "source", 49 + "target", 50 + "connectionType" 51 + ], 52 + "description": "Field to sort by (default: time_us)" 53 + }, 54 + "order": { 55 + "type": "string", 56 + "knownValues": [ 57 + "asc", 58 + "desc" 59 + ], 60 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 61 + } 62 + } 63 + }, 64 + "output": { 65 + "encoding": "application/json", 66 + "schema": { 67 + "type": "object", 68 + "required": [ 69 + "records" 70 + ], 71 + "properties": { 72 + "records": { 73 + "type": "array", 74 + "items": { 75 + "type": "ref", 76 + "ref": "#record" 77 + } 78 + }, 79 + "cursor": { 80 + "type": "string" 81 + }, 82 + "profiles": { 83 + "type": "array", 84 + "items": { 85 + "type": "ref", 86 + "ref": "#profileEntry" 87 + } 88 + } 89 + } 90 + } 91 + } 92 + }, 93 + "record": { 94 + "type": "object", 95 + "required": [ 96 + "uri", 97 + "cid", 98 + "value", 99 + "did", 100 + "collection", 101 + "rkey", 102 + "time_us" 103 + ], 104 + "properties": { 105 + "uri": { 106 + "type": "string", 107 + "format": "at-uri" 108 + }, 109 + "cid": { 110 + "type": "string", 111 + "format": "cid" 112 + }, 113 + "value": { 114 + "type": "ref", 115 + "ref": "network.cosmik.connection#main" 116 + }, 117 + "did": { 118 + "type": "string", 119 + "format": "did" 120 + }, 121 + "collection": { 122 + "type": "string", 123 + "format": "nsid" 124 + }, 125 + "rkey": { 126 + "type": "string" 127 + }, 128 + "time_us": { 129 + "type": "integer" 130 + } 131 + } 132 + }, 133 + "profileEntry": { 134 + "type": "object", 135 + "required": [ 136 + "did" 137 + ], 138 + "properties": { 139 + "did": { 140 + "type": "string", 141 + "format": "did" 142 + }, 143 + "handle": { 144 + "type": "string" 145 + }, 146 + "uri": { 147 + "type": "string", 148 + "format": "at-uri" 149 + }, 150 + "cid": { 151 + "type": "string", 152 + "format": "cid" 153 + }, 154 + "value": { 155 + "type": "ref", 156 + "ref": "#appBskyActorProfile" 157 + }, 158 + "collection": { 159 + "type": "string", 160 + "format": "nsid" 161 + }, 162 + "rkey": { 163 + "type": "string" 164 + } 165 + } 166 + }, 167 + "appBskyActorProfile": { 168 + "type": "object", 169 + "properties": { 170 + "avatar": { 171 + "type": "blob", 172 + "accept": [ 173 + "image/png", 174 + "image/jpeg" 175 + ], 176 + "maxSize": 1000000, 177 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 178 + }, 179 + "banner": { 180 + "type": "blob", 181 + "accept": [ 182 + "image/png", 183 + "image/jpeg" 184 + ], 185 + "maxSize": 1000000, 186 + "description": "Larger horizontal image to display behind profile view." 187 + }, 188 + "labels": { 189 + "refs": [ 190 + "com.atproto.label.defs#selfLabels" 191 + ], 192 + "type": "union", 193 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 194 + }, 195 + "website": { 196 + "type": "string", 197 + "format": "uri" 198 + }, 199 + "pronouns": { 200 + "type": "string", 201 + "maxLength": 200, 202 + "description": "Free-form pronouns text.", 203 + "maxGraphemes": 20 204 + }, 205 + "createdAt": { 206 + "type": "string", 207 + "format": "datetime" 208 + }, 209 + "pinnedPost": { 210 + "ref": "com.atproto.repo.strongRef", 211 + "type": "ref" 212 + }, 213 + "description": { 214 + "type": "string", 215 + "maxLength": 2560, 216 + "description": "Free-form profile description text.", 217 + "maxGraphemes": 256 218 + }, 219 + "displayName": { 220 + "type": "string", 221 + "maxLength": 640, 222 + "maxGraphemes": 64 223 + }, 224 + "joinedViaStarterPack": { 225 + "ref": "com.atproto.repo.strongRef", 226 + "type": "ref" 227 + } 228 + } 229 + } 230 + } 231 + }
+172
lexicons/generated/org/latha/island/entity/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.entity.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single org.latha.island.entity record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + } 23 + } 24 + }, 25 + "output": { 26 + "encoding": "application/json", 27 + "schema": { 28 + "type": "object", 29 + "required": [ 30 + "uri", 31 + "value", 32 + "did", 33 + "collection", 34 + "rkey", 35 + "time_us" 36 + ], 37 + "properties": { 38 + "uri": { 39 + "type": "string", 40 + "format": "at-uri" 41 + }, 42 + "cid": { 43 + "type": "string", 44 + "format": "cid" 45 + }, 46 + "value": { 47 + "type": "unknown" 48 + }, 49 + "did": { 50 + "type": "string", 51 + "format": "did" 52 + }, 53 + "collection": { 54 + "type": "string", 55 + "format": "nsid" 56 + }, 57 + "rkey": { 58 + "type": "string" 59 + }, 60 + "time_us": { 61 + "type": "integer" 62 + }, 63 + "profiles": { 64 + "type": "array", 65 + "items": { 66 + "type": "ref", 67 + "ref": "#profileEntry" 68 + } 69 + } 70 + } 71 + } 72 + } 73 + }, 74 + "profileEntry": { 75 + "type": "object", 76 + "required": [ 77 + "did" 78 + ], 79 + "properties": { 80 + "did": { 81 + "type": "string", 82 + "format": "did" 83 + }, 84 + "handle": { 85 + "type": "string" 86 + }, 87 + "uri": { 88 + "type": "string", 89 + "format": "at-uri" 90 + }, 91 + "cid": { 92 + "type": "string", 93 + "format": "cid" 94 + }, 95 + "value": { 96 + "type": "ref", 97 + "ref": "#appBskyActorProfile" 98 + }, 99 + "collection": { 100 + "type": "string", 101 + "format": "nsid" 102 + }, 103 + "rkey": { 104 + "type": "string" 105 + } 106 + } 107 + }, 108 + "appBskyActorProfile": { 109 + "type": "object", 110 + "properties": { 111 + "avatar": { 112 + "type": "blob", 113 + "accept": [ 114 + "image/png", 115 + "image/jpeg" 116 + ], 117 + "maxSize": 1000000, 118 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 119 + }, 120 + "banner": { 121 + "type": "blob", 122 + "accept": [ 123 + "image/png", 124 + "image/jpeg" 125 + ], 126 + "maxSize": 1000000, 127 + "description": "Larger horizontal image to display behind profile view." 128 + }, 129 + "labels": { 130 + "refs": [ 131 + "com.atproto.label.defs#selfLabels" 132 + ], 133 + "type": "union", 134 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 135 + }, 136 + "website": { 137 + "type": "string", 138 + "format": "uri" 139 + }, 140 + "pronouns": { 141 + "type": "string", 142 + "maxLength": 200, 143 + "description": "Free-form pronouns text.", 144 + "maxGraphemes": 20 145 + }, 146 + "createdAt": { 147 + "type": "string", 148 + "format": "datetime" 149 + }, 150 + "pinnedPost": { 151 + "ref": "com.atproto.repo.strongRef", 152 + "type": "ref" 153 + }, 154 + "description": { 155 + "type": "string", 156 + "maxLength": 2560, 157 + "description": "Free-form profile description text.", 158 + "maxGraphemes": 256 159 + }, 160 + "displayName": { 161 + "type": "string", 162 + "maxLength": 640, 163 + "maxGraphemes": 64 164 + }, 165 + "joinedViaStarterPack": { 166 + "ref": "com.atproto.repo.strongRef", 167 + "type": "ref" 168 + } 169 + } 170 + } 171 + } 172 + }
+225
lexicons/generated/org/latha/island/entity/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.entity.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query org.latha.island.entity records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: name, description" 32 + }, 33 + "entityType": { 34 + "type": "string", 35 + "description": "Filter by entityType" 36 + }, 37 + "name": { 38 + "type": "string", 39 + "description": "Filter by name" 40 + }, 41 + "sort": { 42 + "type": "string", 43 + "knownValues": [ 44 + "entityType", 45 + "name" 46 + ], 47 + "description": "Field to sort by (default: time_us)" 48 + }, 49 + "order": { 50 + "type": "string", 51 + "knownValues": [ 52 + "asc", 53 + "desc" 54 + ], 55 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 56 + } 57 + } 58 + }, 59 + "output": { 60 + "encoding": "application/json", 61 + "schema": { 62 + "type": "object", 63 + "required": [ 64 + "records" 65 + ], 66 + "properties": { 67 + "records": { 68 + "type": "array", 69 + "items": { 70 + "type": "ref", 71 + "ref": "#record" 72 + } 73 + }, 74 + "cursor": { 75 + "type": "string" 76 + }, 77 + "profiles": { 78 + "type": "array", 79 + "items": { 80 + "type": "ref", 81 + "ref": "#profileEntry" 82 + } 83 + } 84 + } 85 + } 86 + } 87 + }, 88 + "record": { 89 + "type": "object", 90 + "required": [ 91 + "uri", 92 + "cid", 93 + "value", 94 + "did", 95 + "collection", 96 + "rkey", 97 + "time_us" 98 + ], 99 + "properties": { 100 + "uri": { 101 + "type": "string", 102 + "format": "at-uri" 103 + }, 104 + "cid": { 105 + "type": "string", 106 + "format": "cid" 107 + }, 108 + "value": { 109 + "type": "unknown" 110 + }, 111 + "did": { 112 + "type": "string", 113 + "format": "did" 114 + }, 115 + "collection": { 116 + "type": "string", 117 + "format": "nsid" 118 + }, 119 + "rkey": { 120 + "type": "string" 121 + }, 122 + "time_us": { 123 + "type": "integer" 124 + } 125 + } 126 + }, 127 + "profileEntry": { 128 + "type": "object", 129 + "required": [ 130 + "did" 131 + ], 132 + "properties": { 133 + "did": { 134 + "type": "string", 135 + "format": "did" 136 + }, 137 + "handle": { 138 + "type": "string" 139 + }, 140 + "uri": { 141 + "type": "string", 142 + "format": "at-uri" 143 + }, 144 + "cid": { 145 + "type": "string", 146 + "format": "cid" 147 + }, 148 + "value": { 149 + "type": "ref", 150 + "ref": "#appBskyActorProfile" 151 + }, 152 + "collection": { 153 + "type": "string", 154 + "format": "nsid" 155 + }, 156 + "rkey": { 157 + "type": "string" 158 + } 159 + } 160 + }, 161 + "appBskyActorProfile": { 162 + "type": "object", 163 + "properties": { 164 + "avatar": { 165 + "type": "blob", 166 + "accept": [ 167 + "image/png", 168 + "image/jpeg" 169 + ], 170 + "maxSize": 1000000, 171 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 172 + }, 173 + "banner": { 174 + "type": "blob", 175 + "accept": [ 176 + "image/png", 177 + "image/jpeg" 178 + ], 179 + "maxSize": 1000000, 180 + "description": "Larger horizontal image to display behind profile view." 181 + }, 182 + "labels": { 183 + "refs": [ 184 + "com.atproto.label.defs#selfLabels" 185 + ], 186 + "type": "union", 187 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 188 + }, 189 + "website": { 190 + "type": "string", 191 + "format": "uri" 192 + }, 193 + "pronouns": { 194 + "type": "string", 195 + "maxLength": 200, 196 + "description": "Free-form pronouns text.", 197 + "maxGraphemes": 20 198 + }, 199 + "createdAt": { 200 + "type": "string", 201 + "format": "datetime" 202 + }, 203 + "pinnedPost": { 204 + "ref": "com.atproto.repo.strongRef", 205 + "type": "ref" 206 + }, 207 + "description": { 208 + "type": "string", 209 + "maxLength": 2560, 210 + "description": "Free-form profile description text.", 211 + "maxGraphemes": 256 212 + }, 213 + "displayName": { 214 + "type": "string", 215 + "maxLength": 640, 216 + "maxGraphemes": 64 217 + }, 218 + "joinedViaStarterPack": { 219 + "ref": "com.atproto.repo.strongRef", 220 + "type": "ref" 221 + } 222 + } 223 + } 224 + } 225 + }
+173
lexicons/generated/org/latha/island/follow/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.follow.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single network.cosmik.follow record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + } 23 + } 24 + }, 25 + "output": { 26 + "encoding": "application/json", 27 + "schema": { 28 + "type": "object", 29 + "required": [ 30 + "uri", 31 + "value", 32 + "did", 33 + "collection", 34 + "rkey", 35 + "time_us" 36 + ], 37 + "properties": { 38 + "uri": { 39 + "type": "string", 40 + "format": "at-uri" 41 + }, 42 + "cid": { 43 + "type": "string", 44 + "format": "cid" 45 + }, 46 + "value": { 47 + "type": "ref", 48 + "ref": "network.cosmik.follow#main" 49 + }, 50 + "did": { 51 + "type": "string", 52 + "format": "did" 53 + }, 54 + "collection": { 55 + "type": "string", 56 + "format": "nsid" 57 + }, 58 + "rkey": { 59 + "type": "string" 60 + }, 61 + "time_us": { 62 + "type": "integer" 63 + }, 64 + "profiles": { 65 + "type": "array", 66 + "items": { 67 + "type": "ref", 68 + "ref": "#profileEntry" 69 + } 70 + } 71 + } 72 + } 73 + } 74 + }, 75 + "profileEntry": { 76 + "type": "object", 77 + "required": [ 78 + "did" 79 + ], 80 + "properties": { 81 + "did": { 82 + "type": "string", 83 + "format": "did" 84 + }, 85 + "handle": { 86 + "type": "string" 87 + }, 88 + "uri": { 89 + "type": "string", 90 + "format": "at-uri" 91 + }, 92 + "cid": { 93 + "type": "string", 94 + "format": "cid" 95 + }, 96 + "value": { 97 + "type": "ref", 98 + "ref": "#appBskyActorProfile" 99 + }, 100 + "collection": { 101 + "type": "string", 102 + "format": "nsid" 103 + }, 104 + "rkey": { 105 + "type": "string" 106 + } 107 + } 108 + }, 109 + "appBskyActorProfile": { 110 + "type": "object", 111 + "properties": { 112 + "avatar": { 113 + "type": "blob", 114 + "accept": [ 115 + "image/png", 116 + "image/jpeg" 117 + ], 118 + "maxSize": 1000000, 119 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 120 + }, 121 + "banner": { 122 + "type": "blob", 123 + "accept": [ 124 + "image/png", 125 + "image/jpeg" 126 + ], 127 + "maxSize": 1000000, 128 + "description": "Larger horizontal image to display behind profile view." 129 + }, 130 + "labels": { 131 + "refs": [ 132 + "com.atproto.label.defs#selfLabels" 133 + ], 134 + "type": "union", 135 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 136 + }, 137 + "website": { 138 + "type": "string", 139 + "format": "uri" 140 + }, 141 + "pronouns": { 142 + "type": "string", 143 + "maxLength": 200, 144 + "description": "Free-form pronouns text.", 145 + "maxGraphemes": 20 146 + }, 147 + "createdAt": { 148 + "type": "string", 149 + "format": "datetime" 150 + }, 151 + "pinnedPost": { 152 + "ref": "com.atproto.repo.strongRef", 153 + "type": "ref" 154 + }, 155 + "description": { 156 + "type": "string", 157 + "maxLength": 2560, 158 + "description": "Free-form profile description text.", 159 + "maxGraphemes": 256 160 + }, 161 + "displayName": { 162 + "type": "string", 163 + "maxLength": 640, 164 + "maxGraphemes": 64 165 + }, 166 + "joinedViaStarterPack": { 167 + "ref": "com.atproto.repo.strongRef", 168 + "type": "ref" 169 + } 170 + } 171 + } 172 + } 173 + }
+217
lexicons/generated/org/latha/island/follow/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.follow.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query network.cosmik.follow records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "subject": { 30 + "type": "string", 31 + "description": "Filter by subject" 32 + }, 33 + "sort": { 34 + "type": "string", 35 + "knownValues": [ 36 + "subject" 37 + ], 38 + "description": "Field to sort by (default: time_us)" 39 + }, 40 + "order": { 41 + "type": "string", 42 + "knownValues": [ 43 + "asc", 44 + "desc" 45 + ], 46 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 47 + } 48 + } 49 + }, 50 + "output": { 51 + "encoding": "application/json", 52 + "schema": { 53 + "type": "object", 54 + "required": [ 55 + "records" 56 + ], 57 + "properties": { 58 + "records": { 59 + "type": "array", 60 + "items": { 61 + "type": "ref", 62 + "ref": "#record" 63 + } 64 + }, 65 + "cursor": { 66 + "type": "string" 67 + }, 68 + "profiles": { 69 + "type": "array", 70 + "items": { 71 + "type": "ref", 72 + "ref": "#profileEntry" 73 + } 74 + } 75 + } 76 + } 77 + } 78 + }, 79 + "record": { 80 + "type": "object", 81 + "required": [ 82 + "uri", 83 + "cid", 84 + "value", 85 + "did", 86 + "collection", 87 + "rkey", 88 + "time_us" 89 + ], 90 + "properties": { 91 + "uri": { 92 + "type": "string", 93 + "format": "at-uri" 94 + }, 95 + "cid": { 96 + "type": "string", 97 + "format": "cid" 98 + }, 99 + "value": { 100 + "type": "ref", 101 + "ref": "network.cosmik.follow#main" 102 + }, 103 + "did": { 104 + "type": "string", 105 + "format": "did" 106 + }, 107 + "collection": { 108 + "type": "string", 109 + "format": "nsid" 110 + }, 111 + "rkey": { 112 + "type": "string" 113 + }, 114 + "time_us": { 115 + "type": "integer" 116 + } 117 + } 118 + }, 119 + "profileEntry": { 120 + "type": "object", 121 + "required": [ 122 + "did" 123 + ], 124 + "properties": { 125 + "did": { 126 + "type": "string", 127 + "format": "did" 128 + }, 129 + "handle": { 130 + "type": "string" 131 + }, 132 + "uri": { 133 + "type": "string", 134 + "format": "at-uri" 135 + }, 136 + "cid": { 137 + "type": "string", 138 + "format": "cid" 139 + }, 140 + "value": { 141 + "type": "ref", 142 + "ref": "#appBskyActorProfile" 143 + }, 144 + "collection": { 145 + "type": "string", 146 + "format": "nsid" 147 + }, 148 + "rkey": { 149 + "type": "string" 150 + } 151 + } 152 + }, 153 + "appBskyActorProfile": { 154 + "type": "object", 155 + "properties": { 156 + "avatar": { 157 + "type": "blob", 158 + "accept": [ 159 + "image/png", 160 + "image/jpeg" 161 + ], 162 + "maxSize": 1000000, 163 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 164 + }, 165 + "banner": { 166 + "type": "blob", 167 + "accept": [ 168 + "image/png", 169 + "image/jpeg" 170 + ], 171 + "maxSize": 1000000, 172 + "description": "Larger horizontal image to display behind profile view." 173 + }, 174 + "labels": { 175 + "refs": [ 176 + "com.atproto.label.defs#selfLabels" 177 + ], 178 + "type": "union", 179 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 180 + }, 181 + "website": { 182 + "type": "string", 183 + "format": "uri" 184 + }, 185 + "pronouns": { 186 + "type": "string", 187 + "maxLength": 200, 188 + "description": "Free-form pronouns text.", 189 + "maxGraphemes": 20 190 + }, 191 + "createdAt": { 192 + "type": "string", 193 + "format": "datetime" 194 + }, 195 + "pinnedPost": { 196 + "ref": "com.atproto.repo.strongRef", 197 + "type": "ref" 198 + }, 199 + "description": { 200 + "type": "string", 201 + "maxLength": 2560, 202 + "description": "Free-form profile description text.", 203 + "maxGraphemes": 256 204 + }, 205 + "displayName": { 206 + "type": "string", 207 + "maxLength": 640, 208 + "maxGraphemes": 64 209 + }, 210 + "joinedViaStarterPack": { 211 + "ref": "com.atproto.repo.strongRef", 212 + "type": "ref" 213 + } 214 + } 215 + } 216 + } 217 + }
+27
lexicons/generated/org/latha/island/getCursor.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.getCursor", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get the current cursor position", 8 + "output": { 9 + "encoding": "application/json", 10 + "schema": { 11 + "type": "object", 12 + "properties": { 13 + "time_us": { 14 + "type": "integer" 15 + }, 16 + "date": { 17 + "type": "string" 18 + }, 19 + "seconds_ago": { 20 + "type": "integer" 21 + } 22 + } 23 + } 24 + } 25 + } 26 + } 27 + }
+51
lexicons/generated/org/latha/island/getOverview.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.getOverview", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get an overview of all indexed collections", 8 + "output": { 9 + "encoding": "application/json", 10 + "schema": { 11 + "type": "object", 12 + "required": [ 13 + "total_records", 14 + "collections" 15 + ], 16 + "properties": { 17 + "total_records": { 18 + "type": "integer" 19 + }, 20 + "collections": { 21 + "type": "array", 22 + "items": { 23 + "type": "ref", 24 + "ref": "#collectionStats" 25 + } 26 + } 27 + } 28 + } 29 + } 30 + }, 31 + "collectionStats": { 32 + "type": "object", 33 + "required": [ 34 + "collection", 35 + "records", 36 + "unique_users" 37 + ], 38 + "properties": { 39 + "collection": { 40 + "type": "string" 41 + }, 42 + "records": { 43 + "type": "integer" 44 + }, 45 + "unique_users": { 46 + "type": "integer" 47 + } 48 + } 49 + } 50 + } 51 + }
+138
lexicons/generated/org/latha/island/getProfile.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.getProfile", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a user's profiles by DID or handle", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "actor" 12 + ], 13 + "properties": { 14 + "actor": { 15 + "type": "string", 16 + "format": "at-identifier", 17 + "description": "DID or handle of the user" 18 + } 19 + } 20 + }, 21 + "output": { 22 + "encoding": "application/json", 23 + "schema": { 24 + "type": "object", 25 + "required": [ 26 + "profiles" 27 + ], 28 + "properties": { 29 + "profiles": { 30 + "type": "array", 31 + "items": { 32 + "type": "ref", 33 + "ref": "#profileEntry" 34 + } 35 + } 36 + } 37 + } 38 + } 39 + }, 40 + "profileEntry": { 41 + "type": "object", 42 + "required": [ 43 + "did" 44 + ], 45 + "properties": { 46 + "did": { 47 + "type": "string", 48 + "format": "did" 49 + }, 50 + "handle": { 51 + "type": "string" 52 + }, 53 + "uri": { 54 + "type": "string", 55 + "format": "at-uri" 56 + }, 57 + "cid": { 58 + "type": "string", 59 + "format": "cid" 60 + }, 61 + "value": { 62 + "type": "ref", 63 + "ref": "#appBskyActorProfile" 64 + }, 65 + "collection": { 66 + "type": "string", 67 + "format": "nsid" 68 + }, 69 + "rkey": { 70 + "type": "string" 71 + } 72 + } 73 + }, 74 + "appBskyActorProfile": { 75 + "type": "object", 76 + "properties": { 77 + "avatar": { 78 + "type": "blob", 79 + "accept": [ 80 + "image/png", 81 + "image/jpeg" 82 + ], 83 + "maxSize": 1000000, 84 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 85 + }, 86 + "banner": { 87 + "type": "blob", 88 + "accept": [ 89 + "image/png", 90 + "image/jpeg" 91 + ], 92 + "maxSize": 1000000, 93 + "description": "Larger horizontal image to display behind profile view." 94 + }, 95 + "labels": { 96 + "refs": [ 97 + "com.atproto.label.defs#selfLabels" 98 + ], 99 + "type": "union", 100 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 101 + }, 102 + "website": { 103 + "type": "string", 104 + "format": "uri" 105 + }, 106 + "pronouns": { 107 + "type": "string", 108 + "maxLength": 200, 109 + "description": "Free-form pronouns text.", 110 + "maxGraphemes": 20 111 + }, 112 + "createdAt": { 113 + "type": "string", 114 + "format": "datetime" 115 + }, 116 + "pinnedPost": { 117 + "ref": "com.atproto.repo.strongRef", 118 + "type": "ref" 119 + }, 120 + "description": { 121 + "type": "string", 122 + "maxLength": 2560, 123 + "description": "Free-form profile description text.", 124 + "maxGraphemes": 256 125 + }, 126 + "displayName": { 127 + "type": "string", 128 + "maxLength": 640, 129 + "maxGraphemes": 64 130 + }, 131 + "joinedViaStarterPack": { 132 + "ref": "com.atproto.repo.strongRef", 133 + "type": "ref" 134 + } 135 + } 136 + } 137 + } 138 + }
+59
lexicons/generated/org/latha/island/notifyOfUpdate.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.notifyOfUpdate", 4 + "defs": { 5 + "main": { 6 + "type": "procedure", 7 + "description": "Notify of a record change for immediate indexing. Fetches the record from the user's PDS and indexes (or deletes) it.", 8 + "input": { 9 + "encoding": "application/json", 10 + "schema": { 11 + "type": "object", 12 + "properties": { 13 + "uri": { 14 + "type": "string", 15 + "format": "at-uri", 16 + "description": "Single AT URI to fetch and index" 17 + }, 18 + "uris": { 19 + "type": "array", 20 + "items": { 21 + "type": "string", 22 + "format": "at-uri" 23 + }, 24 + "maxLength": 25, 25 + "description": "Batch of AT URIs to fetch and index (max 25)" 26 + } 27 + } 28 + } 29 + }, 30 + "output": { 31 + "encoding": "application/json", 32 + "schema": { 33 + "type": "object", 34 + "required": [ 35 + "indexed", 36 + "deleted" 37 + ], 38 + "properties": { 39 + "indexed": { 40 + "type": "integer", 41 + "description": "Number of records created or updated" 42 + }, 43 + "deleted": { 44 + "type": "integer", 45 + "description": "Number of records deleted (not found on PDS)" 46 + }, 47 + "errors": { 48 + "type": "array", 49 + "items": { 50 + "type": "string" 51 + }, 52 + "description": "Errors for individual URIs that could not be processed" 53 + } 54 + } 55 + } 56 + } 57 + } 58 + } 59 + }
+216
lexicons/generated/org/latha/island/reasoning/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.reasoning.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single org.latha.island.reasoning record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + }, 23 + "hydrateCitation": { 24 + "type": "boolean", 25 + "description": "Embed the referenced citation record" 26 + } 27 + } 28 + }, 29 + "output": { 30 + "encoding": "application/json", 31 + "schema": { 32 + "type": "object", 33 + "required": [ 34 + "uri", 35 + "value", 36 + "did", 37 + "collection", 38 + "rkey", 39 + "time_us" 40 + ], 41 + "properties": { 42 + "uri": { 43 + "type": "string", 44 + "format": "at-uri" 45 + }, 46 + "cid": { 47 + "type": "string", 48 + "format": "cid" 49 + }, 50 + "value": { 51 + "type": "unknown" 52 + }, 53 + "did": { 54 + "type": "string", 55 + "format": "did" 56 + }, 57 + "collection": { 58 + "type": "string", 59 + "format": "nsid" 60 + }, 61 + "rkey": { 62 + "type": "string" 63 + }, 64 + "time_us": { 65 + "type": "integer" 66 + }, 67 + "citation": { 68 + "type": "ref", 69 + "ref": "#refCitationRecord" 70 + }, 71 + "profiles": { 72 + "type": "array", 73 + "items": { 74 + "type": "ref", 75 + "ref": "#profileEntry" 76 + } 77 + } 78 + } 79 + } 80 + } 81 + }, 82 + "refCitationRecord": { 83 + "type": "object", 84 + "required": [ 85 + "uri", 86 + "did", 87 + "collection", 88 + "rkey", 89 + "time_us" 90 + ], 91 + "properties": { 92 + "uri": { 93 + "type": "string", 94 + "format": "at-uri" 95 + }, 96 + "did": { 97 + "type": "string", 98 + "format": "did" 99 + }, 100 + "collection": { 101 + "type": "string", 102 + "format": "nsid" 103 + }, 104 + "rkey": { 105 + "type": "string" 106 + }, 107 + "cid": { 108 + "type": "string" 109 + }, 110 + "record": { 111 + "type": "unknown" 112 + }, 113 + "time_us": { 114 + "type": "integer" 115 + } 116 + } 117 + }, 118 + "profileEntry": { 119 + "type": "object", 120 + "required": [ 121 + "did" 122 + ], 123 + "properties": { 124 + "did": { 125 + "type": "string", 126 + "format": "did" 127 + }, 128 + "handle": { 129 + "type": "string" 130 + }, 131 + "uri": { 132 + "type": "string", 133 + "format": "at-uri" 134 + }, 135 + "cid": { 136 + "type": "string", 137 + "format": "cid" 138 + }, 139 + "value": { 140 + "type": "ref", 141 + "ref": "#appBskyActorProfile" 142 + }, 143 + "collection": { 144 + "type": "string", 145 + "format": "nsid" 146 + }, 147 + "rkey": { 148 + "type": "string" 149 + } 150 + } 151 + }, 152 + "appBskyActorProfile": { 153 + "type": "object", 154 + "properties": { 155 + "avatar": { 156 + "type": "blob", 157 + "accept": [ 158 + "image/png", 159 + "image/jpeg" 160 + ], 161 + "maxSize": 1000000, 162 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 163 + }, 164 + "banner": { 165 + "type": "blob", 166 + "accept": [ 167 + "image/png", 168 + "image/jpeg" 169 + ], 170 + "maxSize": 1000000, 171 + "description": "Larger horizontal image to display behind profile view." 172 + }, 173 + "labels": { 174 + "refs": [ 175 + "com.atproto.label.defs#selfLabels" 176 + ], 177 + "type": "union", 178 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 179 + }, 180 + "website": { 181 + "type": "string", 182 + "format": "uri" 183 + }, 184 + "pronouns": { 185 + "type": "string", 186 + "maxLength": 200, 187 + "description": "Free-form pronouns text.", 188 + "maxGraphemes": 20 189 + }, 190 + "createdAt": { 191 + "type": "string", 192 + "format": "datetime" 193 + }, 194 + "pinnedPost": { 195 + "ref": "com.atproto.repo.strongRef", 196 + "type": "ref" 197 + }, 198 + "description": { 199 + "type": "string", 200 + "maxLength": 2560, 201 + "description": "Free-form profile description text.", 202 + "maxGraphemes": 256 203 + }, 204 + "displayName": { 205 + "type": "string", 206 + "maxLength": 640, 207 + "maxGraphemes": 64 208 + }, 209 + "joinedViaStarterPack": { 210 + "ref": "com.atproto.repo.strongRef", 211 + "type": "ref" 212 + } 213 + } 214 + } 215 + } 216 + }
+269
lexicons/generated/org/latha/island/reasoning/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.reasoning.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query org.latha.island.reasoning records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: question, evidence" 32 + }, 33 + "method": { 34 + "type": "string", 35 + "description": "Filter by method" 36 + }, 37 + "confidence": { 38 + "type": "string", 39 + "description": "Filter by confidence" 40 + }, 41 + "hydrateCitation": { 42 + "type": "boolean", 43 + "description": "Embed the referenced citation record" 44 + }, 45 + "sort": { 46 + "type": "string", 47 + "knownValues": [ 48 + "method", 49 + "confidence" 50 + ], 51 + "description": "Field to sort by (default: time_us)" 52 + }, 53 + "order": { 54 + "type": "string", 55 + "knownValues": [ 56 + "asc", 57 + "desc" 58 + ], 59 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 60 + } 61 + } 62 + }, 63 + "output": { 64 + "encoding": "application/json", 65 + "schema": { 66 + "type": "object", 67 + "required": [ 68 + "records" 69 + ], 70 + "properties": { 71 + "records": { 72 + "type": "array", 73 + "items": { 74 + "type": "ref", 75 + "ref": "#record" 76 + } 77 + }, 78 + "cursor": { 79 + "type": "string" 80 + }, 81 + "profiles": { 82 + "type": "array", 83 + "items": { 84 + "type": "ref", 85 + "ref": "#profileEntry" 86 + } 87 + } 88 + } 89 + } 90 + } 91 + }, 92 + "record": { 93 + "type": "object", 94 + "required": [ 95 + "uri", 96 + "cid", 97 + "value", 98 + "did", 99 + "collection", 100 + "rkey", 101 + "time_us" 102 + ], 103 + "properties": { 104 + "uri": { 105 + "type": "string", 106 + "format": "at-uri" 107 + }, 108 + "cid": { 109 + "type": "string", 110 + "format": "cid" 111 + }, 112 + "value": { 113 + "type": "unknown" 114 + }, 115 + "did": { 116 + "type": "string", 117 + "format": "did" 118 + }, 119 + "collection": { 120 + "type": "string", 121 + "format": "nsid" 122 + }, 123 + "rkey": { 124 + "type": "string" 125 + }, 126 + "time_us": { 127 + "type": "integer" 128 + }, 129 + "citation": { 130 + "type": "ref", 131 + "ref": "#refCitationRecord" 132 + } 133 + } 134 + }, 135 + "refCitationRecord": { 136 + "type": "object", 137 + "required": [ 138 + "uri", 139 + "did", 140 + "collection", 141 + "rkey", 142 + "time_us" 143 + ], 144 + "properties": { 145 + "uri": { 146 + "type": "string", 147 + "format": "at-uri" 148 + }, 149 + "did": { 150 + "type": "string", 151 + "format": "did" 152 + }, 153 + "collection": { 154 + "type": "string", 155 + "format": "nsid" 156 + }, 157 + "rkey": { 158 + "type": "string" 159 + }, 160 + "cid": { 161 + "type": "string" 162 + }, 163 + "record": { 164 + "type": "unknown" 165 + }, 166 + "time_us": { 167 + "type": "integer" 168 + } 169 + } 170 + }, 171 + "profileEntry": { 172 + "type": "object", 173 + "required": [ 174 + "did" 175 + ], 176 + "properties": { 177 + "did": { 178 + "type": "string", 179 + "format": "did" 180 + }, 181 + "handle": { 182 + "type": "string" 183 + }, 184 + "uri": { 185 + "type": "string", 186 + "format": "at-uri" 187 + }, 188 + "cid": { 189 + "type": "string", 190 + "format": "cid" 191 + }, 192 + "value": { 193 + "type": "ref", 194 + "ref": "#appBskyActorProfile" 195 + }, 196 + "collection": { 197 + "type": "string", 198 + "format": "nsid" 199 + }, 200 + "rkey": { 201 + "type": "string" 202 + } 203 + } 204 + }, 205 + "appBskyActorProfile": { 206 + "type": "object", 207 + "properties": { 208 + "avatar": { 209 + "type": "blob", 210 + "accept": [ 211 + "image/png", 212 + "image/jpeg" 213 + ], 214 + "maxSize": 1000000, 215 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 216 + }, 217 + "banner": { 218 + "type": "blob", 219 + "accept": [ 220 + "image/png", 221 + "image/jpeg" 222 + ], 223 + "maxSize": 1000000, 224 + "description": "Larger horizontal image to display behind profile view." 225 + }, 226 + "labels": { 227 + "refs": [ 228 + "com.atproto.label.defs#selfLabels" 229 + ], 230 + "type": "union", 231 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 232 + }, 233 + "website": { 234 + "type": "string", 235 + "format": "uri" 236 + }, 237 + "pronouns": { 238 + "type": "string", 239 + "maxLength": 200, 240 + "description": "Free-form pronouns text.", 241 + "maxGraphemes": 20 242 + }, 243 + "createdAt": { 244 + "type": "string", 245 + "format": "datetime" 246 + }, 247 + "pinnedPost": { 248 + "ref": "com.atproto.repo.strongRef", 249 + "type": "ref" 250 + }, 251 + "description": { 252 + "type": "string", 253 + "maxLength": 2560, 254 + "description": "Free-form profile description text.", 255 + "maxGraphemes": 256 256 + }, 257 + "displayName": { 258 + "type": "string", 259 + "maxLength": 640, 260 + "maxGraphemes": 64 261 + }, 262 + "joinedViaStarterPack": { 263 + "ref": "com.atproto.repo.strongRef", 264 + "type": "ref" 265 + } 266 + } 267 + } 268 + } 269 + }
+217
lexicons/generated/org/latha/island/strata/getRecord.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.strata.getRecord", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Get a single org.latha.island record by AT URI", 8 + "parameters": { 9 + "type": "params", 10 + "required": [ 11 + "uri" 12 + ], 13 + "properties": { 14 + "uri": { 15 + "type": "string", 16 + "format": "at-uri", 17 + "description": "AT URI of the record" 18 + }, 19 + "profiles": { 20 + "type": "boolean", 21 + "description": "Include profile + identity info keyed by DID" 22 + }, 23 + "hydrateSourceCard": { 24 + "type": "boolean", 25 + "description": "Embed the referenced sourceCard record" 26 + } 27 + } 28 + }, 29 + "output": { 30 + "encoding": "application/json", 31 + "schema": { 32 + "type": "object", 33 + "required": [ 34 + "uri", 35 + "value", 36 + "did", 37 + "collection", 38 + "rkey", 39 + "time_us" 40 + ], 41 + "properties": { 42 + "uri": { 43 + "type": "string", 44 + "format": "at-uri" 45 + }, 46 + "cid": { 47 + "type": "string", 48 + "format": "cid" 49 + }, 50 + "value": { 51 + "type": "unknown" 52 + }, 53 + "did": { 54 + "type": "string", 55 + "format": "did" 56 + }, 57 + "collection": { 58 + "type": "string", 59 + "format": "nsid" 60 + }, 61 + "rkey": { 62 + "type": "string" 63 + }, 64 + "time_us": { 65 + "type": "integer" 66 + }, 67 + "sourceCard": { 68 + "type": "ref", 69 + "ref": "#refSourceCardRecord" 70 + }, 71 + "profiles": { 72 + "type": "array", 73 + "items": { 74 + "type": "ref", 75 + "ref": "#profileEntry" 76 + } 77 + } 78 + } 79 + } 80 + } 81 + }, 82 + "refSourceCardRecord": { 83 + "type": "object", 84 + "required": [ 85 + "uri", 86 + "did", 87 + "collection", 88 + "rkey", 89 + "time_us" 90 + ], 91 + "properties": { 92 + "uri": { 93 + "type": "string", 94 + "format": "at-uri" 95 + }, 96 + "did": { 97 + "type": "string", 98 + "format": "did" 99 + }, 100 + "collection": { 101 + "type": "string", 102 + "format": "nsid" 103 + }, 104 + "rkey": { 105 + "type": "string" 106 + }, 107 + "cid": { 108 + "type": "string" 109 + }, 110 + "record": { 111 + "type": "ref", 112 + "ref": "network.cosmik.card#main" 113 + }, 114 + "time_us": { 115 + "type": "integer" 116 + } 117 + } 118 + }, 119 + "profileEntry": { 120 + "type": "object", 121 + "required": [ 122 + "did" 123 + ], 124 + "properties": { 125 + "did": { 126 + "type": "string", 127 + "format": "did" 128 + }, 129 + "handle": { 130 + "type": "string" 131 + }, 132 + "uri": { 133 + "type": "string", 134 + "format": "at-uri" 135 + }, 136 + "cid": { 137 + "type": "string", 138 + "format": "cid" 139 + }, 140 + "value": { 141 + "type": "ref", 142 + "ref": "#appBskyActorProfile" 143 + }, 144 + "collection": { 145 + "type": "string", 146 + "format": "nsid" 147 + }, 148 + "rkey": { 149 + "type": "string" 150 + } 151 + } 152 + }, 153 + "appBskyActorProfile": { 154 + "type": "object", 155 + "properties": { 156 + "avatar": { 157 + "type": "blob", 158 + "accept": [ 159 + "image/png", 160 + "image/jpeg" 161 + ], 162 + "maxSize": 1000000, 163 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 164 + }, 165 + "banner": { 166 + "type": "blob", 167 + "accept": [ 168 + "image/png", 169 + "image/jpeg" 170 + ], 171 + "maxSize": 1000000, 172 + "description": "Larger horizontal image to display behind profile view." 173 + }, 174 + "labels": { 175 + "refs": [ 176 + "com.atproto.label.defs#selfLabels" 177 + ], 178 + "type": "union", 179 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 180 + }, 181 + "website": { 182 + "type": "string", 183 + "format": "uri" 184 + }, 185 + "pronouns": { 186 + "type": "string", 187 + "maxLength": 200, 188 + "description": "Free-form pronouns text.", 189 + "maxGraphemes": 20 190 + }, 191 + "createdAt": { 192 + "type": "string", 193 + "format": "datetime" 194 + }, 195 + "pinnedPost": { 196 + "ref": "com.atproto.repo.strongRef", 197 + "type": "ref" 198 + }, 199 + "description": { 200 + "type": "string", 201 + "maxLength": 2560, 202 + "description": "Free-form profile description text.", 203 + "maxGraphemes": 256 204 + }, 205 + "displayName": { 206 + "type": "string", 207 + "maxLength": 640, 208 + "maxGraphemes": 64 209 + }, 210 + "joinedViaStarterPack": { 211 + "ref": "com.atproto.repo.strongRef", 212 + "type": "ref" 213 + } 214 + } 215 + } 216 + } 217 + }
+279
lexicons/generated/org/latha/island/strata/listRecords.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "org.latha.island.strata.listRecords", 4 + "defs": { 5 + "main": { 6 + "type": "query", 7 + "description": "Query org.latha.island records with filters", 8 + "parameters": { 9 + "type": "params", 10 + "properties": { 11 + "limit": { 12 + "type": "integer", 13 + "minimum": 1, 14 + "maximum": 200, 15 + "default": 50 16 + }, 17 + "cursor": { 18 + "type": "string" 19 + }, 20 + "actor": { 21 + "type": "string", 22 + "format": "at-identifier", 23 + "description": "Filter by DID or handle (triggers on-demand backfill)" 24 + }, 25 + "profiles": { 26 + "type": "boolean", 27 + "description": "Include profile + identity info keyed by DID" 28 + }, 29 + "search": { 30 + "type": "string", 31 + "description": "Full-text search across: analysis.synthesis, analysis.themes" 32 + }, 33 + "sourceUri": { 34 + "type": "string", 35 + "description": "Filter by source.uri" 36 + }, 37 + "sourceCollection": { 38 + "type": "string", 39 + "description": "Filter by source.collection" 40 + }, 41 + "updatedAtMin": { 42 + "type": "string", 43 + "description": "Minimum value for updatedAt" 44 + }, 45 + "updatedAtMax": { 46 + "type": "string", 47 + "description": "Maximum value for updatedAt" 48 + }, 49 + "hydrateSourceCard": { 50 + "type": "boolean", 51 + "description": "Embed the referenced sourceCard record" 52 + }, 53 + "sort": { 54 + "type": "string", 55 + "knownValues": [ 56 + "sourceUri", 57 + "sourceCollection", 58 + "updatedAt" 59 + ], 60 + "description": "Field to sort by (default: time_us)" 61 + }, 62 + "order": { 63 + "type": "string", 64 + "knownValues": [ 65 + "asc", 66 + "desc" 67 + ], 68 + "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)" 69 + } 70 + } 71 + }, 72 + "output": { 73 + "encoding": "application/json", 74 + "schema": { 75 + "type": "object", 76 + "required": [ 77 + "records" 78 + ], 79 + "properties": { 80 + "records": { 81 + "type": "array", 82 + "items": { 83 + "type": "ref", 84 + "ref": "#record" 85 + } 86 + }, 87 + "cursor": { 88 + "type": "string" 89 + }, 90 + "profiles": { 91 + "type": "array", 92 + "items": { 93 + "type": "ref", 94 + "ref": "#profileEntry" 95 + } 96 + } 97 + } 98 + } 99 + } 100 + }, 101 + "record": { 102 + "type": "object", 103 + "required": [ 104 + "uri", 105 + "cid", 106 + "value", 107 + "did", 108 + "collection", 109 + "rkey", 110 + "time_us" 111 + ], 112 + "properties": { 113 + "uri": { 114 + "type": "string", 115 + "format": "at-uri" 116 + }, 117 + "cid": { 118 + "type": "string", 119 + "format": "cid" 120 + }, 121 + "value": { 122 + "type": "unknown" 123 + }, 124 + "did": { 125 + "type": "string", 126 + "format": "did" 127 + }, 128 + "collection": { 129 + "type": "string", 130 + "format": "nsid" 131 + }, 132 + "rkey": { 133 + "type": "string" 134 + }, 135 + "time_us": { 136 + "type": "integer" 137 + }, 138 + "sourceCard": { 139 + "type": "ref", 140 + "ref": "#refSourceCardRecord" 141 + } 142 + } 143 + }, 144 + "refSourceCardRecord": { 145 + "type": "object", 146 + "required": [ 147 + "uri", 148 + "did", 149 + "collection", 150 + "rkey", 151 + "time_us" 152 + ], 153 + "properties": { 154 + "uri": { 155 + "type": "string", 156 + "format": "at-uri" 157 + }, 158 + "did": { 159 + "type": "string", 160 + "format": "did" 161 + }, 162 + "collection": { 163 + "type": "string", 164 + "format": "nsid" 165 + }, 166 + "rkey": { 167 + "type": "string" 168 + }, 169 + "cid": { 170 + "type": "string" 171 + }, 172 + "record": { 173 + "type": "ref", 174 + "ref": "network.cosmik.card#main" 175 + }, 176 + "time_us": { 177 + "type": "integer" 178 + } 179 + } 180 + }, 181 + "profileEntry": { 182 + "type": "object", 183 + "required": [ 184 + "did" 185 + ], 186 + "properties": { 187 + "did": { 188 + "type": "string", 189 + "format": "did" 190 + }, 191 + "handle": { 192 + "type": "string" 193 + }, 194 + "uri": { 195 + "type": "string", 196 + "format": "at-uri" 197 + }, 198 + "cid": { 199 + "type": "string", 200 + "format": "cid" 201 + }, 202 + "value": { 203 + "type": "ref", 204 + "ref": "#appBskyActorProfile" 205 + }, 206 + "collection": { 207 + "type": "string", 208 + "format": "nsid" 209 + }, 210 + "rkey": { 211 + "type": "string" 212 + } 213 + } 214 + }, 215 + "appBskyActorProfile": { 216 + "type": "object", 217 + "properties": { 218 + "avatar": { 219 + "type": "blob", 220 + "accept": [ 221 + "image/png", 222 + "image/jpeg" 223 + ], 224 + "maxSize": 1000000, 225 + "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 226 + }, 227 + "banner": { 228 + "type": "blob", 229 + "accept": [ 230 + "image/png", 231 + "image/jpeg" 232 + ], 233 + "maxSize": 1000000, 234 + "description": "Larger horizontal image to display behind profile view." 235 + }, 236 + "labels": { 237 + "refs": [ 238 + "com.atproto.label.defs#selfLabels" 239 + ], 240 + "type": "union", 241 + "description": "Self-label values, specific to the Bluesky application, on the overall account." 242 + }, 243 + "website": { 244 + "type": "string", 245 + "format": "uri" 246 + }, 247 + "pronouns": { 248 + "type": "string", 249 + "maxLength": 200, 250 + "description": "Free-form pronouns text.", 251 + "maxGraphemes": 20 252 + }, 253 + "createdAt": { 254 + "type": "string", 255 + "format": "datetime" 256 + }, 257 + "pinnedPost": { 258 + "ref": "com.atproto.repo.strongRef", 259 + "type": "ref" 260 + }, 261 + "description": { 262 + "type": "string", 263 + "maxLength": 2560, 264 + "description": "Free-form profile description text.", 265 + "maxGraphemes": 256 266 + }, 267 + "displayName": { 268 + "type": "string", 269 + "maxLength": 640, 270 + "maxGraphemes": 64 271 + }, 272 + "joinedViaStarterPack": { 273 + "ref": "com.atproto.repo.strongRef", 274 + "type": "ref" 275 + } 276 + } 277 + } 278 + } 279 + }