@rathnasgala2/schemas 3.31.0 → 3.32.1

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 (45) hide show
  1. package/THIRD_PARTY_LICENSES.json +1 -1
  2. package/diagnostics/diagnostic-map.json +119 -0
  3. package/docs/catalogs/schema-inventory.json +7 -7
  4. package/examples/valid/build-input/rules.json +126 -0
  5. package/examples/valid/interactions-config/rules.json +10 -0
  6. package/examples/valid/publication/rules.json +86 -0
  7. package/fixtures/boundary/build-input/rules.json +176 -0
  8. package/fixtures/boundary/interactions-config/rules.json +10 -0
  9. package/fixtures/boundary/publication/rules.json +132 -0
  10. package/fixtures/invalid/build-input/GRAPHEME_LENGTH_INVALID/cases.json +33 -0
  11. package/fixtures/invalid/build-input/REQUEST_FIELD_UNKNOWN/cases.json +30 -0
  12. package/fixtures/invalid/build-input/SCHEMA_ARRAY_DUPLICATE/cases.json +11 -0
  13. package/fixtures/invalid/build-input/SCHEMA_ARRAY_TOO_LONG/cases.json +15 -0
  14. package/fixtures/invalid/build-input/SCHEMA_ENUM_INVALID/cases.json +11 -0
  15. package/fixtures/invalid/build-input/SCHEMA_NUMBER_TOO_LARGE/cases.json +11 -0
  16. package/fixtures/invalid/build-input/SCHEMA_PATTERN_INVALID/cases.json +22 -0
  17. package/fixtures/invalid/build-input/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +51 -0
  18. package/fixtures/invalid/build-input/SCHEMA_TYPE_INVALID/cases.json +53 -0
  19. package/fixtures/invalid/interactions-config/SCHEMA_TYPE_INVALID/cases.json +11 -0
  20. package/fixtures/invalid/publication/GRAPHEME_LENGTH_INVALID/cases.json +33 -0
  21. package/fixtures/invalid/publication/REQUEST_FIELD_UNKNOWN/cases.json +30 -0
  22. package/fixtures/invalid/publication/SCHEMA_ARRAY_DUPLICATE/cases.json +9 -0
  23. package/fixtures/invalid/publication/SCHEMA_ARRAY_TOO_LONG/cases.json +13 -0
  24. package/fixtures/invalid/publication/SCHEMA_PATTERN_INVALID/cases.json +22 -0
  25. package/fixtures/invalid/publication/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +40 -0
  26. package/fixtures/invalid/publication/SCHEMA_TYPE_INVALID/cases.json +40 -0
  27. package/fixtures/manifest.json +943 -8
  28. package/fixtures/unknown-field/build-input/rules.json +50 -0
  29. package/fixtures/unknown-field/interactions-config/rules.json +1 -0
  30. package/fixtures/unknown-field/publication/rules.json +46 -0
  31. package/generated/browser/validator-core.mjs +3 -3
  32. package/generated/typescript/contracts/artifact-manifest.d.ts +4 -2
  33. package/generated/typescript/contracts/build-input.d.ts +16 -1
  34. package/generated/typescript/contracts/build-provenance.d.ts +4 -2
  35. package/generated/typescript/contracts/interactions-config.d.ts +1 -0
  36. package/generated/typescript/contracts/publication.d.ts +13 -0
  37. package/openapi/http-catalog.json +80 -2
  38. package/openapi/openapi.yaml +1753 -250
  39. package/package.json +1 -1
  40. package/sbom.cdx.json +23 -23
  41. package/schemas/artifact-manifest.schema.json +4 -2
  42. package/schemas/build-input.schema.json +64 -3
  43. package/schemas/build-provenance.schema.json +4 -2
  44. package/schemas/interactions-config.schema.json +6 -1
  45. package/schemas/publication.schema.json +48 -0
@@ -76,6 +76,21 @@
76
76
  "sourceDigest": "sha256:0000000000000000000000000000000000000000000000000000000000000001"
77
77
  }
78
78
  },
79
+ {
80
+ "caseId": "build-input-boundary-05320b59c9ab2755",
81
+ "coveredRuleIds": [
82
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome/properties/body:x-gala-graphemeLength"
83
+ ],
84
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
85
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/body",
86
+ "keyword": "x-gala-graphemeLength",
87
+ "recipe": {
88
+ "kind": "schema-string-boundary",
89
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/body",
90
+ "length": 2000,
91
+ "direction": "maximum"
92
+ }
93
+ },
79
94
  {
80
95
  "caseId": "build-input-boundary-05c61c29d8f8ed0c",
81
96
  "coveredRuleIds": ["build-input:#/$defs/newsletter:oneOf"],
@@ -486,6 +501,16 @@
486
501
  "length": 1
487
502
  }
488
503
  },
504
+ {
505
+ "caseId": "build-input-boundary-15b94cccbfdacb28",
506
+ "coveredRuleIds": [
507
+ "build-input:#/$defs/contentBuildMediaFile/allOf/3/if:required:mediaType"
508
+ ],
509
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
510
+ "schemaPointer": "#/$defs/contentBuildMediaFile/allOf/3/if",
511
+ "keyword": "required",
512
+ "instance": { "mediaType": "application/pdf" }
513
+ },
489
514
  {
490
515
  "caseId": "build-input-boundary-16a8752631bc126a",
491
516
  "coveredRuleIds": [
@@ -899,6 +924,16 @@
899
924
  "keyword": "pattern",
900
925
  "instance": "G-ABC123XYZ"
901
926
  },
927
+ {
928
+ "caseId": "build-input-boundary-27525c9dc28c78a9",
929
+ "coveredRuleIds": [
930
+ "build-input:#/$defs/contentBuildMediaFile/allOf/3/then/properties/byteLength:maximum"
931
+ ],
932
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
933
+ "schemaPointer": "#/$defs/contentBuildMediaFile/allOf/3/then/properties/byteLength",
934
+ "keyword": "maximum",
935
+ "instance": 10485760
936
+ },
902
937
  {
903
938
  "caseId": "build-input-boundary-293ccca9525d626b",
904
939
  "coveredRuleIds": [
@@ -1070,6 +1105,21 @@
1070
1105
  "keyword": "enum",
1071
1106
  "instance": "audio/mpeg"
1072
1107
  },
1108
+ {
1109
+ "caseId": "build-input-boundary-2cea25981bcbdc1b",
1110
+ "coveredRuleIds": [
1111
+ "build-input:#/$defs/recommendation/properties/description:x-gala-graphemeLength"
1112
+ ],
1113
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
1114
+ "schemaPointer": "#/$defs/recommendation/properties/description",
1115
+ "keyword": "x-gala-graphemeLength",
1116
+ "recipe": {
1117
+ "kind": "schema-string-boundary",
1118
+ "schemaPointer": "#/$defs/recommendation/properties/description",
1119
+ "length": 300,
1120
+ "direction": "maximum"
1121
+ }
1122
+ },
1073
1123
  {
1074
1124
  "caseId": "build-input-boundary-2de6fc1a672ead33",
1075
1125
  "coveredRuleIds": [
@@ -1493,6 +1543,21 @@
1493
1543
  "keyword": "const",
1494
1544
  "instance": "system"
1495
1545
  },
1546
+ {
1547
+ "caseId": "build-input-boundary-41ca28be30bc001a",
1548
+ "coveredRuleIds": [
1549
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject:x-gala-graphemeLength"
1550
+ ],
1551
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
1552
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
1553
+ "keyword": "x-gala-graphemeLength",
1554
+ "recipe": {
1555
+ "kind": "schema-string-boundary",
1556
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
1557
+ "length": 120,
1558
+ "direction": "maximum"
1559
+ }
1560
+ },
1496
1561
  {
1497
1562
  "caseId": "build-input-boundary-426314f493aebbf8",
1498
1563
  "coveredRuleIds": [
@@ -2051,6 +2116,19 @@
2051
2116
  "keyword": "enum",
2052
2117
  "instance": "conversation"
2053
2118
  },
2119
+ {
2120
+ "caseId": "build-input-boundary-60301448c2acb781",
2121
+ "coveredRuleIds": [
2122
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:type",
2123
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:uniqueItems"
2124
+ ],
2125
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
2126
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
2127
+ "keyword": "type",
2128
+ "instance": [
2129
+ { "url": "https://fixture-1.example.com/", "title": "fixture-1" }
2130
+ ]
2131
+ },
2054
2132
  {
2055
2133
  "caseId": "build-input-boundary-626f222d5c22b718",
2056
2134
  "coveredRuleIds": [
@@ -2908,6 +2986,20 @@
2908
2986
  "keyword": "type",
2909
2987
  "instance": false
2910
2988
  },
2989
+ {
2990
+ "caseId": "build-input-boundary-8ef7251d04987018",
2991
+ "coveredRuleIds": [
2992
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:maxItems"
2993
+ ],
2994
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
2995
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
2996
+ "keyword": "maxItems",
2997
+ "recipe": {
2998
+ "kind": "schema-array-boundary",
2999
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
3000
+ "length": 24
3001
+ }
3002
+ },
2911
3003
  {
2912
3004
  "caseId": "build-input-boundary-90e44c18c023670a",
2913
3005
  "coveredRuleIds": [
@@ -2923,6 +3015,22 @@
2923
3015
  "direction": "maximum"
2924
3016
  }
2925
3017
  },
3018
+ {
3019
+ "caseId": "build-input-boundary-90ec8d94a65d9880",
3020
+ "coveredRuleIds": [
3021
+ "build-input:#/$defs/recommendation:additionalProperties",
3022
+ "build-input:#/$defs/recommendation:required:title",
3023
+ "build-input:#/$defs/recommendation:required:url",
3024
+ "build-input:#/$defs/recommendation:type"
3025
+ ],
3026
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
3027
+ "schemaPointer": "#/$defs/recommendation",
3028
+ "keyword": "additionalProperties",
3029
+ "instance": {
3030
+ "url": "https://fixture-1.example.com/",
3031
+ "title": "fixture-1"
3032
+ }
3033
+ },
2926
3034
  {
2927
3035
  "caseId": "build-input-boundary-917545a304916bd2",
2928
3036
  "coveredRuleIds": [
@@ -3167,6 +3275,16 @@
3167
3275
  "keyword": "const",
3168
3276
  "instance": "dark"
3169
3277
  },
3278
+ {
3279
+ "caseId": "build-input-boundary-9ce65804882e65ce",
3280
+ "coveredRuleIds": [
3281
+ "build-input:#/$defs/interactionsConfig/properties/comments/properties/likes:type"
3282
+ ],
3283
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
3284
+ "schemaPointer": "#/$defs/interactionsConfig/properties/comments/properties/likes",
3285
+ "keyword": "type",
3286
+ "instance": false
3287
+ },
3170
3288
  {
3171
3289
  "caseId": "build-input-boundary-9d95f306f1b60403",
3172
3290
  "coveredRuleIds": [
@@ -3226,6 +3344,16 @@
3226
3344
  "length": 200
3227
3345
  }
3228
3346
  },
3347
+ {
3348
+ "caseId": "build-input-boundary-a1294c333f235c24",
3349
+ "coveredRuleIds": [
3350
+ "build-input:#/$defs/contentBuildMediaFile/allOf/3/if/properties/mediaType:enum"
3351
+ ],
3352
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
3353
+ "schemaPointer": "#/$defs/contentBuildMediaFile/allOf/3/if/properties/mediaType",
3354
+ "keyword": "enum",
3355
+ "instance": "application/pdf"
3356
+ },
3229
3357
  {
3230
3358
  "caseId": "build-input-boundary-a14bda95f5cd1138",
3231
3359
  "coveredRuleIds": [
@@ -4271,6 +4399,19 @@
4271
4399
  "keyword": "const",
4272
4400
  "instance": "emoji"
4273
4401
  },
4402
+ {
4403
+ "caseId": "build-input-boundary-d88c85da2d36292d",
4404
+ "coveredRuleIds": [
4405
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome:additionalProperties",
4406
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome:required:body",
4407
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome:required:subject",
4408
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome:type"
4409
+ ],
4410
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
4411
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome",
4412
+ "keyword": "additionalProperties",
4413
+ "instance": { "subject": "fixture-1", "body": "fixture-1" }
4414
+ },
4274
4415
  {
4275
4416
  "caseId": "build-input-boundary-dadbcb3741fe2efd",
4276
4417
  "coveredRuleIds": [
@@ -4307,6 +4448,16 @@
4307
4448
  "keyword": "format",
4308
4449
  "instance": "com.example.fixture-1"
4309
4450
  },
4451
+ {
4452
+ "caseId": "build-input-boundary-dcf31024d29bda74",
4453
+ "coveredRuleIds": [
4454
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject:pattern"
4455
+ ],
4456
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
4457
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
4458
+ "keyword": "pattern",
4459
+ "instance": "fixture-1"
4460
+ },
4310
4461
  {
4311
4462
  "caseId": "build-input-boundary-de5aa7733ef4d532",
4312
4463
  "coveredRuleIds": [
@@ -4484,6 +4635,31 @@
4484
4635
  "keyword": "not",
4485
4636
  "instance": {}
4486
4637
  },
4638
+ {
4639
+ "caseId": "build-input-boundary-e714b6fa2255f6f6",
4640
+ "coveredRuleIds": [
4641
+ "build-input:#/$defs/recommendation/properties/addedOn:pattern",
4642
+ "build-input:#/$defs/recommendation/properties/addedOn:type"
4643
+ ],
4644
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
4645
+ "schemaPointer": "#/$defs/recommendation/properties/addedOn",
4646
+ "keyword": "pattern",
4647
+ "instance": "2026-01-01"
4648
+ },
4649
+ {
4650
+ "caseId": "build-input-boundary-e726f09bc0ff4af9",
4651
+ "coveredRuleIds": [
4652
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:minItems"
4653
+ ],
4654
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
4655
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
4656
+ "keyword": "minItems",
4657
+ "recipe": {
4658
+ "kind": "schema-array-boundary",
4659
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
4660
+ "length": 0
4661
+ }
4662
+ },
4487
4663
  {
4488
4664
  "caseId": "build-input-boundary-e7afcc098a3a8385",
4489
4665
  "coveredRuleIds": [
@@ -93,6 +93,16 @@
93
93
  "keyword": "type",
94
94
  "instance": false
95
95
  },
96
+ {
97
+ "caseId": "interactions-config-boundary-2fe899acbd8fdd3e",
98
+ "coveredRuleIds": [
99
+ "interactions-config:#/properties/comments/properties/likes:type"
100
+ ],
101
+ "schemaId": "urn:gala:schema:interactions-config:2.0.0",
102
+ "schemaPointer": "#/properties/comments/properties/likes",
103
+ "keyword": "type",
104
+ "instance": false
105
+ },
96
106
  {
97
107
  "caseId": "interactions-config-boundary-3084d1d86c619ace",
98
108
  "coveredRuleIds": [
@@ -47,6 +47,21 @@
47
47
  "keyword": "additionalProperties",
48
48
  "instance": { "enabled": false }
49
49
  },
50
+ {
51
+ "caseId": "publication-boundary-05320b59c9ab2755",
52
+ "coveredRuleIds": [
53
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome/properties/body:x-gala-graphemeLength"
54
+ ],
55
+ "schemaId": "urn:gala:schema:publication:2.0.0",
56
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/body",
57
+ "keyword": "x-gala-graphemeLength",
58
+ "recipe": {
59
+ "kind": "schema-string-boundary",
60
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/body",
61
+ "length": 2000,
62
+ "direction": "maximum"
63
+ }
64
+ },
50
65
  {
51
66
  "caseId": "publication-boundary-05c61c29d8f8ed0c",
52
67
  "coveredRuleIds": ["publication:#/$defs/newsletter:oneOf"],
@@ -241,6 +256,21 @@
241
256
  "direction": "maximum"
242
257
  }
243
258
  },
259
+ {
260
+ "caseId": "publication-boundary-2cea25981bcbdc1b",
261
+ "coveredRuleIds": [
262
+ "publication:#/$defs/recommendation/properties/description:x-gala-graphemeLength"
263
+ ],
264
+ "schemaId": "urn:gala:schema:publication:2.0.0",
265
+ "schemaPointer": "#/$defs/recommendation/properties/description",
266
+ "keyword": "x-gala-graphemeLength",
267
+ "recipe": {
268
+ "kind": "schema-string-boundary",
269
+ "schemaPointer": "#/$defs/recommendation/properties/description",
270
+ "length": 300,
271
+ "direction": "maximum"
272
+ }
273
+ },
244
274
  {
245
275
  "caseId": "publication-boundary-2e04ec2e117c5c3d",
246
276
  "coveredRuleIds": ["publication:#/properties/schemaId:const"],
@@ -380,6 +410,21 @@
380
410
  "keyword": "required",
381
411
  "instance": { "type": "email" }
382
412
  },
413
+ {
414
+ "caseId": "publication-boundary-41ca28be30bc001a",
415
+ "coveredRuleIds": [
416
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject:x-gala-graphemeLength"
417
+ ],
418
+ "schemaId": "urn:gala:schema:publication:2.0.0",
419
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
420
+ "keyword": "x-gala-graphemeLength",
421
+ "recipe": {
422
+ "kind": "schema-string-boundary",
423
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
424
+ "length": 120,
425
+ "direction": "maximum"
426
+ }
427
+ },
383
428
  {
384
429
  "caseId": "publication-boundary-426314f493aebbf8",
385
430
  "coveredRuleIds": [
@@ -722,6 +767,22 @@
722
767
  "direction": "maximum"
723
768
  }
724
769
  },
770
+ {
771
+ "caseId": "publication-boundary-90ec8d94a65d9880",
772
+ "coveredRuleIds": [
773
+ "publication:#/$defs/recommendation:additionalProperties",
774
+ "publication:#/$defs/recommendation:required:title",
775
+ "publication:#/$defs/recommendation:required:url",
776
+ "publication:#/$defs/recommendation:type"
777
+ ],
778
+ "schemaId": "urn:gala:schema:publication:2.0.0",
779
+ "schemaPointer": "#/$defs/recommendation",
780
+ "keyword": "additionalProperties",
781
+ "instance": {
782
+ "url": "https://fixture-1.example.com/",
783
+ "title": "fixture-1"
784
+ }
785
+ },
725
786
  {
726
787
  "caseId": "publication-boundary-9513b91bbfc3d7b8",
727
788
  "coveredRuleIds": [
@@ -1012,6 +1073,19 @@
1012
1073
  "direction": "minimum"
1013
1074
  }
1014
1075
  },
1076
+ {
1077
+ "caseId": "publication-boundary-c7f4388a7492eec0",
1078
+ "coveredRuleIds": [
1079
+ "publication:#/properties/recommendations:type",
1080
+ "publication:#/properties/recommendations:uniqueItems"
1081
+ ],
1082
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1083
+ "schemaPointer": "#/properties/recommendations",
1084
+ "keyword": "type",
1085
+ "instance": [
1086
+ { "url": "https://fixture-1.example.com/", "title": "fixture-1" }
1087
+ ]
1088
+ },
1015
1089
  {
1016
1090
  "caseId": "publication-boundary-cf8b493ad05a3796",
1017
1091
  "coveredRuleIds": [
@@ -1069,6 +1143,19 @@
1069
1143
  "keyword": "pattern",
1070
1144
  "instance": "fixture-1"
1071
1145
  },
1146
+ {
1147
+ "caseId": "publication-boundary-d88c85da2d36292d",
1148
+ "coveredRuleIds": [
1149
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome:additionalProperties",
1150
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome:required:body",
1151
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome:required:subject",
1152
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome:type"
1153
+ ],
1154
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1155
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome",
1156
+ "keyword": "additionalProperties",
1157
+ "instance": { "subject": "fixture-1", "body": "fixture-1" }
1158
+ },
1072
1159
  {
1073
1160
  "caseId": "publication-boundary-dbd9a4239859ec61",
1074
1161
  "coveredRuleIds": [
@@ -1095,6 +1182,16 @@
1095
1182
  "keyword": "format",
1096
1183
  "instance": "com.example.fixture-1"
1097
1184
  },
1185
+ {
1186
+ "caseId": "publication-boundary-dcf31024d29bda74",
1187
+ "coveredRuleIds": [
1188
+ "publication:#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject:pattern"
1189
+ ],
1190
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1191
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
1192
+ "keyword": "pattern",
1193
+ "instance": "fixture-1"
1194
+ },
1098
1195
  {
1099
1196
  "caseId": "publication-boundary-e36451713106a915",
1100
1197
  "coveredRuleIds": ["publication:#/properties/title:x-gala-graphemeLength"],
@@ -1121,6 +1218,17 @@
1121
1218
  "keyword": "additionalProperties",
1122
1219
  "instance": { "website": false, "phone": false }
1123
1220
  },
1221
+ {
1222
+ "caseId": "publication-boundary-e714b6fa2255f6f6",
1223
+ "coveredRuleIds": [
1224
+ "publication:#/$defs/recommendation/properties/addedOn:pattern",
1225
+ "publication:#/$defs/recommendation/properties/addedOn:type"
1226
+ ],
1227
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1228
+ "schemaPointer": "#/$defs/recommendation/properties/addedOn",
1229
+ "keyword": "pattern",
1230
+ "instance": "2026-01-01"
1231
+ },
1124
1232
  {
1125
1233
  "caseId": "publication-boundary-eaa5211f77e460f8",
1126
1234
  "coveredRuleIds": [
@@ -1144,6 +1252,18 @@
1144
1252
  "keyword": "const",
1145
1253
  "instance": "2.0.0"
1146
1254
  },
1255
+ {
1256
+ "caseId": "publication-boundary-f03c1d8c1d267c81",
1257
+ "coveredRuleIds": ["publication:#/properties/recommendations:maxItems"],
1258
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1259
+ "schemaPointer": "#/properties/recommendations",
1260
+ "keyword": "maxItems",
1261
+ "recipe": {
1262
+ "kind": "schema-array-boundary",
1263
+ "schemaPointer": "#/properties/recommendations",
1264
+ "length": 24
1265
+ }
1266
+ },
1147
1267
  {
1148
1268
  "caseId": "publication-boundary-f0b16055c84801a1",
1149
1269
  "coveredRuleIds": [
@@ -1175,6 +1295,18 @@
1175
1295
  "direction": "maximum"
1176
1296
  }
1177
1297
  },
1298
+ {
1299
+ "caseId": "publication-boundary-f36e2f806add5c9d",
1300
+ "coveredRuleIds": ["publication:#/properties/recommendations:minItems"],
1301
+ "schemaId": "urn:gala:schema:publication:2.0.0",
1302
+ "schemaPointer": "#/properties/recommendations",
1303
+ "keyword": "minItems",
1304
+ "recipe": {
1305
+ "kind": "schema-array-boundary",
1306
+ "schemaPointer": "#/properties/recommendations",
1307
+ "length": 0
1308
+ }
1309
+ },
1178
1310
  {
1179
1311
  "caseId": "publication-boundary-f5161018b2d47998",
1180
1312
  "coveredRuleIds": ["publication:#/properties/socialLinks:maxItems"],
@@ -43,6 +43,17 @@
43
43
  "recipe": { "kind": "repeat-string", "value": "a", "count": 2001 },
44
44
  "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
45
45
  },
46
+ {
47
+ "caseId": "build-input-invalid-3555f71621f0c882",
48
+ "coveredRuleIds": [
49
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject:x-gala-graphemeLength"
50
+ ],
51
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
52
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/subject",
53
+ "keyword": "x-gala-graphemeLength",
54
+ "recipe": { "kind": "repeat-string", "value": "a", "count": 121 },
55
+ "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
56
+ },
46
57
  {
47
58
  "caseId": "build-input-invalid-4bff5e06cd5caf81",
48
59
  "coveredRuleIds": [
@@ -54,6 +65,17 @@
54
65
  "recipe": { "kind": "repeat-string", "value": "a", "count": 301 },
55
66
  "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
56
67
  },
68
+ {
69
+ "caseId": "build-input-invalid-4fb92af8ee408df8",
70
+ "coveredRuleIds": [
71
+ "build-input:#/$defs/recommendation/properties/description:x-gala-graphemeLength"
72
+ ],
73
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
74
+ "schemaPointer": "#/$defs/recommendation/properties/description",
75
+ "keyword": "x-gala-graphemeLength",
76
+ "recipe": { "kind": "repeat-string", "value": "a", "count": 301 },
77
+ "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
78
+ },
57
79
  {
58
80
  "caseId": "build-input-invalid-50934c0430090e9e",
59
81
  "coveredRuleIds": [
@@ -98,6 +120,17 @@
98
120
  "recipe": { "kind": "repeat-string", "value": "a", "count": 33 },
99
121
  "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
100
122
  },
123
+ {
124
+ "caseId": "build-input-invalid-6db00ff58b90e405",
125
+ "coveredRuleIds": [
126
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome/properties/body:x-gala-graphemeLength"
127
+ ],
128
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
129
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome/properties/body",
130
+ "keyword": "x-gala-graphemeLength",
131
+ "recipe": { "kind": "repeat-string", "value": "a", "count": 2001 },
132
+ "expectedCodes": ["GRAPHEME_LENGTH_INVALID"]
133
+ },
101
134
  {
102
135
  "caseId": "build-input-invalid-89b0092dc251a8a9",
103
136
  "coveredRuleIds": [
@@ -173,6 +173,21 @@
173
173
  },
174
174
  "expectedCodes": ["REQUEST_FIELD_UNKNOWN"]
175
175
  },
176
+ {
177
+ "caseId": "build-input-invalid-22c323be047bf4ef",
178
+ "coveredRuleIds": [
179
+ "build-input:#/$defs/newsletter/oneOf/1/properties/welcome:additionalProperties"
180
+ ],
181
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
182
+ "schemaPointer": "#/$defs/newsletter/oneOf/1/properties/welcome",
183
+ "keyword": "additionalProperties",
184
+ "instance": {
185
+ "subject": "fixture-1",
186
+ "body": "fixture-1",
187
+ "unexpected": true
188
+ },
189
+ "expectedCodes": ["REQUEST_FIELD_UNKNOWN"]
190
+ },
176
191
  {
177
192
  "caseId": "build-input-invalid-244815496877bc8b",
178
193
  "coveredRuleIds": [
@@ -399,6 +414,21 @@
399
414
  },
400
415
  "expectedCodes": ["REQUEST_FIELD_UNKNOWN"]
401
416
  },
417
+ {
418
+ "caseId": "build-input-invalid-549fce1f518ff688",
419
+ "coveredRuleIds": [
420
+ "build-input:#/$defs/recommendation:additionalProperties"
421
+ ],
422
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
423
+ "schemaPointer": "#/$defs/recommendation",
424
+ "keyword": "additionalProperties",
425
+ "instance": {
426
+ "url": "https://fixture-1.example.com/",
427
+ "title": "fixture-1",
428
+ "unexpected": true
429
+ },
430
+ "expectedCodes": ["REQUEST_FIELD_UNKNOWN"]
431
+ },
402
432
  {
403
433
  "caseId": "build-input-invalid-565dfdd3ef826339",
404
434
  "coveredRuleIds": [
@@ -10,6 +10,17 @@
10
10
  "instance": [null, null],
11
11
  "expectedCodes": ["SCHEMA_ARRAY_DUPLICATE"]
12
12
  },
13
+ {
14
+ "caseId": "build-input-invalid-51bf19f2055b11c2",
15
+ "coveredRuleIds": [
16
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:uniqueItems"
17
+ ],
18
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
19
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
20
+ "keyword": "uniqueItems",
21
+ "instance": [null, null],
22
+ "expectedCodes": ["SCHEMA_ARRAY_DUPLICATE"]
23
+ },
13
24
  {
14
25
  "caseId": "build-input-invalid-b999c8ae1dd54fec",
15
26
  "coveredRuleIds": [
@@ -115,6 +115,21 @@
115
115
  },
116
116
  "expectedCodes": ["SCHEMA_ARRAY_TOO_LONG"]
117
117
  },
118
+ {
119
+ "caseId": "build-input-invalid-74a9c9a87123d75e",
120
+ "coveredRuleIds": [
121
+ "build-input:#/$defs/publicationNormalized/properties/recommendations:maxItems"
122
+ ],
123
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
124
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
125
+ "keyword": "maxItems",
126
+ "recipe": {
127
+ "kind": "schema-array-count",
128
+ "schemaPointer": "#/$defs/publicationNormalized/properties/recommendations",
129
+ "length": 25
130
+ },
131
+ "expectedCodes": ["SCHEMA_ARRAY_TOO_LONG"]
132
+ },
118
133
  {
119
134
  "caseId": "build-input-invalid-7aec5ba921bdd731",
120
135
  "coveredRuleIds": [
@@ -96,6 +96,17 @@
96
96
  "instance": "__invalid_enum__",
97
97
  "expectedCodes": ["SCHEMA_ENUM_INVALID"]
98
98
  },
99
+ {
100
+ "caseId": "build-input-invalid-508aa929b5de1940",
101
+ "coveredRuleIds": [
102
+ "build-input:#/$defs/contentBuildMediaFile/allOf/3/if/properties/mediaType:enum"
103
+ ],
104
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
105
+ "schemaPointer": "#/$defs/contentBuildMediaFile/allOf/3/if/properties/mediaType",
106
+ "keyword": "enum",
107
+ "instance": "__invalid_enum__",
108
+ "expectedCodes": ["SCHEMA_ENUM_INVALID"]
109
+ },
99
110
  {
100
111
  "caseId": "build-input-invalid-589156d8da12f8e4",
101
112
  "coveredRuleIds": [
@@ -76,6 +76,17 @@
76
76
  "instance": 1000001,
77
77
  "expectedCodes": ["SCHEMA_NUMBER_TOO_LARGE"]
78
78
  },
79
+ {
80
+ "caseId": "build-input-invalid-cd760bf2d0439303",
81
+ "coveredRuleIds": [
82
+ "build-input:#/$defs/contentBuildMediaFile/allOf/3/then/properties/byteLength:maximum"
83
+ ],
84
+ "schemaId": "urn:gala:schema:build-input:2.0.0",
85
+ "schemaPointer": "#/$defs/contentBuildMediaFile/allOf/3/then/properties/byteLength",
86
+ "keyword": "maximum",
87
+ "instance": 10485761,
88
+ "expectedCodes": ["SCHEMA_NUMBER_TOO_LARGE"]
89
+ },
79
90
  {
80
91
  "caseId": "build-input-invalid-f5bc24b5544584e1",
81
92
  "coveredRuleIds": [