full diff

org.cairnsproto.draft.project

cairnsproto.org +1 −1
From
bafyreigv3rbrutbo5cuksazgxdol6wfrto2qnmsygroa6zpnlfkqyoijsu indexed 2026-11-02 15:29 UTC View this version
To
bafyreibwnyotcexaws6jiycmrdmepek4r4oik4uyowffcc4dcfno2j6zvu indexed 2026-11-03 20:55 UTC View this version

Compatibility

backward compatible No changes detected.

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "builtinComposer": {
55 "description": "A composer every client implements. concat: every array field is the parts' arrays joined in part order, and every other field must be equal in all parts.",
66 "properties": {
77 "name": {
88 "knownValues": [
99 "concat"
1010 ],
1111 "maxLength": 64,
1212 "type": "string"
1313 }
1414 },
1515 "required": [
1616 "name"
1717 ],
1818 "type": "object"
1919 },
2020 "checkComposer": {
2121 "description": "A WASM check that rebuilds a split site's value from its parts' values, in part order.",
2222 "properties": {
2323 "check": {
2424 "ref": "com.atproto.repo.strongRef",
2525 "type": "ref"
2626 }
2727 },
2828 "required": [
2929 "check"
3030 ],
3131 "type": "object"
3232 },
3333 "course": {
3434 "properties": {
3535 "bounds": {
3636 "description": "closed allows null stones; open allows only attempts.",
3737 "knownValues": [
3838 "closed",
3939 "open"
4040 ],
4141 "maxLength": 32,
4242 "type": "string"
4343 },
4444 "compose": {
4545 "description": "How a split site's value is rebuilt from its parts' values. Absent means the course is atomic, and its sites can't be split.",
4646 "refs": [
4747 "#checkComposer",
4848 "#builtinComposer"
4949 ],
5050 "type": "union"
5151 },
5252 "id": {
5353 "maxLength": 128,
5454 "type": "string"
5555 },
5656 "markType": {
5757 "description": "Mark def reference, such as org.cairnsproto.draft.mark#pdfRegion.",
5858 "maxLength": 512,
5959 "type": "string"
6060 },
6161 "minMark": {
6262 "description": "The finest mark the course accepts. Its type matches markType.",
6363 "refs": [
6464 "org.cairnsproto.draft.mark#pdfRegion",
6565 "org.cairnsproto.draft.mark#imageRegion",
6666 "org.cairnsproto.draft.mark#sheetRange",
6767 "org.cairnsproto.draft.mark#tableRange",
6868 "org.cairnsproto.draft.mark#textQuote",
6969 "org.cairnsproto.draft.mark#cssSelector",
7070 "org.cairnsproto.draft.mark#textPosition",
7171 "org.cairnsproto.draft.mark#gitPath",
7272 "org.cairnsproto.draft.mark#jsonPointer",
7373 "org.cairnsproto.draft.mark#archiveMember",
7474 "org.cairnsproto.draft.mark#mediaTime",
7575 "org.cairnsproto.draft.mark#spaceRange"
7676 ],
7777 "type": "union"
7878 },
7979 "parent": {
8080 "description": "Id of the course below. Absent for course 0.",
8181 "maxLength": 128,
8282 "type": "string"
8383 },
8484 "procedure": {
8585 "description": "The procedure for this course's sites.",
8686 "ref": "com.atproto.repo.strongRef",
8787 "type": "ref"
8888 },
8989 "schema": {
9090 "description": "Hash of the payload schema's definition. Part of every site key in the course.",
9191 "ref": "org.cairnsproto.draft.defs#hash",
9292 "type": "ref"
9393 },
9494 "schemaRecord": {
9595 "description": "An org.cairnsproto.draft.schema record whose definition has the schema hash, in any repo.",
9696 "ref": "com.atproto.repo.strongRef",
9797 "type": "ref"
9898 },
9999 "split": {
100100 "description": "How a parent value breaks down into this course's sites: a JSON pointer to an array in the parent value, with one site per element, marked by a jsonPointer to that element (`/contests/0`, `/contests/1`, ...). Only for a course with a parent and markType jsonPointer. A site opens when the parent value clears the open-children bar. Without a split, a course opens one unmarked site on each parent conversion that clears the bar, and none on other values.",
101101 "maxLength": 512,
102102 "type": "string"
103103 }
104104 },
105105 "required": [
106106 "id",
107107 "markType",
108108 "schema",
109109 "schemaRecord",
110110 "bounds"
111111 ],
112112 "type": "object"
113113 },
114114 "enumeratedScope": {
115115 "description": "The course-0 sites are a fixed list.",
116116 "properties": {
117117 "sites": {
118118 "description": "Optional explicit list of course-0 site keys, one hex key per line.",
119119 "ref": "org.cairnsproto.draft.defs#external",
120120 "type": "ref"
121121 },
122122 "sources": {
123123 "description": "Source hashes the project covers.",
124124 "items": {
125125 "ref": "org.cairnsproto.draft.defs#hash",
126126 "type": "ref"
127127 },
128128 "maxLength": 10000,
129129 "type": "array"
130130 }
131131 },
132132 "required": [
133133 "sources"
134134 ],
135135 "type": "object"
136136 },
137137 "main": {
138138 "description": "Maintainers, a scope, a stack of courses and a policy.",
139139 "key": "tid",
140140 "record": {
141141 "properties": {
142142 "courses": {
143143 "items": {
144144 "ref": "#course",
145145 "type": "ref"
146146 },
147147 "maxLength": 64,
148148 "minLength": 1,
149149 "type": "array"
150150 },
151151 "createdAt": {
152152 "format": "datetime",
153153 "type": "string"
154154 },
155155 "description": {
156156 "maxGraphemes": 3000,
157157 "maxLength": 30000,
158158 "type": "string"
159159 },
160160 "forkedFrom": {
161161 "ref": "com.atproto.repo.strongRef",
162162 "type": "ref"
163163 },
164164 "maintainers": {
165165 "items": {
166166 "format": "did",
167167 "type": "string"
168168 },
169169 "maxLength": 32,
170170 "minLength": 1,
171171 "type": "array"
172172 },
173173 "mounts": {
174174 "items": {
175175 "ref": "#mount",
176176 "type": "ref"
177177 },
178178 "maxLength": 64,
179179 "type": "array"
180180 },
181181 "name": {
182182 "maxGraphemes": 64,
183183 "maxLength": 640,
184184 "type": "string"
185185 },
186186 "outputSchema": {
187187 "description": "Hash of the export's schema definition.",
188188 "ref": "org.cairnsproto.draft.defs#hash",
189189 "type": "ref"
190190 },
191191 "policy": {
192192 "ref": "com.atproto.repo.strongRef",
193193 "type": "ref"
194194 },
195195 "publish": {
196196 "ref": "#publish",
197197 "type": "ref"
198198 },
199199 "scope": {
200200 "refs": [
201201 "#enumeratedScope",
202202 "#openScope"
203203 ],
204204 "type": "union"
205205 },
206206 "status": {
207207 "knownValues": [
208208 "active",
209209 "complete",
210210 "archived"
211211 ],
212212 "maxLength": 32,
213213 "type": "string"
214214 },
215215 "succeededBy": {
216216 "description": "Set together with status archived when adopting another fork.",
217217 "ref": "com.atproto.repo.strongRef",
218218 "type": "ref"
219219 },
220220 "tags": {
221221 "description": "Discovery tags, lowercase kebab-case.",
222222 "items": {
223223 "maxLength": 64,
224224 "type": "string"
225225 },
226226 "maxLength": 10,
227227 "type": "array"
228228 },
229229 "transforms": {
230 "description": "Transform records the maintainer vouches for. The indexer runs them itself, and their output needs no reads.",
230 "description": "Transform records the maintainer vouches for. Clients run them, and their output needs no reads.",
231231 "items": {
232232 "ref": "com.atproto.repo.strongRef",
233233 "type": "ref"
234234 },
235235 "maxLength": 64,
236236 "type": "array"
237237 }
238238 },
239239 "required": [
240240 "maintainers",
241241 "status",
242242 "scope",
243243 "courses",
244244 "policy",
245245 "createdAt"
246246 ],
247247 "type": "object"
248248 },
249249 "type": "record"
250250 },
251251 "mount": {
252252 "description": "Builds on another project's snapshot.",
253253 "properties": {
254254 "course": {
255255 "maxLength": 128,
256256 "type": "string"
257257 },
258258 "project": {
259259 "ref": "com.atproto.repo.strongRef",
260260 "type": "ref"
261261 },
262262 "snapshot": {
263263 "ref": "com.atproto.repo.strongRef",
264264 "type": "ref"
265265 }
266266 },
267267 "required": [
268268 "project",
269269 "snapshot",
270270 "course"
271271 ],
272272 "type": "object"
273273 },
274274 "openScope": {
275275 "description": "Anyone may open new course-0 sites, such as hypothesis sites.",
276276 "properties": {},
277277 "type": "object"
278278 },
279279 "publish": {
280280 "description": "The official repo the project's output feeds, and how values become its files.",
281281 "properties": {
282282 "branch": {
283283 "maxLength": 256,
284284 "type": "string"
285285 },
286286 "format": {
287287 "description": "Output format, such as csv.",
288288 "maxLength": 64,
289289 "type": "string"
290290 },
291291 "import": {
292292 "description": "Check that maps the repo's published files back to site keys and values.",
293293 "ref": "com.atproto.repo.strongRef",
294294 "type": "ref"
295295 },
296296 "license": {
297297 "description": "SPDX expression or URL for the output.",
298298 "maxLength": 512,
299299 "type": "string"
300300 },
301301 "path": {
302302 "description": "Directory in the repo the files go in.",
303303 "maxLength": 4096,
304304 "type": "string"
305305 },
306306 "render": {
307307 "description": "Check that renders a snapshot's exported values into files.",
308308 "ref": "com.atproto.repo.strongRef",
309309 "type": "ref"
310310 },
311311 "repo": {
312312 "description": "Git URL.",
313313 "maxLength": 2048,
314314 "type": "string"
315315 }
316316 },
317317 "required": [
318318 "repo",
319319 "branch",
320320 "path",
321321 "format",
322322 "render",
323323 "license"
324324 ],
325325 "type": "object"
326326 }
327327 },
328328 "id": "org.cairnsproto.draft.project",
329329 "lexicon": 1
330330}

Compare other versions