@hypercerts-org/lexicon 0.10.0-beta.15 → 0.10.0-beta.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +50 -12
  3. package/SCHEMAS.md +293 -169
  4. package/dist/exports.d.ts +566 -179
  5. package/dist/exports.d.ts.map +1 -1
  6. package/dist/generated/exports.d.ts +566 -179
  7. package/dist/generated/exports.d.ts.map +1 -1
  8. package/dist/generated/lexicons.d.ts +1199 -465
  9. package/dist/generated/lexicons.d.ts.map +1 -1
  10. package/dist/generated/types/app/certified/actor/organization.d.ts +32 -0
  11. package/dist/generated/types/app/certified/actor/organization.d.ts.map +1 -0
  12. package/dist/generated/types/app/certified/actor/profile.d.ts +4 -1
  13. package/dist/generated/types/app/certified/actor/profile.d.ts.map +1 -1
  14. package/dist/generated/types/app/certified/badge/award.d.ts +2 -0
  15. package/dist/generated/types/app/certified/badge/award.d.ts.map +1 -1
  16. package/dist/generated/types/app/certified/badge/response.d.ts +1 -1
  17. package/dist/generated/types/app/certified/badge/response.d.ts.map +1 -1
  18. package/dist/generated/types/app/certified/location.d.ts +2 -2
  19. package/dist/generated/types/app/certified/location.d.ts.map +1 -1
  20. package/dist/generated/types/org/hyperboards/board.d.ts +75 -0
  21. package/dist/generated/types/org/hyperboards/board.d.ts.map +1 -0
  22. package/dist/generated/types/org/hyperboards/displayProfile.d.ts +31 -0
  23. package/dist/generated/types/org/hyperboards/displayProfile.d.ts.map +1 -0
  24. package/dist/generated/types/org/hypercerts/claim/activity.d.ts +8 -9
  25. package/dist/generated/types/org/hypercerts/claim/activity.d.ts.map +1 -1
  26. package/dist/generated/types/org/hypercerts/claim/{contributionDetails.d.ts → contribution.d.ts} +6 -6
  27. package/dist/generated/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
  28. package/dist/generated/types/org/hypercerts/claim/contributorInformation.d.ts +2 -2
  29. package/dist/generated/types/org/hypercerts/claim/contributorInformation.d.ts.map +1 -1
  30. package/dist/generated/types/org/hypercerts/claim/rights.d.ts +3 -3
  31. package/dist/generated/types/org/hypercerts/claim/rights.d.ts.map +1 -1
  32. package/dist/generated/types/org/hypercerts/{claim/collection.d.ts → collection.d.ts} +10 -10
  33. package/dist/generated/types/org/hypercerts/collection.d.ts.map +1 -0
  34. package/dist/generated/types/org/hypercerts/context/acknowledgement.d.ts +25 -0
  35. package/dist/generated/types/org/hypercerts/context/acknowledgement.d.ts.map +1 -0
  36. package/dist/generated/types/org/hypercerts/{claim → context}/attachment.d.ts +6 -8
  37. package/dist/generated/types/org/hypercerts/context/attachment.d.ts.map +1 -0
  38. package/dist/generated/types/org/hypercerts/{claim → context}/evaluation.d.ts +15 -15
  39. package/dist/generated/types/org/hypercerts/context/evaluation.d.ts.map +1 -0
  40. package/dist/{types/org/hypercerts/claim → generated/types/org/hypercerts/context}/measurement.d.ts +7 -6
  41. package/dist/generated/types/org/hypercerts/context/measurement.d.ts.map +1 -0
  42. package/dist/generated/types/org/hypercerts/defs.d.ts +8 -0
  43. package/dist/generated/types/org/hypercerts/defs.d.ts.map +1 -1
  44. package/dist/generated/types/org/hypercerts/funding/receipt.d.ts +1 -1
  45. package/dist/generated/types/org/hypercerts/funding/receipt.d.ts.map +1 -1
  46. package/dist/generated/types/org/hypercerts/workscope/cel.d.ts +20 -0
  47. package/dist/generated/types/org/hypercerts/workscope/cel.d.ts.map +1 -0
  48. package/dist/generated/types/org/hypercerts/workscope/tag.d.ts +36 -0
  49. package/dist/generated/types/org/hypercerts/workscope/tag.d.ts.map +1 -0
  50. package/dist/index.cjs +1822 -830
  51. package/dist/index.cjs.map +1 -1
  52. package/dist/index.mjs +1774 -798
  53. package/dist/index.mjs.map +1 -1
  54. package/dist/lexicons.cjs +651 -253
  55. package/dist/lexicons.cjs.map +1 -1
  56. package/dist/lexicons.d.ts +1199 -465
  57. package/dist/lexicons.d.ts.map +1 -1
  58. package/dist/lexicons.mjs +651 -253
  59. package/dist/lexicons.mjs.map +1 -1
  60. package/dist/types/app/certified/actor/organization.d.ts +32 -0
  61. package/dist/types/app/certified/actor/organization.d.ts.map +1 -0
  62. package/dist/types/app/certified/actor/profile.d.ts +4 -1
  63. package/dist/types/app/certified/actor/profile.d.ts.map +1 -1
  64. package/dist/types/app/certified/badge/award.d.ts +2 -0
  65. package/dist/types/app/certified/badge/award.d.ts.map +1 -1
  66. package/dist/types/app/certified/badge/response.d.ts +1 -1
  67. package/dist/types/app/certified/badge/response.d.ts.map +1 -1
  68. package/dist/types/app/certified/location.d.ts +2 -2
  69. package/dist/types/app/certified/location.d.ts.map +1 -1
  70. package/dist/types/org/hyperboards/board.d.ts +75 -0
  71. package/dist/types/org/hyperboards/board.d.ts.map +1 -0
  72. package/dist/types/org/hyperboards/displayProfile.d.ts +31 -0
  73. package/dist/types/org/hyperboards/displayProfile.d.ts.map +1 -0
  74. package/dist/types/org/hypercerts/claim/activity.d.ts +8 -9
  75. package/dist/types/org/hypercerts/claim/activity.d.ts.map +1 -1
  76. package/dist/types/org/hypercerts/claim/{contributionDetails.d.ts → contribution.d.ts} +6 -6
  77. package/dist/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
  78. package/dist/types/org/hypercerts/claim/contributorInformation.d.ts +2 -2
  79. package/dist/types/org/hypercerts/claim/contributorInformation.d.ts.map +1 -1
  80. package/dist/types/org/hypercerts/claim/rights.d.ts +3 -3
  81. package/dist/types/org/hypercerts/claim/rights.d.ts.map +1 -1
  82. package/dist/types/org/hypercerts/{claim/collection.d.ts → collection.d.ts} +10 -10
  83. package/dist/types/org/hypercerts/collection.d.ts.map +1 -0
  84. package/dist/types/org/hypercerts/context/acknowledgement.d.ts +25 -0
  85. package/dist/types/org/hypercerts/context/acknowledgement.d.ts.map +1 -0
  86. package/dist/types/org/hypercerts/{claim → context}/attachment.d.ts +6 -8
  87. package/dist/types/org/hypercerts/context/attachment.d.ts.map +1 -0
  88. package/dist/types/org/hypercerts/{claim → context}/evaluation.d.ts +15 -15
  89. package/dist/types/org/hypercerts/context/evaluation.d.ts.map +1 -0
  90. package/dist/{generated/types/org/hypercerts/claim → types/org/hypercerts/context}/measurement.d.ts +7 -6
  91. package/dist/types/org/hypercerts/context/measurement.d.ts.map +1 -0
  92. package/dist/types/org/hypercerts/defs.d.ts +8 -0
  93. package/dist/types/org/hypercerts/defs.d.ts.map +1 -1
  94. package/dist/types/org/hypercerts/funding/receipt.d.ts +1 -1
  95. package/dist/types/org/hypercerts/funding/receipt.d.ts.map +1 -1
  96. package/dist/types/org/hypercerts/workscope/cel.d.ts +20 -0
  97. package/dist/types/org/hypercerts/workscope/cel.d.ts.map +1 -0
  98. package/dist/types/org/hypercerts/workscope/tag.d.ts +36 -0
  99. package/dist/types/org/hypercerts/workscope/tag.d.ts.map +1 -0
  100. package/lexicons/app/certified/actor/organization.json +70 -0
  101. package/lexicons/app/certified/actor/profile.json +13 -3
  102. package/lexicons/app/certified/badge/award.json +8 -1
  103. package/lexicons/app/certified/badge/definition.json +8 -3
  104. package/lexicons/app/certified/badge/response.json +3 -2
  105. package/lexicons/app/certified/location.json +2 -2
  106. package/lexicons/org/hyperboards/board.json +152 -0
  107. package/lexicons/org/hyperboards/displayProfile.json +64 -0
  108. package/lexicons/org/hypercerts/claim/activity.json +23 -29
  109. package/lexicons/org/hypercerts/claim/{contributionDetails.json → contribution.json} +4 -4
  110. package/lexicons/org/hypercerts/claim/contributorInformation.json +3 -2
  111. package/lexicons/org/hypercerts/claim/rights.json +5 -3
  112. package/lexicons/org/hypercerts/{claim/collection.json → collection.json} +9 -6
  113. package/lexicons/org/hypercerts/context/acknowledgement.json +42 -0
  114. package/lexicons/org/hypercerts/{claim → context}/attachment.json +6 -15
  115. package/lexicons/org/hypercerts/{claim → context}/evaluation.json +22 -22
  116. package/lexicons/org/hypercerts/{claim → context}/measurement.json +13 -9
  117. package/lexicons/org/hypercerts/defs.json +14 -1
  118. package/lexicons/org/hypercerts/funding/receipt.json +12 -6
  119. package/lexicons/org/hypercerts/workscope/cel.json +39 -0
  120. package/lexicons/org/hypercerts/workscope/tag.json +87 -0
  121. package/package.json +1 -1
  122. package/dist/generated/types/org/hypercerts/acknowledgement.d.ts +0 -21
  123. package/dist/generated/types/org/hypercerts/acknowledgement.d.ts.map +0 -1
  124. package/dist/generated/types/org/hypercerts/claim/attachment.d.ts.map +0 -1
  125. package/dist/generated/types/org/hypercerts/claim/collection.d.ts.map +0 -1
  126. package/dist/generated/types/org/hypercerts/claim/contributionDetails.d.ts.map +0 -1
  127. package/dist/generated/types/org/hypercerts/claim/evaluation.d.ts.map +0 -1
  128. package/dist/generated/types/org/hypercerts/claim/measurement.d.ts.map +0 -1
  129. package/dist/generated/types/org/hypercerts/helper/workScopeTag.d.ts +0 -31
  130. package/dist/generated/types/org/hypercerts/helper/workScopeTag.d.ts.map +0 -1
  131. package/dist/types/org/hypercerts/acknowledgement.d.ts +0 -21
  132. package/dist/types/org/hypercerts/acknowledgement.d.ts.map +0 -1
  133. package/dist/types/org/hypercerts/claim/attachment.d.ts.map +0 -1
  134. package/dist/types/org/hypercerts/claim/collection.d.ts.map +0 -1
  135. package/dist/types/org/hypercerts/claim/contributionDetails.d.ts.map +0 -1
  136. package/dist/types/org/hypercerts/claim/evaluation.d.ts.map +0 -1
  137. package/dist/types/org/hypercerts/claim/measurement.d.ts.map +0 -1
  138. package/dist/types/org/hypercerts/helper/workScopeTag.d.ts +0 -31
  139. package/dist/types/org/hypercerts/helper/workScopeTag.d.ts.map +0 -1
  140. package/lexicons/org/hypercerts/acknowledgement.json +0 -41
  141. package/lexicons/org/hypercerts/helper/workScopeTag.json +0 -65
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var lexicon$j = require('@atproto/lexicon');
3
+ var lexicon$n = require('@atproto/lexicon');
4
4
 
5
5
  /**
6
6
  * GENERATED CODE - DO NOT MODIFY
@@ -18,7 +18,7 @@ function is$type($type, id, hash) {
18
18
  $type.startsWith(id) &&
19
19
  $type.endsWith(hash);
20
20
  }
21
- function is$typed$j(v, id, hash) {
21
+ function is$typed$n(v, id, hash) {
22
22
  return isObject(v) && '$type' in v && is$type(v.$type, id, hash);
23
23
  }
24
24
  function maybe$typed(v, id, hash) {
@@ -39,19 +39,91 @@ function asPredicate(validate) {
39
39
  * GENERATED CODE - DO NOT MODIFY
40
40
  */
41
41
  const schemaDict = {
42
+ AppCertifiedActorOrganization: {
43
+ lexicon: 1,
44
+ id: 'app.certified.actor.organization',
45
+ defs: {
46
+ main: {
47
+ type: 'record',
48
+ description: 'Extended metadata for an organization actor. Complements the base actor profile with organization-specific fields like legal structure and reference links.',
49
+ key: 'literal:self',
50
+ record: {
51
+ type: 'object',
52
+ required: ['createdAt'],
53
+ properties: {
54
+ organizationType: {
55
+ type: 'array',
56
+ description: "Legal or operational structures of the organization (e.g. 'nonprofit', 'ngo', 'government', 'social-enterprise', 'cooperative').",
57
+ items: {
58
+ type: 'string',
59
+ maxLength: 128,
60
+ maxGraphemes: 100,
61
+ },
62
+ maxLength: 10,
63
+ },
64
+ urls: {
65
+ type: 'array',
66
+ description: 'Additional reference URLs (social media profiles, contact pages, donation links, etc.) with a display label for each URL.',
67
+ items: {
68
+ type: 'ref',
69
+ ref: 'lex:app.certified.actor.organization#urlItem',
70
+ },
71
+ },
72
+ location: {
73
+ type: 'ref',
74
+ ref: 'lex:com.atproto.repo.strongRef',
75
+ description: 'A strong reference to the location where the organization is based. The record referenced must conform with the lexicon app.certified.location.',
76
+ },
77
+ foundedDate: {
78
+ type: 'string',
79
+ format: 'datetime',
80
+ description: "When the organization was established. Stored as datetime per ATProto conventions (no date-only format exists). Clients should use midnight UTC (e.g., '2005-01-01T00:00:00.000Z'); consumers should treat only the date portion as canonical.",
81
+ },
82
+ createdAt: {
83
+ type: 'string',
84
+ format: 'datetime',
85
+ description: 'Client-declared timestamp when this record was originally created.',
86
+ },
87
+ },
88
+ },
89
+ },
90
+ urlItem: {
91
+ type: 'object',
92
+ description: 'A labeled URL reference.',
93
+ required: ['url'],
94
+ properties: {
95
+ url: {
96
+ type: 'string',
97
+ format: 'uri',
98
+ description: 'The URL.',
99
+ maxLength: 10000,
100
+ maxGraphemes: 2048,
101
+ },
102
+ label: {
103
+ type: 'string',
104
+ description: "Optional human-readable label for this URL (e.g. 'Support page', 'Donation page').",
105
+ maxLength: 640,
106
+ maxGraphemes: 64,
107
+ },
108
+ },
109
+ },
110
+ },
111
+ },
42
112
  AppCertifiedActorProfile: {
43
113
  lexicon: 1,
44
114
  id: 'app.certified.actor.profile',
45
115
  defs: {
46
116
  main: {
47
117
  type: 'record',
48
- description: 'A declaration of a Hypercert account profile.',
118
+ description: 'A declaration of a Certified account profile.',
49
119
  key: 'literal:self',
50
120
  record: {
51
121
  type: 'object',
122
+ required: ['createdAt'],
52
123
  properties: {
53
124
  displayName: {
54
125
  type: 'string',
126
+ description: 'Display name for the account',
55
127
  maxGraphemes: 64,
56
128
  maxLength: 640,
57
129
  },
@@ -70,6 +142,7 @@ const schemaDict = {
70
142
  website: {
71
143
  type: 'string',
72
144
  format: 'uri',
145
+ description: 'Account website URL',
73
146
  },
74
147
  avatar: {
75
148
  type: 'union',
@@ -90,6 +163,7 @@ const schemaDict = {
90
163
  createdAt: {
91
164
  type: 'string',
92
165
  format: 'datetime',
166
+ description: 'Client-declared timestamp when this record was originally created',
93
167
  },
94
168
  },
95
169
  },
@@ -124,6 +198,13 @@ const schemaDict = {
124
198
  note: {
125
199
  type: 'string',
126
200
  description: 'Optional statement explaining the reason for this badge award.',
201
+ maxLength: 500,
202
+ },
203
+ url: {
204
+ type: 'string',
205
+ format: 'uri',
206
+ description: 'Optional URL the badge award links to.',
207
+ maxLength: 2048,
127
208
  },
128
209
  createdAt: {
129
210
  type: 'string',
@@ -150,10 +231,12 @@ const schemaDict = {
150
231
  badgeType: {
151
232
  type: 'string',
152
233
  description: 'Category of the badge (e.g. endorsement, participation, affiliation).',
234
+ maxLength: 100,
153
235
  },
154
236
  title: {
155
237
  type: 'string',
156
238
  description: 'Human-readable title of the badge.',
239
+ maxLength: 256,
157
240
  },
158
241
  icon: {
159
242
  type: 'blob',
@@ -169,10 +252,13 @@ const schemaDict = {
169
252
  description: {
170
253
  type: 'string',
171
254
  description: 'Optional short statement describing what the badge represents.',
255
+ maxLength: 5000,
256
+ maxGraphemes: 500,
172
257
  },
173
258
  allowedIssuers: {
174
259
  type: 'array',
175
260
  description: 'Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.',
261
+ maxLength: 100,
176
262
  items: {
177
263
  type: 'ref',
178
264
  ref: 'lex:app.certified.defs#did',
@@ -207,12 +293,13 @@ const schemaDict = {
207
293
  },
208
294
  response: {
209
295
  type: 'string',
210
- enum: ['accepted', 'rejected'],
296
+ knownValues: ['accepted', 'rejected'],
211
297
  description: 'The recipient’s response for the badge (accepted or rejected).',
212
298
  },
213
299
  weight: {
214
300
  type: 'string',
215
301
  description: 'Optional relative weight for accepted badges, assigned by the recipient.',
302
+ maxLength: 50,
216
303
  },
217
304
  createdAt: {
218
305
  type: 'string',
@@ -299,13 +386,13 @@ const schemaDict = {
299
386
  },
300
387
  name: {
301
388
  type: 'string',
302
- description: 'Optional name for this location',
389
+ description: "Human-readable name for this location (e.g. 'Golden Gate Park', 'San Francisco Bay Area')",
303
390
  maxLength: 1000,
304
391
  maxGraphemes: 100,
305
392
  },
306
393
  description: {
307
394
  type: 'string',
308
- description: 'Optional description for this location',
395
+ description: 'Additional context about this location, such as its significance to the work or specific boundaries',
309
396
  maxLength: 2000,
310
397
  maxGraphemes: 500,
311
398
  },
@@ -353,36 +440,223 @@ const schemaDict = {
353
440
  },
354
441
  },
355
442
  },
356
- OrgHypercertsAcknowledgement: {
443
+ OrgHyperboardsBoard: {
357
444
  lexicon: 1,
358
- id: 'org.hypercerts.acknowledgement',
445
+ id: 'org.hyperboards.board',
359
446
  defs: {
360
447
  main: {
361
448
  type: 'record',
362
- description: "Acknowledges the inclusion of one record (subject) within another (context). Typically created in the subject owner's repo to form a bidirectional link. For example, a contributor acknowledging inclusion in an activity, or an activity owner acknowledging inclusion in a collection.",
449
+ description: "Configuration record for a hyperboard, wrapping an underlying activity or collection with visual presentation settings. Stored in the creator's PDS.",
363
450
  key: 'tid',
364
451
  record: {
365
452
  type: 'object',
366
- required: ['subject', 'context', 'acknowledged', 'createdAt'],
453
+ required: ['subject', 'createdAt'],
367
454
  properties: {
368
455
  subject: {
369
456
  type: 'ref',
370
457
  ref: 'lex:com.atproto.repo.strongRef',
371
- description: 'The record whose inclusion is being acknowledged (e.g. an activity, a contributor information record).',
458
+ description: 'Reference to the org.hypercerts.claim.activity or org.hypercerts.claim.collection this board visualizes.',
372
459
  },
373
- context: {
460
+ config: {
374
461
  type: 'ref',
375
- ref: 'lex:com.atproto.repo.strongRef',
376
- description: 'The record that includes the subject (e.g. a collection/project that includes an activity, or an activity that includes a contributor).',
462
+ ref: 'lex:org.hyperboards.board#boardConfig',
463
+ description: 'Board-level visual configuration (background, colors, aspect ratio).',
377
464
  },
378
- acknowledged: {
379
- type: 'boolean',
380
- description: 'Whether inclusion is acknowledged (true) or rejected (false).',
465
+ contributorConfigs: {
466
+ type: 'array',
467
+ description: 'Per-contributor configuration entries for this board.',
468
+ maxLength: 1000,
469
+ items: {
470
+ type: 'ref',
471
+ ref: 'lex:org.hyperboards.board#contributorConfig',
472
+ },
381
473
  },
382
- comment: {
474
+ createdAt: {
383
475
  type: 'string',
384
- description: 'Optional comment providing additional context or reasoning.',
385
- maxLength: 1000,
476
+ format: 'datetime',
477
+ description: 'Client-declared timestamp when this record was originally created.',
478
+ },
479
+ },
480
+ },
481
+ },
482
+ boardConfig: {
483
+ type: 'object',
484
+ description: "Visual configuration for a hyperboard's background, colors, and layout.",
485
+ properties: {
486
+ backgroundType: {
487
+ type: 'string',
488
+ description: 'Type of background content.',
489
+ knownValues: ['image', 'iframe'],
490
+ maxLength: 10,
491
+ },
492
+ backgroundImage: {
493
+ type: 'union',
494
+ refs: [
495
+ 'lex:org.hypercerts.defs#uri',
496
+ 'lex:org.hypercerts.defs#smallImage',
497
+ ],
498
+ description: 'Background image as a URI or image blob.',
499
+ },
500
+ backgroundIframeUrl: {
501
+ type: 'string',
502
+ format: 'uri',
503
+ description: 'URI of the background iframe.',
504
+ maxLength: 2048,
505
+ },
506
+ backgroundGrayscale: {
507
+ type: 'boolean',
508
+ description: 'Whether the background is rendered in grayscale. Default: true.',
509
+ },
510
+ backgroundOpacity: {
511
+ type: 'integer',
512
+ description: 'Background opacity as a percentage (0–100).',
513
+ minimum: 0,
514
+ maximum: 100,
515
+ },
516
+ backgroundColor: {
517
+ type: 'string',
518
+ description: "Background color as a hex string (e.g. '#ffffff').",
519
+ maxLength: 20,
520
+ },
521
+ borderColor: {
522
+ type: 'string',
523
+ description: "Border color as a hex string (e.g. '#000000').",
524
+ maxLength: 20,
525
+ },
526
+ grayscaleImages: {
527
+ type: 'boolean',
528
+ description: 'Whether contributor images are rendered in grayscale. Default: false.',
529
+ },
530
+ imageShape: {
531
+ type: 'string',
532
+ description: 'Shape used to crop contributor images on this board.',
533
+ knownValues: ['circular', 'square'],
534
+ maxLength: 20,
535
+ },
536
+ aspectRatio: {
537
+ type: 'string',
538
+ description: 'Display aspect ratio of the board.',
539
+ knownValues: ['16:9', '4:3', '1:1'],
540
+ maxLength: 10,
541
+ },
542
+ },
543
+ },
544
+ contributorConfig: {
545
+ type: 'object',
546
+ description: 'Configuration for a specific contributor within a board. Values serve as fallbacks when the contributor has not defined them on their profile. It can also be used to override contributor settings on this board without changing their global profile.',
547
+ required: ['contributor'],
548
+ properties: {
549
+ contributor: {
550
+ type: 'union',
551
+ refs: [
552
+ 'lex:com.atproto.repo.strongRef',
553
+ 'lex:org.hypercerts.claim.activity#contributorIdentity',
554
+ ],
555
+ description: 'Identifies the contributor being styled. A strong reference to an org.hypercerts.claim.contributorInformation record, or a contributorIdentity (DID or identifier string) for contributors without a dedicated record.',
556
+ },
557
+ override: {
558
+ type: 'boolean',
559
+ description: "When true, these values take precedence over the contributor's own profile and display settings. When false or omitted, they are only used as fallbacks if the contributor has not set their own settings.",
560
+ },
561
+ displayName: {
562
+ type: 'string',
563
+ description: 'Display name for this contributor on this board.',
564
+ maxLength: 640,
565
+ maxGraphemes: 64,
566
+ },
567
+ image: {
568
+ type: 'union',
569
+ refs: [
570
+ 'lex:org.hypercerts.defs#uri',
571
+ 'lex:org.hypercerts.defs#smallImage',
572
+ ],
573
+ description: 'Avatar or face image for this contributor on this board, as a URI or image blob.',
574
+ },
575
+ video: {
576
+ type: 'union',
577
+ refs: [
578
+ 'lex:org.hypercerts.defs#uri',
579
+ 'lex:org.hypercerts.defs#smallVideo',
580
+ ],
581
+ description: 'Video for this contributor, as a URI (embed/direct link) or uploaded video blob.',
582
+ },
583
+ hoverImage: {
584
+ type: 'union',
585
+ refs: [
586
+ 'lex:org.hypercerts.defs#uri',
587
+ 'lex:org.hypercerts.defs#smallImage',
588
+ ],
589
+ description: 'Image overlay shown when hovering over this contributor, as a URI or image blob.',
590
+ },
591
+ hoverIframeUrl: {
592
+ type: 'string',
593
+ format: 'uri',
594
+ description: 'Iframe overlay shown when hovering over this contributor.',
595
+ maxLength: 2048,
596
+ },
597
+ url: {
598
+ type: 'string',
599
+ format: 'uri',
600
+ description: 'Click-through link URL for this contributor.',
601
+ maxLength: 2048,
602
+ },
603
+ },
604
+ },
605
+ },
606
+ },
607
+ OrgHyperboardsDisplayProfile: {
608
+ lexicon: 1,
609
+ id: 'org.hyperboards.displayProfile',
610
+ defs: {
611
+ main: {
612
+ type: 'record',
613
+ description: "User-declared visual presentation defaults for how a contributor appears on hyperboards. Stored in the contributor's own PDS and reusable across multiple boards.",
614
+ key: 'literal:self',
615
+ record: {
616
+ type: 'object',
617
+ required: ['createdAt'],
618
+ properties: {
619
+ displayName: {
620
+ type: 'string',
621
+ description: 'Display name override for this user on hyperboards.',
622
+ maxLength: 640,
623
+ maxGraphemes: 64,
624
+ },
625
+ image: {
626
+ type: 'union',
627
+ refs: [
628
+ 'lex:org.hypercerts.defs#uri',
629
+ 'lex:org.hypercerts.defs#smallImage',
630
+ ],
631
+ description: 'Avatar or face image override for this user on hyperboards, as a URI or image blob.',
632
+ },
633
+ video: {
634
+ type: 'union',
635
+ refs: [
636
+ 'lex:org.hypercerts.defs#uri',
637
+ 'lex:org.hypercerts.defs#smallVideo',
638
+ ],
639
+ description: 'Default video for this user across boards, as a URI (embed/direct link) or uploaded video blob.',
640
+ },
641
+ hoverImage: {
642
+ type: 'union',
643
+ refs: [
644
+ 'lex:org.hypercerts.defs#uri',
645
+ 'lex:org.hypercerts.defs#smallImage',
646
+ ],
647
+ description: 'Default hover image for this user across boards, as a URI or image blob.',
648
+ },
649
+ hoverIframeUrl: {
650
+ type: 'string',
651
+ format: 'uri',
652
+ description: 'Default hover iframe URL for this user across boards.',
653
+ maxLength: 2048,
654
+ },
655
+ url: {
656
+ type: 'string',
657
+ format: 'uri',
658
+ description: 'Default click-through link URL for this user across boards.',
659
+ maxLength: 2048,
386
660
  },
387
661
  createdAt: {
388
662
  type: 'string',
@@ -408,7 +682,7 @@ const schemaDict = {
408
682
  properties: {
409
683
  title: {
410
684
  type: 'string',
411
- description: 'Title of the hypercert.',
685
+ description: "Display title summarizing the impact work (e.g. 'Reforestation in Amazon Basin 2024')",
412
686
  maxLength: 256,
413
687
  },
414
688
  shortDescription: {
@@ -426,18 +700,9 @@ const schemaDict = {
426
700
  },
427
701
  },
428
702
  description: {
429
- type: 'string',
430
- description: 'Optional longer description of this activity claim, including context or interpretation. Rich text annotations may be provided via `descriptionFacets`.',
431
- maxLength: 30000,
432
- maxGraphemes: 3000,
433
- },
434
- descriptionFacets: {
435
- type: 'array',
436
- description: 'Rich text annotations for `description` (mentions, URLs, hashtags, etc).',
437
- items: {
438
- type: 'ref',
439
- ref: 'lex:app.bsky.richtext.facet',
440
- },
703
+ type: 'ref',
704
+ ref: 'lex:pub.leaflet.pages.linearDocument#main',
705
+ description: 'Rich-text description, represented as a Leaflet linear document.',
441
706
  },
442
707
  image: {
443
708
  type: 'union',
@@ -447,13 +712,22 @@ const schemaDict = {
447
712
  ],
448
713
  description: 'The hypercert visual representation as a URI or image blob.',
449
714
  },
715
+ contributors: {
716
+ type: 'array',
717
+ description: 'An array of contributor objects, each containing contributor information, weight, and contribution details.',
718
+ maxLength: 1000,
719
+ items: {
720
+ type: 'ref',
721
+ ref: 'lex:org.hypercerts.claim.activity#contributor',
722
+ },
723
+ },
450
724
  workScope: {
451
725
  type: 'union',
452
726
  refs: [
453
- 'lex:com.atproto.repo.strongRef',
727
+ 'lex:org.hypercerts.workscope.cel',
454
728
  'lex:org.hypercerts.claim.activity#workScopeString',
455
729
  ],
456
- description: 'Work scope definition. Either a strongRef to a work-scope logic record (structured, nested logic), or a free-form string for simple or legacy scopes. The work scope record should conform to the org.hypercerts.helper.workScopeTag lexicon.',
730
+ description: 'Work scope definition. A CEL expression for structured, machine-evaluable scopes or a free-form string for simple and legacy scopes.',
457
731
  },
458
732
  startDate: {
459
733
  type: 'string',
@@ -465,12 +739,13 @@ const schemaDict = {
465
739
  format: 'datetime',
466
740
  description: 'When the work ended',
467
741
  },
468
- contributors: {
742
+ locations: {
469
743
  type: 'array',
470
- description: 'An array of contributor objects, each containing contributor information, weight, and contribution details.',
744
+ description: 'An array of strong references to the location where activity was performed. The record referenced must conform with the lexicon app.certified.location.',
745
+ maxLength: 1000,
471
746
  items: {
472
747
  type: 'ref',
473
- ref: 'lex:org.hypercerts.claim.activity#contributor',
748
+ ref: 'lex:com.atproto.repo.strongRef',
474
749
  },
475
750
  },
476
751
  rights: {
@@ -478,14 +753,6 @@ const schemaDict = {
478
753
  ref: 'lex:com.atproto.repo.strongRef',
479
754
  description: 'A strong reference to the rights that this hypercert has. The record referenced must conform with the lexicon org.hypercerts.claim.rights.',
480
755
  },
481
- locations: {
482
- type: 'array',
483
- description: 'An array of strong references to the location where activity was performed. The record referenced must conform with the lexicon app.certified.location.',
484
- items: {
485
- type: 'ref',
486
- ref: 'lex:com.atproto.repo.strongRef',
487
- },
488
- },
489
756
  createdAt: {
490
757
  type: 'string',
491
758
  format: 'datetime',
@@ -504,11 +771,12 @@ const schemaDict = {
504
771
  'lex:org.hypercerts.claim.activity#contributorIdentity',
505
772
  'lex:com.atproto.repo.strongRef',
506
773
  ],
507
- description: 'Contributor identity as a string (DID or identifier) via org.hypercerts.claim.activity#contributorIdentity, or a strong reference to a contributor information record.',
774
+ description: 'Inline contributor identity object with an identity string (DID or identifier) via org.hypercerts.claim.activity#contributorIdentity, or a strong reference to a contributor information record. The record referenced must conform with the lexicon org.hypercerts.claim.contributorInformation.',
508
775
  },
509
776
  contributionWeight: {
510
777
  type: 'string',
511
778
  description: 'The relative weight/importance of this contribution (stored as a string to avoid float precision issues). Must be a positive numeric value. Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed.',
779
+ maxLength: 100,
512
780
  },
513
781
  contributionDetails: {
514
782
  type: 'union',
@@ -516,7 +784,7 @@ const schemaDict = {
516
784
  'lex:org.hypercerts.claim.activity#contributorRole',
517
785
  'lex:com.atproto.repo.strongRef',
518
786
  ],
519
- description: 'Contribution details as a string via org.hypercerts.claim.activity#contributorRole, or a strong reference to a contribution details record.',
787
+ description: 'Inline contribution role object with a role string via org.hypercerts.claim.activity#contributorRole, or a strong reference to a contribution details record. The record referenced must conform with the lexicon org.hypercerts.claim.contribution.',
520
788
  },
521
789
  },
522
790
  },
@@ -561,81 +829,78 @@ const schemaDict = {
561
829
  },
562
830
  },
563
831
  },
564
- OrgHypercertsClaimAttachment: {
832
+ OrgHypercertsClaimContribution: {
565
833
  lexicon: 1,
566
- id: 'org.hypercerts.claim.attachment',
834
+ id: 'org.hypercerts.claim.contribution',
567
835
  defs: {
568
836
  main: {
569
837
  type: 'record',
570
- description: 'An attachment providing commentary, context, evidence, or documentary material related to a hypercert record (e.g. an activity, project, claim, or evaluation).',
838
+ description: 'Details about a specific contribution including role, description, and timeframe.',
571
839
  key: 'tid',
572
840
  record: {
573
841
  type: 'object',
574
- required: ['title', 'content', 'createdAt'],
842
+ required: ['createdAt'],
575
843
  properties: {
576
- subjects: {
577
- type: 'array',
578
- description: 'References to the subject(s) the attachment is connected to—this may be an activity claim, outcome claim, measurement, evaluation, or even another attachment. This is optional as the attachment can exist before the claim is recorded.',
579
- items: {
580
- type: 'ref',
581
- ref: 'lex:com.atproto.repo.strongRef',
582
- },
844
+ role: {
845
+ type: 'string',
846
+ description: 'Role or title of the contributor.',
583
847
  maxLength: 100,
584
848
  },
585
- contentType: {
849
+ contributionDescription: {
586
850
  type: 'string',
587
- maxLength: 64,
588
- description: 'The type of attachment, e.g. report, audit, evidence, testimonial, methodology, etc.',
851
+ description: 'Description of what the contribution concretely involved.',
852
+ maxLength: 10000,
853
+ maxGraphemes: 1000,
589
854
  },
590
- content: {
591
- type: 'array',
592
- description: 'The files, documents, or external references included in this attachment record.',
593
- items: {
594
- type: 'union',
595
- refs: [
596
- 'lex:org.hypercerts.defs#uri',
597
- 'lex:org.hypercerts.defs#smallBlob',
598
- ],
599
- },
600
- maxLength: 100,
855
+ startDate: {
856
+ type: 'string',
857
+ format: 'datetime',
858
+ description: "When this contribution started. Should fall within the parent hypercert's timeframe.",
601
859
  },
602
- title: {
860
+ endDate: {
603
861
  type: 'string',
604
- maxLength: 256,
605
- description: 'Title of this attachment.',
862
+ format: 'datetime',
863
+ description: "When this contribution finished. Should fall within the parent hypercert's timeframe.",
606
864
  },
607
- shortDescription: {
865
+ createdAt: {
608
866
  type: 'string',
609
- description: 'Short summary of this attachment, suitable for previews and list views. Rich text annotations may be provided via `shortDescriptionFacets`.',
610
- maxLength: 3000,
611
- maxGraphemes: 300,
867
+ format: 'datetime',
868
+ description: 'Client-declared timestamp when this record was originally created.',
612
869
  },
613
- shortDescriptionFacets: {
614
- type: 'array',
615
- description: 'Rich text annotations for `shortDescription` (mentions, URLs, hashtags, etc).',
616
- items: {
617
- type: 'ref',
618
- ref: 'lex:app.bsky.richtext.facet',
619
- },
620
- },
621
- description: {
870
+ },
871
+ },
872
+ },
873
+ },
874
+ },
875
+ OrgHypercertsClaimContributorInformation: {
876
+ lexicon: 1,
877
+ id: 'org.hypercerts.claim.contributorInformation',
878
+ defs: {
879
+ main: {
880
+ type: 'record',
881
+ description: 'Contributor information including identifier, display name, and image.',
882
+ key: 'tid',
883
+ record: {
884
+ type: 'object',
885
+ required: ['createdAt'],
886
+ properties: {
887
+ identifier: {
622
888
  type: 'string',
623
- description: 'Optional longer description of this attachment, including context or interpretation. Rich text annotations may be provided via `descriptionFacets`.',
624
- maxLength: 30000,
625
- maxGraphemes: 3000,
889
+ description: 'DID (did:plc:...) or URI to a social profile of the contributor.',
890
+ maxLength: 2048,
626
891
  },
627
- descriptionFacets: {
628
- type: 'array',
629
- description: 'Rich text annotations for `description` (mentions, URLs, hashtags, etc).',
630
- items: {
631
- type: 'ref',
632
- ref: 'lex:app.bsky.richtext.facet',
633
- },
892
+ displayName: {
893
+ type: 'string',
894
+ description: 'Human-readable name for the contributor as it should appear in UI.',
895
+ maxLength: 100,
634
896
  },
635
- location: {
636
- type: 'ref',
637
- ref: 'lex:com.atproto.repo.strongRef',
638
- description: "A strong reference to the location where this attachment's subject matter occurred. The record referenced must conform with the lexicon app.certified.location.",
897
+ image: {
898
+ type: 'union',
899
+ refs: [
900
+ 'lex:org.hypercerts.defs#uri',
901
+ 'lex:org.hypercerts.defs#smallImage',
902
+ ],
903
+ description: 'The contributor visual representation as a URI or image blob.',
639
904
  },
640
905
  createdAt: {
641
906
  type: 'string',
@@ -647,9 +912,60 @@ const schemaDict = {
647
912
  },
648
913
  },
649
914
  },
650
- OrgHypercertsClaimCollection: {
915
+ OrgHypercertsClaimRights: {
916
+ lexicon: 1,
917
+ id: 'org.hypercerts.claim.rights',
918
+ defs: {
919
+ main: {
920
+ type: 'record',
921
+ description: 'Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.',
922
+ key: 'tid',
923
+ record: {
924
+ type: 'object',
925
+ required: [
926
+ 'rightsName',
927
+ 'rightsType',
928
+ 'rightsDescription',
929
+ 'createdAt',
930
+ ],
931
+ properties: {
932
+ rightsName: {
933
+ type: 'string',
934
+ description: "Human-readable name for these rights (e.g. 'All Rights Reserved', 'CC BY-SA 4.0')",
935
+ maxLength: 100,
936
+ },
937
+ rightsType: {
938
+ type: 'string',
939
+ description: "Short identifier code for this rights type (e.g. 'ARR', 'CC-BY-SA') to facilitate filtering and search",
940
+ maxLength: 10,
941
+ },
942
+ rightsDescription: {
943
+ type: 'string',
944
+ description: "Detailed explanation of the rights holders' permissions, restrictions, and conditions",
945
+ maxLength: 10000,
946
+ maxGraphemes: 1000,
947
+ },
948
+ attachment: {
949
+ type: 'union',
950
+ refs: [
951
+ 'lex:org.hypercerts.defs#uri',
952
+ 'lex:org.hypercerts.defs#smallBlob',
953
+ ],
954
+ description: 'An attachment to define the rights further, e.g. a legal document.',
955
+ },
956
+ createdAt: {
957
+ type: 'string',
958
+ format: 'datetime',
959
+ description: 'Client-declared timestamp when this record was originally created',
960
+ },
961
+ },
962
+ },
963
+ },
964
+ },
965
+ },
966
+ OrgHypercertsCollection: {
651
967
  lexicon: 1,
652
- id: 'org.hypercerts.claim.collection',
968
+ id: 'org.hypercerts.collection',
653
969
  defs: {
654
970
  main: {
655
971
  type: 'record',
@@ -657,15 +973,16 @@ const schemaDict = {
657
973
  key: 'tid',
658
974
  record: {
659
975
  type: 'object',
660
- required: ['title', 'items', 'createdAt'],
976
+ required: ['title', 'createdAt'],
661
977
  properties: {
662
978
  type: {
663
979
  type: 'string',
664
980
  description: "The type of this collection. Possible fields can be 'favorites', 'project', or any other type of collection.",
981
+ maxLength: 64,
665
982
  },
666
983
  title: {
667
984
  type: 'string',
668
- description: 'The title of this collection',
985
+ description: "Display name for this collection (e.g. 'Q1 2025 Impact Projects')",
669
986
  maxLength: 800,
670
987
  maxGraphemes: 80,
671
988
  },
@@ -699,9 +1016,10 @@ const schemaDict = {
699
1016
  items: {
700
1017
  type: 'array',
701
1018
  description: 'Array of items in this collection with optional weights.',
1019
+ maxLength: 1000,
702
1020
  items: {
703
1021
  type: 'ref',
704
- ref: 'lex:org.hypercerts.claim.collection#item',
1022
+ ref: 'lex:org.hypercerts.collection#item',
705
1023
  },
706
1024
  },
707
1025
  location: {
@@ -724,48 +1042,51 @@ const schemaDict = {
724
1042
  itemIdentifier: {
725
1043
  type: 'ref',
726
1044
  ref: 'lex:com.atproto.repo.strongRef',
727
- description: 'Strong reference to an item in this collection. Items can be activities (org.hypercerts.claim.activity) and/or other collections (org.hypercerts.claim.collection).',
1045
+ description: 'Strong reference to an item in this collection. Items can be activities (org.hypercerts.claim.activity) and/or other collections (org.hypercerts.collection).',
728
1046
  },
729
1047
  itemWeight: {
730
1048
  type: 'string',
731
1049
  description: 'Optional weight for this item (positive numeric value stored as string). Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed.',
1050
+ maxLength: 100,
732
1051
  },
733
1052
  },
734
1053
  },
735
1054
  },
736
1055
  },
737
- OrgHypercertsClaimContributionDetails: {
1056
+ OrgHypercertsContextAcknowledgement: {
738
1057
  lexicon: 1,
739
- id: 'org.hypercerts.claim.contributionDetails',
1058
+ id: 'org.hypercerts.context.acknowledgement',
740
1059
  defs: {
741
1060
  main: {
742
1061
  type: 'record',
743
- description: 'Details about a specific contribution including role, description, and timeframe.',
1062
+ description: "Acknowledges a record (subject) or its relationship in a context. Created in the acknowledging actor's repo to form a bidirectional link. Examples: a contributor acknowledging inclusion in an activity, an activity owner acknowledging inclusion in a collection, or a record owner acknowledging an evaluation.",
744
1063
  key: 'tid',
745
1064
  record: {
746
1065
  type: 'object',
747
- required: ['createdAt'],
1066
+ required: ['subject', 'acknowledged', 'createdAt'],
748
1067
  properties: {
749
- role: {
750
- type: 'string',
751
- description: 'Role or title of the contributor.',
752
- maxLength: 100,
1068
+ subject: {
1069
+ type: 'ref',
1070
+ ref: 'lex:com.atproto.repo.strongRef',
1071
+ description: 'The record being acknowledged (e.g. an activity, a contributor information record, an evaluation).',
753
1072
  },
754
- contributionDescription: {
755
- type: 'string',
756
- description: 'What the contribution concretely was.',
757
- maxLength: 10000,
758
- maxGraphemes: 1000,
1073
+ context: {
1074
+ type: 'union',
1075
+ refs: [
1076
+ 'lex:org.hypercerts.defs#uri',
1077
+ 'lex:com.atproto.repo.strongRef',
1078
+ ],
1079
+ description: 'Context for the acknowledgement (e.g. the collection that includes an activity, or the activity that includes a contributor). A URI for a lightweight reference or a strong reference for content-hash verification.',
759
1080
  },
760
- startDate: {
761
- type: 'string',
762
- format: 'datetime',
763
- description: 'When this contribution started. This should be a subset of the hypercert timeframe.',
1081
+ acknowledged: {
1082
+ type: 'boolean',
1083
+ description: 'Whether the relationship is acknowledged (true) or rejected (false).',
764
1084
  },
765
- endDate: {
1085
+ comment: {
766
1086
  type: 'string',
767
- format: 'datetime',
768
- description: 'When this contribution finished. This should be a subset of the hypercert timeframe.',
1087
+ description: 'Optional plain-text comment providing additional context or reasoning.',
1088
+ maxLength: 10000,
1089
+ maxGraphemes: 1000,
769
1090
  },
770
1091
  createdAt: {
771
1092
  type: 'string',
@@ -777,34 +1098,72 @@ const schemaDict = {
777
1098
  },
778
1099
  },
779
1100
  },
780
- OrgHypercertsClaimContributorInformation: {
1101
+ OrgHypercertsContextAttachment: {
781
1102
  lexicon: 1,
782
- id: 'org.hypercerts.claim.contributorInformation',
1103
+ id: 'org.hypercerts.context.attachment',
783
1104
  defs: {
784
1105
  main: {
785
1106
  type: 'record',
786
- description: 'Contributor information including identifier, display name, and image.',
1107
+ description: 'An attachment providing commentary, context, evidence, or documentary material related to a hypercert record (e.g. an activity, project, claim, or evaluation).',
787
1108
  key: 'tid',
788
1109
  record: {
789
1110
  type: 'object',
790
- required: ['createdAt'],
1111
+ required: ['title', 'createdAt'],
791
1112
  properties: {
792
- identifier: {
793
- type: 'string',
794
- description: 'DID or a URI to a social profile of the contributor.',
1113
+ subjects: {
1114
+ type: 'array',
1115
+ description: 'References to the subject(s) the attachment is connected to—this may be an activity claim, outcome claim, measurement, evaluation, or even another attachment. This is optional as the attachment can exist before the claim is recorded.',
1116
+ items: {
1117
+ type: 'ref',
1118
+ ref: 'lex:com.atproto.repo.strongRef',
1119
+ },
1120
+ maxLength: 100,
795
1121
  },
796
- displayName: {
1122
+ contentType: {
797
1123
  type: 'string',
798
- description: 'Display name of the contributor.',
1124
+ maxLength: 64,
1125
+ description: 'The type of attachment, e.g. report, audit, evidence, testimonial, methodology, etc.',
1126
+ },
1127
+ content: {
1128
+ type: 'array',
1129
+ description: 'The files, documents, or external references included in this attachment record.',
1130
+ items: {
1131
+ type: 'union',
1132
+ refs: [
1133
+ 'lex:org.hypercerts.defs#uri',
1134
+ 'lex:org.hypercerts.defs#smallBlob',
1135
+ ],
1136
+ },
799
1137
  maxLength: 100,
800
1138
  },
801
- image: {
802
- type: 'union',
803
- refs: [
804
- 'lex:org.hypercerts.defs#uri',
805
- 'lex:org.hypercerts.defs#smallImage',
806
- ],
807
- description: 'The contributor visual representation as a URI or image blob.',
1139
+ title: {
1140
+ type: 'string',
1141
+ maxLength: 256,
1142
+ description: "Display title for this attachment (e.g. 'Impact Assessment Report', 'Audit Findings')",
1143
+ },
1144
+ shortDescription: {
1145
+ type: 'string',
1146
+ description: 'Short summary of this attachment, suitable for previews and list views. Rich text annotations may be provided via `shortDescriptionFacets`.',
1147
+ maxLength: 3000,
1148
+ maxGraphemes: 300,
1149
+ },
1150
+ shortDescriptionFacets: {
1151
+ type: 'array',
1152
+ description: 'Rich text annotations for `shortDescription` (mentions, URLs, hashtags, etc).',
1153
+ items: {
1154
+ type: 'ref',
1155
+ ref: 'lex:app.bsky.richtext.facet',
1156
+ },
1157
+ },
1158
+ description: {
1159
+ type: 'ref',
1160
+ ref: 'lex:pub.leaflet.pages.linearDocument#main',
1161
+ description: 'Rich-text description, represented as a Leaflet linear document.',
1162
+ },
1163
+ location: {
1164
+ type: 'ref',
1165
+ ref: 'lex:com.atproto.repo.strongRef',
1166
+ description: "A strong reference to the location where this attachment's subject matter occurred. The record referenced must conform with the lexicon app.certified.location.",
808
1167
  },
809
1168
  createdAt: {
810
1169
  type: 'string',
@@ -816,29 +1175,10 @@ const schemaDict = {
816
1175
  },
817
1176
  },
818
1177
  },
819
- OrgHypercertsClaimEvaluation: {
1178
+ OrgHypercertsContextEvaluation: {
820
1179
  lexicon: 1,
821
- id: 'org.hypercerts.claim.evaluation',
1180
+ id: 'org.hypercerts.context.evaluation',
822
1181
  defs: {
823
- score: {
824
- type: 'object',
825
- description: 'Overall score for an evaluation on a numeric scale.',
826
- required: ['min', 'max', 'value'],
827
- properties: {
828
- min: {
829
- type: 'integer',
830
- description: 'Minimum value of the scale, e.g. 0 or 1.',
831
- },
832
- max: {
833
- type: 'integer',
834
- description: 'Maximum value of the scale, e.g. 5 or 10.',
835
- },
836
- value: {
837
- type: 'integer',
838
- description: 'Score within the inclusive range [min, max].',
839
- },
840
- },
841
- },
842
1182
  main: {
843
1183
  type: 'record',
844
1184
  description: 'An evaluation of a hypercert record (e.g. an activity and its impact).',
@@ -850,7 +1190,7 @@ const schemaDict = {
850
1190
  subject: {
851
1191
  type: 'ref',
852
1192
  ref: 'lex:com.atproto.repo.strongRef',
853
- description: 'A strong reference to what is being evaluated. (e.g activity, measurement, contribution, etc.)',
1193
+ description: 'A strong reference to what is being evaluated (e.g. activity, measurement, contribution, etc.)',
854
1194
  },
855
1195
  evaluators: {
856
1196
  type: 'array',
@@ -875,7 +1215,7 @@ const schemaDict = {
875
1215
  },
876
1216
  measurements: {
877
1217
  type: 'array',
878
- description: 'Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.claim.measurement',
1218
+ description: 'Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.context.measurement',
879
1219
  items: {
880
1220
  type: 'ref',
881
1221
  ref: 'lex:com.atproto.repo.strongRef',
@@ -890,7 +1230,7 @@ const schemaDict = {
890
1230
  },
891
1231
  score: {
892
1232
  type: 'ref',
893
- ref: 'lex:org.hypercerts.claim.evaluation#score',
1233
+ ref: 'lex:org.hypercerts.context.evaluation#score',
894
1234
  description: 'Optional overall score for this evaluation on a numeric scale.',
895
1235
  },
896
1236
  location: {
@@ -906,24 +1246,47 @@ const schemaDict = {
906
1246
  },
907
1247
  },
908
1248
  },
1249
+ score: {
1250
+ type: 'object',
1251
+ description: 'Overall score for an evaluation on a numeric scale.',
1252
+ required: ['min', 'max', 'value'],
1253
+ properties: {
1254
+ min: {
1255
+ type: 'integer',
1256
+ description: 'Minimum value of the scale, e.g. 0 or 1.',
1257
+ },
1258
+ max: {
1259
+ type: 'integer',
1260
+ description: 'Maximum value of the scale, e.g. 5 or 10.',
1261
+ },
1262
+ value: {
1263
+ type: 'integer',
1264
+ description: 'Score within the inclusive range [min, max].',
1265
+ },
1266
+ },
1267
+ },
909
1268
  },
910
1269
  },
911
- OrgHypercertsClaimMeasurement: {
1270
+ OrgHypercertsContextMeasurement: {
912
1271
  lexicon: 1,
913
- id: 'org.hypercerts.claim.measurement',
1272
+ id: 'org.hypercerts.context.measurement',
914
1273
  defs: {
915
1274
  main: {
916
1275
  type: 'record',
917
- description: 'Measurement data related to a hypercert record (e.g. an activity and its impact).',
1276
+ description: 'Measurement data related to one or more records (e.g. activities, projects, etc.).',
918
1277
  key: 'tid',
919
1278
  record: {
920
1279
  type: 'object',
921
1280
  required: ['metric', 'unit', 'value', 'createdAt'],
922
1281
  properties: {
923
- subject: {
924
- type: 'ref',
925
- ref: 'lex:com.atproto.repo.strongRef',
926
- description: 'A strong reference to the record this measurement refers to (e.g. an activity, project, or claim).',
1282
+ subjects: {
1283
+ type: 'array',
1284
+ description: 'Strong references to the records this measurement refers to (e.g. activities, projects, or claims).',
1285
+ items: {
1286
+ type: 'ref',
1287
+ ref: 'lex:com.atproto.repo.strongRef',
1288
+ },
1289
+ maxLength: 100,
927
1290
  },
928
1291
  metric: {
929
1292
  type: 'string',
@@ -937,7 +1300,7 @@ const schemaDict = {
937
1300
  },
938
1301
  value: {
939
1302
  type: 'string',
940
- description: 'The measured numeric value.',
1303
+ description: "The measured value as a numeric string (e.g. '1234.56')",
941
1304
  maxLength: 500,
942
1305
  },
943
1306
  startDate: {
@@ -948,7 +1311,7 @@ const schemaDict = {
948
1311
  endDate: {
949
1312
  type: 'string',
950
1313
  format: 'datetime',
951
- description: 'The end date and time when the measurement ended. If it was a one time measurement, the endDate should be equal to the startDate.',
1314
+ description: 'The end date and time when the measurement ended. For one-time measurements, this should equal the start date.',
952
1315
  },
953
1316
  locations: {
954
1317
  type: 'array',
@@ -980,7 +1343,7 @@ const schemaDict = {
980
1343
  },
981
1344
  measurers: {
982
1345
  type: 'array',
983
- description: 'DIDs of the entity (or entities) that measured this data',
1346
+ description: 'DIDs of the entities that performed this measurement',
984
1347
  items: {
985
1348
  type: 'ref',
986
1349
  ref: 'lex:app.certified.defs#did',
@@ -1011,58 +1374,10 @@ const schemaDict = {
1011
1374
  },
1012
1375
  },
1013
1376
  },
1014
- OrgHypercertsClaimRights: {
1377
+ OrgHypercertsDefs: {
1015
1378
  lexicon: 1,
1016
- id: 'org.hypercerts.claim.rights',
1017
- defs: {
1018
- main: {
1019
- type: 'record',
1020
- description: 'Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.',
1021
- key: 'tid',
1022
- record: {
1023
- type: 'object',
1024
- required: [
1025
- 'rightsName',
1026
- 'rightsType',
1027
- 'rightsDescription',
1028
- 'createdAt',
1029
- ],
1030
- properties: {
1031
- rightsName: {
1032
- type: 'string',
1033
- description: 'Full name of the rights',
1034
- maxLength: 100,
1035
- },
1036
- rightsType: {
1037
- type: 'string',
1038
- description: 'Short rights identifier for easier search',
1039
- maxLength: 10,
1040
- },
1041
- rightsDescription: {
1042
- type: 'string',
1043
- description: 'Description of the rights of this hypercert',
1044
- },
1045
- attachment: {
1046
- type: 'union',
1047
- refs: [
1048
- 'lex:org.hypercerts.defs#uri',
1049
- 'lex:org.hypercerts.defs#smallBlob',
1050
- ],
1051
- description: 'An attachment to define the rights further, e.g. a legal document.',
1052
- },
1053
- createdAt: {
1054
- type: 'string',
1055
- format: 'datetime',
1056
- description: 'Client-declared timestamp when this record was originally created',
1057
- },
1058
- },
1059
- },
1060
- },
1061
- },
1062
- },
1063
- OrgHypercertsDefs: {
1064
- lexicon: 1,
1065
- id: 'org.hypercerts.defs',
1379
+ id: 'org.hypercerts.defs',
1380
+ description: 'Common type definitions used across all Hypercerts protocols.',
1066
1381
  defs: {
1067
1382
  uri: {
1068
1383
  type: 'object',
@@ -1072,7 +1387,6 @@ const schemaDict = {
1072
1387
  uri: {
1073
1388
  type: 'string',
1074
1389
  format: 'uri',
1075
- maxGraphemes: 1024,
1076
1390
  description: 'URI to external data',
1077
1391
  },
1078
1392
  },
@@ -1116,6 +1430,19 @@ const schemaDict = {
1116
1430
  },
1117
1431
  },
1118
1432
  },
1433
+ smallVideo: {
1434
+ type: 'object',
1435
+ required: ['video'],
1436
+ description: 'Object containing a small video',
1437
+ properties: {
1438
+ video: {
1439
+ type: 'blob',
1440
+ accept: ['video/mp4', 'video/webm'],
1441
+ maxSize: 20971520,
1442
+ description: 'Video (up to 20MB)',
1443
+ },
1444
+ },
1445
+ },
1119
1446
  largeImage: {
1120
1447
  type: 'object',
1121
1448
  required: ['image'],
@@ -1151,26 +1478,32 @@ const schemaDict = {
1151
1478
  to: {
1152
1479
  type: 'string',
1153
1480
  description: 'The recipient of the funds. Can be identified by DID or a clear-text name.',
1481
+ maxLength: 2048,
1154
1482
  },
1155
1483
  amount: {
1156
1484
  type: 'string',
1157
- description: 'Amount of funding received.',
1485
+ description: "Amount of funding received as a numeric string (e.g. '1000.50').",
1486
+ maxLength: 50,
1158
1487
  },
1159
1488
  currency: {
1160
1489
  type: 'string',
1161
1490
  description: 'Currency of the payment (e.g. EUR, USD, ETH).',
1491
+ maxLength: 10,
1162
1492
  },
1163
1493
  paymentRail: {
1164
1494
  type: 'string',
1165
1495
  description: 'How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor).',
1496
+ maxLength: 50,
1166
1497
  },
1167
1498
  paymentNetwork: {
1168
1499
  type: 'string',
1169
1500
  description: 'Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal).',
1501
+ maxLength: 50,
1170
1502
  },
1171
1503
  transactionId: {
1172
1504
  type: 'string',
1173
1505
  description: 'Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable.',
1506
+ maxLength: 256,
1174
1507
  },
1175
1508
  for: {
1176
1509
  type: 'string',
@@ -1197,36 +1530,71 @@ const schemaDict = {
1197
1530
  },
1198
1531
  },
1199
1532
  },
1200
- OrgHypercertsHelperWorkScopeTag: {
1533
+ OrgHypercertsWorkscopeCel: {
1201
1534
  lexicon: 1,
1202
- id: 'org.hypercerts.helper.workScopeTag',
1535
+ id: 'org.hypercerts.workscope.cel',
1536
+ defs: {
1537
+ main: {
1538
+ type: 'object',
1539
+ description: "A structured, machine-evaluable work scope definition using CEL (Common Expression Language). Tags referenced in the expression correspond to org.hypercerts.workscope.tag keys. See https://github.com/google/cel-spec. Note: this is intentionally type 'object' (not 'record') so it can be directly embedded inline in union types (e.g., activity.workScope) without requiring a separate collection or strongRef indirection.",
1540
+ required: ['expression', 'usedTags', 'version', 'createdAt'],
1541
+ properties: {
1542
+ expression: {
1543
+ type: 'string',
1544
+ maxLength: 10000,
1545
+ maxGraphemes: 5000,
1546
+ description: "A CEL expression encoding the work scope conditions. Example: scope.hasAll(['mangrove_restoration', 'environmental_education']) && location.country == 'KE'",
1547
+ },
1548
+ usedTags: {
1549
+ type: 'array',
1550
+ items: {
1551
+ type: 'ref',
1552
+ ref: 'lex:com.atproto.repo.strongRef',
1553
+ },
1554
+ maxLength: 100,
1555
+ description: 'Strong references to org.hypercerts.workscope.tag records used in the expression. Enables fast indexing by AT-URI and provides referential integrity to the underlying tag records.',
1556
+ },
1557
+ version: {
1558
+ type: 'string',
1559
+ maxLength: 16,
1560
+ knownValues: ['v1'],
1561
+ description: 'CEL context schema version.',
1562
+ },
1563
+ createdAt: {
1564
+ type: 'string',
1565
+ format: 'datetime',
1566
+ description: 'Client-declared timestamp when this expression was originally created.',
1567
+ },
1568
+ },
1569
+ },
1570
+ },
1571
+ },
1572
+ OrgHypercertsWorkscopeTag: {
1573
+ lexicon: 1,
1574
+ id: 'org.hypercerts.workscope.tag',
1203
1575
  defs: {
1204
1576
  main: {
1205
1577
  type: 'record',
1206
- description: 'A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels.',
1578
+ description: 'A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels. Tags are composed into structured expressions via CEL (Common Expression Language) on activity records.',
1207
1579
  key: 'tid',
1208
1580
  record: {
1209
1581
  type: 'object',
1210
- required: ['createdAt', 'key', 'label'],
1582
+ required: ['key', 'name', 'createdAt'],
1211
1583
  properties: {
1212
- createdAt: {
1213
- type: 'string',
1214
- format: 'datetime',
1215
- description: 'Client-declared timestamp when this record was originally created',
1216
- },
1217
1584
  key: {
1218
1585
  type: 'string',
1219
- description: "Lowercase, hyphenated machine-readable key for this scope (e.g., 'ipfs', 'go-lang', 'filecoin').",
1586
+ description: "Lowercase, underscore-separated machine-readable key for this scope (e.g., 'mangrove_restoration', 'biodiversity_monitoring'). Used as the canonical identifier in CEL expressions.",
1220
1587
  maxLength: 120,
1221
1588
  },
1222
- label: {
1589
+ name: {
1223
1590
  type: 'string',
1224
- description: 'Human-readable label for this scope.',
1591
+ description: 'Human-readable name for this scope.',
1225
1592
  maxLength: 200,
1226
1593
  },
1227
- kind: {
1594
+ category: {
1228
1595
  type: 'string',
1229
- description: 'Category type of this scope. Recommended values: topic, language, domain, method, tag.',
1596
+ description: 'Category type of this scope.',
1597
+ knownValues: ['topic', 'language', 'domain', 'method'],
1230
1598
  maxLength: 50,
1231
1599
  },
1232
1600
  description: {
@@ -1238,7 +1606,18 @@ const schemaDict = {
1238
1606
  parent: {
1239
1607
  type: 'ref',
1240
1608
  ref: 'lex:com.atproto.repo.strongRef',
1241
- description: 'Optional strong reference to a parent scope record for taxonomy/hierarchy support.',
1609
+ description: 'Optional strong reference to a parent work scope tag record for taxonomy/hierarchy support. The record referenced must conform with the lexicon org.hypercerts.workscope.tag.',
1610
+ },
1611
+ status: {
1612
+ type: 'string',
1613
+ description: 'Lifecycle status of this tag. Communities propose tags, curators accept them, deprecated tags point to replacements via supersededBy.',
1614
+ knownValues: ['proposed', 'accepted', 'deprecated'],
1615
+ maxLength: 20,
1616
+ },
1617
+ supersededBy: {
1618
+ type: 'ref',
1619
+ ref: 'lex:com.atproto.repo.strongRef',
1620
+ description: "When status is 'deprecated', points to the replacement work scope tag record. The record referenced must conform with the lexicon org.hypercerts.workscope.tag.",
1242
1621
  },
1243
1622
  aliases: {
1244
1623
  type: 'array',
@@ -1247,15 +1626,30 @@ const schemaDict = {
1247
1626
  maxLength: 200,
1248
1627
  },
1249
1628
  maxLength: 50,
1250
- description: 'Optional array of alternative names or identifiers for this scope.',
1629
+ description: 'Alternative human-readable names for this scope (e.g., translations, abbreviations, or common synonyms). Unlike sameAs, these are plain-text labels, not links to external ontologies.',
1251
1630
  },
1252
- externalReference: {
1631
+ sameAs: {
1632
+ type: 'array',
1633
+ items: {
1634
+ type: 'string',
1635
+ format: 'uri',
1636
+ maxLength: 2048,
1637
+ },
1638
+ maxLength: 20,
1639
+ description: 'URIs to semantically equivalent concepts in external ontologies or taxonomies (e.g., Wikidata QIDs, ENVO terms, SDG targets). Used for interoperability, not as documentation.',
1640
+ },
1641
+ referenceDocument: {
1253
1642
  type: 'union',
1254
1643
  refs: [
1255
1644
  'lex:org.hypercerts.defs#uri',
1256
1645
  'lex:org.hypercerts.defs#smallBlob',
1257
1646
  ],
1258
- description: 'Optional external reference for this scope as a URI or blob.',
1647
+ description: 'Link to a governance or reference document where this work scope tag is defined and further explained.',
1648
+ },
1649
+ createdAt: {
1650
+ type: 'string',
1651
+ format: 'datetime',
1652
+ description: 'Client-declared timestamp when this record was originally created.',
1259
1653
  },
1260
1654
  },
1261
1655
  },
@@ -1264,16 +1658,17 @@ const schemaDict = {
1264
1658
  },
1265
1659
  };
1266
1660
  const schemas = Object.values(schemaDict);
1267
- const lexicons = new lexicon$j.Lexicons(schemas);
1268
- function validate$j(v, id, hash, requiredType) {
1269
- return (requiredType ? is$typed$j : maybe$typed)(v, id, hash)
1661
+ const lexicons = new lexicon$n.Lexicons(schemas);
1662
+ function validate$n(v, id, hash, requiredType) {
1663
+ return (requiredType ? is$typed$n : maybe$typed)(v, id, hash)
1270
1664
  ? lexicons.validate(`${id}#${hash}`, v)
1271
1665
  : {
1272
1666
  success: false,
1273
- error: new lexicon$j.ValidationError(`Must be an object with "${hash === 'main' ? id : `${id}#${hash}`}" $type property`),
1667
+ error: new lexicon$n.ValidationError(`Must be an object with "${hash === 'main' ? id : `${id}#${hash}`}" $type property`),
1274
1668
  };
1275
1669
  }
1276
1670
  const ids = {
1671
+ AppCertifiedActorOrganization: 'app.certified.actor.organization',
1277
1672
  AppCertifiedActorProfile: 'app.certified.actor.profile',
1278
1673
  AppCertifiedBadgeAward: 'app.certified.badge.award',
1279
1674
  AppCertifiedBadgeDefinition: 'app.certified.badge.definition',
@@ -1281,32 +1676,117 @@ const ids = {
1281
1676
  AppCertifiedDefs: 'app.certified.defs',
1282
1677
  AppCertifiedLocation: 'app.certified.location',
1283
1678
  ComAtprotoRepoStrongRef: 'com.atproto.repo.strongRef',
1284
- OrgHypercertsAcknowledgement: 'org.hypercerts.acknowledgement',
1679
+ OrgHyperboardsBoard: 'org.hyperboards.board',
1680
+ OrgHyperboardsDisplayProfile: 'org.hyperboards.displayProfile',
1285
1681
  OrgHypercertsClaimActivity: 'org.hypercerts.claim.activity',
1286
- OrgHypercertsClaimAttachment: 'org.hypercerts.claim.attachment',
1287
- OrgHypercertsClaimCollection: 'org.hypercerts.claim.collection',
1288
- OrgHypercertsClaimContributionDetails: 'org.hypercerts.claim.contributionDetails',
1682
+ OrgHypercertsClaimContribution: 'org.hypercerts.claim.contribution',
1289
1683
  OrgHypercertsClaimContributorInformation: 'org.hypercerts.claim.contributorInformation',
1290
- OrgHypercertsClaimEvaluation: 'org.hypercerts.claim.evaluation',
1291
- OrgHypercertsClaimMeasurement: 'org.hypercerts.claim.measurement',
1292
1684
  OrgHypercertsClaimRights: 'org.hypercerts.claim.rights',
1685
+ OrgHypercertsCollection: 'org.hypercerts.collection',
1686
+ OrgHypercertsContextAcknowledgement: 'org.hypercerts.context.acknowledgement',
1687
+ OrgHypercertsContextAttachment: 'org.hypercerts.context.attachment',
1688
+ OrgHypercertsContextEvaluation: 'org.hypercerts.context.evaluation',
1689
+ OrgHypercertsContextMeasurement: 'org.hypercerts.context.measurement',
1293
1690
  OrgHypercertsDefs: 'org.hypercerts.defs',
1294
1691
  OrgHypercertsFundingReceipt: 'org.hypercerts.funding.receipt',
1295
- OrgHypercertsHelperWorkScopeTag: 'org.hypercerts.helper.workScopeTag',
1692
+ OrgHypercertsWorkscopeCel: 'org.hypercerts.workscope.cel',
1693
+ OrgHypercertsWorkscopeTag: 'org.hypercerts.workscope.tag',
1296
1694
  };
1297
1695
 
1298
- var lexicon$i = 1;
1299
- var id$B = "app.certified.actor.profile";
1300
- var defs$k = {
1696
+ var lexicon$m = 1;
1697
+ var id$J = "app.certified.actor.organization";
1698
+ var defs$o = {
1699
+ main: {
1700
+ type: "record",
1701
+ description: "Extended metadata for an organization actor. Complements the base actor profile with organization-specific fields like legal structure and reference links.",
1702
+ key: "literal:self",
1703
+ record: {
1704
+ type: "object",
1705
+ required: [
1706
+ "createdAt"
1707
+ ],
1708
+ properties: {
1709
+ organizationType: {
1710
+ type: "array",
1711
+ description: "Legal or operational structures of the organization (e.g. 'nonprofit', 'ngo', 'government', 'social-enterprise', 'cooperative').",
1712
+ items: {
1713
+ type: "string",
1714
+ maxLength: 128,
1715
+ maxGraphemes: 100
1716
+ },
1717
+ maxLength: 10
1718
+ },
1719
+ urls: {
1720
+ type: "array",
1721
+ description: "Additional reference URLs (social media profiles, contact pages, donation links, etc.) with a display label for each URL.",
1722
+ items: {
1723
+ type: "ref",
1724
+ ref: "#urlItem"
1725
+ }
1726
+ },
1727
+ location: {
1728
+ type: "ref",
1729
+ ref: "com.atproto.repo.strongRef",
1730
+ description: "A strong reference to the location where the organization is based. The record referenced must conform with the lexicon app.certified.location."
1731
+ },
1732
+ foundedDate: {
1733
+ type: "string",
1734
+ format: "datetime",
1735
+ description: "When the organization was established. Stored as datetime per ATProto conventions (no date-only format exists). Clients should use midnight UTC (e.g., '2005-01-01T00:00:00.000Z'); consumers should treat only the date portion as canonical."
1736
+ },
1737
+ createdAt: {
1738
+ type: "string",
1739
+ format: "datetime",
1740
+ description: "Client-declared timestamp when this record was originally created."
1741
+ }
1742
+ }
1743
+ }
1744
+ },
1745
+ urlItem: {
1746
+ type: "object",
1747
+ description: "A labeled URL reference.",
1748
+ required: [
1749
+ "url"
1750
+ ],
1751
+ properties: {
1752
+ url: {
1753
+ type: "string",
1754
+ format: "uri",
1755
+ description: "The URL.",
1756
+ maxLength: 10000,
1757
+ maxGraphemes: 2048
1758
+ },
1759
+ label: {
1760
+ type: "string",
1761
+ description: "Optional human-readable label for this URL (e.g. 'Support page', 'Donation page').",
1762
+ maxLength: 640,
1763
+ maxGraphemes: 64
1764
+ }
1765
+ }
1766
+ }
1767
+ };
1768
+ var ACTOR_ORGANIZATION_LEXICON_JSON = {
1769
+ lexicon: lexicon$m,
1770
+ id: id$J,
1771
+ defs: defs$o
1772
+ };
1773
+
1774
+ var lexicon$l = 1;
1775
+ var id$I = "app.certified.actor.profile";
1776
+ var defs$n = {
1301
1777
  main: {
1302
1778
  type: "record",
1303
- description: "A declaration of a Hypercert account profile.",
1779
+ description: "A declaration of a Certified account profile.",
1304
1780
  key: "literal:self",
1305
1781
  record: {
1306
1782
  type: "object",
1783
+ required: [
1784
+ "createdAt"
1785
+ ],
1307
1786
  properties: {
1308
1787
  displayName: {
1309
1788
  type: "string",
1789
+ description: "Display name for the account",
1310
1790
  maxGraphemes: 64,
1311
1791
  maxLength: 640
1312
1792
  },
@@ -1324,7 +1804,8 @@ var defs$k = {
1324
1804
  },
1325
1805
  website: {
1326
1806
  type: "string",
1327
- format: "uri"
1807
+ format: "uri",
1808
+ description: "Account website URL"
1328
1809
  },
1329
1810
  avatar: {
1330
1811
  type: "union",
@@ -1344,21 +1825,22 @@ var defs$k = {
1344
1825
  },
1345
1826
  createdAt: {
1346
1827
  type: "string",
1347
- format: "datetime"
1828
+ format: "datetime",
1829
+ description: "Client-declared timestamp when this record was originally created"
1348
1830
  }
1349
1831
  }
1350
1832
  }
1351
1833
  }
1352
1834
  };
1353
1835
  var ACTOR_PROFILE_LEXICON_JSON = {
1354
- lexicon: lexicon$i,
1355
- id: id$B,
1356
- defs: defs$k
1836
+ lexicon: lexicon$l,
1837
+ id: id$I,
1838
+ defs: defs$n
1357
1839
  };
1358
1840
 
1359
- var lexicon$h = 1;
1360
- var id$A = "app.certified.badge.award";
1361
- var defs$j = {
1841
+ var lexicon$k = 1;
1842
+ var id$H = "app.certified.badge.award";
1843
+ var defs$m = {
1362
1844
  main: {
1363
1845
  type: "record",
1364
1846
  description: "Records a badge award to a user, project, or activity claim.",
@@ -1386,7 +1868,14 @@ var defs$j = {
1386
1868
  },
1387
1869
  note: {
1388
1870
  type: "string",
1389
- description: "Optional statement explaining the reason for this badge award."
1871
+ description: "Optional statement explaining the reason for this badge award.",
1872
+ maxLength: 500
1873
+ },
1874
+ url: {
1875
+ type: "string",
1876
+ format: "uri",
1877
+ description: "Optional URL the badge award links to.",
1878
+ maxLength: 2048
1390
1879
  },
1391
1880
  createdAt: {
1392
1881
  type: "string",
@@ -1398,14 +1887,14 @@ var defs$j = {
1398
1887
  }
1399
1888
  };
1400
1889
  var BADGE_AWARD_LEXICON_JSON = {
1401
- lexicon: lexicon$h,
1402
- id: id$A,
1403
- defs: defs$j
1890
+ lexicon: lexicon$k,
1891
+ id: id$H,
1892
+ defs: defs$m
1404
1893
  };
1405
1894
 
1406
- var lexicon$g = 1;
1407
- var id$z = "app.certified.badge.definition";
1408
- var defs$i = {
1895
+ var lexicon$j = 1;
1896
+ var id$G = "app.certified.badge.definition";
1897
+ var defs$l = {
1409
1898
  main: {
1410
1899
  type: "record",
1411
1900
  description: "Defines a badge that can be awarded via badge award records to users, projects, or activity claims.",
@@ -1421,11 +1910,13 @@ var defs$i = {
1421
1910
  properties: {
1422
1911
  badgeType: {
1423
1912
  type: "string",
1424
- description: "Category of the badge (e.g. endorsement, participation, affiliation)."
1913
+ description: "Category of the badge (e.g. endorsement, participation, affiliation).",
1914
+ maxLength: 100
1425
1915
  },
1426
1916
  title: {
1427
1917
  type: "string",
1428
- description: "Human-readable title of the badge."
1918
+ description: "Human-readable title of the badge.",
1919
+ maxLength: 256
1429
1920
  },
1430
1921
  icon: {
1431
1922
  type: "blob",
@@ -1440,11 +1931,14 @@ var defs$i = {
1440
1931
  },
1441
1932
  description: {
1442
1933
  type: "string",
1443
- description: "Optional short statement describing what the badge represents."
1934
+ description: "Optional short statement describing what the badge represents.",
1935
+ maxLength: 5000,
1936
+ maxGraphemes: 500
1444
1937
  },
1445
1938
  allowedIssuers: {
1446
1939
  type: "array",
1447
1940
  description: "Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.",
1941
+ maxLength: 100,
1448
1942
  items: {
1449
1943
  type: "ref",
1450
1944
  ref: "app.certified.defs#did"
@@ -1460,14 +1954,14 @@ var defs$i = {
1460
1954
  }
1461
1955
  };
1462
1956
  var BADGE_DEFINITION_LEXICON_JSON = {
1463
- lexicon: lexicon$g,
1464
- id: id$z,
1465
- defs: defs$i
1957
+ lexicon: lexicon$j,
1958
+ id: id$G,
1959
+ defs: defs$l
1466
1960
  };
1467
1961
 
1468
- var lexicon$f = 1;
1469
- var id$y = "app.certified.badge.response";
1470
- var defs$h = {
1962
+ var lexicon$i = 1;
1963
+ var id$F = "app.certified.badge.response";
1964
+ var defs$k = {
1471
1965
  main: {
1472
1966
  type: "record",
1473
1967
  description: "Recipient response to a badge award.",
@@ -1487,7 +1981,7 @@ var defs$h = {
1487
1981
  },
1488
1982
  response: {
1489
1983
  type: "string",
1490
- "enum": [
1984
+ knownValues: [
1491
1985
  "accepted",
1492
1986
  "rejected"
1493
1987
  ],
@@ -1495,7 +1989,8 @@ var defs$h = {
1495
1989
  },
1496
1990
  weight: {
1497
1991
  type: "string",
1498
- description: "Optional relative weight for accepted badges, assigned by the recipient."
1992
+ description: "Optional relative weight for accepted badges, assigned by the recipient.",
1993
+ maxLength: 50
1499
1994
  },
1500
1995
  createdAt: {
1501
1996
  type: "string",
@@ -1507,15 +2002,15 @@ var defs$h = {
1507
2002
  }
1508
2003
  };
1509
2004
  var BADGE_RESPONSE_LEXICON_JSON = {
1510
- lexicon: lexicon$f,
1511
- id: id$y,
1512
- defs: defs$h
2005
+ lexicon: lexicon$i,
2006
+ id: id$F,
2007
+ defs: defs$k
1513
2008
  };
1514
2009
 
1515
- var lexicon$e = 1;
1516
- var id$x = "app.certified.defs";
1517
- var description$1 = "Common type definitions used across certified protocols.";
1518
- var defs$g = {
2010
+ var lexicon$h = 1;
2011
+ var id$E = "app.certified.defs";
2012
+ var description$2 = "Common type definitions used across certified protocols.";
2013
+ var defs$j = {
1519
2014
  did: {
1520
2015
  type: "object",
1521
2016
  description: "A Decentralized Identifier (DID) string.",
@@ -1533,15 +2028,15 @@ var defs$g = {
1533
2028
  }
1534
2029
  };
1535
2030
  var CERTIFIED_DEFS_LEXICON_JSON = {
1536
- lexicon: lexicon$e,
1537
- id: id$x,
1538
- description: description$1,
1539
- defs: defs$g
2031
+ lexicon: lexicon$h,
2032
+ id: id$E,
2033
+ description: description$2,
2034
+ defs: defs$j
1540
2035
  };
1541
2036
 
1542
- var lexicon$d = 1;
1543
- var id$w = "app.certified.location";
1544
- var defs$f = {
2037
+ var lexicon$g = 1;
2038
+ var id$D = "app.certified.location";
2039
+ var defs$i = {
1545
2040
  main: {
1546
2041
  type: "record",
1547
2042
  description: "A location reference",
@@ -1593,13 +2088,13 @@ var defs$f = {
1593
2088
  },
1594
2089
  name: {
1595
2090
  type: "string",
1596
- description: "Optional name for this location",
2091
+ description: "Human-readable name for this location (e.g. 'Golden Gate Park', 'San Francisco Bay Area')",
1597
2092
  maxLength: 1000,
1598
2093
  maxGraphemes: 100
1599
2094
  },
1600
2095
  description: {
1601
2096
  type: "string",
1602
- description: "Optional description for this location",
2097
+ description: "Additional context about this location, such as its significance to the work or specific boundaries",
1603
2098
  maxLength: 2000,
1604
2099
  maxGraphemes: 500
1605
2100
  },
@@ -1628,15 +2123,15 @@ var defs$f = {
1628
2123
  }
1629
2124
  };
1630
2125
  var LOCATION_LEXICON_JSON = {
1631
- lexicon: lexicon$d,
1632
- id: id$w,
1633
- defs: defs$f
2126
+ lexicon: lexicon$g,
2127
+ id: id$D,
2128
+ defs: defs$i
1634
2129
  };
1635
2130
 
1636
- var lexicon$c = 1;
1637
- var id$v = "com.atproto.repo.strongRef";
1638
- var description = "A URI with a content-hash fingerprint.";
1639
- var defs$e = {
2131
+ var lexicon$f = 1;
2132
+ var id$C = "com.atproto.repo.strongRef";
2133
+ var description$1 = "A URI with a content-hash fingerprint.";
2134
+ var defs$h = {
1640
2135
  main: {
1641
2136
  type: "object",
1642
2137
  required: [
@@ -1656,46 +2151,249 @@ var defs$e = {
1656
2151
  }
1657
2152
  };
1658
2153
  var STRONG_REF_LEXICON_JSON = {
1659
- lexicon: lexicon$c,
1660
- id: id$v,
1661
- description: description,
1662
- defs: defs$e
2154
+ lexicon: lexicon$f,
2155
+ id: id$C,
2156
+ description: description$1,
2157
+ defs: defs$h
1663
2158
  };
1664
2159
 
1665
- var lexicon$b = 1;
1666
- var id$u = "org.hypercerts.acknowledgement";
1667
- var defs$d = {
2160
+ var lexicon$e = 1;
2161
+ var id$B = "org.hyperboards.board";
2162
+ var defs$g = {
1668
2163
  main: {
1669
2164
  type: "record",
1670
- description: "Acknowledges the inclusion of one record (subject) within another (context). Typically created in the subject owner's repo to form a bidirectional link. For example, a contributor acknowledging inclusion in an activity, or an activity owner acknowledging inclusion in a collection.",
2165
+ description: "Configuration record for a hyperboard, wrapping an underlying activity or collection with visual presentation settings. Stored in the creator's PDS.",
1671
2166
  key: "tid",
1672
2167
  record: {
1673
2168
  type: "object",
1674
2169
  required: [
1675
2170
  "subject",
1676
- "context",
1677
- "acknowledged",
1678
2171
  "createdAt"
1679
2172
  ],
1680
2173
  properties: {
1681
2174
  subject: {
1682
2175
  type: "ref",
1683
2176
  ref: "com.atproto.repo.strongRef",
1684
- description: "The record whose inclusion is being acknowledged (e.g. an activity, a contributor information record)."
2177
+ description: "Reference to the org.hypercerts.claim.activity or org.hypercerts.claim.collection this board visualizes."
1685
2178
  },
1686
- context: {
2179
+ config: {
1687
2180
  type: "ref",
1688
- ref: "com.atproto.repo.strongRef",
1689
- description: "The record that includes the subject (e.g. a collection/project that includes an activity, or an activity that includes a contributor)."
2181
+ ref: "#boardConfig",
2182
+ description: "Board-level visual configuration (background, colors, aspect ratio)."
1690
2183
  },
1691
- acknowledged: {
1692
- type: "boolean",
1693
- description: "Whether inclusion is acknowledged (true) or rejected (false)."
2184
+ contributorConfigs: {
2185
+ type: "array",
2186
+ description: "Per-contributor configuration entries for this board.",
2187
+ maxLength: 1000,
2188
+ items: {
2189
+ type: "ref",
2190
+ ref: "#contributorConfig"
2191
+ }
1694
2192
  },
1695
- comment: {
2193
+ createdAt: {
1696
2194
  type: "string",
1697
- description: "Optional comment providing additional context or reasoning.",
1698
- maxLength: 1000
2195
+ format: "datetime",
2196
+ description: "Client-declared timestamp when this record was originally created."
2197
+ }
2198
+ }
2199
+ }
2200
+ },
2201
+ boardConfig: {
2202
+ type: "object",
2203
+ description: "Visual configuration for a hyperboard's background, colors, and layout.",
2204
+ properties: {
2205
+ backgroundType: {
2206
+ type: "string",
2207
+ description: "Type of background content.",
2208
+ knownValues: [
2209
+ "image",
2210
+ "iframe"
2211
+ ],
2212
+ maxLength: 10
2213
+ },
2214
+ backgroundImage: {
2215
+ type: "union",
2216
+ refs: [
2217
+ "org.hypercerts.defs#uri",
2218
+ "org.hypercerts.defs#smallImage"
2219
+ ],
2220
+ description: "Background image as a URI or image blob."
2221
+ },
2222
+ backgroundIframeUrl: {
2223
+ type: "string",
2224
+ format: "uri",
2225
+ description: "URI of the background iframe.",
2226
+ maxLength: 2048
2227
+ },
2228
+ backgroundGrayscale: {
2229
+ type: "boolean",
2230
+ description: "Whether the background is rendered in grayscale. Default: true."
2231
+ },
2232
+ backgroundOpacity: {
2233
+ type: "integer",
2234
+ description: "Background opacity as a percentage (0–100).",
2235
+ minimum: 0,
2236
+ maximum: 100
2237
+ },
2238
+ backgroundColor: {
2239
+ type: "string",
2240
+ description: "Background color as a hex string (e.g. '#ffffff').",
2241
+ maxLength: 20
2242
+ },
2243
+ borderColor: {
2244
+ type: "string",
2245
+ description: "Border color as a hex string (e.g. '#000000').",
2246
+ maxLength: 20
2247
+ },
2248
+ grayscaleImages: {
2249
+ type: "boolean",
2250
+ description: "Whether contributor images are rendered in grayscale. Default: false."
2251
+ },
2252
+ imageShape: {
2253
+ type: "string",
2254
+ description: "Shape used to crop contributor images on this board.",
2255
+ knownValues: [
2256
+ "circular",
2257
+ "square"
2258
+ ],
2259
+ maxLength: 20
2260
+ },
2261
+ aspectRatio: {
2262
+ type: "string",
2263
+ description: "Display aspect ratio of the board.",
2264
+ knownValues: [
2265
+ "16:9",
2266
+ "4:3",
2267
+ "1:1"
2268
+ ],
2269
+ maxLength: 10
2270
+ }
2271
+ }
2272
+ },
2273
+ contributorConfig: {
2274
+ type: "object",
2275
+ description: "Configuration for a specific contributor within a board. Values serve as fallbacks when the contributor has not defined them on their profile. It can also be used to override contributor settings on this board without changing their global profile.",
2276
+ required: [
2277
+ "contributor"
2278
+ ],
2279
+ properties: {
2280
+ contributor: {
2281
+ type: "union",
2282
+ refs: [
2283
+ "com.atproto.repo.strongRef",
2284
+ "org.hypercerts.claim.activity#contributorIdentity"
2285
+ ],
2286
+ description: "Identifies the contributor being styled. A strong reference to an org.hypercerts.claim.contributorInformation record, or a contributorIdentity (DID or identifier string) for contributors without a dedicated record."
2287
+ },
2288
+ override: {
2289
+ type: "boolean",
2290
+ description: "When true, these values take precedence over the contributor's own profile and display settings. When false or omitted, they are only used as fallbacks if the contributor has not set their own settings."
2291
+ },
2292
+ displayName: {
2293
+ type: "string",
2294
+ description: "Display name for this contributor on this board.",
2295
+ maxLength: 640,
2296
+ maxGraphemes: 64
2297
+ },
2298
+ image: {
2299
+ type: "union",
2300
+ refs: [
2301
+ "org.hypercerts.defs#uri",
2302
+ "org.hypercerts.defs#smallImage"
2303
+ ],
2304
+ description: "Avatar or face image for this contributor on this board, as a URI or image blob."
2305
+ },
2306
+ video: {
2307
+ type: "union",
2308
+ refs: [
2309
+ "org.hypercerts.defs#uri",
2310
+ "org.hypercerts.defs#smallVideo"
2311
+ ],
2312
+ description: "Video for this contributor, as a URI (embed/direct link) or uploaded video blob."
2313
+ },
2314
+ hoverImage: {
2315
+ type: "union",
2316
+ refs: [
2317
+ "org.hypercerts.defs#uri",
2318
+ "org.hypercerts.defs#smallImage"
2319
+ ],
2320
+ description: "Image overlay shown when hovering over this contributor, as a URI or image blob."
2321
+ },
2322
+ hoverIframeUrl: {
2323
+ type: "string",
2324
+ format: "uri",
2325
+ description: "Iframe overlay shown when hovering over this contributor.",
2326
+ maxLength: 2048
2327
+ },
2328
+ url: {
2329
+ type: "string",
2330
+ format: "uri",
2331
+ description: "Click-through link URL for this contributor.",
2332
+ maxLength: 2048
2333
+ }
2334
+ }
2335
+ }
2336
+ };
2337
+ var HYPERBOARDS_BOARD_LEXICON_JSON = {
2338
+ lexicon: lexicon$e,
2339
+ id: id$B,
2340
+ defs: defs$g
2341
+ };
2342
+
2343
+ var lexicon$d = 1;
2344
+ var id$A = "org.hyperboards.displayProfile";
2345
+ var defs$f = {
2346
+ main: {
2347
+ type: "record",
2348
+ description: "User-declared visual presentation defaults for how a contributor appears on hyperboards. Stored in the contributor's own PDS and reusable across multiple boards.",
2349
+ key: "literal:self",
2350
+ record: {
2351
+ type: "object",
2352
+ required: [
2353
+ "createdAt"
2354
+ ],
2355
+ properties: {
2356
+ displayName: {
2357
+ type: "string",
2358
+ description: "Display name override for this user on hyperboards.",
2359
+ maxLength: 640,
2360
+ maxGraphemes: 64
2361
+ },
2362
+ image: {
2363
+ type: "union",
2364
+ refs: [
2365
+ "org.hypercerts.defs#uri",
2366
+ "org.hypercerts.defs#smallImage"
2367
+ ],
2368
+ description: "Avatar or face image override for this user on hyperboards, as a URI or image blob."
2369
+ },
2370
+ video: {
2371
+ type: "union",
2372
+ refs: [
2373
+ "org.hypercerts.defs#uri",
2374
+ "org.hypercerts.defs#smallVideo"
2375
+ ],
2376
+ description: "Default video for this user across boards, as a URI (embed/direct link) or uploaded video blob."
2377
+ },
2378
+ hoverImage: {
2379
+ type: "union",
2380
+ refs: [
2381
+ "org.hypercerts.defs#uri",
2382
+ "org.hypercerts.defs#smallImage"
2383
+ ],
2384
+ description: "Default hover image for this user across boards, as a URI or image blob."
2385
+ },
2386
+ hoverIframeUrl: {
2387
+ type: "string",
2388
+ format: "uri",
2389
+ description: "Default hover iframe URL for this user across boards.",
2390
+ maxLength: 2048
2391
+ },
2392
+ url: {
2393
+ type: "string",
2394
+ format: "uri",
2395
+ description: "Default click-through link URL for this user across boards.",
2396
+ maxLength: 2048
1699
2397
  },
1700
2398
  createdAt: {
1701
2399
  type: "string",
@@ -1706,15 +2404,15 @@ var defs$d = {
1706
2404
  }
1707
2405
  }
1708
2406
  };
1709
- var HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_JSON = {
1710
- lexicon: lexicon$b,
1711
- id: id$u,
1712
- defs: defs$d
2407
+ var HYPERBOARDS_DISPLAY_PROFILE_LEXICON_JSON = {
2408
+ lexicon: lexicon$d,
2409
+ id: id$A,
2410
+ defs: defs$f
1713
2411
  };
1714
2412
 
1715
- var lexicon$a = 1;
1716
- var id$t = "org.hypercerts.claim.activity";
1717
- var defs$c = {
2413
+ var lexicon$c = 1;
2414
+ var id$z = "org.hypercerts.claim.activity";
2415
+ var defs$e = {
1718
2416
  main: {
1719
2417
  type: "record",
1720
2418
  description: "A hypercert record tracking impact work.",
@@ -1729,7 +2427,7 @@ var defs$c = {
1729
2427
  properties: {
1730
2428
  title: {
1731
2429
  type: "string",
1732
- description: "Title of the hypercert.",
2430
+ description: "Display title summarizing the impact work (e.g. 'Reforestation in Amazon Basin 2024')",
1733
2431
  maxLength: 256
1734
2432
  },
1735
2433
  shortDescription: {
@@ -1747,18 +2445,9 @@ var defs$c = {
1747
2445
  }
1748
2446
  },
1749
2447
  description: {
1750
- type: "string",
1751
- description: "Optional longer description of this activity claim, including context or interpretation. Rich text annotations may be provided via `descriptionFacets`.",
1752
- maxLength: 30000,
1753
- maxGraphemes: 3000
1754
- },
1755
- descriptionFacets: {
1756
- type: "array",
1757
- description: "Rich text annotations for `description` (mentions, URLs, hashtags, etc).",
1758
- items: {
1759
- type: "ref",
1760
- ref: "app.bsky.richtext.facet"
1761
- }
2448
+ type: "ref",
2449
+ ref: "pub.leaflet.pages.linearDocument#main",
2450
+ description: "Rich-text description, represented as a Leaflet linear document."
1762
2451
  },
1763
2452
  image: {
1764
2453
  type: "union",
@@ -1768,13 +2457,22 @@ var defs$c = {
1768
2457
  ],
1769
2458
  description: "The hypercert visual representation as a URI or image blob."
1770
2459
  },
2460
+ contributors: {
2461
+ type: "array",
2462
+ description: "An array of contributor objects, each containing contributor information, weight, and contribution details.",
2463
+ maxLength: 1000,
2464
+ items: {
2465
+ type: "ref",
2466
+ ref: "#contributor"
2467
+ }
2468
+ },
1771
2469
  workScope: {
1772
2470
  type: "union",
1773
2471
  refs: [
1774
- "com.atproto.repo.strongRef",
2472
+ "org.hypercerts.workscope.cel",
1775
2473
  "#workScopeString"
1776
2474
  ],
1777
- description: "Work scope definition. Either a strongRef to a work-scope logic record (structured, nested logic), or a free-form string for simple or legacy scopes. The work scope record should conform to the org.hypercerts.helper.workScopeTag lexicon."
2475
+ description: "Work scope definition. A CEL expression for structured, machine-evaluable scopes or a free-form string for simple and legacy scopes."
1778
2476
  },
1779
2477
  startDate: {
1780
2478
  type: "string",
@@ -1786,12 +2484,13 @@ var defs$c = {
1786
2484
  format: "datetime",
1787
2485
  description: "When the work ended"
1788
2486
  },
1789
- contributors: {
2487
+ locations: {
1790
2488
  type: "array",
1791
- description: "An array of contributor objects, each containing contributor information, weight, and contribution details.",
2489
+ description: "An array of strong references to the location where activity was performed. The record referenced must conform with the lexicon app.certified.location.",
2490
+ maxLength: 1000,
1792
2491
  items: {
1793
2492
  type: "ref",
1794
- ref: "#contributor"
2493
+ ref: "com.atproto.repo.strongRef"
1795
2494
  }
1796
2495
  },
1797
2496
  rights: {
@@ -1799,14 +2498,6 @@ var defs$c = {
1799
2498
  ref: "com.atproto.repo.strongRef",
1800
2499
  description: "A strong reference to the rights that this hypercert has. The record referenced must conform with the lexicon org.hypercerts.claim.rights."
1801
2500
  },
1802
- locations: {
1803
- type: "array",
1804
- description: "An array of strong references to the location where activity was performed. The record referenced must conform with the lexicon app.certified.location.",
1805
- items: {
1806
- type: "ref",
1807
- ref: "com.atproto.repo.strongRef"
1808
- }
1809
- },
1810
2501
  createdAt: {
1811
2502
  type: "string",
1812
2503
  format: "datetime",
@@ -1827,11 +2518,12 @@ var defs$c = {
1827
2518
  "#contributorIdentity",
1828
2519
  "com.atproto.repo.strongRef"
1829
2520
  ],
1830
- description: "Contributor identity as a string (DID or identifier) via org.hypercerts.claim.activity#contributorIdentity, or a strong reference to a contributor information record."
2521
+ description: "Inline contributor identity object with an identity string (DID or identifier) via org.hypercerts.claim.activity#contributorIdentity, or a strong reference to a contributor information record. The record referenced must conform with the lexicon org.hypercerts.claim.contributorInformation."
1831
2522
  },
1832
2523
  contributionWeight: {
1833
2524
  type: "string",
1834
- description: "The relative weight/importance of this contribution (stored as a string to avoid float precision issues). Must be a positive numeric value. Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed."
2525
+ description: "The relative weight/importance of this contribution (stored as a string to avoid float precision issues). Must be a positive numeric value. Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed.",
2526
+ maxLength: 100
1835
2527
  },
1836
2528
  contributionDetails: {
1837
2529
  type: "union",
@@ -1839,7 +2531,7 @@ var defs$c = {
1839
2531
  "#contributorRole",
1840
2532
  "com.atproto.repo.strongRef"
1841
2533
  ],
1842
- description: "Contribution details as a string via org.hypercerts.claim.activity#contributorRole, or a strong reference to a contribution details record."
2534
+ description: "Inline contribution role object with a role string via org.hypercerts.claim.activity#contributorRole, or a strong reference to a contribution details record. The record referenced must conform with the lexicon org.hypercerts.claim.contribution."
1843
2535
  }
1844
2536
  }
1845
2537
  },
@@ -1890,107 +2582,163 @@ var defs$c = {
1890
2582
  }
1891
2583
  };
1892
2584
  var ACTIVITY_LEXICON_JSON = {
1893
- lexicon: lexicon$a,
1894
- id: id$t,
1895
- defs: defs$c
2585
+ lexicon: lexicon$c,
2586
+ id: id$z,
2587
+ defs: defs$e
1896
2588
  };
1897
2589
 
1898
- var lexicon$9 = 1;
1899
- var id$s = "org.hypercerts.claim.attachment";
1900
- var defs$b = {
2590
+ var lexicon$b = 1;
2591
+ var id$y = "org.hypercerts.claim.contribution";
2592
+ var defs$d = {
1901
2593
  main: {
1902
2594
  type: "record",
1903
- description: "An attachment providing commentary, context, evidence, or documentary material related to a hypercert record (e.g. an activity, project, claim, or evaluation).",
2595
+ description: "Details about a specific contribution including role, description, and timeframe.",
1904
2596
  key: "tid",
1905
2597
  record: {
1906
2598
  type: "object",
1907
2599
  required: [
1908
- "title",
1909
- "content",
1910
2600
  "createdAt"
1911
2601
  ],
1912
2602
  properties: {
1913
- subjects: {
1914
- type: "array",
1915
- description: "References to the subject(s) the attachment is connected to—this may be an activity claim, outcome claim, measurement, evaluation, or even another attachment. This is optional as the attachment can exist before the claim is recorded.",
1916
- items: {
1917
- type: "ref",
1918
- ref: "com.atproto.repo.strongRef"
1919
- },
2603
+ role: {
2604
+ type: "string",
2605
+ description: "Role or title of the contributor.",
1920
2606
  maxLength: 100
1921
2607
  },
1922
- contentType: {
2608
+ contributionDescription: {
1923
2609
  type: "string",
1924
- maxLength: 64,
1925
- description: "The type of attachment, e.g. report, audit, evidence, testimonial, methodology, etc."
2610
+ description: "Description of what the contribution concretely involved.",
2611
+ maxLength: 10000,
2612
+ maxGraphemes: 1000
1926
2613
  },
1927
- content: {
1928
- type: "array",
1929
- description: "The files, documents, or external references included in this attachment record.",
1930
- items: {
1931
- type: "union",
1932
- refs: [
1933
- "org.hypercerts.defs#uri",
1934
- "org.hypercerts.defs#smallBlob"
1935
- ]
1936
- },
1937
- maxLength: 100
2614
+ startDate: {
2615
+ type: "string",
2616
+ format: "datetime",
2617
+ description: "When this contribution started. Should fall within the parent hypercert's timeframe."
1938
2618
  },
1939
- title: {
2619
+ endDate: {
1940
2620
  type: "string",
1941
- maxLength: 256,
1942
- description: "Title of this attachment."
2621
+ format: "datetime",
2622
+ description: "When this contribution finished. Should fall within the parent hypercert's timeframe."
1943
2623
  },
1944
- shortDescription: {
2624
+ createdAt: {
1945
2625
  type: "string",
1946
- description: "Short summary of this attachment, suitable for previews and list views. Rich text annotations may be provided via `shortDescriptionFacets`.",
1947
- maxLength: 3000,
1948
- maxGraphemes: 300
2626
+ format: "datetime",
2627
+ description: "Client-declared timestamp when this record was originally created."
2628
+ }
2629
+ }
2630
+ }
2631
+ }
2632
+ };
2633
+ var CONTRIBUTION_LEXICON_JSON = {
2634
+ lexicon: lexicon$b,
2635
+ id: id$y,
2636
+ defs: defs$d
2637
+ };
2638
+
2639
+ var lexicon$a = 1;
2640
+ var id$x = "org.hypercerts.claim.contributorInformation";
2641
+ var defs$c = {
2642
+ main: {
2643
+ type: "record",
2644
+ description: "Contributor information including identifier, display name, and image.",
2645
+ key: "tid",
2646
+ record: {
2647
+ type: "object",
2648
+ required: [
2649
+ "createdAt"
2650
+ ],
2651
+ properties: {
2652
+ identifier: {
2653
+ type: "string",
2654
+ description: "DID (did:plc:...) or URI to a social profile of the contributor.",
2655
+ maxLength: 2048
1949
2656
  },
1950
- shortDescriptionFacets: {
1951
- type: "array",
1952
- description: "Rich text annotations for `shortDescription` (mentions, URLs, hashtags, etc).",
1953
- items: {
1954
- type: "ref",
1955
- ref: "app.bsky.richtext.facet"
1956
- }
2657
+ displayName: {
2658
+ type: "string",
2659
+ description: "Human-readable name for the contributor as it should appear in UI.",
2660
+ maxLength: 100
2661
+ },
2662
+ image: {
2663
+ type: "union",
2664
+ refs: [
2665
+ "org.hypercerts.defs#uri",
2666
+ "org.hypercerts.defs#smallImage"
2667
+ ],
2668
+ description: "The contributor visual representation as a URI or image blob."
2669
+ },
2670
+ createdAt: {
2671
+ type: "string",
2672
+ format: "datetime",
2673
+ description: "Client-declared timestamp when this record was originally created."
2674
+ }
2675
+ }
2676
+ }
2677
+ }
2678
+ };
2679
+ var CONTRIBUTOR_INFORMATION_LEXICON_JSON = {
2680
+ lexicon: lexicon$a,
2681
+ id: id$x,
2682
+ defs: defs$c
2683
+ };
2684
+
2685
+ var lexicon$9 = 1;
2686
+ var id$w = "org.hypercerts.claim.rights";
2687
+ var defs$b = {
2688
+ main: {
2689
+ type: "record",
2690
+ description: "Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.",
2691
+ key: "tid",
2692
+ record: {
2693
+ type: "object",
2694
+ required: [
2695
+ "rightsName",
2696
+ "rightsType",
2697
+ "rightsDescription",
2698
+ "createdAt"
2699
+ ],
2700
+ properties: {
2701
+ rightsName: {
2702
+ type: "string",
2703
+ description: "Human-readable name for these rights (e.g. 'All Rights Reserved', 'CC BY-SA 4.0')",
2704
+ maxLength: 100
1957
2705
  },
1958
- description: {
2706
+ rightsType: {
1959
2707
  type: "string",
1960
- description: "Optional longer description of this attachment, including context or interpretation. Rich text annotations may be provided via `descriptionFacets`.",
1961
- maxLength: 30000,
1962
- maxGraphemes: 3000
2708
+ description: "Short identifier code for this rights type (e.g. 'ARR', 'CC-BY-SA') to facilitate filtering and search",
2709
+ maxLength: 10
1963
2710
  },
1964
- descriptionFacets: {
1965
- type: "array",
1966
- description: "Rich text annotations for `description` (mentions, URLs, hashtags, etc).",
1967
- items: {
1968
- type: "ref",
1969
- ref: "app.bsky.richtext.facet"
1970
- }
2711
+ rightsDescription: {
2712
+ type: "string",
2713
+ description: "Detailed explanation of the rights holders' permissions, restrictions, and conditions",
2714
+ maxLength: 10000,
2715
+ maxGraphemes: 1000
1971
2716
  },
1972
- location: {
1973
- type: "ref",
1974
- ref: "com.atproto.repo.strongRef",
1975
- description: "A strong reference to the location where this attachment's subject matter occurred. The record referenced must conform with the lexicon app.certified.location."
2717
+ attachment: {
2718
+ type: "union",
2719
+ refs: [
2720
+ "org.hypercerts.defs#uri",
2721
+ "org.hypercerts.defs#smallBlob"
2722
+ ],
2723
+ description: "An attachment to define the rights further, e.g. a legal document."
1976
2724
  },
1977
2725
  createdAt: {
1978
2726
  type: "string",
1979
2727
  format: "datetime",
1980
- description: "Client-declared timestamp when this record was originally created."
2728
+ description: "Client-declared timestamp when this record was originally created"
1981
2729
  }
1982
2730
  }
1983
2731
  }
1984
2732
  }
1985
2733
  };
1986
- var ATTACHMENT_LEXICON_JSON = {
2734
+ var RIGHTS_LEXICON_JSON = {
1987
2735
  lexicon: lexicon$9,
1988
- id: id$s,
2736
+ id: id$w,
1989
2737
  defs: defs$b
1990
2738
  };
1991
2739
 
1992
2740
  var lexicon$8 = 1;
1993
- var id$r = "org.hypercerts.claim.collection";
2741
+ var id$v = "org.hypercerts.collection";
1994
2742
  var defs$a = {
1995
2743
  main: {
1996
2744
  type: "record",
@@ -2000,17 +2748,17 @@ var defs$a = {
2000
2748
  type: "object",
2001
2749
  required: [
2002
2750
  "title",
2003
- "items",
2004
2751
  "createdAt"
2005
2752
  ],
2006
2753
  properties: {
2007
2754
  type: {
2008
2755
  type: "string",
2009
- description: "The type of this collection. Possible fields can be 'favorites', 'project', or any other type of collection."
2756
+ description: "The type of this collection. Possible fields can be 'favorites', 'project', or any other type of collection.",
2757
+ maxLength: 64
2010
2758
  },
2011
2759
  title: {
2012
2760
  type: "string",
2013
- description: "The title of this collection",
2761
+ description: "Display name for this collection (e.g. 'Q1 2025 Impact Projects')",
2014
2762
  maxLength: 800,
2015
2763
  maxGraphemes: 80
2016
2764
  },
@@ -2044,6 +2792,7 @@ var defs$a = {
2044
2792
  items: {
2045
2793
  type: "array",
2046
2794
  description: "Array of items in this collection with optional weights.",
2795
+ maxLength: 1000,
2047
2796
  items: {
2048
2797
  type: "ref",
2049
2798
  ref: "#item"
@@ -2071,54 +2820,59 @@ var defs$a = {
2071
2820
  itemIdentifier: {
2072
2821
  type: "ref",
2073
2822
  ref: "com.atproto.repo.strongRef",
2074
- description: "Strong reference to an item in this collection. Items can be activities (org.hypercerts.claim.activity) and/or other collections (org.hypercerts.claim.collection)."
2823
+ description: "Strong reference to an item in this collection. Items can be activities (org.hypercerts.claim.activity) and/or other collections (org.hypercerts.collection)."
2075
2824
  },
2076
2825
  itemWeight: {
2077
2826
  type: "string",
2078
- description: "Optional weight for this item (positive numeric value stored as string). Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed."
2827
+ description: "Optional weight for this item (positive numeric value stored as string). Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed.",
2828
+ maxLength: 100
2079
2829
  }
2080
2830
  }
2081
2831
  }
2082
2832
  };
2083
- var COLLECTION_LEXICON_JSON = {
2833
+ var HYPERCERTS_COLLECTION_LEXICON_JSON = {
2084
2834
  lexicon: lexicon$8,
2085
- id: id$r,
2835
+ id: id$v,
2086
2836
  defs: defs$a
2087
2837
  };
2088
2838
 
2089
2839
  var lexicon$7 = 1;
2090
- var id$q = "org.hypercerts.claim.contributionDetails";
2840
+ var id$u = "org.hypercerts.context.acknowledgement";
2091
2841
  var defs$9 = {
2092
2842
  main: {
2093
2843
  type: "record",
2094
- description: "Details about a specific contribution including role, description, and timeframe.",
2844
+ description: "Acknowledges a record (subject) or its relationship in a context. Created in the acknowledging actor's repo to form a bidirectional link. Examples: a contributor acknowledging inclusion in an activity, an activity owner acknowledging inclusion in a collection, or a record owner acknowledging an evaluation.",
2095
2845
  key: "tid",
2096
2846
  record: {
2097
2847
  type: "object",
2098
2848
  required: [
2849
+ "subject",
2850
+ "acknowledged",
2099
2851
  "createdAt"
2100
2852
  ],
2101
2853
  properties: {
2102
- role: {
2103
- type: "string",
2104
- description: "Role or title of the contributor.",
2105
- maxLength: 100
2854
+ subject: {
2855
+ type: "ref",
2856
+ ref: "com.atproto.repo.strongRef",
2857
+ description: "The record being acknowledged (e.g. an activity, a contributor information record, an evaluation)."
2106
2858
  },
2107
- contributionDescription: {
2108
- type: "string",
2109
- description: "What the contribution concretely was.",
2110
- maxLength: 10000,
2111
- maxGraphemes: 1000
2859
+ context: {
2860
+ type: "union",
2861
+ refs: [
2862
+ "org.hypercerts.defs#uri",
2863
+ "com.atproto.repo.strongRef"
2864
+ ],
2865
+ description: "Context for the acknowledgement (e.g. the collection that includes an activity, or the activity that includes a contributor). A URI for a lightweight reference or a strong reference for content-hash verification."
2112
2866
  },
2113
- startDate: {
2114
- type: "string",
2115
- format: "datetime",
2116
- description: "When this contribution started. This should be a subset of the hypercert timeframe."
2867
+ acknowledged: {
2868
+ type: "boolean",
2869
+ description: "Whether the relationship is acknowledged (true) or rejected (false)."
2117
2870
  },
2118
- endDate: {
2871
+ comment: {
2119
2872
  type: "string",
2120
- format: "datetime",
2121
- description: "When this contribution finished. This should be a subset of the hypercert timeframe."
2873
+ description: "Optional plain-text comment providing additional context or reasoning.",
2874
+ maxLength: 10000,
2875
+ maxGraphemes: 1000
2122
2876
  },
2123
2877
  createdAt: {
2124
2878
  type: "string",
@@ -2129,41 +2883,80 @@ var defs$9 = {
2129
2883
  }
2130
2884
  }
2131
2885
  };
2132
- var CONTRIBUTION_DETAILS_LEXICON_JSON = {
2886
+ var CONTEXT_ACKNOWLEDGEMENT_LEXICON_JSON = {
2133
2887
  lexicon: lexicon$7,
2134
- id: id$q,
2888
+ id: id$u,
2135
2889
  defs: defs$9
2136
2890
  };
2137
2891
 
2138
2892
  var lexicon$6 = 1;
2139
- var id$p = "org.hypercerts.claim.contributorInformation";
2893
+ var id$t = "org.hypercerts.context.attachment";
2140
2894
  var defs$8 = {
2141
2895
  main: {
2142
2896
  type: "record",
2143
- description: "Contributor information including identifier, display name, and image.",
2897
+ description: "An attachment providing commentary, context, evidence, or documentary material related to a hypercert record (e.g. an activity, project, claim, or evaluation).",
2144
2898
  key: "tid",
2145
2899
  record: {
2146
2900
  type: "object",
2147
2901
  required: [
2902
+ "title",
2148
2903
  "createdAt"
2149
2904
  ],
2150
2905
  properties: {
2151
- identifier: {
2152
- type: "string",
2153
- description: "DID or a URI to a social profile of the contributor."
2906
+ subjects: {
2907
+ type: "array",
2908
+ description: "References to the subject(s) the attachment is connected to—this may be an activity claim, outcome claim, measurement, evaluation, or even another attachment. This is optional as the attachment can exist before the claim is recorded.",
2909
+ items: {
2910
+ type: "ref",
2911
+ ref: "com.atproto.repo.strongRef"
2912
+ },
2913
+ maxLength: 100
2154
2914
  },
2155
- displayName: {
2915
+ contentType: {
2156
2916
  type: "string",
2157
- description: "Display name of the contributor.",
2917
+ maxLength: 64,
2918
+ description: "The type of attachment, e.g. report, audit, evidence, testimonial, methodology, etc."
2919
+ },
2920
+ content: {
2921
+ type: "array",
2922
+ description: "The files, documents, or external references included in this attachment record.",
2923
+ items: {
2924
+ type: "union",
2925
+ refs: [
2926
+ "org.hypercerts.defs#uri",
2927
+ "org.hypercerts.defs#smallBlob"
2928
+ ]
2929
+ },
2158
2930
  maxLength: 100
2159
2931
  },
2160
- image: {
2161
- type: "union",
2162
- refs: [
2163
- "org.hypercerts.defs#uri",
2164
- "org.hypercerts.defs#smallImage"
2165
- ],
2166
- description: "The contributor visual representation as a URI or image blob."
2932
+ title: {
2933
+ type: "string",
2934
+ maxLength: 256,
2935
+ description: "Display title for this attachment (e.g. 'Impact Assessment Report', 'Audit Findings')"
2936
+ },
2937
+ shortDescription: {
2938
+ type: "string",
2939
+ description: "Short summary of this attachment, suitable for previews and list views. Rich text annotations may be provided via `shortDescriptionFacets`.",
2940
+ maxLength: 3000,
2941
+ maxGraphemes: 300
2942
+ },
2943
+ shortDescriptionFacets: {
2944
+ type: "array",
2945
+ description: "Rich text annotations for `shortDescription` (mentions, URLs, hashtags, etc).",
2946
+ items: {
2947
+ type: "ref",
2948
+ ref: "app.bsky.richtext.facet"
2949
+ }
2950
+ },
2951
+ description: {
2952
+ type: "ref",
2953
+ ref: "pub.leaflet.pages.linearDocument#main",
2954
+ description: "Rich-text description, represented as a Leaflet linear document."
2955
+ },
2956
+ location: {
2957
+ type: "ref",
2958
+ ref: "com.atproto.repo.strongRef",
2959
+ description: "A strong reference to the location where this attachment's subject matter occurred. The record referenced must conform with the lexicon app.certified.location."
2167
2960
  },
2168
2961
  createdAt: {
2169
2962
  type: "string",
@@ -2174,38 +2967,15 @@ var defs$8 = {
2174
2967
  }
2175
2968
  }
2176
2969
  };
2177
- var CONTRIBUTOR_INFORMATION_LEXICON_JSON = {
2970
+ var CONTEXT_ATTACHMENT_LEXICON_JSON = {
2178
2971
  lexicon: lexicon$6,
2179
- id: id$p,
2972
+ id: id$t,
2180
2973
  defs: defs$8
2181
2974
  };
2182
2975
 
2183
2976
  var lexicon$5 = 1;
2184
- var id$o = "org.hypercerts.claim.evaluation";
2977
+ var id$s = "org.hypercerts.context.evaluation";
2185
2978
  var defs$7 = {
2186
- score: {
2187
- type: "object",
2188
- description: "Overall score for an evaluation on a numeric scale.",
2189
- required: [
2190
- "min",
2191
- "max",
2192
- "value"
2193
- ],
2194
- properties: {
2195
- min: {
2196
- type: "integer",
2197
- description: "Minimum value of the scale, e.g. 0 or 1."
2198
- },
2199
- max: {
2200
- type: "integer",
2201
- description: "Maximum value of the scale, e.g. 5 or 10."
2202
- },
2203
- value: {
2204
- type: "integer",
2205
- description: "Score within the inclusive range [min, max]."
2206
- }
2207
- }
2208
- },
2209
2979
  main: {
2210
2980
  type: "record",
2211
2981
  description: "An evaluation of a hypercert record (e.g. an activity and its impact).",
@@ -2221,7 +2991,7 @@ var defs$7 = {
2221
2991
  subject: {
2222
2992
  type: "ref",
2223
2993
  ref: "com.atproto.repo.strongRef",
2224
- description: "A strong reference to what is being evaluated. (e.g activity, measurement, contribution, etc.)"
2994
+ description: "A strong reference to what is being evaluated (e.g. activity, measurement, contribution, etc.)"
2225
2995
  },
2226
2996
  evaluators: {
2227
2997
  type: "array",
@@ -2246,7 +3016,7 @@ var defs$7 = {
2246
3016
  },
2247
3017
  measurements: {
2248
3018
  type: "array",
2249
- description: "Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.claim.measurement",
3019
+ description: "Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.context.measurement",
2250
3020
  items: {
2251
3021
  type: "ref",
2252
3022
  ref: "com.atproto.repo.strongRef"
@@ -2276,20 +3046,43 @@ var defs$7 = {
2276
3046
  }
2277
3047
  }
2278
3048
  }
3049
+ },
3050
+ score: {
3051
+ type: "object",
3052
+ description: "Overall score for an evaluation on a numeric scale.",
3053
+ required: [
3054
+ "min",
3055
+ "max",
3056
+ "value"
3057
+ ],
3058
+ properties: {
3059
+ min: {
3060
+ type: "integer",
3061
+ description: "Minimum value of the scale, e.g. 0 or 1."
3062
+ },
3063
+ max: {
3064
+ type: "integer",
3065
+ description: "Maximum value of the scale, e.g. 5 or 10."
3066
+ },
3067
+ value: {
3068
+ type: "integer",
3069
+ description: "Score within the inclusive range [min, max]."
3070
+ }
3071
+ }
2279
3072
  }
2280
3073
  };
2281
- var EVALUATION_LEXICON_JSON = {
3074
+ var CONTEXT_EVALUATION_LEXICON_JSON = {
2282
3075
  lexicon: lexicon$5,
2283
- id: id$o,
3076
+ id: id$s,
2284
3077
  defs: defs$7
2285
3078
  };
2286
3079
 
2287
3080
  var lexicon$4 = 1;
2288
- var id$n = "org.hypercerts.claim.measurement";
3081
+ var id$r = "org.hypercerts.context.measurement";
2289
3082
  var defs$6 = {
2290
3083
  main: {
2291
3084
  type: "record",
2292
- description: "Measurement data related to a hypercert record (e.g. an activity and its impact).",
3085
+ description: "Measurement data related to one or more records (e.g. activities, projects, etc.).",
2293
3086
  key: "tid",
2294
3087
  record: {
2295
3088
  type: "object",
@@ -2300,10 +3093,14 @@ var defs$6 = {
2300
3093
  "createdAt"
2301
3094
  ],
2302
3095
  properties: {
2303
- subject: {
2304
- type: "ref",
2305
- ref: "com.atproto.repo.strongRef",
2306
- description: "A strong reference to the record this measurement refers to (e.g. an activity, project, or claim)."
3096
+ subjects: {
3097
+ type: "array",
3098
+ description: "Strong references to the records this measurement refers to (e.g. activities, projects, or claims).",
3099
+ items: {
3100
+ type: "ref",
3101
+ ref: "com.atproto.repo.strongRef"
3102
+ },
3103
+ maxLength: 100
2307
3104
  },
2308
3105
  metric: {
2309
3106
  type: "string",
@@ -2317,7 +3114,7 @@ var defs$6 = {
2317
3114
  },
2318
3115
  value: {
2319
3116
  type: "string",
2320
- description: "The measured numeric value.",
3117
+ description: "The measured value as a numeric string (e.g. '1234.56')",
2321
3118
  maxLength: 500
2322
3119
  },
2323
3120
  startDate: {
@@ -2328,7 +3125,7 @@ var defs$6 = {
2328
3125
  endDate: {
2329
3126
  type: "string",
2330
3127
  format: "datetime",
2331
- description: "The end date and time when the measurement ended. If it was a one time measurement, the endDate should be equal to the startDate."
3128
+ description: "The end date and time when the measurement ended. For one-time measurements, this should equal the start date."
2332
3129
  },
2333
3130
  locations: {
2334
3131
  type: "array",
@@ -2360,7 +3157,7 @@ var defs$6 = {
2360
3157
  },
2361
3158
  measurers: {
2362
3159
  type: "array",
2363
- description: "DIDs of the entity (or entities) that measured this data",
3160
+ description: "DIDs of the entities that performed this measurement",
2364
3161
  items: {
2365
3162
  type: "ref",
2366
3163
  ref: "app.certified.defs#did"
@@ -2390,68 +3187,16 @@ var defs$6 = {
2390
3187
  }
2391
3188
  }
2392
3189
  };
2393
- var MEASUREMENT_LEXICON_JSON = {
3190
+ var CONTEXT_MEASUREMENT_LEXICON_JSON = {
2394
3191
  lexicon: lexicon$4,
2395
- id: id$n,
3192
+ id: id$r,
2396
3193
  defs: defs$6
2397
3194
  };
2398
3195
 
2399
3196
  var lexicon$3 = 1;
2400
- var id$m = "org.hypercerts.claim.rights";
3197
+ var id$q = "org.hypercerts.defs";
3198
+ var description = "Common type definitions used across all Hypercerts protocols.";
2401
3199
  var defs$5 = {
2402
- main: {
2403
- type: "record",
2404
- description: "Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.",
2405
- key: "tid",
2406
- record: {
2407
- type: "object",
2408
- required: [
2409
- "rightsName",
2410
- "rightsType",
2411
- "rightsDescription",
2412
- "createdAt"
2413
- ],
2414
- properties: {
2415
- rightsName: {
2416
- type: "string",
2417
- description: "Full name of the rights",
2418
- maxLength: 100
2419
- },
2420
- rightsType: {
2421
- type: "string",
2422
- description: "Short rights identifier for easier search",
2423
- maxLength: 10
2424
- },
2425
- rightsDescription: {
2426
- type: "string",
2427
- description: "Description of the rights of this hypercert"
2428
- },
2429
- attachment: {
2430
- type: "union",
2431
- refs: [
2432
- "org.hypercerts.defs#uri",
2433
- "org.hypercerts.defs#smallBlob"
2434
- ],
2435
- description: "An attachment to define the rights further, e.g. a legal document."
2436
- },
2437
- createdAt: {
2438
- type: "string",
2439
- format: "datetime",
2440
- description: "Client-declared timestamp when this record was originally created"
2441
- }
2442
- }
2443
- }
2444
- }
2445
- };
2446
- var RIGHTS_LEXICON_JSON = {
2447
- lexicon: lexicon$3,
2448
- id: id$m,
2449
- defs: defs$5
2450
- };
2451
-
2452
- var lexicon$2 = 1;
2453
- var id$l = "org.hypercerts.defs";
2454
- var defs$4 = {
2455
3200
  uri: {
2456
3201
  type: "object",
2457
3202
  required: [
@@ -2462,7 +3207,6 @@ var defs$4 = {
2462
3207
  uri: {
2463
3208
  type: "string",
2464
3209
  format: "uri",
2465
- maxGraphemes: 1024,
2466
3210
  description: "URI to external data"
2467
3211
  }
2468
3212
  }
@@ -2521,6 +3265,24 @@ var defs$4 = {
2521
3265
  }
2522
3266
  }
2523
3267
  },
3268
+ smallVideo: {
3269
+ type: "object",
3270
+ required: [
3271
+ "video"
3272
+ ],
3273
+ description: "Object containing a small video",
3274
+ properties: {
3275
+ video: {
3276
+ type: "blob",
3277
+ accept: [
3278
+ "video/mp4",
3279
+ "video/webm"
3280
+ ],
3281
+ maxSize: 20971520,
3282
+ description: "Video (up to 20MB)"
3283
+ }
3284
+ }
3285
+ },
2524
3286
  largeImage: {
2525
3287
  type: "object",
2526
3288
  required: [
@@ -2543,14 +3305,15 @@ var defs$4 = {
2543
3305
  }
2544
3306
  };
2545
3307
  var HYPERCERTS_DEFS_LEXICON_JSON = {
2546
- lexicon: lexicon$2,
2547
- id: id$l,
2548
- defs: defs$4
3308
+ lexicon: lexicon$3,
3309
+ id: id$q,
3310
+ description: description,
3311
+ defs: defs$5
2549
3312
  };
2550
3313
 
2551
- var lexicon$1 = 1;
2552
- var id$k = "org.hypercerts.funding.receipt";
2553
- var defs$3 = {
3314
+ var lexicon$2 = 1;
3315
+ var id$p = "org.hypercerts.funding.receipt";
3316
+ var defs$4 = {
2554
3317
  main: {
2555
3318
  type: "record",
2556
3319
  description: "Records a funding receipt for a payment from one user to another user. It may be recorded by the recipient, by the sender, or by a third party. The sender may remain anonymous.",
@@ -2572,27 +3335,33 @@ var defs$3 = {
2572
3335
  },
2573
3336
  to: {
2574
3337
  type: "string",
2575
- description: "The recipient of the funds. Can be identified by DID or a clear-text name."
3338
+ description: "The recipient of the funds. Can be identified by DID or a clear-text name.",
3339
+ maxLength: 2048
2576
3340
  },
2577
3341
  amount: {
2578
3342
  type: "string",
2579
- description: "Amount of funding received."
3343
+ description: "Amount of funding received as a numeric string (e.g. '1000.50').",
3344
+ maxLength: 50
2580
3345
  },
2581
3346
  currency: {
2582
3347
  type: "string",
2583
- description: "Currency of the payment (e.g. EUR, USD, ETH)."
3348
+ description: "Currency of the payment (e.g. EUR, USD, ETH).",
3349
+ maxLength: 10
2584
3350
  },
2585
3351
  paymentRail: {
2586
3352
  type: "string",
2587
- description: "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor)."
3353
+ description: "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor).",
3354
+ maxLength: 50
2588
3355
  },
2589
3356
  paymentNetwork: {
2590
3357
  type: "string",
2591
- description: "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal)."
3358
+ description: "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal).",
3359
+ maxLength: 50
2592
3360
  },
2593
3361
  transactionId: {
2594
3362
  type: "string",
2595
- description: "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable."
3363
+ description: "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable.",
3364
+ maxLength: 256
2596
3365
  },
2597
3366
  "for": {
2598
3367
  type: "string",
@@ -2619,44 +3388,95 @@ var defs$3 = {
2619
3388
  }
2620
3389
  };
2621
3390
  var FUNDING_RECEIPT_LEXICON_JSON = {
3391
+ lexicon: lexicon$2,
3392
+ id: id$p,
3393
+ defs: defs$4
3394
+ };
3395
+
3396
+ var lexicon$1 = 1;
3397
+ var id$o = "org.hypercerts.workscope.cel";
3398
+ var defs$3 = {
3399
+ main: {
3400
+ type: "object",
3401
+ description: "A structured, machine-evaluable work scope definition using CEL (Common Expression Language). Tags referenced in the expression correspond to org.hypercerts.workscope.tag keys. See https://github.com/google/cel-spec. Note: this is intentionally type 'object' (not 'record') so it can be directly embedded inline in union types (e.g., activity.workScope) without requiring a separate collection or strongRef indirection.",
3402
+ required: [
3403
+ "expression",
3404
+ "usedTags",
3405
+ "version",
3406
+ "createdAt"
3407
+ ],
3408
+ properties: {
3409
+ expression: {
3410
+ type: "string",
3411
+ maxLength: 10000,
3412
+ maxGraphemes: 5000,
3413
+ description: "A CEL expression encoding the work scope conditions. Example: scope.hasAll(['mangrove_restoration', 'environmental_education']) && location.country == 'KE'"
3414
+ },
3415
+ usedTags: {
3416
+ type: "array",
3417
+ items: {
3418
+ type: "ref",
3419
+ ref: "com.atproto.repo.strongRef"
3420
+ },
3421
+ maxLength: 100,
3422
+ description: "Strong references to org.hypercerts.workscope.tag records used in the expression. Enables fast indexing by AT-URI and provides referential integrity to the underlying tag records."
3423
+ },
3424
+ version: {
3425
+ type: "string",
3426
+ maxLength: 16,
3427
+ knownValues: [
3428
+ "v1"
3429
+ ],
3430
+ description: "CEL context schema version."
3431
+ },
3432
+ createdAt: {
3433
+ type: "string",
3434
+ format: "datetime",
3435
+ description: "Client-declared timestamp when this expression was originally created."
3436
+ }
3437
+ }
3438
+ }
3439
+ };
3440
+ var WORKSCOPE_CEL_LEXICON_JSON = {
2622
3441
  lexicon: lexicon$1,
2623
- id: id$k,
3442
+ id: id$o,
2624
3443
  defs: defs$3
2625
3444
  };
2626
3445
 
2627
3446
  var lexicon = 1;
2628
- var id$j = "org.hypercerts.helper.workScopeTag";
3447
+ var id$n = "org.hypercerts.workscope.tag";
2629
3448
  var defs$2 = {
2630
3449
  main: {
2631
3450
  type: "record",
2632
- description: "A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels.",
3451
+ description: "A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels. Tags are composed into structured expressions via CEL (Common Expression Language) on activity records.",
2633
3452
  key: "tid",
2634
3453
  record: {
2635
3454
  type: "object",
2636
3455
  required: [
2637
- "createdAt",
2638
3456
  "key",
2639
- "label"
3457
+ "name",
3458
+ "createdAt"
2640
3459
  ],
2641
3460
  properties: {
2642
- createdAt: {
2643
- type: "string",
2644
- format: "datetime",
2645
- description: "Client-declared timestamp when this record was originally created"
2646
- },
2647
3461
  key: {
2648
3462
  type: "string",
2649
- description: "Lowercase, hyphenated machine-readable key for this scope (e.g., 'ipfs', 'go-lang', 'filecoin').",
3463
+ description: "Lowercase, underscore-separated machine-readable key for this scope (e.g., 'mangrove_restoration', 'biodiversity_monitoring'). Used as the canonical identifier in CEL expressions.",
2650
3464
  maxLength: 120
2651
3465
  },
2652
- label: {
3466
+ name: {
2653
3467
  type: "string",
2654
- description: "Human-readable label for this scope.",
3468
+ description: "Human-readable name for this scope.",
2655
3469
  maxLength: 200
2656
3470
  },
2657
- kind: {
3471
+ category: {
2658
3472
  type: "string",
2659
- description: "Category type of this scope. Recommended values: topic, language, domain, method, tag.",
3473
+ description: "Category type of this scope.",
3474
+ knownValues: [
3475
+ "topic",
3476
+ "language",
3477
+ "domain",
3478
+ "method"
3479
+ ],
2660
3480
  maxLength: 50
2661
3481
  },
2662
3482
  description: {
@@ -2668,7 +3488,22 @@ var defs$2 = {
2668
3488
  parent: {
2669
3489
  type: "ref",
2670
3490
  ref: "com.atproto.repo.strongRef",
2671
- description: "Optional strong reference to a parent scope record for taxonomy/hierarchy support."
3491
+ description: "Optional strong reference to a parent work scope tag record for taxonomy/hierarchy support. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
3492
+ },
3493
+ status: {
3494
+ type: "string",
3495
+ description: "Lifecycle status of this tag. Communities propose tags, curators accept them, deprecated tags point to replacements via supersededBy.",
3496
+ knownValues: [
3497
+ "proposed",
3498
+ "accepted",
3499
+ "deprecated"
3500
+ ],
3501
+ maxLength: 20
3502
+ },
3503
+ supersededBy: {
3504
+ type: "ref",
3505
+ ref: "com.atproto.repo.strongRef",
3506
+ description: "When status is 'deprecated', points to the replacement work scope tag record. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
2672
3507
  },
2673
3508
  aliases: {
2674
3509
  type: "array",
@@ -2677,28 +3512,124 @@ var defs$2 = {
2677
3512
  maxLength: 200
2678
3513
  },
2679
3514
  maxLength: 50,
2680
- description: "Optional array of alternative names or identifiers for this scope."
3515
+ description: "Alternative human-readable names for this scope (e.g., translations, abbreviations, or common synonyms). Unlike sameAs, these are plain-text labels, not links to external ontologies."
3516
+ },
3517
+ sameAs: {
3518
+ type: "array",
3519
+ items: {
3520
+ type: "string",
3521
+ format: "uri",
3522
+ maxLength: 2048
3523
+ },
3524
+ maxLength: 20,
3525
+ description: "URIs to semantically equivalent concepts in external ontologies or taxonomies (e.g., Wikidata QIDs, ENVO terms, SDG targets). Used for interoperability, not as documentation."
2681
3526
  },
2682
- externalReference: {
3527
+ referenceDocument: {
2683
3528
  type: "union",
2684
3529
  refs: [
2685
3530
  "org.hypercerts.defs#uri",
2686
3531
  "org.hypercerts.defs#smallBlob"
2687
3532
  ],
2688
- description: "Optional external reference for this scope as a URI or blob."
3533
+ description: "Link to a governance or reference document where this work scope tag is defined and further explained."
3534
+ },
3535
+ createdAt: {
3536
+ type: "string",
3537
+ format: "datetime",
3538
+ description: "Client-declared timestamp when this record was originally created."
2689
3539
  }
2690
3540
  }
2691
3541
  }
2692
3542
  }
2693
3543
  };
2694
- var WORK_SCOPE_TAG_LEXICON_JSON = {
3544
+ var WORKSCOPE_TAG_LEXICON_JSON = {
2695
3545
  lexicon: lexicon,
2696
- id: id$j,
3546
+ id: id$n,
2697
3547
  defs: defs$2
2698
3548
  };
2699
3549
 
2700
- const is$typed$i = is$typed$j, validate$i = validate$j;
2701
- const id$i = 'app.certified.actor.profile';
3550
+ const is$typed$m = is$typed$n, validate$m = validate$n;
3551
+ const id$m = 'app.certified.actor.organization';
3552
+ const hashMain$k = 'main';
3553
+ function isMain$k(v) {
3554
+ return is$typed$m(v, id$m, hashMain$k);
3555
+ }
3556
+ function validateMain$k(v) {
3557
+ return validate$m(v, id$m, hashMain$k, true);
3558
+ }
3559
+ const hashUrlItem = 'urlItem';
3560
+ function isUrlItem(v) {
3561
+ return is$typed$m(v, id$m, hashUrlItem);
3562
+ }
3563
+ function validateUrlItem(v) {
3564
+ return validate$m(v, id$m, hashUrlItem);
3565
+ }
3566
+
3567
+ var organization = /*#__PURE__*/Object.freeze({
3568
+ __proto__: null,
3569
+ isMain: isMain$k,
3570
+ isRecord: isMain$k,
3571
+ isUrlItem: isUrlItem,
3572
+ validateMain: validateMain$k,
3573
+ validateRecord: validateMain$k,
3574
+ validateUrlItem: validateUrlItem
3575
+ });
3576
+
3577
+ const is$typed$l = is$typed$n, validate$l = validate$n;
3578
+ const id$l = 'app.certified.actor.profile';
3579
+ const hashMain$j = 'main';
3580
+ function isMain$j(v) {
3581
+ return is$typed$l(v, id$l, hashMain$j);
3582
+ }
3583
+ function validateMain$j(v) {
3584
+ return validate$l(v, id$l, hashMain$j, true);
3585
+ }
3586
+
3587
+ var profile = /*#__PURE__*/Object.freeze({
3588
+ __proto__: null,
3589
+ isMain: isMain$j,
3590
+ isRecord: isMain$j,
3591
+ validateMain: validateMain$j,
3592
+ validateRecord: validateMain$j
3593
+ });
3594
+
3595
+ const is$typed$k = is$typed$n, validate$k = validate$n;
3596
+ const id$k = 'app.certified.badge.award';
3597
+ const hashMain$i = 'main';
3598
+ function isMain$i(v) {
3599
+ return is$typed$k(v, id$k, hashMain$i);
3600
+ }
3601
+ function validateMain$i(v) {
3602
+ return validate$k(v, id$k, hashMain$i, true);
3603
+ }
3604
+
3605
+ var award = /*#__PURE__*/Object.freeze({
3606
+ __proto__: null,
3607
+ isMain: isMain$i,
3608
+ isRecord: isMain$i,
3609
+ validateMain: validateMain$i,
3610
+ validateRecord: validateMain$i
3611
+ });
3612
+
3613
+ const is$typed$j = is$typed$n, validate$j = validate$n;
3614
+ const id$j = 'app.certified.badge.definition';
3615
+ const hashMain$h = 'main';
3616
+ function isMain$h(v) {
3617
+ return is$typed$j(v, id$j, hashMain$h);
3618
+ }
3619
+ function validateMain$h(v) {
3620
+ return validate$j(v, id$j, hashMain$h, true);
3621
+ }
3622
+
3623
+ var definition = /*#__PURE__*/Object.freeze({
3624
+ __proto__: null,
3625
+ isMain: isMain$h,
3626
+ isRecord: isMain$h,
3627
+ validateMain: validateMain$h,
3628
+ validateRecord: validateMain$h
3629
+ });
3630
+
3631
+ const is$typed$i = is$typed$n, validate$i = validate$n;
3632
+ const id$i = 'app.certified.badge.response';
2702
3633
  const hashMain$g = 'main';
2703
3634
  function isMain$g(v) {
2704
3635
  return is$typed$i(v, id$i, hashMain$g);
@@ -2707,7 +3638,7 @@ function validateMain$g(v) {
2707
3638
  return validate$i(v, id$i, hashMain$g, true);
2708
3639
  }
2709
3640
 
2710
- var profile = /*#__PURE__*/Object.freeze({
3641
+ var response = /*#__PURE__*/Object.freeze({
2711
3642
  __proto__: null,
2712
3643
  isMain: isMain$g,
2713
3644
  isRecord: isMain$g,
@@ -2715,78 +3646,103 @@ var profile = /*#__PURE__*/Object.freeze({
2715
3646
  validateRecord: validateMain$g
2716
3647
  });
2717
3648
 
2718
- const is$typed$h = is$typed$j, validate$h = validate$j;
2719
- const id$h = 'app.certified.badge.award';
3649
+ const is$typed$h = is$typed$n, validate$h = validate$n;
3650
+ const id$h = 'app.certified.defs';
3651
+ const hashDid = 'did';
3652
+ function isDid(v) {
3653
+ return is$typed$h(v, id$h, hashDid);
3654
+ }
3655
+ function validateDid(v) {
3656
+ return validate$h(v, id$h, hashDid);
3657
+ }
3658
+
3659
+ var defs$1 = /*#__PURE__*/Object.freeze({
3660
+ __proto__: null,
3661
+ isDid: isDid,
3662
+ validateDid: validateDid
3663
+ });
3664
+
3665
+ const is$typed$g = is$typed$n, validate$g = validate$n;
3666
+ const id$g = 'app.certified.location';
2720
3667
  const hashMain$f = 'main';
2721
3668
  function isMain$f(v) {
2722
- return is$typed$h(v, id$h, hashMain$f);
3669
+ return is$typed$g(v, id$g, hashMain$f);
2723
3670
  }
2724
3671
  function validateMain$f(v) {
2725
- return validate$h(v, id$h, hashMain$f, true);
3672
+ return validate$g(v, id$g, hashMain$f, true);
3673
+ }
3674
+ const hashString = 'string';
3675
+ function isString(v) {
3676
+ return is$typed$g(v, id$g, hashString);
3677
+ }
3678
+ function validateString(v) {
3679
+ return validate$g(v, id$g, hashString);
2726
3680
  }
2727
3681
 
2728
- var award = /*#__PURE__*/Object.freeze({
3682
+ var location = /*#__PURE__*/Object.freeze({
2729
3683
  __proto__: null,
2730
3684
  isMain: isMain$f,
2731
3685
  isRecord: isMain$f,
3686
+ isString: isString,
2732
3687
  validateMain: validateMain$f,
2733
- validateRecord: validateMain$f
3688
+ validateRecord: validateMain$f,
3689
+ validateString: validateString
2734
3690
  });
2735
3691
 
2736
- const is$typed$g = is$typed$j, validate$g = validate$j;
2737
- const id$g = 'app.certified.badge.definition';
3692
+ const is$typed$f = is$typed$n, validate$f = validate$n;
3693
+ const id$f = 'com.atproto.repo.strongRef';
2738
3694
  const hashMain$e = 'main';
2739
3695
  function isMain$e(v) {
2740
- return is$typed$g(v, id$g, hashMain$e);
3696
+ return is$typed$f(v, id$f, hashMain$e);
2741
3697
  }
2742
3698
  function validateMain$e(v) {
2743
- return validate$g(v, id$g, hashMain$e, true);
3699
+ return validate$f(v, id$f, hashMain$e);
2744
3700
  }
2745
3701
 
2746
- var definition = /*#__PURE__*/Object.freeze({
3702
+ var strongRef = /*#__PURE__*/Object.freeze({
2747
3703
  __proto__: null,
2748
3704
  isMain: isMain$e,
2749
- isRecord: isMain$e,
2750
- validateMain: validateMain$e,
2751
- validateRecord: validateMain$e
3705
+ validateMain: validateMain$e
2752
3706
  });
2753
3707
 
2754
- const is$typed$f = is$typed$j, validate$f = validate$j;
2755
- const id$f = 'app.certified.badge.response';
3708
+ const is$typed$e = is$typed$n, validate$e = validate$n;
3709
+ const id$e = 'org.hyperboards.board';
2756
3710
  const hashMain$d = 'main';
2757
3711
  function isMain$d(v) {
2758
- return is$typed$f(v, id$f, hashMain$d);
3712
+ return is$typed$e(v, id$e, hashMain$d);
2759
3713
  }
2760
3714
  function validateMain$d(v) {
2761
- return validate$f(v, id$f, hashMain$d, true);
3715
+ return validate$e(v, id$e, hashMain$d, true);
3716
+ }
3717
+ const hashBoardConfig = 'boardConfig';
3718
+ function isBoardConfig(v) {
3719
+ return is$typed$e(v, id$e, hashBoardConfig);
3720
+ }
3721
+ function validateBoardConfig(v) {
3722
+ return validate$e(v, id$e, hashBoardConfig);
3723
+ }
3724
+ const hashContributorConfig = 'contributorConfig';
3725
+ function isContributorConfig(v) {
3726
+ return is$typed$e(v, id$e, hashContributorConfig);
3727
+ }
3728
+ function validateContributorConfig(v) {
3729
+ return validate$e(v, id$e, hashContributorConfig);
2762
3730
  }
2763
3731
 
2764
- var response = /*#__PURE__*/Object.freeze({
3732
+ var board = /*#__PURE__*/Object.freeze({
2765
3733
  __proto__: null,
3734
+ isBoardConfig: isBoardConfig,
3735
+ isContributorConfig: isContributorConfig,
2766
3736
  isMain: isMain$d,
2767
3737
  isRecord: isMain$d,
3738
+ validateBoardConfig: validateBoardConfig,
3739
+ validateContributorConfig: validateContributorConfig,
2768
3740
  validateMain: validateMain$d,
2769
3741
  validateRecord: validateMain$d
2770
3742
  });
2771
3743
 
2772
- const is$typed$e = is$typed$j, validate$e = validate$j;
2773
- const id$e = 'app.certified.defs';
2774
- const hashDid = 'did';
2775
- function isDid(v) {
2776
- return is$typed$e(v, id$e, hashDid);
2777
- }
2778
- function validateDid(v) {
2779
- return validate$e(v, id$e, hashDid);
2780
- }
2781
-
2782
- var defs$1 = /*#__PURE__*/Object.freeze({
2783
- __proto__: null,
2784
- isDid: isDid,
2785
- validateDid: validateDid
2786
- });
2787
-
2788
- const is$typed$d = is$typed$j, validate$d = validate$j;
2789
- const id$d = 'app.certified.location';
3744
+ const is$typed$d = is$typed$n, validate$d = validate$n;
3745
+ const id$d = 'org.hyperboards.displayProfile';
2790
3746
  const hashMain$c = 'main';
2791
3747
  function isMain$c(v) {
2792
3748
  return is$typed$d(v, id$d, hashMain$c);
@@ -2794,42 +3750,71 @@ function isMain$c(v) {
2794
3750
  function validateMain$c(v) {
2795
3751
  return validate$d(v, id$d, hashMain$c, true);
2796
3752
  }
2797
- const hashString = 'string';
2798
- function isString(v) {
2799
- return is$typed$d(v, id$d, hashString);
2800
- }
2801
- function validateString(v) {
2802
- return validate$d(v, id$d, hashString);
2803
- }
2804
3753
 
2805
- var location = /*#__PURE__*/Object.freeze({
3754
+ var displayProfile = /*#__PURE__*/Object.freeze({
2806
3755
  __proto__: null,
2807
3756
  isMain: isMain$c,
2808
3757
  isRecord: isMain$c,
2809
- isString: isString,
2810
3758
  validateMain: validateMain$c,
2811
- validateRecord: validateMain$c,
2812
- validateString: validateString
3759
+ validateRecord: validateMain$c
2813
3760
  });
2814
3761
 
2815
- const is$typed$c = is$typed$j, validate$c = validate$j;
2816
- const id$c = 'com.atproto.repo.strongRef';
3762
+ const is$typed$c = is$typed$n, validate$c = validate$n;
3763
+ const id$c = 'org.hypercerts.claim.activity';
2817
3764
  const hashMain$b = 'main';
2818
3765
  function isMain$b(v) {
2819
3766
  return is$typed$c(v, id$c, hashMain$b);
2820
3767
  }
2821
3768
  function validateMain$b(v) {
2822
- return validate$c(v, id$c, hashMain$b);
3769
+ return validate$c(v, id$c, hashMain$b, true);
3770
+ }
3771
+ const hashContributor = 'contributor';
3772
+ function isContributor(v) {
3773
+ return is$typed$c(v, id$c, hashContributor);
3774
+ }
3775
+ function validateContributor(v) {
3776
+ return validate$c(v, id$c, hashContributor);
3777
+ }
3778
+ const hashContributorIdentity = 'contributorIdentity';
3779
+ function isContributorIdentity(v) {
3780
+ return is$typed$c(v, id$c, hashContributorIdentity);
3781
+ }
3782
+ function validateContributorIdentity(v) {
3783
+ return validate$c(v, id$c, hashContributorIdentity);
3784
+ }
3785
+ const hashContributorRole = 'contributorRole';
3786
+ function isContributorRole(v) {
3787
+ return is$typed$c(v, id$c, hashContributorRole);
3788
+ }
3789
+ function validateContributorRole(v) {
3790
+ return validate$c(v, id$c, hashContributorRole);
3791
+ }
3792
+ const hashWorkScopeString = 'workScopeString';
3793
+ function isWorkScopeString(v) {
3794
+ return is$typed$c(v, id$c, hashWorkScopeString);
3795
+ }
3796
+ function validateWorkScopeString(v) {
3797
+ return validate$c(v, id$c, hashWorkScopeString);
2823
3798
  }
2824
3799
 
2825
- var strongRef = /*#__PURE__*/Object.freeze({
3800
+ var activity = /*#__PURE__*/Object.freeze({
2826
3801
  __proto__: null,
3802
+ isContributor: isContributor,
3803
+ isContributorIdentity: isContributorIdentity,
3804
+ isContributorRole: isContributorRole,
2827
3805
  isMain: isMain$b,
2828
- validateMain: validateMain$b
3806
+ isRecord: isMain$b,
3807
+ isWorkScopeString: isWorkScopeString,
3808
+ validateContributor: validateContributor,
3809
+ validateContributorIdentity: validateContributorIdentity,
3810
+ validateContributorRole: validateContributorRole,
3811
+ validateMain: validateMain$b,
3812
+ validateRecord: validateMain$b,
3813
+ validateWorkScopeString: validateWorkScopeString
2829
3814
  });
2830
3815
 
2831
- const is$typed$b = is$typed$j, validate$b = validate$j;
2832
- const id$b = 'org.hypercerts.acknowledgement';
3816
+ const is$typed$b = is$typed$n, validate$b = validate$n;
3817
+ const id$b = 'org.hypercerts.claim.contribution';
2833
3818
  const hashMain$a = 'main';
2834
3819
  function isMain$a(v) {
2835
3820
  return is$typed$b(v, id$b, hashMain$a);
@@ -2838,7 +3823,7 @@ function validateMain$a(v) {
2838
3823
  return validate$b(v, id$b, hashMain$a, true);
2839
3824
  }
2840
3825
 
2841
- var acknowledgement = /*#__PURE__*/Object.freeze({
3826
+ var contribution = /*#__PURE__*/Object.freeze({
2842
3827
  __proto__: null,
2843
3828
  isMain: isMain$a,
2844
3829
  isRecord: isMain$a,
@@ -2846,8 +3831,8 @@ var acknowledgement = /*#__PURE__*/Object.freeze({
2846
3831
  validateRecord: validateMain$a
2847
3832
  });
2848
3833
 
2849
- const is$typed$a = is$typed$j, validate$a = validate$j;
2850
- const id$a = 'org.hypercerts.claim.activity';
3834
+ const is$typed$a = is$typed$n, validate$a = validate$n;
3835
+ const id$a = 'org.hypercerts.claim.contributorInformation';
2851
3836
  const hashMain$9 = 'main';
2852
3837
  function isMain$9(v) {
2853
3838
  return is$typed$a(v, id$a, hashMain$9);
@@ -2855,53 +3840,17 @@ function isMain$9(v) {
2855
3840
  function validateMain$9(v) {
2856
3841
  return validate$a(v, id$a, hashMain$9, true);
2857
3842
  }
2858
- const hashContributor = 'contributor';
2859
- function isContributor(v) {
2860
- return is$typed$a(v, id$a, hashContributor);
2861
- }
2862
- function validateContributor(v) {
2863
- return validate$a(v, id$a, hashContributor);
2864
- }
2865
- const hashContributorIdentity = 'contributorIdentity';
2866
- function isContributorIdentity(v) {
2867
- return is$typed$a(v, id$a, hashContributorIdentity);
2868
- }
2869
- function validateContributorIdentity(v) {
2870
- return validate$a(v, id$a, hashContributorIdentity);
2871
- }
2872
- const hashContributorRole = 'contributorRole';
2873
- function isContributorRole(v) {
2874
- return is$typed$a(v, id$a, hashContributorRole);
2875
- }
2876
- function validateContributorRole(v) {
2877
- return validate$a(v, id$a, hashContributorRole);
2878
- }
2879
- const hashWorkScopeString = 'workScopeString';
2880
- function isWorkScopeString(v) {
2881
- return is$typed$a(v, id$a, hashWorkScopeString);
2882
- }
2883
- function validateWorkScopeString(v) {
2884
- return validate$a(v, id$a, hashWorkScopeString);
2885
- }
2886
3843
 
2887
- var activity = /*#__PURE__*/Object.freeze({
3844
+ var contributorInformation = /*#__PURE__*/Object.freeze({
2888
3845
  __proto__: null,
2889
- isContributor: isContributor,
2890
- isContributorIdentity: isContributorIdentity,
2891
- isContributorRole: isContributorRole,
2892
3846
  isMain: isMain$9,
2893
3847
  isRecord: isMain$9,
2894
- isWorkScopeString: isWorkScopeString,
2895
- validateContributor: validateContributor,
2896
- validateContributorIdentity: validateContributorIdentity,
2897
- validateContributorRole: validateContributorRole,
2898
3848
  validateMain: validateMain$9,
2899
- validateRecord: validateMain$9,
2900
- validateWorkScopeString: validateWorkScopeString
3849
+ validateRecord: validateMain$9
2901
3850
  });
2902
3851
 
2903
- const is$typed$9 = is$typed$j, validate$9 = validate$j;
2904
- const id$9 = 'org.hypercerts.claim.attachment';
3852
+ const is$typed$9 = is$typed$n, validate$9 = validate$n;
3853
+ const id$9 = 'org.hypercerts.claim.rights';
2905
3854
  const hashMain$8 = 'main';
2906
3855
  function isMain$8(v) {
2907
3856
  return is$typed$9(v, id$9, hashMain$8);
@@ -2910,7 +3859,7 @@ function validateMain$8(v) {
2910
3859
  return validate$9(v, id$9, hashMain$8, true);
2911
3860
  }
2912
3861
 
2913
- var attachment = /*#__PURE__*/Object.freeze({
3862
+ var rights = /*#__PURE__*/Object.freeze({
2914
3863
  __proto__: null,
2915
3864
  isMain: isMain$8,
2916
3865
  isRecord: isMain$8,
@@ -2918,8 +3867,8 @@ var attachment = /*#__PURE__*/Object.freeze({
2918
3867
  validateRecord: validateMain$8
2919
3868
  });
2920
3869
 
2921
- const is$typed$8 = is$typed$j, validate$8 = validate$j;
2922
- const id$8 = 'org.hypercerts.claim.collection';
3870
+ const is$typed$8 = is$typed$n, validate$8 = validate$n;
3871
+ const id$8 = 'org.hypercerts.collection';
2923
3872
  const hashMain$7 = 'main';
2924
3873
  function isMain$7(v) {
2925
3874
  return is$typed$8(v, id$8, hashMain$7);
@@ -2945,8 +3894,8 @@ var collection = /*#__PURE__*/Object.freeze({
2945
3894
  validateRecord: validateMain$7
2946
3895
  });
2947
3896
 
2948
- const is$typed$7 = is$typed$j, validate$7 = validate$j;
2949
- const id$7 = 'org.hypercerts.claim.contributionDetails';
3897
+ const is$typed$7 = is$typed$n, validate$7 = validate$n;
3898
+ const id$7 = 'org.hypercerts.context.acknowledgement';
2950
3899
  const hashMain$6 = 'main';
2951
3900
  function isMain$6(v) {
2952
3901
  return is$typed$7(v, id$7, hashMain$6);
@@ -2955,7 +3904,7 @@ function validateMain$6(v) {
2955
3904
  return validate$7(v, id$7, hashMain$6, true);
2956
3905
  }
2957
3906
 
2958
- var contributionDetails = /*#__PURE__*/Object.freeze({
3907
+ var acknowledgement = /*#__PURE__*/Object.freeze({
2959
3908
  __proto__: null,
2960
3909
  isMain: isMain$6,
2961
3910
  isRecord: isMain$6,
@@ -2963,8 +3912,8 @@ var contributionDetails = /*#__PURE__*/Object.freeze({
2963
3912
  validateRecord: validateMain$6
2964
3913
  });
2965
3914
 
2966
- const is$typed$6 = is$typed$j, validate$6 = validate$j;
2967
- const id$6 = 'org.hypercerts.claim.contributorInformation';
3915
+ const is$typed$6 = is$typed$n, validate$6 = validate$n;
3916
+ const id$6 = 'org.hypercerts.context.attachment';
2968
3917
  const hashMain$5 = 'main';
2969
3918
  function isMain$5(v) {
2970
3919
  return is$typed$6(v, id$6, hashMain$5);
@@ -2973,7 +3922,7 @@ function validateMain$5(v) {
2973
3922
  return validate$6(v, id$6, hashMain$5, true);
2974
3923
  }
2975
3924
 
2976
- var contributorInformation = /*#__PURE__*/Object.freeze({
3925
+ var attachment = /*#__PURE__*/Object.freeze({
2977
3926
  __proto__: null,
2978
3927
  isMain: isMain$5,
2979
3928
  isRecord: isMain$5,
@@ -2981,15 +3930,8 @@ var contributorInformation = /*#__PURE__*/Object.freeze({
2981
3930
  validateRecord: validateMain$5
2982
3931
  });
2983
3932
 
2984
- const is$typed$5 = is$typed$j, validate$5 = validate$j;
2985
- const id$5 = 'org.hypercerts.claim.evaluation';
2986
- const hashScore = 'score';
2987
- function isScore(v) {
2988
- return is$typed$5(v, id$5, hashScore);
2989
- }
2990
- function validateScore(v) {
2991
- return validate$5(v, id$5, hashScore);
2992
- }
3933
+ const is$typed$5 = is$typed$n, validate$5 = validate$n;
3934
+ const id$5 = 'org.hypercerts.context.evaluation';
2993
3935
  const hashMain$4 = 'main';
2994
3936
  function isMain$4(v) {
2995
3937
  return is$typed$5(v, id$5, hashMain$4);
@@ -2997,6 +3939,13 @@ function isMain$4(v) {
2997
3939
  function validateMain$4(v) {
2998
3940
  return validate$5(v, id$5, hashMain$4, true);
2999
3941
  }
3942
+ const hashScore = 'score';
3943
+ function isScore(v) {
3944
+ return is$typed$5(v, id$5, hashScore);
3945
+ }
3946
+ function validateScore(v) {
3947
+ return validate$5(v, id$5, hashScore);
3948
+ }
3000
3949
 
3001
3950
  var evaluation = /*#__PURE__*/Object.freeze({
3002
3951
  __proto__: null,
@@ -3008,8 +3957,8 @@ var evaluation = /*#__PURE__*/Object.freeze({
3008
3957
  validateScore: validateScore
3009
3958
  });
3010
3959
 
3011
- const is$typed$4 = is$typed$j, validate$4 = validate$j;
3012
- const id$4 = 'org.hypercerts.claim.measurement';
3960
+ const is$typed$4 = is$typed$n, validate$4 = validate$n;
3961
+ const id$4 = 'org.hypercerts.context.measurement';
3013
3962
  const hashMain$3 = 'main';
3014
3963
  function isMain$3(v) {
3015
3964
  return is$typed$4(v, id$4, hashMain$3);
@@ -3026,60 +3975,49 @@ var measurement = /*#__PURE__*/Object.freeze({
3026
3975
  validateRecord: validateMain$3
3027
3976
  });
3028
3977
 
3029
- const is$typed$3 = is$typed$j, validate$3 = validate$j;
3030
- const id$3 = 'org.hypercerts.claim.rights';
3031
- const hashMain$2 = 'main';
3032
- function isMain$2(v) {
3033
- return is$typed$3(v, id$3, hashMain$2);
3034
- }
3035
- function validateMain$2(v) {
3036
- return validate$3(v, id$3, hashMain$2, true);
3037
- }
3038
-
3039
- var rights = /*#__PURE__*/Object.freeze({
3040
- __proto__: null,
3041
- isMain: isMain$2,
3042
- isRecord: isMain$2,
3043
- validateMain: validateMain$2,
3044
- validateRecord: validateMain$2
3045
- });
3046
-
3047
- const is$typed$2 = is$typed$j, validate$2 = validate$j;
3048
- const id$2 = 'org.hypercerts.defs';
3978
+ const is$typed$3 = is$typed$n, validate$3 = validate$n;
3979
+ const id$3 = 'org.hypercerts.defs';
3049
3980
  const hashUri = 'uri';
3050
3981
  function isUri(v) {
3051
- return is$typed$2(v, id$2, hashUri);
3982
+ return is$typed$3(v, id$3, hashUri);
3052
3983
  }
3053
3984
  function validateUri(v) {
3054
- return validate$2(v, id$2, hashUri);
3985
+ return validate$3(v, id$3, hashUri);
3055
3986
  }
3056
3987
  const hashSmallBlob = 'smallBlob';
3057
3988
  function isSmallBlob(v) {
3058
- return is$typed$2(v, id$2, hashSmallBlob);
3989
+ return is$typed$3(v, id$3, hashSmallBlob);
3059
3990
  }
3060
3991
  function validateSmallBlob(v) {
3061
- return validate$2(v, id$2, hashSmallBlob);
3992
+ return validate$3(v, id$3, hashSmallBlob);
3062
3993
  }
3063
3994
  const hashLargeBlob = 'largeBlob';
3064
3995
  function isLargeBlob(v) {
3065
- return is$typed$2(v, id$2, hashLargeBlob);
3996
+ return is$typed$3(v, id$3, hashLargeBlob);
3066
3997
  }
3067
3998
  function validateLargeBlob(v) {
3068
- return validate$2(v, id$2, hashLargeBlob);
3999
+ return validate$3(v, id$3, hashLargeBlob);
3069
4000
  }
3070
4001
  const hashSmallImage = 'smallImage';
3071
4002
  function isSmallImage(v) {
3072
- return is$typed$2(v, id$2, hashSmallImage);
4003
+ return is$typed$3(v, id$3, hashSmallImage);
3073
4004
  }
3074
4005
  function validateSmallImage(v) {
3075
- return validate$2(v, id$2, hashSmallImage);
4006
+ return validate$3(v, id$3, hashSmallImage);
4007
+ }
4008
+ const hashSmallVideo = 'smallVideo';
4009
+ function isSmallVideo(v) {
4010
+ return is$typed$3(v, id$3, hashSmallVideo);
4011
+ }
4012
+ function validateSmallVideo(v) {
4013
+ return validate$3(v, id$3, hashSmallVideo);
3076
4014
  }
3077
4015
  const hashLargeImage = 'largeImage';
3078
4016
  function isLargeImage(v) {
3079
- return is$typed$2(v, id$2, hashLargeImage);
4017
+ return is$typed$3(v, id$3, hashLargeImage);
3080
4018
  }
3081
4019
  function validateLargeImage(v) {
3082
- return validate$2(v, id$2, hashLargeImage);
4020
+ return validate$3(v, id$3, hashLargeImage);
3083
4021
  }
3084
4022
 
3085
4023
  var defs = /*#__PURE__*/Object.freeze({
@@ -3088,34 +4026,52 @@ var defs = /*#__PURE__*/Object.freeze({
3088
4026
  isLargeImage: isLargeImage,
3089
4027
  isSmallBlob: isSmallBlob,
3090
4028
  isSmallImage: isSmallImage,
4029
+ isSmallVideo: isSmallVideo,
3091
4030
  isUri: isUri,
3092
4031
  validateLargeBlob: validateLargeBlob,
3093
4032
  validateLargeImage: validateLargeImage,
3094
4033
  validateSmallBlob: validateSmallBlob,
3095
4034
  validateSmallImage: validateSmallImage,
4035
+ validateSmallVideo: validateSmallVideo,
3096
4036
  validateUri: validateUri
3097
4037
  });
3098
4038
 
3099
- const is$typed$1 = is$typed$j, validate$1 = validate$j;
3100
- const id$1 = 'org.hypercerts.funding.receipt';
4039
+ const is$typed$2 = is$typed$n, validate$2 = validate$n;
4040
+ const id$2 = 'org.hypercerts.funding.receipt';
4041
+ const hashMain$2 = 'main';
4042
+ function isMain$2(v) {
4043
+ return is$typed$2(v, id$2, hashMain$2);
4044
+ }
4045
+ function validateMain$2(v) {
4046
+ return validate$2(v, id$2, hashMain$2, true);
4047
+ }
4048
+
4049
+ var receipt = /*#__PURE__*/Object.freeze({
4050
+ __proto__: null,
4051
+ isMain: isMain$2,
4052
+ isRecord: isMain$2,
4053
+ validateMain: validateMain$2,
4054
+ validateRecord: validateMain$2
4055
+ });
4056
+
4057
+ const is$typed$1 = is$typed$n, validate$1 = validate$n;
4058
+ const id$1 = 'org.hypercerts.workscope.cel';
3101
4059
  const hashMain$1 = 'main';
3102
4060
  function isMain$1(v) {
3103
4061
  return is$typed$1(v, id$1, hashMain$1);
3104
4062
  }
3105
4063
  function validateMain$1(v) {
3106
- return validate$1(v, id$1, hashMain$1, true);
4064
+ return validate$1(v, id$1, hashMain$1);
3107
4065
  }
3108
4066
 
3109
- var receipt = /*#__PURE__*/Object.freeze({
4067
+ var cel = /*#__PURE__*/Object.freeze({
3110
4068
  __proto__: null,
3111
4069
  isMain: isMain$1,
3112
- isRecord: isMain$1,
3113
- validateMain: validateMain$1,
3114
- validateRecord: validateMain$1
4070
+ validateMain: validateMain$1
3115
4071
  });
3116
4072
 
3117
- const is$typed = is$typed$j, validate = validate$j;
3118
- const id = 'org.hypercerts.helper.workScopeTag';
4073
+ const is$typed = is$typed$n, validate = validate$n;
4074
+ const id = 'org.hypercerts.workscope.tag';
3119
4075
  const hashMain = 'main';
3120
4076
  function isMain(v) {
3121
4077
  return is$typed(v, id, hashMain);
@@ -3124,7 +4080,7 @@ function validateMain(v) {
3124
4080
  return validate(v, id, hashMain, true);
3125
4081
  }
3126
4082
 
3127
- var workScopeTag = /*#__PURE__*/Object.freeze({
4083
+ var tag = /*#__PURE__*/Object.freeze({
3128
4084
  __proto__: null,
3129
4085
  isMain: isMain,
3130
4086
  isRecord: isMain,
@@ -3138,7 +4094,7 @@ var workScopeTag = /*#__PURE__*/Object.freeze({
3138
4094
  * ⚠️ DO NOT EDIT THIS FILE MANUALLY ⚠️
3139
4095
  *
3140
4096
  * This file is automatically generated by scripts/generate-exports.js
3141
- * Generated: 2026-02-12T03:41:04.097Z
4097
+ * Generated: 2026-03-02T17:51:18.002Z
3142
4098
  *
3143
4099
  * To regenerate this file, run:
3144
4100
  * npm run gen-api
@@ -3155,6 +4111,7 @@ var workScopeTag = /*#__PURE__*/Object.freeze({
3155
4111
  * @packageDocumentation
3156
4112
  */
3157
4113
  // Individual NSID constants
4114
+ const ACTOR_ORGANIZATION_NSID = "app.certified.actor.organization";
3158
4115
  const ACTOR_PROFILE_NSID = "app.certified.actor.profile";
3159
4116
  const BADGE_AWARD_NSID = "app.certified.badge.award";
3160
4117
  const BADGE_DEFINITION_NSID = "app.certified.badge.definition";
@@ -3162,18 +4119,21 @@ const BADGE_RESPONSE_NSID = "app.certified.badge.response";
3162
4119
  const CERTIFIED_DEFS_NSID = "app.certified.defs";
3163
4120
  const LOCATION_NSID = "app.certified.location";
3164
4121
  const STRONG_REF_NSID = "com.atproto.repo.strongRef";
3165
- const HYPERCERTS_ACKNOWLEDGEMENT_NSID = "org.hypercerts.acknowledgement";
4122
+ const HYPERBOARDS_BOARD_NSID = "org.hyperboards.board";
4123
+ const HYPERBOARDS_DISPLAY_PROFILE_NSID = "org.hyperboards.displayProfile";
3166
4124
  const ACTIVITY_NSID = "org.hypercerts.claim.activity";
3167
- const ATTACHMENT_NSID = "org.hypercerts.claim.attachment";
3168
- const COLLECTION_NSID = "org.hypercerts.claim.collection";
3169
- const CONTRIBUTION_DETAILS_NSID = "org.hypercerts.claim.contributionDetails";
4125
+ const CONTRIBUTION_NSID = "org.hypercerts.claim.contribution";
3170
4126
  const CONTRIBUTOR_INFORMATION_NSID = "org.hypercerts.claim.contributorInformation";
3171
- const EVALUATION_NSID = "org.hypercerts.claim.evaluation";
3172
- const MEASUREMENT_NSID = "org.hypercerts.claim.measurement";
3173
4127
  const RIGHTS_NSID = "org.hypercerts.claim.rights";
4128
+ const HYPERCERTS_COLLECTION_NSID = "org.hypercerts.collection";
4129
+ const CONTEXT_ACKNOWLEDGEMENT_NSID = "org.hypercerts.context.acknowledgement";
4130
+ const CONTEXT_ATTACHMENT_NSID = "org.hypercerts.context.attachment";
4131
+ const CONTEXT_EVALUATION_NSID = "org.hypercerts.context.evaluation";
4132
+ const CONTEXT_MEASUREMENT_NSID = "org.hypercerts.context.measurement";
3174
4133
  const HYPERCERTS_DEFS_NSID = "org.hypercerts.defs";
3175
4134
  const FUNDING_RECEIPT_NSID = "org.hypercerts.funding.receipt";
3176
- const WORK_SCOPE_TAG_NSID = "org.hypercerts.helper.workScopeTag";
4135
+ const WORKSCOPE_CEL_NSID = "org.hypercerts.workscope.cel";
4136
+ const WORKSCOPE_TAG_NSID = "org.hypercerts.workscope.tag";
3177
4137
  /**
3178
4138
  * Collection NSIDs organized by semantic record type.
3179
4139
  *
@@ -3181,6 +4141,7 @@ const WORK_SCOPE_TAG_NSID = "org.hypercerts.helper.workScopeTag";
3181
4141
  * correct collection names.
3182
4142
  */
3183
4143
  const HYPERCERTS_NSIDS = {
4144
+ ACTOR_ORGANIZATION: ACTOR_ORGANIZATION_NSID,
3184
4145
  ACTOR_PROFILE: ACTOR_PROFILE_NSID,
3185
4146
  BADGE_AWARD: BADGE_AWARD_NSID,
3186
4147
  BADGE_DEFINITION: BADGE_DEFINITION_NSID,
@@ -3188,23 +4149,27 @@ const HYPERCERTS_NSIDS = {
3188
4149
  CERTIFIED_DEFS: CERTIFIED_DEFS_NSID,
3189
4150
  LOCATION: LOCATION_NSID,
3190
4151
  STRONG_REF: STRONG_REF_NSID,
3191
- HYPERCERTS_ACKNOWLEDGEMENT: HYPERCERTS_ACKNOWLEDGEMENT_NSID,
4152
+ HYPERBOARDS_BOARD: HYPERBOARDS_BOARD_NSID,
4153
+ HYPERBOARDS_DISPLAY_PROFILE: HYPERBOARDS_DISPLAY_PROFILE_NSID,
3192
4154
  ACTIVITY: ACTIVITY_NSID,
3193
- ATTACHMENT: ATTACHMENT_NSID,
3194
- COLLECTION: COLLECTION_NSID,
3195
- CONTRIBUTION_DETAILS: CONTRIBUTION_DETAILS_NSID,
4155
+ CONTRIBUTION: CONTRIBUTION_NSID,
3196
4156
  CONTRIBUTOR_INFORMATION: CONTRIBUTOR_INFORMATION_NSID,
3197
- EVALUATION: EVALUATION_NSID,
3198
- MEASUREMENT: MEASUREMENT_NSID,
3199
4157
  RIGHTS: RIGHTS_NSID,
4158
+ HYPERCERTS_COLLECTION: HYPERCERTS_COLLECTION_NSID,
4159
+ CONTEXT_ACKNOWLEDGEMENT: CONTEXT_ACKNOWLEDGEMENT_NSID,
4160
+ CONTEXT_ATTACHMENT: CONTEXT_ATTACHMENT_NSID,
4161
+ CONTEXT_EVALUATION: CONTEXT_EVALUATION_NSID,
4162
+ CONTEXT_MEASUREMENT: CONTEXT_MEASUREMENT_NSID,
3200
4163
  HYPERCERTS_DEFS: HYPERCERTS_DEFS_NSID,
3201
4164
  FUNDING_RECEIPT: FUNDING_RECEIPT_NSID,
3202
- WORK_SCOPE_TAG: WORK_SCOPE_TAG_NSID,
4165
+ WORKSCOPE_CEL: WORKSCOPE_CEL_NSID,
4166
+ WORKSCOPE_TAG: WORKSCOPE_TAG_NSID,
3203
4167
  };
3204
4168
  /**
3205
4169
  * Lexicon JSON objects organized by semantic record type.
3206
4170
  */
3207
4171
  const HYPERCERTS_LEXICON_JSON = {
4172
+ ACTOR_ORGANIZATION: ACTOR_ORGANIZATION_LEXICON_JSON,
3208
4173
  ACTOR_PROFILE: ACTOR_PROFILE_LEXICON_JSON,
3209
4174
  BADGE_AWARD: BADGE_AWARD_LEXICON_JSON,
3210
4175
  BADGE_DEFINITION: BADGE_DEFINITION_LEXICON_JSON,
@@ -3212,20 +4177,24 @@ const HYPERCERTS_LEXICON_JSON = {
3212
4177
  CERTIFIED_DEFS: CERTIFIED_DEFS_LEXICON_JSON,
3213
4178
  LOCATION: LOCATION_LEXICON_JSON,
3214
4179
  STRONG_REF: STRONG_REF_LEXICON_JSON,
3215
- HYPERCERTS_ACKNOWLEDGEMENT: HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_JSON,
4180
+ HYPERBOARDS_BOARD: HYPERBOARDS_BOARD_LEXICON_JSON,
4181
+ HYPERBOARDS_DISPLAY_PROFILE: HYPERBOARDS_DISPLAY_PROFILE_LEXICON_JSON,
3216
4182
  ACTIVITY: ACTIVITY_LEXICON_JSON,
3217
- ATTACHMENT: ATTACHMENT_LEXICON_JSON,
3218
- COLLECTION: COLLECTION_LEXICON_JSON,
3219
- CONTRIBUTION_DETAILS: CONTRIBUTION_DETAILS_LEXICON_JSON,
4183
+ CONTRIBUTION: CONTRIBUTION_LEXICON_JSON,
3220
4184
  CONTRIBUTOR_INFORMATION: CONTRIBUTOR_INFORMATION_LEXICON_JSON,
3221
- EVALUATION: EVALUATION_LEXICON_JSON,
3222
- MEASUREMENT: MEASUREMENT_LEXICON_JSON,
3223
4185
  RIGHTS: RIGHTS_LEXICON_JSON,
4186
+ HYPERCERTS_COLLECTION: HYPERCERTS_COLLECTION_LEXICON_JSON,
4187
+ CONTEXT_ACKNOWLEDGEMENT: CONTEXT_ACKNOWLEDGEMENT_LEXICON_JSON,
4188
+ CONTEXT_ATTACHMENT: CONTEXT_ATTACHMENT_LEXICON_JSON,
4189
+ CONTEXT_EVALUATION: CONTEXT_EVALUATION_LEXICON_JSON,
4190
+ CONTEXT_MEASUREMENT: CONTEXT_MEASUREMENT_LEXICON_JSON,
3224
4191
  HYPERCERTS_DEFS: HYPERCERTS_DEFS_LEXICON_JSON,
3225
4192
  FUNDING_RECEIPT: FUNDING_RECEIPT_LEXICON_JSON,
3226
- WORK_SCOPE_TAG: WORK_SCOPE_TAG_LEXICON_JSON,
4193
+ WORKSCOPE_CEL: WORKSCOPE_CEL_LEXICON_JSON,
4194
+ WORKSCOPE_TAG: WORKSCOPE_TAG_LEXICON_JSON,
3227
4195
  };
3228
4196
  // Individual lexicon objects (from lexicons.get())
4197
+ const ACTOR_ORGANIZATION_LEXICON_DOC = lexicons.get(ACTOR_ORGANIZATION_NSID);
3229
4198
  const ACTOR_PROFILE_LEXICON_DOC = lexicons.get(ACTOR_PROFILE_NSID);
3230
4199
  const BADGE_AWARD_LEXICON_DOC = lexicons.get(BADGE_AWARD_NSID);
3231
4200
  const BADGE_DEFINITION_LEXICON_DOC = lexicons.get(BADGE_DEFINITION_NSID);
@@ -3233,22 +4202,26 @@ const BADGE_RESPONSE_LEXICON_DOC = lexicons.get(BADGE_RESPONSE_NSID);
3233
4202
  const CERTIFIED_DEFS_LEXICON_DOC = lexicons.get(CERTIFIED_DEFS_NSID);
3234
4203
  const LOCATION_LEXICON_DOC = lexicons.get(LOCATION_NSID);
3235
4204
  const STRONG_REF_LEXICON_DOC = lexicons.get(STRONG_REF_NSID);
3236
- const HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_DOC = lexicons.get(HYPERCERTS_ACKNOWLEDGEMENT_NSID);
4205
+ const HYPERBOARDS_BOARD_LEXICON_DOC = lexicons.get(HYPERBOARDS_BOARD_NSID);
4206
+ const HYPERBOARDS_DISPLAY_PROFILE_LEXICON_DOC = lexicons.get(HYPERBOARDS_DISPLAY_PROFILE_NSID);
3237
4207
  const ACTIVITY_LEXICON_DOC = lexicons.get(ACTIVITY_NSID);
3238
- const ATTACHMENT_LEXICON_DOC = lexicons.get(ATTACHMENT_NSID);
3239
- const COLLECTION_LEXICON_DOC = lexicons.get(COLLECTION_NSID);
3240
- const CONTRIBUTION_DETAILS_LEXICON_DOC = lexicons.get(CONTRIBUTION_DETAILS_NSID);
4208
+ const CONTRIBUTION_LEXICON_DOC = lexicons.get(CONTRIBUTION_NSID);
3241
4209
  const CONTRIBUTOR_INFORMATION_LEXICON_DOC = lexicons.get(CONTRIBUTOR_INFORMATION_NSID);
3242
- const EVALUATION_LEXICON_DOC = lexicons.get(EVALUATION_NSID);
3243
- const MEASUREMENT_LEXICON_DOC = lexicons.get(MEASUREMENT_NSID);
3244
4210
  const RIGHTS_LEXICON_DOC = lexicons.get(RIGHTS_NSID);
4211
+ const HYPERCERTS_COLLECTION_LEXICON_DOC = lexicons.get(HYPERCERTS_COLLECTION_NSID);
4212
+ const CONTEXT_ACKNOWLEDGEMENT_LEXICON_DOC = lexicons.get(CONTEXT_ACKNOWLEDGEMENT_NSID);
4213
+ const CONTEXT_ATTACHMENT_LEXICON_DOC = lexicons.get(CONTEXT_ATTACHMENT_NSID);
4214
+ const CONTEXT_EVALUATION_LEXICON_DOC = lexicons.get(CONTEXT_EVALUATION_NSID);
4215
+ const CONTEXT_MEASUREMENT_LEXICON_DOC = lexicons.get(CONTEXT_MEASUREMENT_NSID);
3245
4216
  const HYPERCERTS_DEFS_LEXICON_DOC = lexicons.get(HYPERCERTS_DEFS_NSID);
3246
4217
  const FUNDING_RECEIPT_LEXICON_DOC = lexicons.get(FUNDING_RECEIPT_NSID);
3247
- const WORK_SCOPE_TAG_LEXICON_DOC = lexicons.get(WORK_SCOPE_TAG_NSID);
4218
+ const WORKSCOPE_CEL_LEXICON_DOC = lexicons.get(WORKSCOPE_CEL_NSID);
4219
+ const WORKSCOPE_TAG_LEXICON_DOC = lexicons.get(WORKSCOPE_TAG_NSID);
3248
4220
  /**
3249
4221
  * Lexicon document objects organized by semantic record type.
3250
4222
  */
3251
4223
  const HYPERCERTS_LEXICON_DOC = {
4224
+ ACTOR_ORGANIZATION: ACTOR_ORGANIZATION_LEXICON_DOC,
3252
4225
  ACTOR_PROFILE: ACTOR_PROFILE_LEXICON_DOC,
3253
4226
  BADGE_AWARD: BADGE_AWARD_LEXICON_DOC,
3254
4227
  BADGE_DEFINITION: BADGE_DEFINITION_LEXICON_DOC,
@@ -3256,29 +4229,33 @@ const HYPERCERTS_LEXICON_DOC = {
3256
4229
  CERTIFIED_DEFS: CERTIFIED_DEFS_LEXICON_DOC,
3257
4230
  LOCATION: LOCATION_LEXICON_DOC,
3258
4231
  STRONG_REF: STRONG_REF_LEXICON_DOC,
3259
- HYPERCERTS_ACKNOWLEDGEMENT: HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_DOC,
4232
+ HYPERBOARDS_BOARD: HYPERBOARDS_BOARD_LEXICON_DOC,
4233
+ HYPERBOARDS_DISPLAY_PROFILE: HYPERBOARDS_DISPLAY_PROFILE_LEXICON_DOC,
3260
4234
  ACTIVITY: ACTIVITY_LEXICON_DOC,
3261
- ATTACHMENT: ATTACHMENT_LEXICON_DOC,
3262
- COLLECTION: COLLECTION_LEXICON_DOC,
3263
- CONTRIBUTION_DETAILS: CONTRIBUTION_DETAILS_LEXICON_DOC,
4235
+ CONTRIBUTION: CONTRIBUTION_LEXICON_DOC,
3264
4236
  CONTRIBUTOR_INFORMATION: CONTRIBUTOR_INFORMATION_LEXICON_DOC,
3265
- EVALUATION: EVALUATION_LEXICON_DOC,
3266
- MEASUREMENT: MEASUREMENT_LEXICON_DOC,
3267
4237
  RIGHTS: RIGHTS_LEXICON_DOC,
4238
+ HYPERCERTS_COLLECTION: HYPERCERTS_COLLECTION_LEXICON_DOC,
4239
+ CONTEXT_ACKNOWLEDGEMENT: CONTEXT_ACKNOWLEDGEMENT_LEXICON_DOC,
4240
+ CONTEXT_ATTACHMENT: CONTEXT_ATTACHMENT_LEXICON_DOC,
4241
+ CONTEXT_EVALUATION: CONTEXT_EVALUATION_LEXICON_DOC,
4242
+ CONTEXT_MEASUREMENT: CONTEXT_MEASUREMENT_LEXICON_DOC,
3268
4243
  HYPERCERTS_DEFS: HYPERCERTS_DEFS_LEXICON_DOC,
3269
4244
  FUNDING_RECEIPT: FUNDING_RECEIPT_LEXICON_DOC,
3270
- WORK_SCOPE_TAG: WORK_SCOPE_TAG_LEXICON_DOC,
4245
+ WORKSCOPE_CEL: WORKSCOPE_CEL_LEXICON_DOC,
4246
+ WORKSCOPE_TAG: WORKSCOPE_TAG_LEXICON_DOC,
3271
4247
  };
3272
4248
 
3273
4249
  exports.ACTIVITY_LEXICON_DOC = ACTIVITY_LEXICON_DOC;
3274
4250
  exports.ACTIVITY_LEXICON_JSON = ACTIVITY_LEXICON_JSON;
3275
4251
  exports.ACTIVITY_NSID = ACTIVITY_NSID;
4252
+ exports.ACTOR_ORGANIZATION_LEXICON_DOC = ACTOR_ORGANIZATION_LEXICON_DOC;
4253
+ exports.ACTOR_ORGANIZATION_LEXICON_JSON = ACTOR_ORGANIZATION_LEXICON_JSON;
4254
+ exports.ACTOR_ORGANIZATION_NSID = ACTOR_ORGANIZATION_NSID;
3276
4255
  exports.ACTOR_PROFILE_LEXICON_DOC = ACTOR_PROFILE_LEXICON_DOC;
3277
4256
  exports.ACTOR_PROFILE_LEXICON_JSON = ACTOR_PROFILE_LEXICON_JSON;
3278
4257
  exports.ACTOR_PROFILE_NSID = ACTOR_PROFILE_NSID;
3279
- exports.ATTACHMENT_LEXICON_DOC = ATTACHMENT_LEXICON_DOC;
3280
- exports.ATTACHMENT_LEXICON_JSON = ATTACHMENT_LEXICON_JSON;
3281
- exports.ATTACHMENT_NSID = ATTACHMENT_NSID;
4258
+ exports.AppCertifiedActorOrganization = organization;
3282
4259
  exports.AppCertifiedActorProfile = profile;
3283
4260
  exports.AppCertifiedBadgeAward = award;
3284
4261
  exports.AppCertifiedBadgeDefinition = definition;
@@ -3297,25 +4274,37 @@ exports.BADGE_RESPONSE_NSID = BADGE_RESPONSE_NSID;
3297
4274
  exports.CERTIFIED_DEFS_LEXICON_DOC = CERTIFIED_DEFS_LEXICON_DOC;
3298
4275
  exports.CERTIFIED_DEFS_LEXICON_JSON = CERTIFIED_DEFS_LEXICON_JSON;
3299
4276
  exports.CERTIFIED_DEFS_NSID = CERTIFIED_DEFS_NSID;
3300
- exports.COLLECTION_LEXICON_DOC = COLLECTION_LEXICON_DOC;
3301
- exports.COLLECTION_LEXICON_JSON = COLLECTION_LEXICON_JSON;
3302
- exports.COLLECTION_NSID = COLLECTION_NSID;
3303
- exports.CONTRIBUTION_DETAILS_LEXICON_DOC = CONTRIBUTION_DETAILS_LEXICON_DOC;
3304
- exports.CONTRIBUTION_DETAILS_LEXICON_JSON = CONTRIBUTION_DETAILS_LEXICON_JSON;
3305
- exports.CONTRIBUTION_DETAILS_NSID = CONTRIBUTION_DETAILS_NSID;
4277
+ exports.CONTEXT_ACKNOWLEDGEMENT_LEXICON_DOC = CONTEXT_ACKNOWLEDGEMENT_LEXICON_DOC;
4278
+ exports.CONTEXT_ACKNOWLEDGEMENT_LEXICON_JSON = CONTEXT_ACKNOWLEDGEMENT_LEXICON_JSON;
4279
+ exports.CONTEXT_ACKNOWLEDGEMENT_NSID = CONTEXT_ACKNOWLEDGEMENT_NSID;
4280
+ exports.CONTEXT_ATTACHMENT_LEXICON_DOC = CONTEXT_ATTACHMENT_LEXICON_DOC;
4281
+ exports.CONTEXT_ATTACHMENT_LEXICON_JSON = CONTEXT_ATTACHMENT_LEXICON_JSON;
4282
+ exports.CONTEXT_ATTACHMENT_NSID = CONTEXT_ATTACHMENT_NSID;
4283
+ exports.CONTEXT_EVALUATION_LEXICON_DOC = CONTEXT_EVALUATION_LEXICON_DOC;
4284
+ exports.CONTEXT_EVALUATION_LEXICON_JSON = CONTEXT_EVALUATION_LEXICON_JSON;
4285
+ exports.CONTEXT_EVALUATION_NSID = CONTEXT_EVALUATION_NSID;
4286
+ exports.CONTEXT_MEASUREMENT_LEXICON_DOC = CONTEXT_MEASUREMENT_LEXICON_DOC;
4287
+ exports.CONTEXT_MEASUREMENT_LEXICON_JSON = CONTEXT_MEASUREMENT_LEXICON_JSON;
4288
+ exports.CONTEXT_MEASUREMENT_NSID = CONTEXT_MEASUREMENT_NSID;
4289
+ exports.CONTRIBUTION_LEXICON_DOC = CONTRIBUTION_LEXICON_DOC;
4290
+ exports.CONTRIBUTION_LEXICON_JSON = CONTRIBUTION_LEXICON_JSON;
4291
+ exports.CONTRIBUTION_NSID = CONTRIBUTION_NSID;
3306
4292
  exports.CONTRIBUTOR_INFORMATION_LEXICON_DOC = CONTRIBUTOR_INFORMATION_LEXICON_DOC;
3307
4293
  exports.CONTRIBUTOR_INFORMATION_LEXICON_JSON = CONTRIBUTOR_INFORMATION_LEXICON_JSON;
3308
4294
  exports.CONTRIBUTOR_INFORMATION_NSID = CONTRIBUTOR_INFORMATION_NSID;
3309
4295
  exports.ComAtprotoRepoStrongRef = strongRef;
3310
- exports.EVALUATION_LEXICON_DOC = EVALUATION_LEXICON_DOC;
3311
- exports.EVALUATION_LEXICON_JSON = EVALUATION_LEXICON_JSON;
3312
- exports.EVALUATION_NSID = EVALUATION_NSID;
3313
4296
  exports.FUNDING_RECEIPT_LEXICON_DOC = FUNDING_RECEIPT_LEXICON_DOC;
3314
4297
  exports.FUNDING_RECEIPT_LEXICON_JSON = FUNDING_RECEIPT_LEXICON_JSON;
3315
4298
  exports.FUNDING_RECEIPT_NSID = FUNDING_RECEIPT_NSID;
3316
- exports.HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_DOC = HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_DOC;
3317
- exports.HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_JSON = HYPERCERTS_ACKNOWLEDGEMENT_LEXICON_JSON;
3318
- exports.HYPERCERTS_ACKNOWLEDGEMENT_NSID = HYPERCERTS_ACKNOWLEDGEMENT_NSID;
4299
+ exports.HYPERBOARDS_BOARD_LEXICON_DOC = HYPERBOARDS_BOARD_LEXICON_DOC;
4300
+ exports.HYPERBOARDS_BOARD_LEXICON_JSON = HYPERBOARDS_BOARD_LEXICON_JSON;
4301
+ exports.HYPERBOARDS_BOARD_NSID = HYPERBOARDS_BOARD_NSID;
4302
+ exports.HYPERBOARDS_DISPLAY_PROFILE_LEXICON_DOC = HYPERBOARDS_DISPLAY_PROFILE_LEXICON_DOC;
4303
+ exports.HYPERBOARDS_DISPLAY_PROFILE_LEXICON_JSON = HYPERBOARDS_DISPLAY_PROFILE_LEXICON_JSON;
4304
+ exports.HYPERBOARDS_DISPLAY_PROFILE_NSID = HYPERBOARDS_DISPLAY_PROFILE_NSID;
4305
+ exports.HYPERCERTS_COLLECTION_LEXICON_DOC = HYPERCERTS_COLLECTION_LEXICON_DOC;
4306
+ exports.HYPERCERTS_COLLECTION_LEXICON_JSON = HYPERCERTS_COLLECTION_LEXICON_JSON;
4307
+ exports.HYPERCERTS_COLLECTION_NSID = HYPERCERTS_COLLECTION_NSID;
3319
4308
  exports.HYPERCERTS_DEFS_LEXICON_DOC = HYPERCERTS_DEFS_LEXICON_DOC;
3320
4309
  exports.HYPERCERTS_DEFS_LEXICON_JSON = HYPERCERTS_DEFS_LEXICON_JSON;
3321
4310
  exports.HYPERCERTS_DEFS_NSID = HYPERCERTS_DEFS_NSID;
@@ -3328,33 +4317,36 @@ exports.HYPERCERTS_SCHEMA_DICT = schemaDict;
3328
4317
  exports.LOCATION_LEXICON_DOC = LOCATION_LEXICON_DOC;
3329
4318
  exports.LOCATION_LEXICON_JSON = LOCATION_LEXICON_JSON;
3330
4319
  exports.LOCATION_NSID = LOCATION_NSID;
3331
- exports.MEASUREMENT_LEXICON_DOC = MEASUREMENT_LEXICON_DOC;
3332
- exports.MEASUREMENT_LEXICON_JSON = MEASUREMENT_LEXICON_JSON;
3333
- exports.MEASUREMENT_NSID = MEASUREMENT_NSID;
3334
- exports.OrgHypercertsAcknowledgement = acknowledgement;
4320
+ exports.OrgHyperboardsBoard = board;
4321
+ exports.OrgHyperboardsDisplayProfile = displayProfile;
3335
4322
  exports.OrgHypercertsClaimActivity = activity;
3336
- exports.OrgHypercertsClaimAttachment = attachment;
3337
- exports.OrgHypercertsClaimCollection = collection;
3338
- exports.OrgHypercertsClaimContributionDetails = contributionDetails;
4323
+ exports.OrgHypercertsClaimContribution = contribution;
3339
4324
  exports.OrgHypercertsClaimContributorInformation = contributorInformation;
3340
- exports.OrgHypercertsClaimEvaluation = evaluation;
3341
- exports.OrgHypercertsClaimMeasurement = measurement;
3342
4325
  exports.OrgHypercertsClaimRights = rights;
4326
+ exports.OrgHypercertsCollection = collection;
4327
+ exports.OrgHypercertsContextAcknowledgement = acknowledgement;
4328
+ exports.OrgHypercertsContextAttachment = attachment;
4329
+ exports.OrgHypercertsContextEvaluation = evaluation;
4330
+ exports.OrgHypercertsContextMeasurement = measurement;
3343
4331
  exports.OrgHypercertsDefs = defs;
3344
4332
  exports.OrgHypercertsFundingReceipt = receipt;
3345
- exports.OrgHypercertsHelperWorkScopeTag = workScopeTag;
4333
+ exports.OrgHypercertsWorkscopeCel = cel;
4334
+ exports.OrgHypercertsWorkscopeTag = tag;
3346
4335
  exports.RIGHTS_LEXICON_DOC = RIGHTS_LEXICON_DOC;
3347
4336
  exports.RIGHTS_LEXICON_JSON = RIGHTS_LEXICON_JSON;
3348
4337
  exports.RIGHTS_NSID = RIGHTS_NSID;
3349
4338
  exports.STRONG_REF_LEXICON_DOC = STRONG_REF_LEXICON_DOC;
3350
4339
  exports.STRONG_REF_LEXICON_JSON = STRONG_REF_LEXICON_JSON;
3351
4340
  exports.STRONG_REF_NSID = STRONG_REF_NSID;
3352
- exports.WORK_SCOPE_TAG_LEXICON_DOC = WORK_SCOPE_TAG_LEXICON_DOC;
3353
- exports.WORK_SCOPE_TAG_LEXICON_JSON = WORK_SCOPE_TAG_LEXICON_JSON;
3354
- exports.WORK_SCOPE_TAG_NSID = WORK_SCOPE_TAG_NSID;
4341
+ exports.WORKSCOPE_CEL_LEXICON_DOC = WORKSCOPE_CEL_LEXICON_DOC;
4342
+ exports.WORKSCOPE_CEL_LEXICON_JSON = WORKSCOPE_CEL_LEXICON_JSON;
4343
+ exports.WORKSCOPE_CEL_NSID = WORKSCOPE_CEL_NSID;
4344
+ exports.WORKSCOPE_TAG_LEXICON_DOC = WORKSCOPE_TAG_LEXICON_DOC;
4345
+ exports.WORKSCOPE_TAG_LEXICON_JSON = WORKSCOPE_TAG_LEXICON_JSON;
4346
+ exports.WORKSCOPE_TAG_NSID = WORKSCOPE_TAG_NSID;
3355
4347
  exports.asPredicate = asPredicate;
3356
- exports.is$typed = is$typed$j;
4348
+ exports.is$typed = is$typed$n;
3357
4349
  exports.lexicons = lexicons;
3358
4350
  exports.maybe$typed = maybe$typed;
3359
- exports.validate = validate$j;
4351
+ exports.validate = validate$n;
3360
4352
  //# sourceMappingURL=index.cjs.map