@rathnasgala2/schemas 3.15.0 → 3.16.0

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 (79) hide show
  1. package/README.md +12 -7
  2. package/diagnostics/diagnostic-map.json +399 -4
  3. package/docs/catalogs/app-routes.json +7 -2
  4. package/docs/catalogs/schema-inventory.json +15 -5
  5. package/examples/valid/analytics-config/canonical.json +6 -0
  6. package/examples/valid/analytics-config/rules.json +334 -0
  7. package/examples/valid/build-input/rules.json +202 -0
  8. package/examples/valid/publication/rules.json +49 -0
  9. package/examples/valid/theme-contract/rules.json +64 -4
  10. package/fixtures/boundary/analytics-config/root.json +6 -0
  11. package/fixtures/boundary/analytics-config/rules.json +470 -0
  12. package/fixtures/boundary/build-input/rules.json +207 -0
  13. package/fixtures/boundary/publication/rules.json +54 -0
  14. package/fixtures/boundary/theme-contract/rules.json +64 -4
  15. package/fixtures/invalid/analytics-config/BCP47_INVALID/cases.json +56 -0
  16. package/fixtures/invalid/analytics-config/CANONICAL_ROUTE_INVALID/cases.json +38 -0
  17. package/fixtures/invalid/analytics-config/DIGEST_INVALID/cases.json +20 -0
  18. package/fixtures/invalid/analytics-config/EXTENSION_KEY_INVALID/cases.json +20 -0
  19. package/fixtures/invalid/analytics-config/GIT_OBJECT_ID_INVALID/cases.json +20 -0
  20. package/fixtures/invalid/analytics-config/HTTPS_URL_INVALID/cases.json +29 -0
  21. package/fixtures/invalid/analytics-config/ISO_COUNTRY_INVALID/cases.json +20 -0
  22. package/fixtures/invalid/analytics-config/PACKAGE_EXACT_INVALID/cases.json +38 -0
  23. package/fixtures/invalid/analytics-config/PACKAGE_RANGE_INVALID/cases.json +38 -0
  24. package/fixtures/invalid/analytics-config/PASSIVE_VISUAL_TOKEN_INVALID/cases.json +11 -0
  25. package/fixtures/invalid/analytics-config/PLAIN_LABEL_INVALID/cases.json +31 -0
  26. package/fixtures/invalid/analytics-config/PLAIN_TEXT_INVALID/cases.json +20 -0
  27. package/fixtures/invalid/analytics-config/REPOSITORY_GLOB_INVALID/cases.json +47 -0
  28. package/fixtures/invalid/analytics-config/REPOSITORY_PATH_INVALID/cases.json +58 -0
  29. package/fixtures/invalid/analytics-config/REQUEST_FIELD_UNKNOWN/cases.json +46 -0
  30. package/fixtures/invalid/analytics-config/RFC3339_INVALID/cases.json +29 -0
  31. package/fixtures/invalid/analytics-config/SCHEMA_ENUM_INVALID/cases.json +24 -0
  32. package/fixtures/invalid/analytics-config/SCHEMA_PATTERN_INVALID/cases.json +13 -0
  33. package/fixtures/invalid/analytics-config/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +92 -0
  34. package/fixtures/invalid/analytics-config/SCHEMA_TYPE_INVALID/cases.json +40 -0
  35. package/fixtures/invalid/analytics-config/SCHEMA_VERSION_UNSUPPORTED/cases.json +20 -0
  36. package/fixtures/invalid/analytics-config/SEMVER_INVALID/cases.json +20 -0
  37. package/fixtures/invalid/analytics-config/SEMVER_RANGE_INVALID/cases.json +38 -0
  38. package/fixtures/invalid/analytics-config/SLUG_INVALID/cases.json +38 -0
  39. package/fixtures/invalid/analytics-config/STABLE_ID_INVALID/cases.json +20 -0
  40. package/fixtures/invalid/analytics-config/URN_INVALID/cases.json +38 -0
  41. package/fixtures/invalid/build-input/GRAPHEME_LENGTH_INVALID/cases.json +11 -0
  42. package/fixtures/invalid/build-input/REQUEST_FIELD_UNKNOWN/cases.json +137 -0
  43. package/fixtures/invalid/build-input/SCHEMA_ENUM_INVALID/cases.json +22 -0
  44. package/fixtures/invalid/build-input/SCHEMA_PATTERN_INVALID/cases.json +11 -0
  45. package/fixtures/invalid/build-input/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +194 -0
  46. package/fixtures/invalid/build-input/SCHEMA_TYPE_INVALID/cases.json +71 -0
  47. package/fixtures/invalid/build-input/SCHEMA_VERSION_UNSUPPORTED/cases.json +22 -0
  48. package/fixtures/invalid/publication/GRAPHEME_LENGTH_INVALID/cases.json +11 -0
  49. package/fixtures/invalid/publication/REQUEST_FIELD_UNKNOWN/cases.json +28 -0
  50. package/fixtures/invalid/publication/SCHEMA_PATTERN_INVALID/cases.json +11 -0
  51. package/fixtures/invalid/publication/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +44 -0
  52. package/fixtures/invalid/publication/SCHEMA_TYPE_INVALID/cases.json +18 -0
  53. package/fixtures/invalid/theme-contract/SCHEMA_CONSTANT_INVALID/cases.json +33 -22
  54. package/fixtures/invalid/theme-contract/SCHEMA_ENUM_INVALID/cases.json +33 -0
  55. package/fixtures/invalid/theme-contract/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +22 -0
  56. package/fixtures/manifest.json +3066 -16
  57. package/fixtures/s2/empty-modules-placements.json +452 -0
  58. package/fixtures/s2/manifest.json +2 -0
  59. package/fixtures/unknown-field/analytics-config/root.json +7 -0
  60. package/fixtures/unknown-field/analytics-config/rules.json +131 -0
  61. package/fixtures/unknown-field/build-input/rules.json +162 -0
  62. package/fixtures/unknown-field/publication/rules.json +38 -0
  63. package/fixtures/unknown-field/theme-contract/rules.json +8 -2
  64. package/generated/browser/validator-core.mjs +4 -3
  65. package/generated/typescript/contracts/analytics-config.d.ts +54 -0
  66. package/generated/typescript/contracts/build-input.d.ts +26 -0
  67. package/generated/typescript/contracts/publication.d.ts +11 -0
  68. package/generated/typescript/index.d.ts +4 -0
  69. package/generated/typescript/index.js +14 -0
  70. package/openapi/http-catalog.json +54 -2
  71. package/openapi/openapi.yaml +4564 -3334
  72. package/package.json +4 -1
  73. package/sbom.cdx.json +23 -23
  74. package/schemas/analytics-config.schema.json +161 -0
  75. package/schemas/build-input.schema.json +66 -0
  76. package/schemas/publication.schema.json +22 -0
  77. package/schemas/theme-contract.schema.json +25 -3
  78. package/site-policy-defaults.json +10 -0
  79. package/src/internal/schema-validator.js +3 -0
@@ -721,11 +721,11 @@
721
721
  {
722
722
  "caseId": "theme-contract-valid-2319d372ecb79852",
723
723
  "coveredRuleIds": [
724
- "theme-contract:#/allOf/2/if/properties/contractVersion:const"
724
+ "theme-contract:#/allOf/2/if/properties/contractVersion:enum"
725
725
  ],
726
726
  "schemaId": "urn:gala:schema:theme-contract:2.0.0",
727
727
  "schemaPointer": "#/allOf/2/if/properties/contractVersion",
728
- "keyword": "const",
728
+ "keyword": "enum",
729
729
  "instance": "4.0.0"
730
730
  },
731
731
  {
@@ -2652,6 +2652,16 @@
2652
2652
  "keyword": "const",
2653
2653
  "instance": "duration-base"
2654
2654
  },
2655
+ {
2656
+ "caseId": "theme-contract-valid-6c866ead23df800c",
2657
+ "coveredRuleIds": [
2658
+ "theme-contract:#/allOf/2/then/allOf/6/if:required:contractVersion"
2659
+ ],
2660
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
2661
+ "schemaPointer": "#/allOf/2/then/allOf/6/if",
2662
+ "keyword": "required",
2663
+ "instance": { "contractVersion": "4.0.0" }
2664
+ },
2655
2665
  {
2656
2666
  "caseId": "theme-contract-valid-6d0315ae0e2280d3",
2657
2667
  "coveredRuleIds": [
@@ -3121,6 +3131,16 @@
3121
3131
  "keyword": "const",
3122
3132
  "instance": "paint-panel"
3123
3133
  },
3134
+ {
3135
+ "caseId": "theme-contract-valid-84a7b9db16b06f07",
3136
+ "coveredRuleIds": [
3137
+ "theme-contract:#/allOf/2/then/allOf/6/if/properties/contractVersion:const"
3138
+ ],
3139
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
3140
+ "schemaPointer": "#/allOf/2/then/allOf/6/if/properties/contractVersion",
3141
+ "keyword": "const",
3142
+ "instance": "4.0.0"
3143
+ },
3124
3144
  {
3125
3145
  "caseId": "theme-contract-valid-84d0cc96873b0db7",
3126
3146
  "coveredRuleIds": [
@@ -3152,6 +3172,16 @@
3152
3172
  "cssLayers": ["gala-tokens", "gala-components", "gala-print"]
3153
3173
  }
3154
3174
  },
3175
+ {
3176
+ "caseId": "theme-contract-valid-86250825aa81635f",
3177
+ "coveredRuleIds": [
3178
+ "theme-contract:#/allOf/2/then/allOf/7/if:required:contractVersion"
3179
+ ],
3180
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
3181
+ "schemaPointer": "#/allOf/2/then/allOf/7/if",
3182
+ "keyword": "required",
3183
+ "instance": { "contractVersion": "4.1.0" }
3184
+ },
3155
3185
  {
3156
3186
  "caseId": "theme-contract-valid-8632b6ede8e92b4b",
3157
3187
  "coveredRuleIds": [
@@ -3567,6 +3597,16 @@
3567
3597
  "maximumFiles": 1
3568
3598
  }
3569
3599
  },
3600
+ {
3601
+ "caseId": "theme-contract-valid-992d51602a944121",
3602
+ "coveredRuleIds": [
3603
+ "theme-contract:#/allOf/2/then/allOf/7/then/properties/templateRange:const"
3604
+ ],
3605
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
3606
+ "schemaPointer": "#/allOf/2/then/allOf/7/then/properties/templateRange",
3607
+ "keyword": "const",
3608
+ "instance": "^4.4.0"
3609
+ },
3570
3610
  {
3571
3611
  "caseId": "theme-contract-valid-996fa08f871d29f9",
3572
3612
  "coveredRuleIds": [
@@ -4100,11 +4140,11 @@
4100
4140
  {
4101
4141
  "caseId": "theme-contract-valid-bbaf184f4a5e0c33",
4102
4142
  "coveredRuleIds": [
4103
- "theme-contract:#/allOf/3/then/properties/contractVersion:const"
4143
+ "theme-contract:#/allOf/3/then/properties/contractVersion:enum"
4104
4144
  ],
4105
4145
  "schemaId": "urn:gala:schema:theme-contract:2.0.0",
4106
4146
  "schemaPointer": "#/allOf/3/then/properties/contractVersion",
4107
- "keyword": "const",
4147
+ "keyword": "enum",
4108
4148
  "instance": "4.0.0"
4109
4149
  },
4110
4150
  {
@@ -4614,6 +4654,16 @@
4614
4654
  "keyword": "const",
4615
4655
  "instance": "color"
4616
4656
  },
4657
+ {
4658
+ "caseId": "theme-contract-valid-d087b18056f34fc3",
4659
+ "coveredRuleIds": [
4660
+ "theme-contract:#/allOf/2/then/allOf/6/then/properties/templateRange:enum"
4661
+ ],
4662
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
4663
+ "schemaPointer": "#/allOf/2/then/allOf/6/then/properties/templateRange",
4664
+ "keyword": "enum",
4665
+ "instance": "^4.0.0"
4666
+ },
4617
4667
  {
4618
4668
  "caseId": "theme-contract-valid-d0d8f90d658ed2a9",
4619
4669
  "coveredRuleIds": [
@@ -5506,6 +5556,16 @@
5506
5556
  "keyword": "const",
5507
5557
  "instance": "link-offset"
5508
5558
  },
5559
+ {
5560
+ "caseId": "theme-contract-valid-e1f4d65f6d31bf98",
5561
+ "coveredRuleIds": [
5562
+ "theme-contract:#/allOf/2/then/allOf/7/if/properties/contractVersion:const"
5563
+ ],
5564
+ "schemaId": "urn:gala:schema:theme-contract:2.0.0",
5565
+ "schemaPointer": "#/allOf/2/then/allOf/7/if/properties/contractVersion",
5566
+ "keyword": "const",
5567
+ "instance": "4.1.0"
5568
+ },
5509
5569
  {
5510
5570
  "caseId": "theme-contract-valid-e3278887a6e16fa6",
5511
5571
  "coveredRuleIds": [
@@ -0,0 +1,6 @@
1
+ {
2
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
3
+ "schemaVersion": "2.0.0",
4
+ "provider": { "kind": "google-analytics-4", "measurementId": "G-ABC123XYZ" },
5
+ "consent": { "policy": "opt-in" }
6
+ }
@@ -0,0 +1,470 @@
1
+ [
2
+ {
3
+ "caseId": "analytics-config-boundary-1251e32ceed19984",
4
+ "coveredRuleIds": [
5
+ "analytics-config:#/$defs/plainLabel:format",
6
+ "analytics-config:#/$defs/plainLabel:type"
7
+ ],
8
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
9
+ "schemaPointer": "#/$defs/plainLabel",
10
+ "keyword": "format",
11
+ "instance": "fixture-1"
12
+ },
13
+ {
14
+ "caseId": "analytics-config-boundary-1994b0284b84ae9c",
15
+ "coveredRuleIds": [
16
+ "analytics-config:#/$defs/glob:format",
17
+ "analytics-config:#/$defs/glob:type"
18
+ ],
19
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
20
+ "schemaPointer": "#/$defs/glob",
21
+ "keyword": "format",
22
+ "instance": "**"
23
+ },
24
+ {
25
+ "caseId": "analytics-config-boundary-211768f1870810a5",
26
+ "coveredRuleIds": [
27
+ "analytics-config:#/properties/consent:additionalProperties",
28
+ "analytics-config:#/properties/consent:required:policy",
29
+ "analytics-config:#/properties/consent:type"
30
+ ],
31
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
32
+ "schemaPointer": "#/properties/consent",
33
+ "keyword": "additionalProperties",
34
+ "instance": { "policy": "opt-in" }
35
+ },
36
+ {
37
+ "caseId": "analytics-config-boundary-21d490e9f18e9020",
38
+ "coveredRuleIds": [
39
+ "analytics-config:#/$defs/glob:maxLength",
40
+ "analytics-config:#/$defs/glob:x-gala-utf8ByteLength"
41
+ ],
42
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
43
+ "schemaPointer": "#/$defs/glob",
44
+ "keyword": "maxLength",
45
+ "recipe": {
46
+ "kind": "schema-string-boundary",
47
+ "schemaPointer": "#/$defs/glob",
48
+ "length": 256,
49
+ "direction": "maximum"
50
+ }
51
+ },
52
+ {
53
+ "caseId": "analytics-config-boundary-23f69dce4e1ad678",
54
+ "coveredRuleIds": [
55
+ "analytics-config:#/$defs/packageRange:format",
56
+ "analytics-config:#/$defs/packageRange:pattern",
57
+ "analytics-config:#/$defs/packageRange:type"
58
+ ],
59
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
60
+ "schemaPointer": "#/$defs/packageRange",
61
+ "keyword": "format",
62
+ "instance": "@rathnasgala2/fixture-1@^2.0.0"
63
+ },
64
+ {
65
+ "caseId": "analytics-config-boundary-2998608e713d981b",
66
+ "coveredRuleIds": [
67
+ "analytics-config:#/$defs/repoRelativePath:maxLength",
68
+ "analytics-config:#/$defs/repoRelativePath:x-gala-utf8ByteLength"
69
+ ],
70
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
71
+ "schemaPointer": "#/$defs/repoRelativePath",
72
+ "keyword": "maxLength",
73
+ "recipe": {
74
+ "kind": "schema-string-boundary",
75
+ "schemaPointer": "#/$defs/repoRelativePath",
76
+ "length": 512,
77
+ "direction": "maximum"
78
+ }
79
+ },
80
+ {
81
+ "caseId": "analytics-config-boundary-3084d1d86c619ace",
82
+ "coveredRuleIds": [
83
+ "analytics-config:#/$defs/urn:format",
84
+ "analytics-config:#/$defs/urn:pattern",
85
+ "analytics-config:#/$defs/urn:type"
86
+ ],
87
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
88
+ "schemaPointer": "#/$defs/urn",
89
+ "keyword": "format",
90
+ "instance": "urn:gala:fixture:value-1"
91
+ },
92
+ {
93
+ "caseId": "analytics-config-boundary-30d5a4d5c7e3d90c",
94
+ "coveredRuleIds": [
95
+ "analytics-config:#/$defs/semverRange:format",
96
+ "analytics-config:#/$defs/semverRange:pattern",
97
+ "analytics-config:#/$defs/semverRange:type"
98
+ ],
99
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
100
+ "schemaPointer": "#/$defs/semverRange",
101
+ "keyword": "format",
102
+ "instance": "^2.0.0"
103
+ },
104
+ {
105
+ "caseId": "analytics-config-boundary-426314f493aebbf8",
106
+ "coveredRuleIds": [
107
+ "analytics-config:#/$defs/semver:pattern",
108
+ "analytics-config:#/$defs/semver:type"
109
+ ],
110
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
111
+ "schemaPointer": "#/$defs/semver",
112
+ "keyword": "pattern",
113
+ "instance": "2.0.0"
114
+ },
115
+ {
116
+ "caseId": "analytics-config-boundary-5b5e96f439400c47",
117
+ "coveredRuleIds": [
118
+ "analytics-config:#/$defs/rfc3339:format",
119
+ "analytics-config:#/$defs/rfc3339:pattern",
120
+ "analytics-config:#/$defs/rfc3339:type"
121
+ ],
122
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
123
+ "schemaPointer": "#/$defs/rfc3339",
124
+ "keyword": "format",
125
+ "instance": "2026-09-13T12:00:00.000Z"
126
+ },
127
+ {
128
+ "caseId": "analytics-config-boundary-5ea099a3e7665c6c",
129
+ "coveredRuleIds": [
130
+ "analytics-config:#/$defs/canonicalRoute:format",
131
+ "analytics-config:#/$defs/canonicalRoute:pattern",
132
+ "analytics-config:#/$defs/canonicalRoute:type"
133
+ ],
134
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
135
+ "schemaPointer": "#/$defs/canonicalRoute",
136
+ "keyword": "format",
137
+ "instance": "/fixture-1"
138
+ },
139
+ {
140
+ "caseId": "analytics-config-boundary-5ed2c3704f5a6bb1",
141
+ "coveredRuleIds": ["analytics-config:#/$defs/repoRelativePath:minLength"],
142
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
143
+ "schemaPointer": "#/$defs/repoRelativePath",
144
+ "keyword": "minLength",
145
+ "recipe": {
146
+ "kind": "schema-string-boundary",
147
+ "schemaPointer": "#/$defs/repoRelativePath",
148
+ "length": 1,
149
+ "direction": "minimum"
150
+ }
151
+ },
152
+ {
153
+ "caseId": "analytics-config-boundary-5f0075a8a9ab620b",
154
+ "coveredRuleIds": ["analytics-config:#/$defs/glob:minLength"],
155
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
156
+ "schemaPointer": "#/$defs/glob",
157
+ "keyword": "minLength",
158
+ "recipe": {
159
+ "kind": "schema-string-boundary",
160
+ "schemaPointer": "#/$defs/glob",
161
+ "length": 1,
162
+ "direction": "minimum"
163
+ }
164
+ },
165
+ {
166
+ "caseId": "analytics-config-boundary-63726a4f5d6169fe",
167
+ "coveredRuleIds": [
168
+ "analytics-config:#/$defs/urlHttps:format",
169
+ "analytics-config:#/$defs/urlHttps:pattern",
170
+ "analytics-config:#/$defs/urlHttps:type"
171
+ ],
172
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
173
+ "schemaPointer": "#/$defs/urlHttps",
174
+ "keyword": "format",
175
+ "instance": "https://fixture-1.example.com/"
176
+ },
177
+ {
178
+ "caseId": "analytics-config-boundary-6d8e769d019903ac",
179
+ "coveredRuleIds": ["analytics-config:#/$defs/urn:minLength"],
180
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
181
+ "schemaPointer": "#/$defs/urn",
182
+ "keyword": "minLength",
183
+ "recipe": {
184
+ "kind": "schema-string-boundary",
185
+ "schemaPointer": "#/$defs/urn",
186
+ "length": 10,
187
+ "direction": "minimum"
188
+ }
189
+ },
190
+ {
191
+ "caseId": "analytics-config-boundary-70bc5194fa4d497d",
192
+ "coveredRuleIds": [
193
+ "analytics-config:#/properties/provider:additionalProperties",
194
+ "analytics-config:#/properties/provider:required:kind",
195
+ "analytics-config:#/properties/provider:required:measurementId",
196
+ "analytics-config:#/properties/provider:type"
197
+ ],
198
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
199
+ "schemaPointer": "#/properties/provider",
200
+ "keyword": "additionalProperties",
201
+ "instance": { "kind": "google-analytics-4", "measurementId": "G-ABC123XYZ" }
202
+ },
203
+ {
204
+ "caseId": "analytics-config-boundary-7274eea62a7303c4",
205
+ "coveredRuleIds": [
206
+ "analytics-config:#/$defs/plainText:format",
207
+ "analytics-config:#/$defs/plainText:type"
208
+ ],
209
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
210
+ "schemaPointer": "#/$defs/plainText",
211
+ "keyword": "format",
212
+ "instance": "fixture-1"
213
+ },
214
+ {
215
+ "caseId": "analytics-config-boundary-83ef50b3c971e4ce",
216
+ "coveredRuleIds": [
217
+ "analytics-config:#/$defs/stableId:pattern",
218
+ "analytics-config:#/$defs/stableId:type"
219
+ ],
220
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
221
+ "schemaPointer": "#/$defs/stableId",
222
+ "keyword": "pattern",
223
+ "instance": "019c0000-0000-7000-8000-000000000001"
224
+ },
225
+ {
226
+ "caseId": "analytics-config-boundary-8a60be945d42cc59",
227
+ "coveredRuleIds": ["analytics-config:#/$defs/slug:minLength"],
228
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
229
+ "schemaPointer": "#/$defs/slug",
230
+ "keyword": "minLength",
231
+ "recipe": {
232
+ "kind": "schema-string-boundary",
233
+ "schemaPointer": "#/$defs/slug",
234
+ "length": 1,
235
+ "direction": "minimum"
236
+ }
237
+ },
238
+ {
239
+ "caseId": "analytics-config-boundary-9513b91bbfc3d7b8",
240
+ "coveredRuleIds": [
241
+ "analytics-config:#/$defs/gitObjectId:pattern",
242
+ "analytics-config:#/$defs/gitObjectId:type"
243
+ ],
244
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
245
+ "schemaPointer": "#/$defs/gitObjectId",
246
+ "keyword": "pattern",
247
+ "instance": "sha1:0000000000000000000000000000000000000001"
248
+ },
249
+ {
250
+ "caseId": "analytics-config-boundary-99b2e05c9eac9239",
251
+ "coveredRuleIds": [
252
+ "analytics-config:#/properties/provider/properties/measurementId:pattern",
253
+ "analytics-config:#/properties/provider/properties/measurementId:type"
254
+ ],
255
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
256
+ "schemaPointer": "#/properties/provider/properties/measurementId",
257
+ "keyword": "pattern",
258
+ "instance": "G-ABC123XYZ"
259
+ },
260
+ {
261
+ "caseId": "analytics-config-boundary-a4b921026f5fe793",
262
+ "coveredRuleIds": [
263
+ "analytics-config:#/properties/consent/properties/policy:enum"
264
+ ],
265
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
266
+ "schemaPointer": "#/properties/consent/properties/policy",
267
+ "keyword": "enum",
268
+ "instance": "opt-in"
269
+ },
270
+ {
271
+ "caseId": "analytics-config-boundary-a9defb191b0db7c2",
272
+ "coveredRuleIds": [
273
+ "analytics-config:#/$defs/repoRelativePath:format",
274
+ "analytics-config:#/$defs/repoRelativePath:pattern",
275
+ "analytics-config:#/$defs/repoRelativePath:type"
276
+ ],
277
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
278
+ "schemaPointer": "#/$defs/repoRelativePath",
279
+ "keyword": "format",
280
+ "instance": "content/fixture-1.md"
281
+ },
282
+ {
283
+ "caseId": "analytics-config-boundary-b16096e9a6998b94",
284
+ "coveredRuleIds": [
285
+ "analytics-config:#/$defs/bcp47:format",
286
+ "analytics-config:#/$defs/bcp47:pattern",
287
+ "analytics-config:#/$defs/bcp47:type"
288
+ ],
289
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
290
+ "schemaPointer": "#/$defs/bcp47",
291
+ "keyword": "format",
292
+ "instance": "en-US"
293
+ },
294
+ {
295
+ "caseId": "analytics-config-boundary-b394183662e569ad",
296
+ "coveredRuleIds": [
297
+ "analytics-config:#/$defs/digest:pattern",
298
+ "analytics-config:#/$defs/digest:type"
299
+ ],
300
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
301
+ "schemaPointer": "#/$defs/digest",
302
+ "keyword": "pattern",
303
+ "instance": "sha256:0000000000000000000000000000000000000000000000000000000000000001"
304
+ },
305
+ {
306
+ "caseId": "analytics-config-boundary-b40be083c5e04e5c",
307
+ "coveredRuleIds": [
308
+ "analytics-config:#/$defs/packageExact:format",
309
+ "analytics-config:#/$defs/packageExact:pattern",
310
+ "analytics-config:#/$defs/packageExact:type"
311
+ ],
312
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
313
+ "schemaPointer": "#/$defs/packageExact",
314
+ "keyword": "format",
315
+ "instance": "@rathnasgala2/fixture-1@2.0.0"
316
+ },
317
+ {
318
+ "caseId": "analytics-config-boundary-b7a07c6d83149fed",
319
+ "coveredRuleIds": [
320
+ "analytics-config:#/properties/provider/properties/kind:enum"
321
+ ],
322
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
323
+ "schemaPointer": "#/properties/provider/properties/kind",
324
+ "keyword": "enum",
325
+ "instance": "google-analytics-4"
326
+ },
327
+ {
328
+ "caseId": "analytics-config-boundary-ba5073d37e61c16f",
329
+ "coveredRuleIds": [
330
+ "analytics-config:#/$defs/plainLabel:x-gala-graphemeLength"
331
+ ],
332
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
333
+ "schemaPointer": "#/$defs/plainLabel",
334
+ "keyword": "x-gala-graphemeLength",
335
+ "recipe": {
336
+ "kind": "schema-string-boundary",
337
+ "schemaPointer": "#/$defs/plainLabel",
338
+ "length": 80,
339
+ "direction": "maximum"
340
+ }
341
+ },
342
+ {
343
+ "caseId": "analytics-config-boundary-bd984d4491127cb9",
344
+ "coveredRuleIds": [
345
+ "analytics-config:#/$defs/isoCountry:format",
346
+ "analytics-config:#/$defs/isoCountry:pattern",
347
+ "analytics-config:#/$defs/isoCountry:type"
348
+ ],
349
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
350
+ "schemaPointer": "#/$defs/isoCountry",
351
+ "keyword": "format",
352
+ "instance": "US"
353
+ },
354
+ {
355
+ "caseId": "analytics-config-boundary-bfc81853694e2776",
356
+ "coveredRuleIds": ["analytics-config:#/$defs/slug:maxLength"],
357
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
358
+ "schemaPointer": "#/$defs/slug",
359
+ "keyword": "maxLength",
360
+ "recipe": {
361
+ "kind": "schema-string-boundary",
362
+ "schemaPointer": "#/$defs/slug",
363
+ "length": 80,
364
+ "direction": "maximum"
365
+ }
366
+ },
367
+ {
368
+ "caseId": "analytics-config-boundary-c490f6fec525db4f",
369
+ "coveredRuleIds": ["analytics-config:#/$defs/urn:maxLength"],
370
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
371
+ "schemaPointer": "#/$defs/urn",
372
+ "keyword": "maxLength",
373
+ "recipe": {
374
+ "kind": "schema-string-boundary",
375
+ "schemaPointer": "#/$defs/urn",
376
+ "length": 255,
377
+ "direction": "maximum"
378
+ }
379
+ },
380
+ {
381
+ "caseId": "analytics-config-boundary-c7e8ab73f01ce02c",
382
+ "coveredRuleIds": ["analytics-config:#/$defs/canonicalRoute:minLength"],
383
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
384
+ "schemaPointer": "#/$defs/canonicalRoute",
385
+ "keyword": "minLength",
386
+ "recipe": {
387
+ "kind": "schema-string-boundary",
388
+ "schemaPointer": "#/$defs/canonicalRoute",
389
+ "length": 1,
390
+ "direction": "minimum"
391
+ }
392
+ },
393
+ {
394
+ "caseId": "analytics-config-boundary-d74f0c9e553e593e",
395
+ "coveredRuleIds": [
396
+ "analytics-config:#/$defs/slug:pattern",
397
+ "analytics-config:#/$defs/slug:type"
398
+ ],
399
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
400
+ "schemaPointer": "#/$defs/slug",
401
+ "keyword": "pattern",
402
+ "instance": "fixture-1"
403
+ },
404
+ {
405
+ "caseId": "analytics-config-boundary-dc1935da08adc8e9",
406
+ "coveredRuleIds": [
407
+ "analytics-config:#/$defs/extensionKey:format",
408
+ "analytics-config:#/$defs/extensionKey:type"
409
+ ],
410
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
411
+ "schemaPointer": "#/$defs/extensionKey",
412
+ "keyword": "format",
413
+ "instance": "com.example.fixture-1"
414
+ },
415
+ {
416
+ "caseId": "analytics-config-boundary-ec0e07fa303716fb",
417
+ "coveredRuleIds": ["analytics-config:#/properties/schemaVersion:const"],
418
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
419
+ "schemaPointer": "#/properties/schemaVersion",
420
+ "keyword": "const",
421
+ "instance": "2.0.0"
422
+ },
423
+ {
424
+ "caseId": "analytics-config-boundary-ef937fd29e5da3c7",
425
+ "coveredRuleIds": [
426
+ "analytics-config:#:additionalProperties",
427
+ "analytics-config:#:required:consent",
428
+ "analytics-config:#:required:provider",
429
+ "analytics-config:#:required:schemaId",
430
+ "analytics-config:#:required:schemaVersion",
431
+ "analytics-config:#:type"
432
+ ],
433
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
434
+ "schemaPointer": "#",
435
+ "keyword": "additionalProperties",
436
+ "instance": {
437
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
438
+ "schemaVersion": "2.0.0",
439
+ "provider": {
440
+ "kind": "google-analytics-4",
441
+ "measurementId": "G-ABC123XYZ"
442
+ },
443
+ "consent": { "policy": "opt-in" }
444
+ }
445
+ },
446
+ {
447
+ "caseId": "analytics-config-boundary-f0f505c92729ddac",
448
+ "coveredRuleIds": [
449
+ "analytics-config:#/$defs/bcp47:maxLength",
450
+ "analytics-config:#/$defs/bcp47:x-gala-utf8ByteLength"
451
+ ],
452
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
453
+ "schemaPointer": "#/$defs/bcp47",
454
+ "keyword": "maxLength",
455
+ "recipe": {
456
+ "kind": "schema-string-boundary",
457
+ "schemaPointer": "#/$defs/bcp47",
458
+ "length": 255,
459
+ "direction": "maximum"
460
+ }
461
+ },
462
+ {
463
+ "caseId": "analytics-config-boundary-f585f35a6a4e2e92",
464
+ "coveredRuleIds": ["analytics-config:#/properties/schemaId:const"],
465
+ "schemaId": "urn:gala:schema:analytics-config:2.0.0",
466
+ "schemaPointer": "#/properties/schemaId",
467
+ "keyword": "const",
468
+ "instance": "urn:gala:schema:analytics-config:2.0.0"
469
+ }
470
+ ]