@rathnasgala2/schemas 2.11.0 → 2.13.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 (408) hide show
  1. package/README.md +192 -84
  2. package/THIRD_PARTY_LICENSES.json +79 -106
  3. package/diagnostics/diagnostic-map.json +443 -405
  4. package/diagnostics/diagnostic-map.public-runtime-origins.json +5 -0
  5. package/docs/catalogs/app-routes.json +2 -1
  6. package/docs/catalogs/schema-inventory.json +33 -54
  7. package/examples/valid/adapter-capability/rules.json +11 -0
  8. package/examples/valid/artifact-manifest/rules.json +156 -177
  9. package/examples/valid/build-input/rules.json +67 -63
  10. package/examples/valid/build-provenance/rules.json +151 -172
  11. package/examples/valid/deployment-intent/rules.json +152 -148
  12. package/examples/valid/deployment-observation/rules.json +24 -20
  13. package/examples/valid/deployment-receipt/rules.json +152 -148
  14. package/examples/valid/navigation/rules.json +2 -4
  15. package/examples/valid/theme-contract/rules.json +4 -1
  16. package/fixtures/boundary/adapter-capability/rules.json +16 -0
  17. package/fixtures/boundary/artifact-manifest/rules.json +195 -202
  18. package/fixtures/boundary/build-input/rules.json +99 -86
  19. package/fixtures/boundary/build-provenance/rules.json +193 -202
  20. package/fixtures/boundary/deployment-intent/rules.json +186 -140
  21. package/fixtures/boundary/deployment-observation/rules.json +68 -18
  22. package/fixtures/boundary/deployment-receipt/rules.json +186 -140
  23. package/fixtures/boundary/navigation/rules.json +2 -17
  24. package/fixtures/boundary/theme-contract/rules.json +34 -0
  25. package/fixtures/invalid/adapter-capability/SCHEMA_STRING_TOO_LONG/cases.json +11 -0
  26. package/fixtures/invalid/adapter-capability/UTF8_BYTE_LENGTH_INVALID/cases.json +11 -0
  27. package/fixtures/invalid/artifact-manifest/ASCII_BYTE_LENGTH_INVALID/cases.json +13 -0
  28. package/fixtures/invalid/artifact-manifest/INTEGER_RANGE_INVALID/cases.json +24 -0
  29. package/fixtures/invalid/artifact-manifest/REQUEST_FIELD_UNKNOWN/cases.json +19 -19
  30. package/fixtures/invalid/artifact-manifest/SCHEMA_CONSTANT_INVALID/cases.json +48 -48
  31. package/fixtures/invalid/artifact-manifest/SCHEMA_ENUM_INVALID/cases.json +11 -11
  32. package/fixtures/invalid/artifact-manifest/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  33. package/fixtures/invalid/artifact-manifest/SCHEMA_NEGATED_RULE_MATCHED/cases.json +0 -11
  34. package/fixtures/invalid/artifact-manifest/SCHEMA_PATTERN_INVALID/cases.json +0 -22
  35. package/fixtures/invalid/artifact-manifest/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +1105 -1105
  36. package/fixtures/invalid/artifact-manifest/SCHEMA_STRING_TOO_LONG/cases.json +4 -6
  37. package/fixtures/invalid/artifact-manifest/SCHEMA_STRING_TOO_SHORT/cases.json +9 -11
  38. package/fixtures/invalid/artifact-manifest/SCHEMA_TYPE_INVALID/cases.json +22 -31
  39. package/fixtures/invalid/artifact-manifest/UTF8_BYTE_LENGTH_INVALID/cases.json +0 -11
  40. package/fixtures/invalid/build-input/INTEGER_RANGE_INVALID/cases.json +13 -0
  41. package/fixtures/invalid/build-input/REQUEST_FIELD_UNKNOWN/cases.json +32 -32
  42. package/fixtures/invalid/build-input/SCHEMA_CONSTANT_INVALID/cases.json +11 -11
  43. package/fixtures/invalid/build-input/SCHEMA_ENUM_INVALID/cases.json +11 -11
  44. package/fixtures/invalid/build-input/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +78 -78
  45. package/fixtures/invalid/build-input/SCHEMA_TYPE_INVALID/cases.json +51 -18
  46. package/fixtures/invalid/build-provenance/ASCII_BYTE_LENGTH_INVALID/cases.json +13 -0
  47. package/fixtures/invalid/build-provenance/INTEGER_RANGE_INVALID/cases.json +22 -0
  48. package/fixtures/invalid/build-provenance/REQUEST_FIELD_UNKNOWN/cases.json +56 -56
  49. package/fixtures/invalid/build-provenance/SCHEMA_CONSTANT_INVALID/cases.json +37 -37
  50. package/fixtures/invalid/build-provenance/SCHEMA_ENUM_INVALID/cases.json +11 -11
  51. package/fixtures/invalid/build-provenance/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  52. package/fixtures/invalid/build-provenance/SCHEMA_NEGATED_RULE_MATCHED/cases.json +0 -11
  53. package/fixtures/invalid/build-provenance/SCHEMA_PATTERN_INVALID/cases.json +0 -22
  54. package/fixtures/invalid/build-provenance/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +927 -927
  55. package/fixtures/invalid/build-provenance/SCHEMA_STRING_TOO_LONG/cases.json +9 -11
  56. package/fixtures/invalid/build-provenance/SCHEMA_STRING_TOO_SHORT/cases.json +8 -10
  57. package/fixtures/invalid/build-provenance/SCHEMA_TYPE_INVALID/cases.json +20 -25
  58. package/fixtures/invalid/build-provenance/UTF8_BYTE_LENGTH_INVALID/cases.json +0 -11
  59. package/fixtures/invalid/deployment-intent/INTEGER_RANGE_INVALID/cases.json +24 -0
  60. package/fixtures/invalid/deployment-intent/REQUEST_FIELD_UNKNOWN/cases.json +30 -30
  61. package/fixtures/invalid/deployment-intent/SCHEMA_CONSTANT_INVALID/cases.json +41 -41
  62. package/fixtures/invalid/deployment-intent/SCHEMA_ENUM_INVALID/cases.json +11 -11
  63. package/fixtures/invalid/deployment-intent/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  64. package/fixtures/invalid/deployment-intent/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +1209 -1209
  65. package/fixtures/invalid/deployment-intent/SCHEMA_STRING_TOO_LONG/cases.json +9 -0
  66. package/fixtures/invalid/deployment-intent/SCHEMA_STRING_TOO_SHORT/cases.json +9 -0
  67. package/fixtures/invalid/deployment-intent/SCHEMA_TYPE_INVALID/cases.json +22 -20
  68. package/fixtures/invalid/deployment-observation/INTEGER_RANGE_INVALID/cases.json +24 -0
  69. package/fixtures/invalid/deployment-observation/REQUEST_FIELD_UNKNOWN/cases.json +16 -16
  70. package/fixtures/invalid/deployment-observation/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  71. package/fixtures/invalid/deployment-observation/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +39 -39
  72. package/fixtures/invalid/deployment-observation/SCHEMA_STRING_TOO_LONG/cases.json +11 -0
  73. package/fixtures/invalid/deployment-observation/SCHEMA_STRING_TOO_SHORT/cases.json +11 -0
  74. package/fixtures/invalid/deployment-observation/SCHEMA_TYPE_INVALID/cases.json +11 -11
  75. package/fixtures/invalid/deployment-receipt/INTEGER_RANGE_INVALID/cases.json +24 -0
  76. package/fixtures/invalid/deployment-receipt/REQUEST_FIELD_UNKNOWN/cases.json +70 -70
  77. package/fixtures/invalid/deployment-receipt/SCHEMA_CONSTANT_INVALID/cases.json +36 -36
  78. package/fixtures/invalid/deployment-receipt/SCHEMA_ENUM_INVALID/cases.json +11 -11
  79. package/fixtures/invalid/deployment-receipt/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  80. package/fixtures/invalid/deployment-receipt/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +1304 -1304
  81. package/fixtures/invalid/deployment-receipt/SCHEMA_STRING_TOO_LONG/cases.json +9 -0
  82. package/fixtures/invalid/deployment-receipt/SCHEMA_STRING_TOO_SHORT/cases.json +9 -0
  83. package/fixtures/invalid/deployment-receipt/SCHEMA_TYPE_INVALID/cases.json +22 -20
  84. package/fixtures/invalid/navigation/SCHEMA_ARRAY_TOO_LONG/cases.json +0 -15
  85. package/fixtures/invalid/navigation/SCHEMA_CONSTANT_INVALID/cases.json +11 -0
  86. package/fixtures/invalid/navigation/SCHEMA_TYPE_INVALID/cases.json +0 -11
  87. package/fixtures/invalid/theme-contract/INTEGER_RANGE_INVALID/cases.json +11 -0
  88. package/fixtures/invalid/theme-contract/SCHEMA_FORMAT_INVALID/cases.json +0 -9
  89. package/fixtures/invalid/theme-contract/SCHEMA_STRING_TOO_LONG/cases.json +9 -0
  90. package/fixtures/invalid/theme-contract/SCHEMA_STRING_TOO_SHORT/cases.json +9 -0
  91. package/fixtures/manifest.json +3217 -2930
  92. package/fixtures/unknown-field/adapter-capability/rules.json +2 -0
  93. package/fixtures/unknown-field/artifact-manifest/rules.json +111 -114
  94. package/fixtures/unknown-field/build-input/rules.json +36 -32
  95. package/fixtures/unknown-field/build-provenance/rules.json +111 -114
  96. package/fixtures/unknown-field/deployment-intent/rules.json +109 -105
  97. package/fixtures/unknown-field/deployment-observation/rules.json +24 -20
  98. package/fixtures/unknown-field/deployment-receipt/rules.json +109 -105
  99. package/fixtures/unknown-field/navigation/rules.json +1 -3
  100. package/fixtures/unknown-field/theme-contract/rules.json +3 -0
  101. package/generated/browser/runtime-origins-validator-core.d.mts +10 -0
  102. package/generated/browser/runtime-origins-validator-core.mjs +35 -0
  103. package/generated/browser/validator-core.d.mts +10 -0
  104. package/generated/browser/validator-core.mjs +80 -0
  105. package/generated/typescript/contracts/artifact-manifest.d.ts +49 -48
  106. package/generated/typescript/contracts/build-input.d.ts +15 -15
  107. package/generated/typescript/contracts/build-provenance.d.ts +51 -50
  108. package/generated/typescript/contracts/deployment-intent.d.ts +6 -6
  109. package/generated/typescript/contracts/deployment-observation.d.ts +1 -1
  110. package/generated/typescript/contracts/deployment-receipt.d.ts +5 -5
  111. package/generated/typescript/contracts/navigation.d.ts +1 -1
  112. package/generated/typescript/index.js +11 -37
  113. package/openapi/http-catalog.json +14 -2
  114. package/openapi/openapi.yaml +527 -13
  115. package/package.json +19 -16
  116. package/sbom.cdx.json +23 -23
  117. package/schemas/adapter-capability.schema.json +5 -1
  118. package/schemas/appearance.schema.json +1 -1
  119. package/schemas/artifact-manifest.schema.json +15 -18
  120. package/schemas/build-input.schema.json +18 -11
  121. package/schemas/build-provenance.schema.json +15 -18
  122. package/schemas/deployment-intent.schema.json +13 -8
  123. package/schemas/deployment-observation.schema.json +10 -5
  124. package/schemas/deployment-receipt.schema.json +12 -7
  125. package/schemas/navigation.schema.json +5 -26
  126. package/schemas/theme-contract.schema.json +4 -2
  127. package/src/index.js +2 -2
  128. package/src/internal/browser-schema-validator.js +43 -0
  129. package/src/internal/format-validators.js +1 -1
  130. package/src/internal/gala-keywords.js +148 -0
  131. package/src/internal/validator-core.js +244 -108
  132. package/src/runtime-origins.js +18 -18
  133. package/types/index.d.ts +2 -2
  134. package/types/internal/browser-schema-validator.d.ts +16 -0
  135. package/types/internal/format-validators.d.ts +1 -1
  136. package/types/internal/gala-keywords.d.ts +68 -0
  137. package/types/internal/validator-core.d.ts +80 -1
  138. package/compatibility/compatibility.json +0 -594
  139. package/generated/java/src/main/java/io/gala/schema/generated/GalaSchemaRegistry.java +0 -67
  140. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityAdapterConfigurationCapabilities.java +0 -24
  141. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityAdapterIdentity.java +0 -20
  142. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityCapabilityDecision.java +0 -62
  143. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityCredentialEgressProfile.java +0 -35
  144. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityDestinationIdentity.java +0 -25
  145. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityDestinationProviderCoordinates.java +0 -19
  146. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityDocument.java +0 -52
  147. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityFilesystemProviderLimits.java +0 -32
  148. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityGithubActionsOidcOriginCatalog.java +0 -25
  149. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityHttpProviderLimits.java +0 -72
  150. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemAllowlist.java +0 -21
  151. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemAllowlistEntry.java +0 -28
  152. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemCapabilityEvidence.java +0 -42
  153. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemControlPublication.java +0 -26
  154. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemControlRow.java +0 -44
  155. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemFailureEvidence.java +0 -40
  156. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemObservationEvidence.java +0 -40
  157. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemPlatform.java +0 -25
  158. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemProbeSummary.java +0 -32
  159. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemProbeTranscript.java +0 -25
  160. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemReplacement.java +0 -22
  161. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityLocalFilesystemSurfaceIdentity.java +0 -20
  162. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityManagedExecutionBudget.java +0 -26
  163. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityPagesOidcCredentialEgress.java +0 -30
  164. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderCallClassBinding.java +0 -22
  165. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderCredentialEgress.java +0 -26
  166. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderCredentialHeader.java +0 -24
  167. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderDerivedHeader.java +0 -18
  168. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderFixedHeader.java +0 -18
  169. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilityProviderRequestTemplate.java +0 -39
  170. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilitySpacesControlPlaneBinding.java +0 -32
  171. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilitySpacesControlPlaneRequest.java +0 -26
  172. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilitySpacesControlPlaneRequestCatalog.java +0 -31
  173. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilitySpacesControlPlaneResponseCatalog.java +0 -20
  174. package/generated/java/src/main/java/io/gala/schema/generated/model/AdapterCapabilitySpacesWebsiteConfiguration.java +0 -24
  175. package/generated/java/src/main/java/io/gala/schema/generated/model/AppearanceColorMode.java +0 -19
  176. package/generated/java/src/main/java/io/gala/schema/generated/model/AppearanceDocument.java +0 -37
  177. package/generated/java/src/main/java/io/gala/schema/generated/model/AppearanceExtensionMap.java +0 -15
  178. package/generated/java/src/main/java/io/gala/schema/generated/model/AppearanceSemanticTokens.java +0 -15
  179. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestActionPinEvidence.java +0 -20
  180. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestArtifactLicenseConclusion.java +0 -21
  181. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestAssertedWorkload.java +0 -44
  182. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestBuildSandboxEvidence.java +0 -38
  183. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestDocument.java +0 -73
  184. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestFinding.java +0 -22
  185. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestAsset.java +0 -24
  186. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestCompositionIdentity.java +0 -25
  187. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestExcludedInput.java +0 -22
  188. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestIncludedSource.java +0 -22
  189. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestRedirect.java +0 -24
  190. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestRoute.java +0 -28
  191. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestSourceIdentity.java +0 -26
  192. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestManifestValidationEvidence.java +0 -22
  193. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestMeasurement.java +0 -20
  194. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestPackageIdentity.java +0 -22
  195. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestRenderPolicyIdentity.java +0 -20
  196. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestReproducibleBuildRecord.java +0 -56
  197. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestWorkflowCarrierEvidence.java +0 -26
  198. package/generated/java/src/main/java/io/gala/schema/generated/model/ArtifactManifestWorkflowFileEvidence.java +0 -26
  199. package/generated/java/src/main/java/io/gala/schema/generated/model/AuthorDocument.java +0 -33
  200. package/generated/java/src/main/java/io/gala/schema/generated/model/AuthorExtensionMap.java +0 -15
  201. package/generated/java/src/main/java/io/gala/schema/generated/model/AuthorLocalizedAuthor.java +0 -20
  202. package/generated/java/src/main/java/io/gala/schema/generated/model/AuthorSocialLink.java +0 -19
  203. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputAdapterIdentity.java +0 -20
  204. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputAppearanceNormalized.java +0 -33
  205. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputAuthorNormalized.java +0 -31
  206. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputBuildPackages.java +0 -25
  207. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputColorMode.java +0 -19
  208. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputContentBuildRecord.java +0 -33
  209. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputContentFrontmatterNormalized.java +0 -44
  210. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputDestinationCapabilityProfile.java +0 -20
  211. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputDocument.java +0 -51
  212. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputLocalizedAuthor.java +0 -20
  213. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputModuleBuildSelection.java +0 -15
  214. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputNavigationItem.java +0 -23
  215. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputNavigationLeaf.java +0 -22
  216. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputNavigationNormalized.java +0 -21
  217. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputPackageIdentity.java +0 -22
  218. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputPublicationNormalized.java +0 -39
  219. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputRenderPolicyIdentity.java +0 -20
  220. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputRenderableBody.java +0 -26
  221. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputRepositorySnapshot.java +0 -22
  222. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputResolvedFile.java +0 -18
  223. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputResolvedMedia.java +0 -20
  224. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputSemanticTokens.java +0 -15
  225. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildInputSocialLink.java +0 -19
  226. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceActionPinEvidence.java +0 -20
  227. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceArtifactLicenseConclusion.java +0 -21
  228. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceAssertedWorkload.java +0 -44
  229. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceBuildSandboxEvidence.java +0 -38
  230. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceDocument.java +0 -69
  231. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceFinding.java +0 -22
  232. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestAsset.java +0 -24
  233. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestCompositionIdentity.java +0 -25
  234. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestExcludedInput.java +0 -22
  235. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestIncludedSource.java +0 -22
  236. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestRedirect.java +0 -24
  237. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestRoute.java +0 -28
  238. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestSourceIdentity.java +0 -26
  239. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceManifestValidationEvidence.java +0 -22
  240. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceMeasurement.java +0 -20
  241. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenancePackageIdentity.java +0 -22
  242. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceRenderPolicyIdentity.java +0 -20
  243. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceReproducibleBuildRecord.java +0 -56
  244. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceWorkflowCarrierEvidence.java +0 -26
  245. package/generated/java/src/main/java/io/gala/schema/generated/model/BuildProvenanceWorkflowFileEvidence.java +0 -26
  246. package/generated/java/src/main/java/io/gala/schema/generated/model/ContentFrontmatterDocument.java +0 -50
  247. package/generated/java/src/main/java/io/gala/schema/generated/model/ContentFrontmatterExtensionMap.java +0 -15
  248. package/generated/java/src/main/java/io/gala/schema/generated/model/ContentFrontmatterMediaRef.java +0 -20
  249. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentActivationBasis.java +0 -20
  250. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentActivationDetectionObservation.java +0 -33
  251. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentActivationDetectionPlan.java +0 -44
  252. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentActivationDetectionProbe.java +0 -52
  253. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentAdapterIdentity.java +0 -20
  254. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentCancellationFinalizationEvidence.java +0 -41
  255. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDeadlineFinalizationEvidence.java +0 -39
  256. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDeadlineFinalizationStream.java +0 -22
  257. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDeploymentPolicyDecision.java +0 -75
  258. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDestinationIdentity.java +0 -25
  259. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDestinationMutationAuthority.java +0 -36
  260. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDestinationProviderCoordinates.java +0 -19
  261. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentDocument.java +0 -136
  262. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentExpectedRedirectHop.java +0 -23
  263. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentObservedVerificationHeader.java +0 -19
  264. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPackageIdentity.java +0 -22
  265. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPagesInterveningRunAttempt.java +0 -20
  266. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPagesReconciliationCommand.java +0 -48
  267. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPagesReconciliationRecovery.java +0 -41
  268. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPagesRunAttemptGapProof.java +0 -27
  269. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPublicGenerationMarkerPayload.java +0 -24
  270. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentPublicProbeObservation.java +0 -54
  271. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentRecognizedPriorRouteContract.java +0 -30
  272. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentRenderPolicyIdentity.java +0 -20
  273. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentReproducibleBuildRecord.java +0 -56
  274. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentSupersessionFinalizationEvidence.java +0 -45
  275. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentVerificationHeaderExpectation.java +0 -18
  276. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentIntentVerificationPlanTarget.java +0 -52
  277. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationActivationDetectionObservation.java +0 -33
  278. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationActivationDetectionProbe.java +0 -52
  279. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationAdapterIdentity.java +0 -20
  280. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationCancellationFinalizationEvidence.java +0 -41
  281. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationDeadlineFinalizationEvidence.java +0 -39
  282. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationDeadlineFinalizationStream.java +0 -22
  283. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationDestinationIdentity.java +0 -25
  284. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationDestinationProviderCoordinates.java +0 -19
  285. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationDocument.java +0 -57
  286. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationExpectedRedirectHop.java +0 -23
  287. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationObservedVerificationHeader.java +0 -19
  288. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationPackageIdentity.java +0 -22
  289. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationPublicProbeObservation.java +0 -54
  290. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationRecognizedPriorRouteContract.java +0 -30
  291. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationRenderPolicyIdentity.java +0 -20
  292. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationSupersessionFinalizationEvidence.java +0 -45
  293. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationVerificationHeaderExpectation.java +0 -18
  294. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentObservationVerificationPlanTarget.java +0 -52
  295. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptActivationBasis.java +0 -20
  296. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptActivationDetectionObservation.java +0 -33
  297. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptActivationDetectionPlan.java +0 -44
  298. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptActivationDetectionProbe.java +0 -52
  299. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptAdapterIdentity.java +0 -20
  300. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptCancellationFinalizationEvidence.java +0 -41
  301. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeadlineFinalizationEvidence.java +0 -39
  302. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeadlineFinalizationStream.java +0 -22
  303. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentAttempt.java +0 -38
  304. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentFailure.java +0 -24
  305. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentObservation.java +0 -53
  306. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentPolicyDecision.java +0 -75
  307. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentStageEvidence.java +0 -36
  308. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentStageInput.java +0 -26
  309. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentStageObservationEvidenceReference.java +0 -18
  310. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDeploymentStageResult.java +0 -31
  311. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDestinationIdentity.java +0 -25
  312. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDestinationMutationAuthority.java +0 -36
  313. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDestinationProviderCoordinates.java +0 -19
  314. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptDocument.java +0 -105
  315. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptExpectedRedirectHop.java +0 -23
  316. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptFinding.java +0 -22
  317. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptObservedVerificationHeader.java +0 -19
  318. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPackageIdentity.java +0 -22
  319. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPagesInterveningRunAttempt.java +0 -20
  320. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPagesReconciliationCommand.java +0 -48
  321. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPagesReconciliationRecovery.java +0 -41
  322. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPagesRunAttemptGapProof.java +0 -27
  323. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPublicGenerationMarkerPayload.java +0 -24
  324. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptPublicProbeObservation.java +0 -54
  325. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptRecognizedPriorRouteContract.java +0 -30
  326. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptRenderPolicyIdentity.java +0 -20
  327. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptReproducibleBuildRecord.java +0 -56
  328. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptSupersessionFinalizationEvidence.java +0 -45
  329. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptVerificationHeaderExpectation.java +0 -18
  330. package/generated/java/src/main/java/io/gala/schema/generated/model/DeploymentReceiptVerificationPlanTarget.java +0 -52
  331. package/generated/java/src/main/java/io/gala/schema/generated/model/EventEnvelopeDocument.java +0 -46
  332. package/generated/java/src/main/java/io/gala/schema/generated/model/EventEnvelopeRegisteredEventPayload.java +0 -26
  333. package/generated/java/src/main/java/io/gala/schema/generated/model/LockDependencyEdge.java +0 -18
  334. package/generated/java/src/main/java/io/gala/schema/generated/model/LockDocument.java +0 -39
  335. package/generated/java/src/main/java/io/gala/schema/generated/model/LockLockedPackage.java +0 -26
  336. package/generated/java/src/main/java/io/gala/schema/generated/model/LockLockedTemplate.java +0 -28
  337. package/generated/java/src/main/java/io/gala/schema/generated/model/LockPackageIdentity.java +0 -22
  338. package/generated/java/src/main/java/io/gala/schema/generated/model/NavigationDocument.java +0 -25
  339. package/generated/java/src/main/java/io/gala/schema/generated/model/NavigationExtensionMap.java +0 -15
  340. package/generated/java/src/main/java/io/gala/schema/generated/model/NavigationNavigationItem.java +0 -23
  341. package/generated/java/src/main/java/io/gala/schema/generated/model/NavigationNavigationLeaf.java +0 -23
  342. package/generated/java/src/main/java/io/gala/schema/generated/model/ProblemDocument.java +0 -37
  343. package/generated/java/src/main/java/io/gala/schema/generated/model/ProblemFieldError.java +0 -18
  344. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicGenerationMarkerDocument.java +0 -24
  345. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicRuntimeOriginsDocument.java +0 -44
  346. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicationDocument.java +0 -41
  347. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicationExtensionMap.java +0 -15
  348. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicationFooterCard.java +0 -23
  349. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicationPublicationProfile.java +0 -18
  350. package/generated/java/src/main/java/io/gala/schema/generated/model/PublicationSocialLink.java +0 -19
  351. package/generated/java/src/main/java/io/gala/schema/generated/model/RepositoryAssetRoot.java +0 -16
  352. package/generated/java/src/main/java/io/gala/schema/generated/model/RepositoryContentRoot.java +0 -23
  353. package/generated/java/src/main/java/io/gala/schema/generated/model/RepositoryDocument.java +0 -41
  354. package/generated/java/src/main/java/io/gala/schema/generated/model/RepositoryExtensionMap.java +0 -15
  355. package/generated/java/src/main/java/io/gala/schema/generated/model/RepositoryGeneratedRoot.java +0 -20
  356. package/generated/java/src/main/java/io/gala/schema/generated/model/TemplateCompositionDocument.java +0 -18
  357. package/generated/java/src/main/java/io/gala/schema/generated/model/ThemeContractDocument.java +0 -53
  358. package/generated/java/src/main/java/io/gala/schema/generated/model/ThemeContractPassiveAsset.java +0 -24
  359. package/generated/java/src/main/java/io/gala/schema/generated/model/ThemeContractThemeBudgets.java +0 -20
  360. package/generated/java/src/main/java/io/gala/schema/generated/model/ThemeContractThemeToken.java +0 -22
  361. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/adapter-capability.schema.json +0 -2689
  362. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/appearance.schema.json +0 -226
  363. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/artifact-manifest.schema.json +0 -1063
  364. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/author.schema.json +0 -231
  365. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/build-input.schema.json +0 -866
  366. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/build-provenance.schema.json +0 -937
  367. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/content-frontmatter.schema.json +0 -241
  368. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/deployment-intent.schema.json +0 -2067
  369. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/deployment-observation.schema.json +0 -1654
  370. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/deployment-receipt.schema.json +0 -5546
  371. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/event-envelope.schema.json +0 -195
  372. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/lock.schema.json +0 -326
  373. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/navigation.schema.json +0 -229
  374. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/problem.schema.json +0 -194
  375. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/public-generation-marker.schema.json +0 -142
  376. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/public-runtime-origins.schema.json +0 -183
  377. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/publication.schema.json +0 -248
  378. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/repository.schema.json +0 -219
  379. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/template-composition.schema.json +0 -133
  380. package/generated/java/src/main/resources/io/gala/schema/generated/schemas/theme-contract.schema.json +0 -850
  381. package/generated/typescript/validator-core.cjs +0 -17
  382. package/openapi/generator/spring.json +0 -22
  383. package/openapi/generator/typescript-fetch.json +0 -19
  384. package/openapi/source/authentication.yaml +0 -557
  385. package/openapi/source/callbacks.yaml +0 -332
  386. package/openapi/source/components.yaml +0 -5670
  387. package/openapi/source/github.yaml +0 -351
  388. package/openapi/source/internal.yaml +0 -71
  389. package/openapi/source/membership-invitations.yaml +0 -203
  390. package/openapi/source/organizations.yaml +0 -11144
  391. package/openapi/source/root.yaml +0 -20
  392. package/openapi/source/self.yaml +0 -1940
  393. package/openapi/source/session.yaml +0 -308
  394. package/openapi/source/workloads.yaml +0 -744
  395. package/src/internal/build-artifact-semantics.js +0 -4391
  396. package/src/internal/deployment-record-semantics.js +0 -7567
  397. package/src/internal/deployment-stage-semantics.js +0 -1207
  398. package/src/internal/http-problem-contract.js +0 -35
  399. package/src/internal/managed-evidence-journal.js +0 -160
  400. package/src/internal/public-runtime-origins.js +0 -143
  401. package/src/internal/theme-composition-semantics.js +0 -2441
  402. package/types/internal/build-artifact-semantics.d.ts +0 -77
  403. package/types/internal/deployment-record-semantics.d.ts +0 -313
  404. package/types/internal/deployment-stage-semantics.d.ts +0 -108
  405. package/types/internal/http-problem-contract.d.ts +0 -4
  406. package/types/internal/managed-evidence-journal.d.ts +0 -26
  407. package/types/internal/public-runtime-origins.d.ts +0 -22
  408. package/types/internal/theme-composition-semantics.d.ts +0 -143
@@ -1,866 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:gala:schema:build-input:2.0.0",
4
- "title": "Gala build-input contract",
5
- "type": "object",
6
- "required": [
7
- "schemaId",
8
- "schemaVersion",
9
- "contractVersion",
10
- "repository",
11
- "sourceRevision",
12
- "packages",
13
- "publication",
14
- "authors",
15
- "content",
16
- "navigation",
17
- "appearance",
18
- "modules",
19
- "buildEpoch",
20
- "baseUrl",
21
- "basePath",
22
- "destinationCapabilities",
23
- "placements",
24
- "inputDigest"
25
- ],
26
- "properties": {
27
- "schemaId": { "const": "urn:gala:schema:build-input:2.0.0" },
28
- "schemaVersion": { "const": "2.0.0" },
29
- "contractVersion": { "const": "2.0.0" },
30
- "repository": { "$ref": "#/$defs/repositorySnapshot" },
31
- "sourceRevision": { "$ref": "#/$defs/gitObjectId" },
32
- "packages": { "$ref": "#/$defs/buildPackages" },
33
- "publication": { "$ref": "#/$defs/publicationNormalized" },
34
- "authors": {
35
- "type": "array",
36
- "items": { "$ref": "#/$defs/authorNormalized" },
37
- "minItems": 1,
38
- "maxItems": 32
39
- },
40
- "content": {
41
- "type": "array",
42
- "items": { "$ref": "#/$defs/contentBuildRecord" },
43
- "minItems": 1,
44
- "maxItems": 100000
45
- },
46
- "navigation": { "$ref": "#/$defs/navigationNormalized" },
47
- "appearance": { "$ref": "#/$defs/appearanceNormalized" },
48
- "modules": { "$ref": "#/$defs/moduleBuildSelection" },
49
- "buildEpoch": { "$ref": "#/$defs/rfc3339" },
50
- "baseUrl": { "$ref": "#/$defs/urlHttps" },
51
- "basePath": { "$ref": "#/$defs/canonicalRoute" },
52
- "destinationCapabilities": {
53
- "$ref": "#/$defs/destinationCapabilityProfile"
54
- },
55
- "placements": { "const": [] },
56
- "inputDigest": { "$ref": "#/$defs/digest" }
57
- },
58
- "additionalProperties": false,
59
- "$defs": {
60
- "stableId": {
61
- "type": "string",
62
- "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$",
63
- "description": "Lowercase canonical UUIDv7. Once published, it is immutable; its time ordering conveys neither chronology nor authority."
64
- },
65
- "slug": {
66
- "type": "string",
67
- "minLength": 1,
68
- "maxLength": 80,
69
- "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
70
- },
71
- "repoRelativePath": {
72
- "type": "string",
73
- "minLength": 1,
74
- "maxLength": 512,
75
- "pattern": "^(?!/)(?!.*\\\\)(?!.*\\u0000).+$",
76
- "format": "gala-repository-relative-path",
77
- "x-gala-utf8ByteLength": { "maximum": 512 },
78
- "description": "NFC UTF-8 repository-relative path using slash separators, with no leading slash, dot segment, NUL, backslash, or percent-decoded traversal."
79
- },
80
- "canonicalRoute": {
81
- "type": "string",
82
- "minLength": 1,
83
- "pattern": "^/(?!/)(?!.*//)(?!.*[?#]).*$",
84
- "format": "gala-canonical-route",
85
- "description": "Absolute normalized route with no query, fragment, dot segment, double slash, or non-normalized percent encoding."
86
- },
87
- "gitObjectId": {
88
- "type": "string",
89
- "pattern": "^(?:sha1:[0-9a-f]{40}|sha256:[0-9a-f]{64})$"
90
- },
91
- "digest": { "type": "string", "pattern": "^sha256:[0-9a-f]{64}$" },
92
- "urlHttps": {
93
- "type": "string",
94
- "format": "uri",
95
- "pattern": "^https://(?![^/?#]*@)",
96
- "description": "Absolute HTTPS URL without embedded credentials."
97
- },
98
- "bcp47": {
99
- "type": "string",
100
- "minLength": 1,
101
- "maxLength": 255,
102
- "pattern": "^[A-Za-z0-9-]+$",
103
- "format": "gala-bcp47",
104
- "x-gala-utf8ByteLength": { "minimum": 1, "maximum": 255 },
105
- "description": "Structurally valid canonical BCP-47 language tag."
106
- },
107
- "isoCountry": {
108
- "type": "string",
109
- "pattern": "^[A-Z]{2}$",
110
- "format": "gala-iso-country",
111
- "description": "ISO 3166-1 alpha-2 country code; admission remains subject to the active policy profile."
112
- },
113
- "plainLabel": {
114
- "type": "string",
115
- "format": "gala-plain-label",
116
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 80 },
117
- "description": "Normalized Unicode plain text without markup, controls, or bidi overrides."
118
- },
119
- "plainText": {
120
- "type": "string",
121
- "format": "gala-plain-text",
122
- "description": "NFC Unicode text without disallowed C0/C1 controls or bidi override/isolate controls."
123
- },
124
- "rfc3339": {
125
- "type": "string",
126
- "format": "date-time",
127
- "pattern": "^[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12][0-9]|3[01])T(?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\\.[0-9]{3}Z$",
128
- "description": "Canonical Gala UTC millisecond subset of RFC 3339."
129
- },
130
- "semver": {
131
- "type": "string",
132
- "pattern": "^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-(?:0|[1-9]\\d*|\\d*[A-Za-z-][0-9A-Za-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[A-Za-z-][0-9A-Za-z-]*))*)?$",
133
- "description": "Canonical SemVer 2.0.0 without build metadata."
134
- },
135
- "semverRange": {
136
- "type": "string",
137
- "minLength": 1,
138
- "pattern": "^(?:\\S+|\\S+ \\S+)$",
139
- "format": "gala-semver-range",
140
- "description": "Whitespace-free npm-compatible exact, caret, or bounded comparator-set range; tags and URLs are invalid."
141
- },
142
- "packageRange": {
143
- "type": "string",
144
- "minLength": 3,
145
- "pattern": "^(?:@[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?/[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?|[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?)@(?:\\S+|\\S+ \\S+)$",
146
- "format": "gala-package-range",
147
- "description": "Lowercase npm package identity and admitted semver range; Git, file, URL, and alias sources are invalid."
148
- },
149
- "packageExact": {
150
- "type": "string",
151
- "minLength": 3,
152
- "pattern": "^(?:@[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?/[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?|[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?)@\\S+$",
153
- "format": "gala-package-exact",
154
- "description": "Lowercase npm package identity and exact canonical semantic version; aliases are invalid."
155
- },
156
- "urn": {
157
- "type": "string",
158
- "minLength": 10,
159
- "maxLength": 255,
160
- "format": "uri",
161
- "pattern": "^urn:gala:[\\x21-\\x7E]+$",
162
- "description": "Absolute ASCII URN in the schema-declared Gala namespace."
163
- },
164
- "glob": {
165
- "type": "string",
166
- "minLength": 1,
167
- "maxLength": 256,
168
- "format": "gala-repository-glob",
169
- "x-gala-utf8ByteLength": { "maximum": 256 },
170
- "description": "Repository-relative POSIX glob using only star, globstar, and question-mark operators; braces, extglobs, negation, absolute paths, and parent traversal are invalid."
171
- },
172
- "passiveVisualToken": false,
173
- "extensionKey": {
174
- "type": "string",
175
- "format": "gala-extension-key",
176
- "description": "Reverse-DNS extension namespace that cannot shadow a core key."
177
- },
178
- "npmPackageName": {
179
- "type": "string",
180
- "minLength": 1,
181
- "maxLength": 214,
182
- "pattern": "^(?:[a-z0-9][a-z0-9._-]*|@[a-z0-9][a-z0-9._-]*/[a-z0-9][a-z0-9._-]*)$",
183
- "x-gala-utf8ByteLength": { "maximum": 214 }
184
- },
185
- "githubPositiveDecimal": {
186
- "type": "string",
187
- "minLength": 1,
188
- "maxLength": 20,
189
- "pattern": "^[1-9][0-9]{0,19}$",
190
- "format": "gala-github-positive-uint64"
191
- },
192
- "packageIdentity": {
193
- "type": "object",
194
- "required": ["package", "version", "integrity", "registry"],
195
- "properties": {
196
- "package": { "$ref": "#/$defs/npmPackageName" },
197
- "version": { "$ref": "#/$defs/semver" },
198
- "integrity": { "$ref": "#/$defs/digest" },
199
- "registry": { "$ref": "#/$defs/urlHttps" }
200
- },
201
- "additionalProperties": false
202
- },
203
- "buildPackages": {
204
- "type": "object",
205
- "required": ["schemas", "template", "theme", "publisher", "dependencies"],
206
- "properties": {
207
- "schemas": {
208
- "allOf": [
209
- { "$ref": "#/$defs/packageIdentity" },
210
- {
211
- "properties": { "package": { "const": "@rathnasgala2/schemas" } }
212
- }
213
- ]
214
- },
215
- "template": {
216
- "allOf": [
217
- { "$ref": "#/$defs/packageIdentity" },
218
- {
219
- "properties": { "package": { "const": "@rathnasgala2/template" } }
220
- }
221
- ]
222
- },
223
- "theme": {
224
- "allOf": [
225
- { "$ref": "#/$defs/packageIdentity" },
226
- {
227
- "properties": {
228
- "package": {
229
- "enum": [
230
- "@rathnasgala2/theme-default",
231
- "@rathnasgala2/theme-amaze",
232
- "@rathnasgala2/theme-flashy",
233
- "@rathnasgala2/theme-minimal",
234
- "@rathnasgala2/theme-zebra"
235
- ]
236
- }
237
- }
238
- }
239
- ]
240
- },
241
- "publisher": {
242
- "type": "array",
243
- "prefixItems": [
244
- {
245
- "allOf": [
246
- { "$ref": "#/$defs/packageIdentity" },
247
- {
248
- "properties": {
249
- "package": { "const": "@rathnasgala2/publish-action" }
250
- }
251
- }
252
- ]
253
- },
254
- {
255
- "allOf": [
256
- { "$ref": "#/$defs/packageIdentity" },
257
- {
258
- "properties": {
259
- "package": { "const": "@rathnasgala2/publish-kernel" }
260
- }
261
- }
262
- ]
263
- },
264
- {
265
- "allOf": [
266
- { "$ref": "#/$defs/packageIdentity" },
267
- {
268
- "properties": {
269
- "package": { "const": "@rathnasgala2/adapter-protocol" }
270
- }
271
- }
272
- ]
273
- },
274
- {
275
- "allOf": [
276
- { "$ref": "#/$defs/packageIdentity" },
277
- {
278
- "properties": {
279
- "package": {
280
- "enum": [
281
- "@rathnasgala2/adapter-local-directory",
282
- "@rathnasgala2/adapter-github-pages",
283
- "@rathnasgala2/adapter-do-spaces"
284
- ]
285
- }
286
- }
287
- }
288
- ]
289
- }
290
- ],
291
- "items": false,
292
- "minItems": 4,
293
- "maxItems": 4
294
- },
295
- "dependencies": {
296
- "type": "array",
297
- "items": { "$ref": "#/$defs/packageIdentity" },
298
- "minItems": 0,
299
- "maxItems": 512,
300
- "uniqueItems": true
301
- }
302
- },
303
- "additionalProperties": false
304
- },
305
- "repositorySnapshot": {
306
- "type": "object",
307
- "required": [
308
- "repositoryId",
309
- "repositoryOwnerId",
310
- "sourceRevision",
311
- "rootDigest"
312
- ],
313
- "properties": {
314
- "repositoryId": { "$ref": "#/$defs/githubPositiveDecimal" },
315
- "repositoryOwnerId": { "$ref": "#/$defs/githubPositiveDecimal" },
316
- "sourceRevision": { "$ref": "#/$defs/gitObjectId" },
317
- "rootDigest": { "$ref": "#/$defs/digest" }
318
- },
319
- "additionalProperties": false
320
- },
321
- "resolvedFile": {
322
- "type": "object",
323
- "required": ["path", "sourceDigest"],
324
- "properties": {
325
- "path": { "$ref": "#/$defs/repoRelativePath" },
326
- "sourceDigest": { "$ref": "#/$defs/digest" }
327
- },
328
- "additionalProperties": false
329
- },
330
- "renderPolicyIdentity": {
331
- "type": "object",
332
- "required": ["name", "version", "digest"],
333
- "properties": {
334
- "name": { "const": "gala-render-policy" },
335
- "version": { "$ref": "#/$defs/semver" },
336
- "digest": { "$ref": "#/$defs/digest" }
337
- },
338
- "additionalProperties": false
339
- },
340
- "renderableBody": {
341
- "type": "object",
342
- "required": [
343
- "sourcePath",
344
- "sourceDigest",
345
- "bodyMediaType",
346
- "body",
347
- "bodyDigest",
348
- "renderPolicy"
349
- ],
350
- "properties": {
351
- "sourcePath": { "$ref": "#/$defs/repoRelativePath" },
352
- "sourceDigest": { "$ref": "#/$defs/digest" },
353
- "bodyMediaType": { "const": "text/html" },
354
- "body": { "type": "string", "minLength": 0, "maxLength": 2000000 },
355
- "bodyDigest": { "$ref": "#/$defs/digest" },
356
- "renderPolicy": { "$ref": "#/$defs/renderPolicyIdentity" }
357
- },
358
- "additionalProperties": false
359
- },
360
- "resolvedMedia": {
361
- "type": "object",
362
- "required": ["file", "alt", "role"],
363
- "properties": {
364
- "file": { "$ref": "#/$defs/resolvedFile" },
365
- "alt": {
366
- "type": "string",
367
- "x-gala-graphemeLength": { "minimum": 0, "maximum": 300 }
368
- },
369
- "role": { "enum": ["informative", "decorative"] }
370
- },
371
- "additionalProperties": false,
372
- "allOf": [
373
- {
374
- "if": {
375
- "properties": { "role": { "const": "decorative" } },
376
- "required": ["role"]
377
- },
378
- "then": { "properties": { "alt": { "const": "" } } },
379
- "else": { "properties": { "alt": { "minLength": 1 } } }
380
- }
381
- ]
382
- },
383
- "socialLink": {
384
- "type": "object",
385
- "required": ["type", "uri"],
386
- "properties": {
387
- "type": {
388
- "enum": [
389
- "website",
390
- "email",
391
- "github",
392
- "linkedin",
393
- "mastodon",
394
- "bluesky",
395
- "x",
396
- "youtube",
397
- "other"
398
- ]
399
- },
400
- "uri": { "type": "string", "minLength": 1, "maxLength": 2048 },
401
- "label": { "$ref": "#/$defs/plainLabel" }
402
- },
403
- "additionalProperties": false,
404
- "allOf": [
405
- {
406
- "if": {
407
- "properties": { "type": { "const": "email" } },
408
- "required": ["type"]
409
- },
410
- "then": {
411
- "properties": {
412
- "uri": {
413
- "type": "string",
414
- "format": "uri",
415
- "pattern": "^mailto:"
416
- }
417
- }
418
- },
419
- "else": { "properties": { "uri": { "$ref": "#/$defs/urlHttps" } } }
420
- }
421
- ]
422
- },
423
- "localizedAuthor": {
424
- "type": "object",
425
- "required": ["language", "displayName", "biography"],
426
- "properties": {
427
- "language": { "$ref": "#/$defs/bcp47" },
428
- "displayName": {
429
- "$ref": "#/$defs/plainText",
430
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 120 }
431
- },
432
- "biography": {
433
- "$ref": "#/$defs/plainText",
434
- "x-gala-graphemeLength": { "minimum": 0, "maximum": 2000 }
435
- }
436
- },
437
- "additionalProperties": false
438
- },
439
- "publicationNormalized": {
440
- "type": "object",
441
- "required": [
442
- "id",
443
- "slug",
444
- "title",
445
- "description",
446
- "canonicalBase",
447
- "defaultLanguage",
448
- "authorIds",
449
- "socialLinks",
450
- "sourcePath",
451
- "sourceDigest"
452
- ],
453
- "properties": {
454
- "id": { "$ref": "#/$defs/stableId" },
455
- "slug": { "$ref": "#/$defs/slug" },
456
- "title": {
457
- "$ref": "#/$defs/plainText",
458
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 200 }
459
- },
460
- "description": {
461
- "$ref": "#/$defs/plainText",
462
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 500 }
463
- },
464
- "canonicalBase": { "$ref": "#/$defs/urlHttps" },
465
- "defaultLanguage": { "$ref": "#/$defs/bcp47" },
466
- "authorIds": {
467
- "type": "array",
468
- "items": { "$ref": "#/$defs/stableId" },
469
- "minItems": 1,
470
- "maxItems": 32
471
- },
472
- "contactAuthorId": { "$ref": "#/$defs/stableId" },
473
- "socialLinks": {
474
- "type": "array",
475
- "items": { "$ref": "#/$defs/socialLink" },
476
- "minItems": 0,
477
- "maxItems": 32
478
- },
479
- "defaultImage": { "$ref": "#/$defs/resolvedFile" },
480
- "profile": {
481
- "type": "object",
482
- "required": ["route", "body"],
483
- "properties": {
484
- "route": { "$ref": "#/$defs/canonicalRoute" },
485
- "body": { "$ref": "#/$defs/renderableBody" }
486
- },
487
- "additionalProperties": false
488
- },
489
- "footerCard": {
490
- "type": "object",
491
- "required": ["enabled", "heading", "body", "authorIds"],
492
- "properties": {
493
- "enabled": { "type": "boolean" },
494
- "heading": {
495
- "$ref": "#/$defs/plainText",
496
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 120 }
497
- },
498
- "body": { "$ref": "#/$defs/renderableBody" },
499
- "authorIds": {
500
- "type": "array",
501
- "items": { "$ref": "#/$defs/stableId" },
502
- "minItems": 1,
503
- "maxItems": 32
504
- }
505
- },
506
- "additionalProperties": false
507
- },
508
- "sourcePath": { "$ref": "#/$defs/repoRelativePath" },
509
- "sourceDigest": { "$ref": "#/$defs/digest" }
510
- },
511
- "additionalProperties": false
512
- },
513
- "authorNormalized": {
514
- "type": "object",
515
- "required": [
516
- "id",
517
- "displayName",
518
- "biography",
519
- "links",
520
- "localized",
521
- "sourcePath",
522
- "sourceDigest"
523
- ],
524
- "properties": {
525
- "id": { "$ref": "#/$defs/stableId" },
526
- "displayName": {
527
- "$ref": "#/$defs/plainText",
528
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 120 }
529
- },
530
- "biography": {
531
- "$ref": "#/$defs/plainText",
532
- "x-gala-graphemeLength": { "minimum": 0, "maximum": 2000 }
533
- },
534
- "pronouns": {
535
- "$ref": "#/$defs/plainText",
536
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 80 }
537
- },
538
- "avatar": { "$ref": "#/$defs/resolvedFile" },
539
- "links": {
540
- "type": "array",
541
- "items": { "$ref": "#/$defs/socialLink" },
542
- "minItems": 0,
543
- "maxItems": 32
544
- },
545
- "localized": {
546
- "type": "array",
547
- "items": { "$ref": "#/$defs/localizedAuthor" },
548
- "minItems": 0,
549
- "maxItems": 32
550
- },
551
- "sourcePath": { "$ref": "#/$defs/repoRelativePath" },
552
- "sourceDigest": { "$ref": "#/$defs/digest" }
553
- },
554
- "additionalProperties": false
555
- },
556
- "navigationLeaf": {
557
- "type": "object",
558
- "required": ["type", "label", "children"],
559
- "properties": {
560
- "type": { "enum": ["internal", "external"] },
561
- "label": { "$ref": "#/$defs/plainLabel" },
562
- "route": { "$ref": "#/$defs/canonicalRoute" },
563
- "url": { "$ref": "#/$defs/urlHttps" },
564
- "children": { "const": [] }
565
- },
566
- "additionalProperties": false,
567
- "allOf": [
568
- {
569
- "if": {
570
- "properties": { "type": { "const": "internal" } },
571
- "required": ["type"]
572
- },
573
- "then": { "required": ["route"], "not": { "required": ["url"] } },
574
- "else": { "required": ["url"], "not": { "required": ["route"] } }
575
- }
576
- ]
577
- },
578
- "navigationItem": {
579
- "type": "object",
580
- "required": ["type", "label", "children"],
581
- "properties": {
582
- "type": { "enum": ["internal", "external"] },
583
- "label": { "$ref": "#/$defs/plainLabel" },
584
- "route": { "$ref": "#/$defs/canonicalRoute" },
585
- "url": { "$ref": "#/$defs/urlHttps" },
586
- "children": {
587
- "type": "array",
588
- "items": { "$ref": "#/$defs/navigationLeaf" },
589
- "minItems": 0,
590
- "maxItems": 20
591
- }
592
- },
593
- "additionalProperties": false,
594
- "allOf": [
595
- {
596
- "if": {
597
- "properties": { "type": { "const": "internal" } },
598
- "required": ["type"]
599
- },
600
- "then": { "required": ["route"], "not": { "required": ["url"] } },
601
- "else": { "required": ["url"], "not": { "required": ["route"] } }
602
- }
603
- ]
604
- },
605
- "normalizedSource": {
606
- "oneOf": [
607
- {
608
- "type": "object",
609
- "required": ["kind", "sourcePath", "sourceDigest"],
610
- "properties": {
611
- "kind": { "const": "authored" },
612
- "sourcePath": { "$ref": "#/$defs/repoRelativePath" },
613
- "sourceDigest": { "$ref": "#/$defs/digest" }
614
- },
615
- "additionalProperties": false
616
- },
617
- {
618
- "type": "object",
619
- "required": ["kind", "defaultId", "defaultDigest"],
620
- "properties": {
621
- "kind": { "const": "built-in-default" },
622
- "defaultId": { "$ref": "#/$defs/urn" },
623
- "defaultDigest": { "$ref": "#/$defs/digest" }
624
- },
625
- "additionalProperties": false
626
- }
627
- ]
628
- },
629
- "navigationNormalized": {
630
- "type": "object",
631
- "required": ["items", "footerItems", "source"],
632
- "properties": {
633
- "items": {
634
- "type": "array",
635
- "items": { "$ref": "#/$defs/navigationItem" },
636
- "minItems": 0,
637
- "maxItems": 100
638
- },
639
- "footerItems": {
640
- "type": "array",
641
- "items": { "$ref": "#/$defs/navigationItem" },
642
- "minItems": 0,
643
- "maxItems": 50
644
- },
645
- "source": { "$ref": "#/$defs/normalizedSource" }
646
- },
647
- "additionalProperties": false
648
- },
649
- "colorMode": {
650
- "type": "object",
651
- "required": ["allowed", "default"],
652
- "properties": {
653
- "allowed": {
654
- "type": "array",
655
- "items": { "enum": ["light", "dark", "system"] },
656
- "minItems": 1,
657
- "maxItems": 3,
658
- "uniqueItems": true
659
- },
660
- "default": { "enum": ["light", "dark", "system"] }
661
- },
662
- "additionalProperties": false,
663
- "allOf": [
664
- {
665
- "if": {
666
- "properties": { "default": { "const": "light" } },
667
- "required": ["default"]
668
- },
669
- "then": {
670
- "properties": { "allowed": { "contains": { "const": "light" } } }
671
- }
672
- },
673
- {
674
- "if": {
675
- "properties": { "default": { "const": "dark" } },
676
- "required": ["default"]
677
- },
678
- "then": {
679
- "properties": { "allowed": { "contains": { "const": "dark" } } }
680
- }
681
- },
682
- {
683
- "if": {
684
- "properties": { "default": { "const": "system" } },
685
- "required": ["default"]
686
- },
687
- "then": {
688
- "properties": { "allowed": { "contains": { "const": "system" } } }
689
- }
690
- }
691
- ],
692
- "$comment": "The semantic validator also enforces canonical set ordering for allowed."
693
- },
694
- "semanticTokens": {
695
- "type": "object",
696
- "required": [],
697
- "properties": {},
698
- "additionalProperties": false,
699
- "maxProperties": 0,
700
- "$comment": "Fail closed: only the documented empty object is accepted until the author semantic-token catalog is accepted."
701
- },
702
- "appearanceNormalized": {
703
- "type": "object",
704
- "required": [
705
- "theme",
706
- "colorMode",
707
- "headerComposition",
708
- "footerComposition",
709
- "typeScale",
710
- "fontAssets",
711
- "tokens",
712
- "source"
713
- ],
714
- "properties": {
715
- "theme": {
716
- "allOf": [
717
- { "$ref": "#/$defs/packageExact" },
718
- {
719
- "pattern": "^@rathnasgala2/theme-(?:default|amaze|flashy|minimal|zebra)@"
720
- }
721
- ]
722
- },
723
- "colorMode": { "$ref": "#/$defs/colorMode" },
724
- "brandMark": { "$ref": "#/$defs/resolvedFile" },
725
- "wordmark": { "$ref": "#/$defs/resolvedFile" },
726
- "headerComposition": {
727
- "enum": ["mark-and-name", "name-only", "mark-only"]
728
- },
729
- "footerComposition": { "enum": ["profile", "compact", "minimal"] },
730
- "typeScale": { "enum": ["compact", "standard", "spacious"] },
731
- "fontAssets": {
732
- "type": "array",
733
- "items": { "$ref": "#/$defs/resolvedFile" },
734
- "minItems": 0,
735
- "maxItems": 8
736
- },
737
- "tokens": { "$ref": "#/$defs/semanticTokens" },
738
- "source": { "$ref": "#/$defs/normalizedSource" }
739
- },
740
- "additionalProperties": false
741
- },
742
- "contentFrontmatterNormalized": {
743
- "type": "object",
744
- "required": [
745
- "id",
746
- "kind",
747
- "title",
748
- "language",
749
- "authorIds",
750
- "tags",
751
- "status",
752
- "createdAt",
753
- "publishedAt",
754
- "slug",
755
- "redirects"
756
- ],
757
- "properties": {
758
- "id": { "$ref": "#/$defs/stableId" },
759
- "kind": { "enum": ["article", "page"] },
760
- "title": {
761
- "$ref": "#/$defs/plainText",
762
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 200 }
763
- },
764
- "description": {
765
- "$ref": "#/$defs/plainText",
766
- "x-gala-graphemeLength": { "minimum": 0, "maximum": 500 }
767
- },
768
- "language": { "$ref": "#/$defs/bcp47" },
769
- "authorIds": {
770
- "type": "array",
771
- "items": { "$ref": "#/$defs/stableId" },
772
- "minItems": 1,
773
- "maxItems": 32
774
- },
775
- "tags": {
776
- "type": "array",
777
- "items": { "$ref": "#/$defs/plainLabel" },
778
- "minItems": 0,
779
- "maxItems": 32,
780
- "uniqueItems": true
781
- },
782
- "series": { "$ref": "#/$defs/plainLabel" },
783
- "seriesOrder": { "type": "integer", "minimum": 1, "maximum": 1000000 },
784
- "status": { "enum": ["published", "unlisted"] },
785
- "createdAt": { "$ref": "#/$defs/rfc3339" },
786
- "publishedAt": { "$ref": "#/$defs/rfc3339" },
787
- "updatedAt": { "$ref": "#/$defs/rfc3339" },
788
- "slug": { "$ref": "#/$defs/slug" },
789
- "route": { "$ref": "#/$defs/canonicalRoute" },
790
- "hero": { "$ref": "#/$defs/resolvedMedia" },
791
- "socialImage": { "$ref": "#/$defs/resolvedFile" },
792
- "redirects": {
793
- "type": "array",
794
- "items": { "$ref": "#/$defs/canonicalRoute" },
795
- "minItems": 0,
796
- "maxItems": 32,
797
- "uniqueItems": true
798
- }
799
- },
800
- "additionalProperties": false,
801
- "dependentRequired": { "seriesOrder": ["series"] },
802
- "$comment": "Timestamp ordering, canonical set ordering, route derivation, and route/redirect collision rules are enforced semantically."
803
- },
804
- "contentBuildRecord": {
805
- "type": "object",
806
- "required": [
807
- "frontmatter",
808
- "body",
809
- "bodyMediaType",
810
- "bodyDigest",
811
- "renderPolicy",
812
- "sourcePath",
813
- "sourceRevision",
814
- "sourceDigest",
815
- "resolvedAuthorIds"
816
- ],
817
- "properties": {
818
- "frontmatter": { "$ref": "#/$defs/contentFrontmatterNormalized" },
819
- "body": { "type": "string", "minLength": 0, "maxLength": 2000000 },
820
- "bodyMediaType": { "const": "text/html" },
821
- "bodyDigest": { "$ref": "#/$defs/digest" },
822
- "renderPolicy": { "$ref": "#/$defs/renderPolicyIdentity" },
823
- "sourcePath": { "$ref": "#/$defs/repoRelativePath" },
824
- "sourceRevision": { "$ref": "#/$defs/gitObjectId" },
825
- "sourceDigest": { "$ref": "#/$defs/digest" },
826
- "resolvedAuthorIds": {
827
- "type": "array",
828
- "items": { "$ref": "#/$defs/stableId" },
829
- "minItems": 1,
830
- "maxItems": 32
831
- }
832
- },
833
- "additionalProperties": false
834
- },
835
- "moduleBuildSelection": {
836
- "type": "object",
837
- "required": [],
838
- "properties": {},
839
- "additionalProperties": false,
840
- "maxProperties": 0
841
- },
842
- "adapterIdentity": {
843
- "type": "object",
844
- "required": ["adapterId", "adapterVersion", "adapterDigest"],
845
- "properties": {
846
- "adapterId": {
847
- "enum": ["local-directory", "github-pages", "do-spaces"]
848
- },
849
- "adapterVersion": { "$ref": "#/$defs/semver" },
850
- "adapterDigest": { "$ref": "#/$defs/digest" }
851
- },
852
- "additionalProperties": false
853
- },
854
- "destinationCapabilityProfile": {
855
- "type": "object",
856
- "required": ["adapter", "baseUrl", "capabilityDigest"],
857
- "properties": {
858
- "adapter": { "$ref": "#/$defs/adapterIdentity" },
859
- "baseUrl": { "$ref": "#/$defs/urlHttps" },
860
- "capabilityDigest": { "$ref": "#/$defs/digest" }
861
- },
862
- "additionalProperties": false
863
- }
864
- },
865
- "$comment": "The semantic validator enforces exact source projection, reference resolution, canonical array ordering, source/tree/digest equalities, one global render policy, package/lock equality, default-object digests, destination binding, directory-form basePath, and the self-excluding input digest."
866
- }