@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,2067 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:gala:schema:deployment-intent:2.0.0",
4
- "title": "Gala deployment-intent contract",
5
- "type": "object",
6
- "required": [
7
- "schemaId",
8
- "schemaVersion",
9
- "operationId",
10
- "attemptId",
11
- "idempotencyKey",
12
- "sourceCommit",
13
- "workflowTriggerCommit",
14
- "artifactId",
15
- "artifactDigest",
16
- "manifestDigest",
17
- "artifactByteCount",
18
- "artifactFileCount",
19
- "provenanceDigest",
20
- "sbomDigest",
21
- "frozenHandoffArtifactId",
22
- "frozenHandoffName",
23
- "frozenEnvelopeDigest",
24
- "frozenEnvelopeByteCount",
25
- "requestedArtifactRetentionDays",
26
- "effectiveArtifactExpiresAt",
27
- "maximumReportRequestByteCount",
28
- "lockDigest",
29
- "rebuildRecord",
30
- "publisher",
31
- "adapter",
32
- "destination",
33
- "destinationMutationAuthority",
34
- "proposedGenerationId",
35
- "capabilityDecisionDigest",
36
- "policyReleaseId",
37
- "policyProfile",
38
- "policyVersion",
39
- "approvedOverrides",
40
- "policyDecisionDigest",
41
- "networkBoundaryProfileDigest",
42
- "publicTlsProfileDigest",
43
- "publicTlsTrustStoreDigest",
44
- "publicTlsRevocationSetDigest",
45
- "workloadBindingDigest",
46
- "activationDetectionProfile",
47
- "activationDetectionPlanDigest",
48
- "maximumActivationDetectionAttempts",
49
- "activationDetectionIntervalSeconds",
50
- "verificationTier",
51
- "verificationOrigins",
52
- "verificationPlanDigest",
53
- "maximumPublicVerificationSeconds",
54
- "verificationDeadlineLimit",
55
- "maximumFinalizationDelaySeconds",
56
- "finalizationDeadlineLimit",
57
- "marker",
58
- "issuer",
59
- "subject",
60
- "audience",
61
- "capability",
62
- "authorizedAt",
63
- "expiresAt",
64
- "operationDeadline",
65
- "intentDigest"
66
- ],
67
- "properties": {
68
- "schemaId": { "const": "urn:gala:schema:deployment-intent:2.0.0" },
69
- "schemaVersion": { "const": "2.0.0" },
70
- "operationId": { "$ref": "#/$defs/stableId" },
71
- "attemptId": { "$ref": "#/$defs/stableId" },
72
- "idempotencyKey": { "$ref": "#/$defs/stableId" },
73
- "sourceCommit": { "$ref": "#/$defs/gitObjectId" },
74
- "workflowTriggerCommit": { "$ref": "#/$defs/gitObjectId" },
75
- "artifactId": { "$ref": "#/$defs/stableId" },
76
- "artifactDigest": { "$ref": "#/$defs/digest" },
77
- "manifestDigest": { "$ref": "#/$defs/digest" },
78
- "artifactByteCount": { "$ref": "#/$defs/positiveInt64" },
79
- "artifactFileCount": { "$ref": "#/$defs/positiveInt64" },
80
- "provenanceDigest": { "$ref": "#/$defs/digest" },
81
- "sbomDigest": { "$ref": "#/$defs/digest" },
82
- "frozenHandoffArtifactId": { "$ref": "#/$defs/githubActionsArtifactId" },
83
- "frozenHandoffName": { "$ref": "#/$defs/plainLabel" },
84
- "frozenEnvelopeDigest": { "$ref": "#/$defs/digest" },
85
- "frozenEnvelopeByteCount": { "$ref": "#/$defs/positiveInt64" },
86
- "requestedArtifactRetentionDays": {
87
- "type": "integer",
88
- "minimum": 1,
89
- "maximum": 7
90
- },
91
- "effectiveArtifactExpiresAt": { "$ref": "#/$defs/rfc3339" },
92
- "maximumReportRequestByteCount": { "$ref": "#/$defs/positiveInt64" },
93
- "lockDigest": { "$ref": "#/$defs/digest" },
94
- "rebuildRecord": { "$ref": "#/$defs/reproducibleBuildRecord" },
95
- "publisher": {
96
- "allOf": [
97
- { "$ref": "#/$defs/packageIdentity" },
98
- {
99
- "properties": {
100
- "package": { "const": "@rathnasgala2/publish-action" }
101
- },
102
- "required": ["package"]
103
- }
104
- ]
105
- },
106
- "adapter": { "$ref": "#/$defs/adapterIdentity" },
107
- "destination": { "$ref": "#/$defs/destinationIdentity" },
108
- "destinationMutationAuthority": {
109
- "$ref": "#/$defs/destinationMutationAuthority"
110
- },
111
- "expectedGenerationId": { "$ref": "#/$defs/generationFence" },
112
- "proposedGenerationId": { "$ref": "#/$defs/stableId" },
113
- "pagesBuildVersion": { "$ref": "#/$defs/lowerHex40" },
114
- "spacesStagePrefix": {
115
- "type": "string",
116
- "minLength": 1,
117
- "maxLength": 512,
118
- "pattern": "^_gala/staged/v2/[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$",
119
- "x-gala-utf8ByteLength": { "maximum": 512 }
120
- },
121
- "capabilityDecisionDigest": { "$ref": "#/$defs/digest" },
122
- "policyReleaseId": { "$ref": "#/$defs/stableId" },
123
- "policyProfile": { "$ref": "#/$defs/plainLabel" },
124
- "policyVersion": { "$ref": "#/$defs/semver" },
125
- "approvedOverrides": { "const": [] },
126
- "policyDecisionDigest": { "$ref": "#/$defs/digest" },
127
- "networkBoundaryProfileDigest": { "$ref": "#/$defs/digest" },
128
- "publicTlsProfileDigest": { "$ref": "#/$defs/digest" },
129
- "publicTlsTrustStoreDigest": { "$ref": "#/$defs/digest" },
130
- "publicTlsRevocationSetDigest": { "$ref": "#/$defs/digest" },
131
- "workloadBindingDigest": { "$ref": "#/$defs/digest" },
132
- "activationDetectionProfile": {
133
- "const": "gala-public-activation-detection-v2"
134
- },
135
- "activationDetectionPlanDigest": { "$ref": "#/$defs/digest" },
136
- "maximumActivationDetectionAttempts": { "const": 91 },
137
- "activationDetectionIntervalSeconds": { "const": 60 },
138
- "verificationTier": {
139
- "enum": [
140
- "provider-complete-digest",
141
- "full-public-fetch",
142
- "deterministic-sample",
143
- "critical-only"
144
- ]
145
- },
146
- "verificationOrigins": {
147
- "type": "array",
148
- "items": { "$ref": "#/$defs/verificationOrigin" },
149
- "minItems": 1,
150
- "maxItems": 8,
151
- "uniqueItems": true
152
- },
153
- "verificationPlanDigest": { "$ref": "#/$defs/digest" },
154
- "maximumPublicVerificationSeconds": {
155
- "type": "integer",
156
- "minimum": 1,
157
- "maximum": 3600
158
- },
159
- "verificationDeadlineLimit": { "$ref": "#/$defs/rfc3339" },
160
- "maximumFinalizationDelaySeconds": { "const": 300 },
161
- "finalizationDeadlineLimit": { "$ref": "#/$defs/rfc3339" },
162
- "marker": { "$ref": "#/$defs/publicGenerationMarkerPayload" },
163
- "issuer": { "$ref": "#/$defs/urlHttps" },
164
- "subject": { "$ref": "#/$defs/urn" },
165
- "audience": { "const": "urn:gala:deployment-kernel:v2" },
166
- "capability": { "const": "deploy" },
167
- "authorizedAt": { "$ref": "#/$defs/rfc3339" },
168
- "expiresAt": { "$ref": "#/$defs/rfc3339" },
169
- "operationDeadline": { "$ref": "#/$defs/rfc3339" },
170
- "intentDigest": { "$ref": "#/$defs/digest" }
171
- },
172
- "additionalProperties": false,
173
- "$defs": {
174
- "stableId": {
175
- "type": "string",
176
- "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$",
177
- "description": "Lowercase canonical UUIDv7. Once published, it is immutable; its time ordering conveys neither chronology nor authority."
178
- },
179
- "slug": {
180
- "type": "string",
181
- "minLength": 1,
182
- "maxLength": 80,
183
- "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
184
- },
185
- "repoRelativePath": {
186
- "type": "string",
187
- "minLength": 1,
188
- "maxLength": 512,
189
- "pattern": "^(?!/)(?!.*\\\\)(?!.*\\u0000).+$",
190
- "format": "gala-repository-relative-path",
191
- "x-gala-utf8ByteLength": { "maximum": 512 },
192
- "description": "NFC UTF-8 repository-relative path using slash separators, with no leading slash, dot segment, NUL, backslash, or percent-decoded traversal."
193
- },
194
- "canonicalRoute": {
195
- "type": "string",
196
- "minLength": 1,
197
- "pattern": "^/(?!/)(?!.*//)(?!.*[?#]).*$",
198
- "format": "gala-canonical-route",
199
- "description": "Absolute normalized route with no query, fragment, dot segment, double slash, or non-normalized percent encoding."
200
- },
201
- "gitObjectId": {
202
- "type": "string",
203
- "pattern": "^(?:sha1:[0-9a-f]{40}|sha256:[0-9a-f]{64})$"
204
- },
205
- "digest": { "type": "string", "pattern": "^sha256:[0-9a-f]{64}$" },
206
- "urlHttps": {
207
- "type": "string",
208
- "format": "uri",
209
- "pattern": "^https://(?![^/?#]*@)",
210
- "description": "Absolute HTTPS URL without embedded credentials."
211
- },
212
- "bcp47": {
213
- "type": "string",
214
- "minLength": 1,
215
- "maxLength": 255,
216
- "pattern": "^[A-Za-z0-9-]+$",
217
- "format": "gala-bcp47",
218
- "x-gala-utf8ByteLength": { "minimum": 1, "maximum": 255 },
219
- "description": "Structurally valid canonical BCP-47 language tag."
220
- },
221
- "isoCountry": {
222
- "type": "string",
223
- "pattern": "^[A-Z]{2}$",
224
- "format": "gala-iso-country",
225
- "description": "ISO 3166-1 alpha-2 country code; admission remains subject to the active policy profile."
226
- },
227
- "plainLabel": {
228
- "type": "string",
229
- "format": "gala-plain-label",
230
- "x-gala-graphemeLength": { "minimum": 1, "maximum": 80 },
231
- "description": "Normalized Unicode plain text without markup, controls, or bidi overrides."
232
- },
233
- "plainText": {
234
- "type": "string",
235
- "format": "gala-plain-text",
236
- "description": "NFC Unicode text without disallowed C0/C1 controls or bidi override/isolate controls."
237
- },
238
- "rfc3339": {
239
- "type": "string",
240
- "format": "date-time",
241
- "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$",
242
- "description": "Canonical Gala UTC millisecond subset of RFC 3339."
243
- },
244
- "semver": {
245
- "type": "string",
246
- "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-]*))*)?$",
247
- "description": "Canonical SemVer 2.0.0 without build metadata."
248
- },
249
- "semverRange": {
250
- "type": "string",
251
- "minLength": 1,
252
- "pattern": "^(?:\\S+|\\S+ \\S+)$",
253
- "format": "gala-semver-range",
254
- "description": "Whitespace-free npm-compatible exact, caret, or bounded comparator-set range; tags and URLs are invalid."
255
- },
256
- "packageRange": {
257
- "type": "string",
258
- "minLength": 3,
259
- "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+)$",
260
- "format": "gala-package-range",
261
- "description": "Lowercase npm package identity and admitted semver range; Git, file, URL, and alias sources are invalid."
262
- },
263
- "packageExact": {
264
- "type": "string",
265
- "minLength": 3,
266
- "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+$",
267
- "format": "gala-package-exact",
268
- "description": "Lowercase npm package identity and exact canonical semantic version; aliases are invalid."
269
- },
270
- "urn": {
271
- "type": "string",
272
- "minLength": 10,
273
- "maxLength": 255,
274
- "format": "uri",
275
- "pattern": "^urn:gala:[\\x21-\\x7E]+$",
276
- "description": "Absolute ASCII URN in the schema-declared Gala namespace."
277
- },
278
- "glob": {
279
- "type": "string",
280
- "minLength": 1,
281
- "maxLength": 256,
282
- "format": "gala-repository-glob",
283
- "x-gala-utf8ByteLength": { "maximum": 256 },
284
- "description": "Repository-relative POSIX glob using only star, globstar, and question-mark operators; braces, extglobs, negation, absolute paths, and parent traversal are invalid."
285
- },
286
- "passiveVisualToken": false,
287
- "extensionKey": {
288
- "type": "string",
289
- "format": "gala-extension-key",
290
- "description": "Reverse-DNS extension namespace that cannot shadow a core key."
291
- },
292
- "npmPackageName": {
293
- "type": "string",
294
- "minLength": 1,
295
- "maxLength": 214,
296
- "pattern": "^(?:[a-z0-9][a-z0-9._-]*|@[a-z0-9][a-z0-9._-]*/[a-z0-9][a-z0-9._-]*)$",
297
- "x-gala-utf8ByteLength": { "maximum": 214 }
298
- },
299
- "int64": {
300
- "type": "string",
301
- "pattern": "^(?:0|-?[1-9][0-9]*)$",
302
- "format": "gala-int64",
303
- "description": "Canonical signed 64-bit base-10 JSON string."
304
- },
305
- "nonNegativeInt64": {
306
- "type": "string",
307
- "pattern": "^(?:0|[1-9][0-9]*)$",
308
- "format": "gala-int64"
309
- },
310
- "positiveInt64": {
311
- "type": "string",
312
- "pattern": "^[1-9][0-9]*$",
313
- "format": "gala-int64"
314
- },
315
- "githubPositiveDecimal": {
316
- "type": "string",
317
- "minLength": 1,
318
- "maxLength": 20,
319
- "pattern": "^[1-9][0-9]{0,19}$",
320
- "format": "gala-github-positive-uint64"
321
- },
322
- "githubActionsArtifactId": { "$ref": "#/$defs/githubPositiveDecimal" },
323
- "lowerHex40": { "type": "string", "pattern": "^[0-9a-f]{40}$" },
324
- "packageIdentity": {
325
- "type": "object",
326
- "required": ["package", "version", "integrity", "registry"],
327
- "properties": {
328
- "package": { "$ref": "#/$defs/npmPackageName" },
329
- "version": { "$ref": "#/$defs/semver" },
330
- "integrity": { "$ref": "#/$defs/digest" },
331
- "registry": { "$ref": "#/$defs/urlHttps" }
332
- },
333
- "additionalProperties": false
334
- },
335
- "adapterIdentity": {
336
- "type": "object",
337
- "required": ["adapterId", "adapterVersion", "adapterDigest"],
338
- "properties": {
339
- "adapterId": { "$ref": "#/$defs/plainLabel" },
340
- "adapterVersion": { "$ref": "#/$defs/semver" },
341
- "adapterDigest": { "$ref": "#/$defs/digest" }
342
- },
343
- "additionalProperties": false
344
- },
345
- "destinationIdentity": {
346
- "type": "object",
347
- "required": [
348
- "environment",
349
- "adapterId",
350
- "adapterVersion",
351
- "targetDigest",
352
- "baseUrl"
353
- ],
354
- "properties": {
355
- "environment": {
356
- "type": "string",
357
- "enum": ["github-pages", "do-spaces", "local-directory"],
358
- "description": "One constant per adapter (LOCAL-60a): `github-pages`, `do-spaces` or `local-directory`; it equals `adapterId` for each MVP adapter."
359
- },
360
- "adapterId": { "$ref": "#/$defs/plainLabel" },
361
- "adapterVersion": { "$ref": "#/$defs/semver" },
362
- "targetDigest": { "$ref": "#/$defs/digest" },
363
- "baseUrl": {
364
- "allOf": [{ "$ref": "#/$defs/urlHttps" }],
365
- "maxLength": 2048,
366
- "x-gala-utf8ByteLength": { "maximum": 2048 }
367
- },
368
- "providerBinding": { "$ref": "#/$defs/destinationProviderCoordinates" }
369
- },
370
- "additionalProperties": false,
371
- "allOf": [
372
- {
373
- "if": {
374
- "properties": { "adapterId": { "const": "github-pages" } },
375
- "required": ["adapterId"]
376
- },
377
- "then": {
378
- "properties": { "environment": { "const": "github-pages" } }
379
- }
380
- },
381
- {
382
- "if": {
383
- "properties": { "adapterId": { "const": "do-spaces" } },
384
- "required": ["adapterId"]
385
- },
386
- "then": { "properties": { "environment": { "const": "do-spaces" } } }
387
- },
388
- {
389
- "if": {
390
- "properties": { "adapterId": { "const": "local-directory" } },
391
- "required": ["adapterId"]
392
- },
393
- "then": {
394
- "properties": { "environment": { "const": "local-directory" } }
395
- }
396
- },
397
- {
398
- "if": {
399
- "properties": { "adapterId": { "const": "github-pages" } },
400
- "required": ["adapterId", "providerBinding"]
401
- },
402
- "then": {
403
- "properties": {
404
- "providerBinding": {
405
- "required": ["owner", "repository"],
406
- "properties": {
407
- "region": false,
408
- "servedBucket": false,
409
- "stagingBucket": false
410
- }
411
- }
412
- }
413
- }
414
- },
415
- {
416
- "if": {
417
- "properties": { "adapterId": { "const": "do-spaces" } },
418
- "required": ["adapterId", "providerBinding"]
419
- },
420
- "then": {
421
- "properties": {
422
- "providerBinding": {
423
- "required": ["region", "servedBucket", "stagingBucket"],
424
- "properties": { "owner": false, "repository": false }
425
- }
426
- }
427
- }
428
- },
429
- {
430
- "if": {
431
- "properties": { "adapterId": { "const": "local-directory" } },
432
- "required": ["adapterId"]
433
- },
434
- "then": { "properties": { "providerBinding": false } }
435
- }
436
- ]
437
- },
438
- "destinationProviderCoordinates": {
439
- "type": "object",
440
- "required": [],
441
- "properties": {
442
- "owner": {
443
- "type": "string",
444
- "minLength": 1,
445
- "maxLength": 39,
446
- "pattern": "^[A-Za-z0-9](?:[A-Za-z0-9-]{0,37}[A-Za-z0-9])?$",
447
- "x-gala-asciiByteLength": { "minimum": 1, "maximum": 39 },
448
- "description": "GitHub owner login, for `github-pages` destinations."
449
- },
450
- "repository": {
451
- "type": "string",
452
- "minLength": 1,
453
- "maxLength": 100,
454
- "pattern": "^(?!\\.{1,2}$)[A-Za-z0-9._-]{1,100}$",
455
- "x-gala-asciiByteLength": { "minimum": 1, "maximum": 100 },
456
- "description": "GitHub repository name, for `github-pages` destinations."
457
- },
458
- "region": { "$ref": "#/$defs/spacesRegion" },
459
- "servedBucket": { "$ref": "#/$defs/spacesBucket" },
460
- "stagingBucket": { "$ref": "#/$defs/spacesBucket" }
461
- },
462
- "additionalProperties": false
463
- },
464
- "spacesBucket": {
465
- "type": "string",
466
- "minLength": 3,
467
- "maxLength": 63,
468
- "pattern": "^[a-z0-9](?:[a-z0-9-]{1,61}[a-z0-9])$",
469
- "x-gala-asciiByteLength": { "minimum": 3, "maximum": 63 }
470
- },
471
- "spacesRegion": {
472
- "type": "string",
473
- "pattern": "^[a-z]{3}[1-9][0-9]?$",
474
- "x-gala-asciiByteLength": { "minimum": 4, "maximum": 5 }
475
- },
476
- "renderPolicyIdentity": {
477
- "type": "object",
478
- "required": ["name", "version", "digest"],
479
- "properties": {
480
- "name": { "$ref": "#/$defs/plainLabel" },
481
- "version": { "$ref": "#/$defs/semver" },
482
- "digest": { "$ref": "#/$defs/digest" }
483
- },
484
- "additionalProperties": false
485
- },
486
- "verificationOrigin": {
487
- "type": "string",
488
- "minLength": 9,
489
- "maxLength": 2048,
490
- "pattern": "^https://[\\x21-\\x7e]+$",
491
- "format": "gala-verification-origin",
492
- "x-gala-utf8ByteLength": { "maximum": 2048 }
493
- },
494
- "verificationUrl": {
495
- "type": "string",
496
- "minLength": 10,
497
- "maxLength": 2048,
498
- "pattern": "^https://[\\x21-\\x7e]+$",
499
- "format": "gala-verification-url",
500
- "x-gala-utf8ByteLength": { "maximum": 2048 }
501
- },
502
- "observedRedirectLocation": {
503
- "type": "string",
504
- "minLength": 1,
505
- "maxLength": 2048,
506
- "pattern": "^https?://[\\x21-\\x7e]+$",
507
- "format": "gala-observed-redirect-location",
508
- "x-gala-utf8ByteLength": { "maximum": 2048 }
509
- },
510
- "probeRegion": {
511
- "type": "string",
512
- "minLength": 1,
513
- "maxLength": 32,
514
- "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
515
- },
516
- "verificationHeaderName": {
517
- "type": "string",
518
- "minLength": 1,
519
- "maxLength": 64,
520
- "pattern": "^[!#$%&'*+.^_`|~0-9a-z-]{1,64}$",
521
- "not": {
522
- "enum": [
523
- "authorization",
524
- "proxy-authorization",
525
- "cookie",
526
- "set-cookie",
527
- "www-authenticate",
528
- "proxy-authenticate",
529
- "authentication-info",
530
- "proxy-authentication-info",
531
- "connection",
532
- "keep-alive",
533
- "te",
534
- "trailer",
535
- "transfer-encoding",
536
- "upgrade",
537
- "location",
538
- "content-length"
539
- ]
540
- }
541
- },
542
- "verificationHeaderValue": {
543
- "type": "string",
544
- "maxLength": 1024,
545
- "pattern": "^(?:$|[!-~](?:[ -~]{0,1022}[!-~])?)$",
546
- "x-gala-utf8ByteLength": { "maximum": 1024 }
547
- },
548
- "observedVerificationHeader": {
549
- "type": "object",
550
- "required": ["name", "state"],
551
- "properties": {
552
- "name": { "$ref": "#/$defs/verificationHeaderName" },
553
- "state": { "enum": ["present", "absent", "unsafe-omitted"] },
554
- "value": { "$ref": "#/$defs/verificationHeaderValue" }
555
- },
556
- "additionalProperties": false,
557
- "allOf": [
558
- {
559
- "if": {
560
- "properties": { "state": { "const": "present" } },
561
- "required": ["state"]
562
- },
563
- "then": { "required": ["value"] },
564
- "else": { "not": { "anyOf": [{ "required": ["value"] }] } }
565
- }
566
- ]
567
- },
568
- "expectedRedirectHop": {
569
- "type": "object",
570
- "required": [
571
- "hopNumber",
572
- "requestUrl",
573
- "expectedStatus",
574
- "expectedLocation"
575
- ],
576
- "properties": {
577
- "hopNumber": { "type": "integer", "minimum": 0, "maximum": 9 },
578
- "requestUrl": { "$ref": "#/$defs/verificationUrl" },
579
- "expectedStatus": { "enum": [301, 302, 303, 307, 308] },
580
- "expectedLocation": { "$ref": "#/$defs/verificationUrl" }
581
- },
582
- "additionalProperties": false
583
- },
584
- "verificationHeaderExpectation": {
585
- "type": "object",
586
- "required": ["name", "value"],
587
- "properties": {
588
- "name": { "$ref": "#/$defs/verificationHeaderName" },
589
- "value": { "$ref": "#/$defs/verificationHeaderValue" }
590
- },
591
- "additionalProperties": false
592
- },
593
- "recognizedPriorRouteContract": {
594
- "type": "object",
595
- "required": [
596
- "generationId",
597
- "redirectChain",
598
- "terminalRequestUrl",
599
- "expectedTerminalStatus",
600
- "expectedByteLength",
601
- "expectedHeaders",
602
- "expectedDigest"
603
- ],
604
- "properties": {
605
- "generationId": { "$ref": "#/$defs/stableId" },
606
- "redirectChain": {
607
- "type": "array",
608
- "items": { "$ref": "#/$defs/expectedRedirectHop" },
609
- "minItems": 0,
610
- "maxItems": 10
611
- },
612
- "terminalRequestUrl": { "$ref": "#/$defs/verificationUrl" },
613
- "expectedTerminalStatus": { "enum": [200, 404] },
614
- "expectedByteLength": { "$ref": "#/$defs/nonNegativeInt64" },
615
- "expectedHeaders": {
616
- "type": "array",
617
- "items": { "$ref": "#/$defs/verificationHeaderExpectation" },
618
- "minItems": 0,
619
- "maxItems": 32
620
- },
621
- "expectedDigest": { "$ref": "#/$defs/digest" }
622
- },
623
- "additionalProperties": false
624
- },
625
- "verificationPlanTarget": {
626
- "type": "object",
627
- "required": [
628
- "targetId",
629
- "origin",
630
- "route",
631
- "requiredProbeRegions",
632
- "redirectChain",
633
- "terminalRequestUrl",
634
- "expectedTerminalStatus",
635
- "expectedByteLength",
636
- "maximumResponseBytes",
637
- "maximumResponseWireBytes",
638
- "requestTimeoutSeconds",
639
- "requestProfile",
640
- "retryProfile",
641
- "maximumAttempts",
642
- "maximumConcurrentStreams",
643
- "expectedHeaders",
644
- "expectedCandidateDigest",
645
- "recognizedPriorContracts"
646
- ],
647
- "properties": {
648
- "targetId": { "type": "integer", "minimum": 1, "maximum": 900 },
649
- "origin": { "$ref": "#/$defs/verificationOrigin" },
650
- "route": { "$ref": "#/$defs/canonicalRoute" },
651
- "requiredProbeRegions": {
652
- "type": "array",
653
- "items": { "$ref": "#/$defs/probeRegion" },
654
- "minItems": 1,
655
- "maxItems": 8,
656
- "uniqueItems": true
657
- },
658
- "redirectChain": {
659
- "type": "array",
660
- "items": { "$ref": "#/$defs/expectedRedirectHop" },
661
- "minItems": 0,
662
- "maxItems": 10
663
- },
664
- "terminalRequestUrl": { "$ref": "#/$defs/verificationUrl" },
665
- "expectedTerminalStatus": { "enum": [200, 404] },
666
- "expectedByteLength": { "$ref": "#/$defs/nonNegativeInt64" },
667
- "maximumResponseBytes": { "$ref": "#/$defs/nonNegativeInt64" },
668
- "maximumResponseWireBytes": { "$ref": "#/$defs/positiveInt64" },
669
- "requestTimeoutSeconds": {
670
- "type": "integer",
671
- "minimum": 1,
672
- "maximum": 30
673
- },
674
- "requestProfile": { "const": "gala-public-verifier-v2" },
675
- "retryProfile": { "const": "gala-public-probe-retry-v2" },
676
- "maximumAttempts": { "type": "integer", "minimum": 1, "maximum": 10 },
677
- "maximumConcurrentStreams": {
678
- "type": "integer",
679
- "minimum": 1,
680
- "maximum": 32
681
- },
682
- "expectedHeaders": {
683
- "type": "array",
684
- "items": { "$ref": "#/$defs/verificationHeaderExpectation" },
685
- "minItems": 0,
686
- "maxItems": 32
687
- },
688
- "expectedCandidateDigest": { "$ref": "#/$defs/digest" },
689
- "recognizedPriorContracts": {
690
- "type": "array",
691
- "items": { "$ref": "#/$defs/recognizedPriorRouteContract" },
692
- "minItems": 0,
693
- "maxItems": 6
694
- }
695
- },
696
- "additionalProperties": false
697
- },
698
- "publicProbeObservation": {
699
- "type": "object",
700
- "required": [
701
- "targetId",
702
- "attemptNumber",
703
- "hopNumber",
704
- "origin",
705
- "route",
706
- "requestUrl",
707
- "probeRegion",
708
- "requestStartedAt",
709
- "observedAt",
710
- "expectedCandidateDigest",
711
- "responseHeadState",
712
- "observedLocationState",
713
- "observedHeaders",
714
- "bodyState",
715
- "classification",
716
- "evidenceDigest"
717
- ],
718
- "properties": {
719
- "targetId": { "type": "integer", "minimum": 1, "maximum": 900 },
720
- "attemptNumber": { "type": "integer", "minimum": 1, "maximum": 10 },
721
- "hopNumber": { "type": "integer", "minimum": 0, "maximum": 10 },
722
- "origin": { "$ref": "#/$defs/verificationOrigin" },
723
- "route": { "$ref": "#/$defs/canonicalRoute" },
724
- "requestUrl": { "$ref": "#/$defs/verificationUrl" },
725
- "probeRegion": { "$ref": "#/$defs/probeRegion" },
726
- "contractGenerationId": { "$ref": "#/$defs/stableId" },
727
- "precedingProbeEvidenceDigest": { "$ref": "#/$defs/digest" },
728
- "requestStartedAt": { "$ref": "#/$defs/rfc3339" },
729
- "observedAt": { "$ref": "#/$defs/rfc3339" },
730
- "expectedCandidateDigest": { "$ref": "#/$defs/digest" },
731
- "responseHeadState": {
732
- "enum": ["not-received", "complete", "limit-exceeded", "malformed"]
733
- },
734
- "observedStatus": { "type": "integer", "minimum": 100, "maximum": 599 },
735
- "observedLocationState": {
736
- "enum": ["absent", "retained", "unsafe-omitted", "head-unavailable"]
737
- },
738
- "observedLocation": { "$ref": "#/$defs/observedRedirectLocation" },
739
- "observedHeaders": {
740
- "type": "array",
741
- "items": { "$ref": "#/$defs/observedVerificationHeader" },
742
- "minItems": 0,
743
- "maxItems": 32
744
- },
745
- "bodyState": {
746
- "enum": [
747
- "not-read",
748
- "incomplete",
749
- "complete",
750
- "limit-exceeded",
751
- "encoding-rejected",
752
- "framing-rejected"
753
- ]
754
- },
755
- "observedByteLength": { "$ref": "#/$defs/nonNegativeInt64" },
756
- "observedDigest": { "$ref": "#/$defs/digest" },
757
- "observedGenerationId": {
758
- "$ref": "#/$defs/stableId",
759
- "description": "The generation the destination is observed to be serving. Unlike the write-side `expectedGenerationId` fence, this observation-side field is simply absent when nothing is served and may be carried as null by a consumer that models it nullably: an observation reports what is there, so \"nothing\" is a truthful reading, while an expectation of \"nothing\" must be stated as the explicit expect-nothing-served sentinel and can never be an omission (LOCAL-52)."
760
- },
761
- "classification": {
762
- "enum": [
763
- "redirect-match",
764
- "candidate",
765
- "recognized-prior",
766
- "integrity-mismatch",
767
- "inconclusive"
768
- ]
769
- },
770
- "evidenceDigest": { "$ref": "#/$defs/digest" }
771
- },
772
- "additionalProperties": false,
773
- "allOf": [
774
- {
775
- "if": {
776
- "properties": { "hopNumber": { "const": 0 } },
777
- "required": ["hopNumber"]
778
- },
779
- "then": {
780
- "not": {
781
- "anyOf": [{ "required": ["precedingProbeEvidenceDigest"] }]
782
- }
783
- },
784
- "else": { "required": ["precedingProbeEvidenceDigest"] }
785
- },
786
- {
787
- "if": {
788
- "properties": { "observedLocationState": { "const": "retained" } },
789
- "required": ["observedLocationState"]
790
- },
791
- "then": { "required": ["observedLocation"] },
792
- "else": { "not": { "anyOf": [{ "required": ["observedLocation"] }] } }
793
- },
794
- {
795
- "if": {
796
- "properties": { "bodyState": { "const": "complete" } },
797
- "required": ["bodyState"]
798
- },
799
- "then": { "required": ["observedByteLength", "observedDigest"] },
800
- "else": {
801
- "not": {
802
- "anyOf": [
803
- { "required": ["observedByteLength"] },
804
- { "required": ["observedDigest"] }
805
- ]
806
- }
807
- }
808
- },
809
- {
810
- "if": {
811
- "properties": { "bodyState": { "const": "complete" } },
812
- "required": ["bodyState"]
813
- },
814
- "else": {
815
- "not": { "anyOf": [{ "required": ["observedGenerationId"] }] }
816
- }
817
- },
818
- {
819
- "if": {
820
- "properties": { "responseHeadState": { "const": "complete" } },
821
- "required": ["responseHeadState"]
822
- },
823
- "then": { "required": ["observedStatus"] }
824
- },
825
- {
826
- "if": {
827
- "properties": { "responseHeadState": { "const": "not-received" } },
828
- "required": ["responseHeadState"]
829
- },
830
- "then": {
831
- "properties": {
832
- "observedLocationState": { "const": "absent" },
833
- "observedHeaders": { "maxItems": 0 },
834
- "bodyState": { "const": "not-read" },
835
- "classification": { "const": "inconclusive" }
836
- },
837
- "not": {
838
- "anyOf": [
839
- { "required": ["contractGenerationId"] },
840
- { "required": ["observedStatus"] },
841
- { "required": ["observedLocation"] },
842
- { "required": ["observedByteLength"] },
843
- { "required": ["observedDigest"] },
844
- { "required": ["observedGenerationId"] }
845
- ]
846
- }
847
- }
848
- },
849
- {
850
- "if": {
851
- "properties": {
852
- "responseHeadState": { "enum": ["limit-exceeded", "malformed"] }
853
- },
854
- "required": ["responseHeadState"]
855
- },
856
- "then": {
857
- "properties": {
858
- "observedLocationState": { "const": "head-unavailable" },
859
- "observedHeaders": { "maxItems": 0 },
860
- "bodyState": { "const": "not-read" },
861
- "classification": { "const": "inconclusive" }
862
- },
863
- "not": {
864
- "anyOf": [
865
- { "required": ["contractGenerationId"] },
866
- { "required": ["observedLocation"] },
867
- { "required": ["observedByteLength"] },
868
- { "required": ["observedDigest"] },
869
- { "required": ["observedGenerationId"] }
870
- ]
871
- }
872
- }
873
- },
874
- {
875
- "if": {
876
- "properties": {
877
- "observedLocationState": { "const": "head-unavailable" }
878
- },
879
- "required": ["observedLocationState"]
880
- },
881
- "then": {
882
- "properties": {
883
- "responseHeadState": { "enum": ["limit-exceeded", "malformed"] }
884
- }
885
- }
886
- },
887
- {
888
- "if": {
889
- "properties": { "bodyState": { "const": "incomplete" } },
890
- "required": ["bodyState"]
891
- },
892
- "then": {
893
- "properties": { "classification": { "const": "inconclusive" } },
894
- "not": {
895
- "anyOf": [
896
- { "required": ["contractGenerationId"] },
897
- { "required": ["observedByteLength"] },
898
- { "required": ["observedDigest"] },
899
- { "required": ["observedGenerationId"] }
900
- ]
901
- }
902
- }
903
- },
904
- {
905
- "if": {
906
- "properties": { "classification": { "const": "redirect-match" } },
907
- "required": ["classification"]
908
- },
909
- "then": {
910
- "properties": {
911
- "responseHeadState": { "const": "complete" },
912
- "observedStatus": { "enum": [301, 302, 303, 307, 308] },
913
- "observedLocationState": { "const": "retained" },
914
- "observedHeaders": { "maxItems": 0 },
915
- "bodyState": { "const": "not-read" }
916
- },
917
- "required": [
918
- "contractGenerationId",
919
- "observedStatus",
920
- "observedLocation"
921
- ],
922
- "not": {
923
- "anyOf": [
924
- { "required": ["observedByteLength"] },
925
- { "required": ["observedDigest"] },
926
- { "required": ["observedGenerationId"] }
927
- ]
928
- }
929
- }
930
- },
931
- {
932
- "if": {
933
- "properties": {
934
- "classification": { "enum": ["candidate", "recognized-prior"] }
935
- },
936
- "required": ["classification"]
937
- },
938
- "then": {
939
- "properties": {
940
- "responseHeadState": { "const": "complete" },
941
- "observedLocationState": { "const": "absent" },
942
- "observedHeaders": {
943
- "minItems": 1,
944
- "items": {
945
- "properties": { "state": { "const": "present" } },
946
- "required": ["state"]
947
- }
948
- },
949
- "bodyState": { "const": "complete" }
950
- },
951
- "required": [
952
- "contractGenerationId",
953
- "observedStatus",
954
- "observedByteLength",
955
- "observedDigest"
956
- ]
957
- }
958
- },
959
- {
960
- "if": {
961
- "properties": {
962
- "bodyState": {
963
- "enum": [
964
- "limit-exceeded",
965
- "encoding-rejected",
966
- "framing-rejected"
967
- ]
968
- }
969
- },
970
- "required": ["bodyState"]
971
- },
972
- "then": {
973
- "properties": {
974
- "classification": { "const": "integrity-mismatch" }
975
- }
976
- }
977
- }
978
- ],
979
- "$comment": "Plan equality, trusted timestamp order, redirect-chain selection, marker-specific generation presence, header-set equality, byte-count equality, and each evidence digest are enforced by the deployment semantic validator."
980
- },
981
- "activationDetectionProbe": {
982
- "type": "object",
983
- "required": [
984
- "targetId",
985
- "hopNumber",
986
- "origin",
987
- "route",
988
- "requestUrl",
989
- "probeRegion",
990
- "requestStartedAt",
991
- "observedAt",
992
- "expectedCandidateDigest",
993
- "responseHeadState",
994
- "observedLocationState",
995
- "observedHeaders",
996
- "bodyState",
997
- "classification",
998
- "evidenceDigest"
999
- ],
1000
- "properties": {
1001
- "targetId": { "type": "integer", "minimum": 1, "maximum": 900 },
1002
- "hopNumber": { "type": "integer", "minimum": 0, "maximum": 10 },
1003
- "origin": { "$ref": "#/$defs/verificationOrigin" },
1004
- "route": { "$ref": "#/$defs/canonicalRoute" },
1005
- "requestUrl": { "$ref": "#/$defs/verificationUrl" },
1006
- "probeRegion": { "$ref": "#/$defs/probeRegion" },
1007
- "contractGenerationId": { "$ref": "#/$defs/stableId" },
1008
- "precedingDetectionProbeEvidenceDigest": { "$ref": "#/$defs/digest" },
1009
- "requestStartedAt": { "$ref": "#/$defs/rfc3339" },
1010
- "observedAt": { "$ref": "#/$defs/rfc3339" },
1011
- "expectedCandidateDigest": { "$ref": "#/$defs/digest" },
1012
- "responseHeadState": {
1013
- "enum": ["not-received", "complete", "limit-exceeded", "malformed"]
1014
- },
1015
- "observedStatus": { "type": "integer", "minimum": 100, "maximum": 599 },
1016
- "observedLocationState": {
1017
- "enum": ["absent", "retained", "unsafe-omitted", "head-unavailable"]
1018
- },
1019
- "observedLocation": { "$ref": "#/$defs/observedRedirectLocation" },
1020
- "observedHeaders": {
1021
- "type": "array",
1022
- "items": { "$ref": "#/$defs/observedVerificationHeader" },
1023
- "minItems": 0,
1024
- "maxItems": 32
1025
- },
1026
- "bodyState": {
1027
- "enum": [
1028
- "not-read",
1029
- "incomplete",
1030
- "complete",
1031
- "limit-exceeded",
1032
- "encoding-rejected",
1033
- "framing-rejected"
1034
- ]
1035
- },
1036
- "observedByteLength": { "$ref": "#/$defs/nonNegativeInt64" },
1037
- "observedDigest": { "$ref": "#/$defs/digest" },
1038
- "observedGenerationId": {
1039
- "$ref": "#/$defs/stableId",
1040
- "description": "The generation the destination is observed to be serving. Unlike the write-side `expectedGenerationId` fence, this observation-side field is simply absent when nothing is served and may be carried as null by a consumer that models it nullably: an observation reports what is there, so \"nothing\" is a truthful reading, while an expectation of \"nothing\" must be stated as the explicit expect-nothing-served sentinel and can never be an omission (LOCAL-52)."
1041
- },
1042
- "classification": {
1043
- "enum": [
1044
- "redirect-match",
1045
- "candidate",
1046
- "recognized-prior",
1047
- "integrity-mismatch",
1048
- "inconclusive"
1049
- ]
1050
- },
1051
- "evidenceDigest": { "$ref": "#/$defs/digest" }
1052
- },
1053
- "additionalProperties": false,
1054
- "allOf": [
1055
- {
1056
- "if": {
1057
- "properties": { "hopNumber": { "const": 0 } },
1058
- "required": ["hopNumber"]
1059
- },
1060
- "then": {
1061
- "not": {
1062
- "anyOf": [
1063
- { "required": ["precedingDetectionProbeEvidenceDigest"] }
1064
- ]
1065
- }
1066
- },
1067
- "else": { "required": ["precedingDetectionProbeEvidenceDigest"] }
1068
- },
1069
- {
1070
- "if": {
1071
- "properties": { "observedLocationState": { "const": "retained" } },
1072
- "required": ["observedLocationState"]
1073
- },
1074
- "then": { "required": ["observedLocation"] },
1075
- "else": { "not": { "anyOf": [{ "required": ["observedLocation"] }] } }
1076
- },
1077
- {
1078
- "if": {
1079
- "properties": { "bodyState": { "const": "complete" } },
1080
- "required": ["bodyState"]
1081
- },
1082
- "then": { "required": ["observedByteLength", "observedDigest"] },
1083
- "else": {
1084
- "not": {
1085
- "anyOf": [
1086
- { "required": ["observedByteLength"] },
1087
- { "required": ["observedDigest"] }
1088
- ]
1089
- }
1090
- }
1091
- },
1092
- {
1093
- "if": {
1094
- "properties": { "bodyState": { "const": "complete" } },
1095
- "required": ["bodyState"]
1096
- },
1097
- "else": {
1098
- "not": { "anyOf": [{ "required": ["observedGenerationId"] }] }
1099
- }
1100
- },
1101
- {
1102
- "if": {
1103
- "properties": { "responseHeadState": { "const": "complete" } },
1104
- "required": ["responseHeadState"]
1105
- },
1106
- "then": { "required": ["observedStatus"] }
1107
- },
1108
- {
1109
- "if": {
1110
- "properties": { "responseHeadState": { "const": "not-received" } },
1111
- "required": ["responseHeadState"]
1112
- },
1113
- "then": {
1114
- "properties": {
1115
- "observedLocationState": { "const": "absent" },
1116
- "observedHeaders": { "maxItems": 0 },
1117
- "bodyState": { "const": "not-read" },
1118
- "classification": { "const": "inconclusive" }
1119
- },
1120
- "not": {
1121
- "anyOf": [
1122
- { "required": ["contractGenerationId"] },
1123
- { "required": ["observedStatus"] },
1124
- { "required": ["observedLocation"] },
1125
- { "required": ["observedByteLength"] },
1126
- { "required": ["observedDigest"] },
1127
- { "required": ["observedGenerationId"] }
1128
- ]
1129
- }
1130
- }
1131
- },
1132
- {
1133
- "if": {
1134
- "properties": {
1135
- "responseHeadState": { "enum": ["limit-exceeded", "malformed"] }
1136
- },
1137
- "required": ["responseHeadState"]
1138
- },
1139
- "then": {
1140
- "properties": {
1141
- "observedLocationState": { "const": "head-unavailable" },
1142
- "observedHeaders": { "maxItems": 0 },
1143
- "bodyState": { "const": "not-read" },
1144
- "classification": { "const": "inconclusive" }
1145
- },
1146
- "not": {
1147
- "anyOf": [
1148
- { "required": ["contractGenerationId"] },
1149
- { "required": ["observedLocation"] },
1150
- { "required": ["observedByteLength"] },
1151
- { "required": ["observedDigest"] },
1152
- { "required": ["observedGenerationId"] }
1153
- ]
1154
- }
1155
- }
1156
- },
1157
- {
1158
- "if": {
1159
- "properties": {
1160
- "observedLocationState": { "const": "head-unavailable" }
1161
- },
1162
- "required": ["observedLocationState"]
1163
- },
1164
- "then": {
1165
- "properties": {
1166
- "responseHeadState": { "enum": ["limit-exceeded", "malformed"] }
1167
- }
1168
- }
1169
- },
1170
- {
1171
- "if": {
1172
- "properties": { "bodyState": { "const": "incomplete" } },
1173
- "required": ["bodyState"]
1174
- },
1175
- "then": {
1176
- "properties": { "classification": { "const": "inconclusive" } },
1177
- "not": {
1178
- "anyOf": [
1179
- { "required": ["contractGenerationId"] },
1180
- { "required": ["observedByteLength"] },
1181
- { "required": ["observedDigest"] },
1182
- { "required": ["observedGenerationId"] }
1183
- ]
1184
- }
1185
- }
1186
- },
1187
- {
1188
- "if": {
1189
- "properties": { "classification": { "const": "redirect-match" } },
1190
- "required": ["classification"]
1191
- },
1192
- "then": {
1193
- "properties": {
1194
- "responseHeadState": { "const": "complete" },
1195
- "observedStatus": { "enum": [301, 302, 303, 307, 308] },
1196
- "observedLocationState": { "const": "retained" },
1197
- "observedHeaders": { "maxItems": 0 },
1198
- "bodyState": { "const": "not-read" }
1199
- },
1200
- "required": [
1201
- "contractGenerationId",
1202
- "observedStatus",
1203
- "observedLocation"
1204
- ],
1205
- "not": {
1206
- "anyOf": [
1207
- { "required": ["observedByteLength"] },
1208
- { "required": ["observedDigest"] },
1209
- { "required": ["observedGenerationId"] }
1210
- ]
1211
- }
1212
- }
1213
- },
1214
- {
1215
- "if": {
1216
- "properties": {
1217
- "classification": { "enum": ["candidate", "recognized-prior"] }
1218
- },
1219
- "required": ["classification"]
1220
- },
1221
- "then": {
1222
- "properties": {
1223
- "responseHeadState": { "const": "complete" },
1224
- "observedLocationState": { "const": "absent" },
1225
- "observedHeaders": {
1226
- "minItems": 1,
1227
- "items": {
1228
- "properties": { "state": { "const": "present" } },
1229
- "required": ["state"]
1230
- }
1231
- },
1232
- "bodyState": { "const": "complete" }
1233
- },
1234
- "required": [
1235
- "contractGenerationId",
1236
- "observedStatus",
1237
- "observedByteLength",
1238
- "observedDigest"
1239
- ]
1240
- }
1241
- },
1242
- {
1243
- "if": {
1244
- "properties": {
1245
- "bodyState": {
1246
- "enum": [
1247
- "limit-exceeded",
1248
- "encoding-rejected",
1249
- "framing-rejected"
1250
- ]
1251
- }
1252
- },
1253
- "required": ["bodyState"]
1254
- },
1255
- "then": {
1256
- "properties": {
1257
- "classification": { "const": "integrity-mismatch" }
1258
- }
1259
- }
1260
- }
1261
- ],
1262
- "$comment": "Plan equality, trusted timestamp order, redirect-chain selection, marker-specific generation presence, header-set equality, byte-count equality, and each evidence digest are enforced by the deployment semantic validator."
1263
- },
1264
- "activationDetectionObservation": {
1265
- "type": "object",
1266
- "required": [
1267
- "profile",
1268
- "operationId",
1269
- "attemptId",
1270
- "planDigest",
1271
- "detectionAttemptNumber",
1272
- "eligibleAt",
1273
- "probes",
1274
- "receivedAt",
1275
- "evidenceDigest"
1276
- ],
1277
- "properties": {
1278
- "profile": {
1279
- "const": "gala-public-activation-detection-observation-v2"
1280
- },
1281
- "operationId": { "$ref": "#/$defs/stableId" },
1282
- "attemptId": { "$ref": "#/$defs/stableId" },
1283
- "planDigest": { "$ref": "#/$defs/digest" },
1284
- "detectionAttemptNumber": {
1285
- "type": "integer",
1286
- "minimum": 1,
1287
- "maximum": 91
1288
- },
1289
- "eligibleAt": { "$ref": "#/$defs/rfc3339" },
1290
- "probes": {
1291
- "type": "array",
1292
- "items": { "$ref": "#/$defs/activationDetectionProbe" },
1293
- "minItems": 1,
1294
- "maxItems": 11
1295
- },
1296
- "receivedAt": { "$ref": "#/$defs/rfc3339" },
1297
- "evidenceDigest": { "$ref": "#/$defs/digest" }
1298
- },
1299
- "additionalProperties": false
1300
- },
1301
- "deadlineFinalizationStream": {
1302
- "type": "object",
1303
- "required": ["targetId", "probeRegion", "state"],
1304
- "properties": {
1305
- "targetId": { "type": "integer", "minimum": 1, "maximum": 900 },
1306
- "probeRegion": { "$ref": "#/$defs/probeRegion" },
1307
- "state": { "enum": ["terminal", "missing"] },
1308
- "observationId": { "$ref": "#/$defs/stableId" },
1309
- "evidenceDigest": { "$ref": "#/$defs/digest" }
1310
- },
1311
- "additionalProperties": false,
1312
- "allOf": [
1313
- {
1314
- "if": {
1315
- "properties": { "state": { "const": "terminal" } },
1316
- "required": ["state"]
1317
- },
1318
- "then": { "required": ["observationId", "evidenceDigest"] },
1319
- "else": {
1320
- "not": {
1321
- "anyOf": [
1322
- { "required": ["observationId"] },
1323
- { "required": ["evidenceDigest"] }
1324
- ]
1325
- }
1326
- }
1327
- }
1328
- ]
1329
- },
1330
- "deadlineFinalizationEvidence": {
1331
- "type": "object",
1332
- "required": [
1333
- "profile",
1334
- "operationId",
1335
- "attemptId",
1336
- "intentDigest",
1337
- "verificationPlanDigest",
1338
- "verificationDeadlineAt",
1339
- "finalizationDeadlineAt",
1340
- "cutoffEvidenceJournalEntryCount",
1341
- "cutoffEvidenceJournalHeadDigest",
1342
- "finalizationKind",
1343
- "selectedStreams",
1344
- "finalizedAt"
1345
- ],
1346
- "properties": {
1347
- "profile": { "const": "gala-deadline-finalization-evidence-v2" },
1348
- "operationId": { "$ref": "#/$defs/stableId" },
1349
- "attemptId": { "$ref": "#/$defs/stableId" },
1350
- "intentDigest": { "$ref": "#/$defs/digest" },
1351
- "verificationPlanDigest": { "$ref": "#/$defs/digest" },
1352
- "verificationDeadlineAt": { "$ref": "#/$defs/rfc3339" },
1353
- "finalizationDeadlineAt": { "$ref": "#/$defs/rfc3339" },
1354
- "cutoffEvidenceJournalEntryCount": {
1355
- "type": "integer",
1356
- "minimum": 0,
1357
- "maximum": 1098
1358
- },
1359
- "cutoffEvidenceJournalHeadDigest": { "$ref": "#/$defs/digest" },
1360
- "finalizationKind": {
1361
- "enum": ["propagation-degraded", "verification-inconclusive"]
1362
- },
1363
- "selectedStreams": {
1364
- "type": "array",
1365
- "items": { "$ref": "#/$defs/deadlineFinalizationStream" },
1366
- "minItems": 1,
1367
- "maxItems": 900,
1368
- "uniqueItems": true
1369
- },
1370
- "finalizedAt": { "$ref": "#/$defs/rfc3339" }
1371
- },
1372
- "additionalProperties": false,
1373
- "allOf": [
1374
- {
1375
- "if": {
1376
- "properties": {
1377
- "finalizationKind": { "const": "verification-inconclusive" }
1378
- },
1379
- "required": ["finalizationKind"]
1380
- },
1381
- "then": {
1382
- "properties": {
1383
- "selectedStreams": {
1384
- "contains": {
1385
- "properties": { "state": { "const": "missing" } },
1386
- "required": ["state"]
1387
- },
1388
- "minContains": 1
1389
- }
1390
- }
1391
- },
1392
- "else": {
1393
- "properties": {
1394
- "selectedStreams": {
1395
- "not": {
1396
- "contains": {
1397
- "properties": { "state": { "const": "missing" } },
1398
- "required": ["state"]
1399
- }
1400
- }
1401
- }
1402
- }
1403
- }
1404
- }
1405
- ]
1406
- },
1407
- "supersessionFinalizationEvidence": {
1408
- "type": "object",
1409
- "required": [
1410
- "profile",
1411
- "supersededOperationId",
1412
- "supersededAttemptId",
1413
- "supersededIntentDigest",
1414
- "destinationKeyDigest",
1415
- "authorityEpoch",
1416
- "fenceTerminalState",
1417
- "fenceEvidenceDigest",
1418
- "supersededByOperationId",
1419
- "supersededByGenerationId",
1420
- "finalizationOutcome",
1421
- "activationDetectionObservationCount",
1422
- "precedingEvidenceJournalEntryCount",
1423
- "precedingEvidenceJournalHeadDigest",
1424
- "finalizedAt"
1425
- ],
1426
- "properties": {
1427
- "profile": { "const": "gala-supersession-finalization-evidence-v2" },
1428
- "supersededOperationId": { "$ref": "#/$defs/stableId" },
1429
- "supersededAttemptId": { "$ref": "#/$defs/stableId" },
1430
- "supersededIntentDigest": { "$ref": "#/$defs/digest" },
1431
- "destinationKeyDigest": { "$ref": "#/$defs/digest" },
1432
- "authorityEpoch": { "$ref": "#/$defs/positiveInt64" },
1433
- "fenceTerminalState": {
1434
- "enum": ["terminal-no-change", "terminal-candidate"]
1435
- },
1436
- "fenceEvidenceDigest": { "$ref": "#/$defs/digest" },
1437
- "supersededByOperationId": { "$ref": "#/$defs/stableId" },
1438
- "supersededByGenerationId": { "$ref": "#/$defs/stableId" },
1439
- "finalizationOutcome": { "enum": ["before-mutation", "activated"] },
1440
- "activationDetectionObservationCount": {
1441
- "type": "integer",
1442
- "minimum": 0,
1443
- "maximum": 91
1444
- },
1445
- "activationDetectionLastEvidenceDigest": { "$ref": "#/$defs/digest" },
1446
- "precedingEvidenceJournalEntryCount": {
1447
- "type": "integer",
1448
- "minimum": 0,
1449
- "maximum": 1098
1450
- },
1451
- "precedingEvidenceJournalHeadDigest": { "$ref": "#/$defs/digest" },
1452
- "finalizedAt": { "$ref": "#/$defs/rfc3339" }
1453
- },
1454
- "additionalProperties": false,
1455
- "allOf": [
1456
- {
1457
- "if": {
1458
- "properties": {
1459
- "activationDetectionObservationCount": { "const": 0 }
1460
- },
1461
- "required": ["activationDetectionObservationCount"]
1462
- },
1463
- "then": {
1464
- "not": {
1465
- "anyOf": [
1466
- { "required": ["activationDetectionLastEvidenceDigest"] }
1467
- ]
1468
- }
1469
- },
1470
- "else": { "required": ["activationDetectionLastEvidenceDigest"] }
1471
- },
1472
- {
1473
- "oneOf": [
1474
- {
1475
- "properties": {
1476
- "fenceTerminalState": { "const": "terminal-no-change" },
1477
- "finalizationOutcome": { "const": "before-mutation" }
1478
- },
1479
- "required": ["fenceTerminalState", "finalizationOutcome"]
1480
- },
1481
- {
1482
- "properties": {
1483
- "fenceTerminalState": { "const": "terminal-candidate" },
1484
- "finalizationOutcome": { "const": "activated" }
1485
- },
1486
- "required": ["fenceTerminalState", "finalizationOutcome"]
1487
- }
1488
- ]
1489
- }
1490
- ]
1491
- },
1492
- "cancellationFinalizationEvidence": {
1493
- "type": "object",
1494
- "required": [
1495
- "profile",
1496
- "operationId",
1497
- "attemptId",
1498
- "intentDigest",
1499
- "destinationKeyDigest",
1500
- "authorityEpoch",
1501
- "fenceEvidenceDigest",
1502
- "cancellationCommandId",
1503
- "cancellationActorId",
1504
- "activationDetectionObservationCount",
1505
- "precedingEvidenceJournalEntryCount",
1506
- "precedingEvidenceJournalHeadDigest",
1507
- "finalizedAt"
1508
- ],
1509
- "properties": {
1510
- "profile": { "const": "gala-cancellation-finalization-evidence-v2" },
1511
- "operationId": { "$ref": "#/$defs/stableId" },
1512
- "attemptId": { "$ref": "#/$defs/stableId" },
1513
- "intentDigest": { "$ref": "#/$defs/digest" },
1514
- "destinationKeyDigest": { "$ref": "#/$defs/digest" },
1515
- "authorityEpoch": { "$ref": "#/$defs/positiveInt64" },
1516
- "fenceEvidenceDigest": { "$ref": "#/$defs/digest" },
1517
- "cancellationCommandId": { "$ref": "#/$defs/stableId" },
1518
- "cancellationActorId": { "$ref": "#/$defs/stableId" },
1519
- "activationDetectionObservationCount": {
1520
- "type": "integer",
1521
- "minimum": 0,
1522
- "maximum": 91
1523
- },
1524
- "activationDetectionLastEvidenceDigest": { "$ref": "#/$defs/digest" },
1525
- "precedingEvidenceJournalEntryCount": {
1526
- "type": "integer",
1527
- "minimum": 0,
1528
- "maximum": 1098
1529
- },
1530
- "precedingEvidenceJournalHeadDigest": { "$ref": "#/$defs/digest" },
1531
- "finalizedAt": { "$ref": "#/$defs/rfc3339" }
1532
- },
1533
- "additionalProperties": false,
1534
- "allOf": [
1535
- {
1536
- "if": {
1537
- "properties": {
1538
- "activationDetectionObservationCount": { "const": 0 }
1539
- },
1540
- "required": ["activationDetectionObservationCount"]
1541
- },
1542
- "then": {
1543
- "not": {
1544
- "anyOf": [
1545
- { "required": ["activationDetectionLastEvidenceDigest"] }
1546
- ]
1547
- }
1548
- },
1549
- "else": { "required": ["activationDetectionLastEvidenceDigest"] }
1550
- }
1551
- ]
1552
- },
1553
- "generationFence": {
1554
- "type": "string",
1555
- "pattern": "^(?:gala:expect-nothing-served|[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$",
1556
- "description": "Activation fence: a generation identity, or the explicit expect-nothing-served sentinel. Never null, and never absent as a way of saying \"no expectation\" (LOCAL-47). This is the write-side expectation a caller states before it mutates a destination, and it is deliberately asymmetric with the observation-side fields (`observedGenerationId`), which are simply absent -- and are modelled as nullable by the in-process adapter protocol -- when nothing is served (LOCAL-52). It is deliberately one string schema with one combined pattern rather than a two-member `oneOf` of two string schemas: the admitted value set is identical, and OpenAPI Generator 7.25 turns such a union into an empty marker interface that a caller cannot carry a value in."
1557
- },
1558
- "reproducibleBuildRecord": {
1559
- "type": "object",
1560
- "required": [
1561
- "repositoryId",
1562
- "sourceCommit",
1563
- "sourceTree",
1564
- "repositoryRootDigest",
1565
- "buildEpoch",
1566
- "contractVersion",
1567
- "builder",
1568
- "schemas",
1569
- "template",
1570
- "theme",
1571
- "dependencyLockDigest",
1572
- "packageReleaseCatalogDigest",
1573
- "buildInputDigest",
1574
- "baseUrl",
1575
- "basePath",
1576
- "destinationCapabilityDigest",
1577
- "policyReleaseId",
1578
- "buildPolicyDecisionDigest",
1579
- "stylingContractDigest",
1580
- "renderPolicy",
1581
- "workflowIdentity"
1582
- ],
1583
- "properties": {
1584
- "repositoryId": { "$ref": "#/$defs/githubPositiveDecimal" },
1585
- "sourceCommit": { "$ref": "#/$defs/gitObjectId" },
1586
- "sourceTree": { "$ref": "#/$defs/gitObjectId" },
1587
- "repositoryRootDigest": { "$ref": "#/$defs/digest" },
1588
- "buildEpoch": { "$ref": "#/$defs/rfc3339" },
1589
- "contractVersion": { "const": "2.0.0" },
1590
- "builder": {
1591
- "allOf": [
1592
- { "$ref": "#/$defs/packageIdentity" },
1593
- {
1594
- "properties": {
1595
- "package": { "const": "@rathnasgala2/publish-action" }
1596
- }
1597
- }
1598
- ]
1599
- },
1600
- "schemas": {
1601
- "allOf": [
1602
- { "$ref": "#/$defs/packageIdentity" },
1603
- {
1604
- "properties": { "package": { "const": "@rathnasgala2/schemas" } }
1605
- }
1606
- ]
1607
- },
1608
- "template": {
1609
- "allOf": [
1610
- { "$ref": "#/$defs/packageIdentity" },
1611
- {
1612
- "properties": { "package": { "const": "@rathnasgala2/template" } }
1613
- }
1614
- ]
1615
- },
1616
- "theme": {
1617
- "allOf": [
1618
- { "$ref": "#/$defs/packageIdentity" },
1619
- {
1620
- "properties": {
1621
- "package": {
1622
- "enum": [
1623
- "@rathnasgala2/theme-default",
1624
- "@rathnasgala2/theme-amaze",
1625
- "@rathnasgala2/theme-flashy",
1626
- "@rathnasgala2/theme-minimal",
1627
- "@rathnasgala2/theme-zebra"
1628
- ]
1629
- }
1630
- }
1631
- }
1632
- ]
1633
- },
1634
- "dependencyLockDigest": { "$ref": "#/$defs/digest" },
1635
- "packageReleaseCatalogDigest": { "$ref": "#/$defs/digest" },
1636
- "buildInputDigest": { "$ref": "#/$defs/digest" },
1637
- "baseUrl": { "$ref": "#/$defs/urlHttps" },
1638
- "basePath": { "$ref": "#/$defs/canonicalRoute" },
1639
- "destinationCapabilityDigest": { "$ref": "#/$defs/digest" },
1640
- "policyReleaseId": { "$ref": "#/$defs/stableId" },
1641
- "buildPolicyDecisionDigest": { "$ref": "#/$defs/digest" },
1642
- "stylingContractDigest": { "$ref": "#/$defs/digest" },
1643
- "renderPolicy": { "$ref": "#/$defs/renderPolicyIdentity" },
1644
- "workflowIdentity": { "$ref": "#/$defs/digest" }
1645
- },
1646
- "additionalProperties": false
1647
- },
1648
- "pagesInterveningRunAttempt": {
1649
- "type": "object",
1650
- "required": ["runAttempt", "authorityState", "decisionDigest"],
1651
- "properties": {
1652
- "runAttempt": { "type": "integer", "minimum": 2, "maximum": 50 },
1653
- "authorityState": { "const": "closed-no-destination-authority" },
1654
- "decisionDigest": { "$ref": "#/$defs/digest" }
1655
- },
1656
- "additionalProperties": false
1657
- },
1658
- "pagesRunAttemptGapProof": {
1659
- "type": "object",
1660
- "required": [
1661
- "profile",
1662
- "runId",
1663
- "priorRunAttempt",
1664
- "claimingRunAttempt",
1665
- "interveningAttempts",
1666
- "proofDigest"
1667
- ],
1668
- "properties": {
1669
- "profile": { "const": "gala-pages-run-attempt-gap-proof-v2" },
1670
- "runId": { "$ref": "#/$defs/githubPositiveDecimal" },
1671
- "priorRunAttempt": { "type": "integer", "minimum": 1, "maximum": 50 },
1672
- "claimingRunAttempt": {
1673
- "type": "integer",
1674
- "minimum": 2,
1675
- "maximum": 51
1676
- },
1677
- "interveningAttempts": {
1678
- "type": "array",
1679
- "items": { "$ref": "#/$defs/pagesInterveningRunAttempt" },
1680
- "minItems": 0,
1681
- "maxItems": 49,
1682
- "uniqueItems": true
1683
- },
1684
- "proofDigest": { "$ref": "#/$defs/digest" }
1685
- },
1686
- "additionalProperties": false
1687
- },
1688
- "pagesReconciliationRecovery": {
1689
- "type": "object",
1690
- "required": [
1691
- "profile",
1692
- "reconcileCommandId",
1693
- "reconcileCommandDigest",
1694
- "reconcileCommandExpiresAt",
1695
- "priorAttemptId",
1696
- "runAttemptGapProof",
1697
- "priorIntentDigest",
1698
- "priorAuthorityEpoch",
1699
- "priorAuthorityId",
1700
- "priorProposedGenerationId",
1701
- "priorPagesBuildVersion",
1702
- "priorFenceEvidenceDigest",
1703
- "recoveryDigest"
1704
- ],
1705
- "properties": {
1706
- "profile": { "const": "gala-pages-reconciliation-recovery-v2" },
1707
- "reconcileCommandId": { "$ref": "#/$defs/stableId" },
1708
- "reconcileCommandDigest": { "$ref": "#/$defs/digest" },
1709
- "reconcileCommandExpiresAt": { "$ref": "#/$defs/rfc3339" },
1710
- "priorAttemptId": { "$ref": "#/$defs/stableId" },
1711
- "runAttemptGapProof": { "$ref": "#/$defs/pagesRunAttemptGapProof" },
1712
- "priorIntentDigest": { "$ref": "#/$defs/digest" },
1713
- "priorAuthorityEpoch": { "$ref": "#/$defs/positiveInt64" },
1714
- "priorAuthorityId": { "$ref": "#/$defs/stableId" },
1715
- "priorExpectedGenerationId": { "$ref": "#/$defs/stableId" },
1716
- "priorProposedGenerationId": { "$ref": "#/$defs/stableId" },
1717
- "priorPagesBuildVersion": { "$ref": "#/$defs/lowerHex40" },
1718
- "priorFenceEvidenceDigest": { "$ref": "#/$defs/digest" },
1719
- "recoveryDigest": { "$ref": "#/$defs/digest" }
1720
- },
1721
- "additionalProperties": false
1722
- },
1723
- "pagesReconciliationCommand": {
1724
- "type": "object",
1725
- "required": [
1726
- "profile",
1727
- "reconcileCommandId",
1728
- "operationId",
1729
- "publicationId",
1730
- "generationId",
1731
- "actorPrincipalId",
1732
- "consequentialConfirmationId",
1733
- "runId",
1734
- "priorRunAttempt",
1735
- "priorAttemptId",
1736
- "priorIntentDigest",
1737
- "priorAuthorityEpoch",
1738
- "priorAuthorityId",
1739
- "priorFenceEvidenceDigest",
1740
- "acceptedAt",
1741
- "expiresAt",
1742
- "commandDigest"
1743
- ],
1744
- "properties": {
1745
- "profile": { "const": "gala-pages-reconciliation-command-v2" },
1746
- "reconcileCommandId": { "$ref": "#/$defs/stableId" },
1747
- "operationId": { "$ref": "#/$defs/stableId" },
1748
- "publicationId": { "$ref": "#/$defs/stableId" },
1749
- "generationId": { "$ref": "#/$defs/stableId" },
1750
- "actorPrincipalId": { "$ref": "#/$defs/stableId" },
1751
- "consequentialConfirmationId": { "$ref": "#/$defs/stableId" },
1752
- "runId": { "$ref": "#/$defs/githubPositiveDecimal" },
1753
- "priorRunAttempt": { "type": "integer", "minimum": 1, "maximum": 50 },
1754
- "priorAttemptId": { "$ref": "#/$defs/stableId" },
1755
- "priorIntentDigest": { "$ref": "#/$defs/digest" },
1756
- "priorAuthorityEpoch": { "$ref": "#/$defs/positiveInt64" },
1757
- "priorAuthorityId": { "$ref": "#/$defs/stableId" },
1758
- "priorFenceEvidenceDigest": { "$ref": "#/$defs/digest" },
1759
- "acceptedAt": { "$ref": "#/$defs/rfc3339" },
1760
- "expiresAt": { "$ref": "#/$defs/rfc3339" },
1761
- "commandDigest": { "$ref": "#/$defs/digest" }
1762
- },
1763
- "additionalProperties": false
1764
- },
1765
- "destinationMutationAuthority": {
1766
- "type": "object",
1767
- "required": [
1768
- "profile",
1769
- "mode",
1770
- "destination",
1771
- "destinationMutationKeyDigest",
1772
- "epoch",
1773
- "authorityId",
1774
- "operationId",
1775
- "attemptId",
1776
- "proposedGenerationId",
1777
- "expiresAt"
1778
- ],
1779
- "properties": {
1780
- "profile": { "const": "gala-destination-mutation-authority-v2" },
1781
- "mode": { "enum": ["normal", "pages-reconciliation-recovery"] },
1782
- "destination": { "$ref": "#/$defs/destinationIdentity" },
1783
- "destinationMutationKeyDigest": { "$ref": "#/$defs/digest" },
1784
- "epoch": { "$ref": "#/$defs/positiveInt64" },
1785
- "authorityId": { "$ref": "#/$defs/stableId" },
1786
- "operationId": { "$ref": "#/$defs/stableId" },
1787
- "attemptId": { "$ref": "#/$defs/stableId" },
1788
- "expectedGenerationId": { "$ref": "#/$defs/generationFence" },
1789
- "proposedGenerationId": { "$ref": "#/$defs/stableId" },
1790
- "expiresAt": { "$ref": "#/$defs/rfc3339" },
1791
- "pagesRecovery": { "$ref": "#/$defs/pagesReconciliationRecovery" }
1792
- },
1793
- "additionalProperties": false,
1794
- "allOf": [
1795
- {
1796
- "if": {
1797
- "properties": {
1798
- "mode": { "const": "pages-reconciliation-recovery" }
1799
- },
1800
- "required": ["mode"]
1801
- },
1802
- "then": { "required": ["pagesRecovery"] },
1803
- "else": { "not": { "anyOf": [{ "required": ["pagesRecovery"] }] } }
1804
- }
1805
- ]
1806
- },
1807
- "publicGenerationMarkerPayload": {
1808
- "type": "object",
1809
- "required": [
1810
- "schemaId",
1811
- "schemaVersion",
1812
- "artifactId",
1813
- "artifactDigest",
1814
- "generationId"
1815
- ],
1816
- "properties": {
1817
- "schemaId": {
1818
- "const": "urn:gala:schema:public-generation-marker:2.0.0"
1819
- },
1820
- "schemaVersion": { "const": "2.0.0" },
1821
- "artifactId": { "$ref": "#/$defs/stableId" },
1822
- "artifactDigest": { "$ref": "#/$defs/digest" },
1823
- "generationId": { "$ref": "#/$defs/stableId" }
1824
- },
1825
- "additionalProperties": false
1826
- },
1827
- "deploymentPolicyDecision": {
1828
- "type": "object",
1829
- "required": [
1830
- "profile",
1831
- "policyReleaseId",
1832
- "policyProfile",
1833
- "policyVersion",
1834
- "approvedOverrides",
1835
- "artifactId",
1836
- "artifactDigest",
1837
- "manifestDigest",
1838
- "buildPolicyDecisionDigest",
1839
- "destination",
1840
- "capabilityDecisionDigest",
1841
- "verificationTier",
1842
- "verificationOrigins",
1843
- "verificationPlanDigest",
1844
- "retryProfile",
1845
- "maximumAttemptsPerTarget",
1846
- "maximumRedirectHops",
1847
- "maximumConcurrentStreams",
1848
- "maximumPublicResponseBytes",
1849
- "requestTimeoutSeconds",
1850
- "activationDetectionProfile",
1851
- "maximumActivationDetectionAttempts",
1852
- "activationDetectionIntervalSeconds",
1853
- "maximumPublicVerificationSeconds",
1854
- "maximumFinalizationDelaySeconds",
1855
- "networkBoundaryProfileDigest",
1856
- "publicTlsProfileDigest",
1857
- "publicTlsTrustStoreDigest",
1858
- "publicTlsRevocationSetDigest",
1859
- "decisionDigest"
1860
- ],
1861
- "properties": {
1862
- "profile": { "const": "gala-deployment-policy-decision-v2" },
1863
- "policyReleaseId": { "$ref": "#/$defs/stableId" },
1864
- "policyProfile": { "$ref": "#/$defs/plainLabel" },
1865
- "policyVersion": { "$ref": "#/$defs/semver" },
1866
- "approvedOverrides": { "const": [] },
1867
- "artifactId": { "$ref": "#/$defs/stableId" },
1868
- "artifactDigest": { "$ref": "#/$defs/digest" },
1869
- "manifestDigest": { "$ref": "#/$defs/digest" },
1870
- "buildPolicyDecisionDigest": { "$ref": "#/$defs/digest" },
1871
- "destination": { "$ref": "#/$defs/destinationIdentity" },
1872
- "capabilityDecisionDigest": { "$ref": "#/$defs/digest" },
1873
- "verificationTier": {
1874
- "enum": [
1875
- "provider-complete-digest",
1876
- "full-public-fetch",
1877
- "deterministic-sample",
1878
- "critical-only"
1879
- ]
1880
- },
1881
- "verificationOrigins": {
1882
- "type": "array",
1883
- "items": { "$ref": "#/$defs/verificationOrigin" },
1884
- "minItems": 1,
1885
- "maxItems": 8,
1886
- "uniqueItems": true
1887
- },
1888
- "verificationPlanDigest": { "$ref": "#/$defs/digest" },
1889
- "retryProfile": { "const": "gala-public-probe-retry-v2" },
1890
- "maximumAttemptsPerTarget": {
1891
- "type": "integer",
1892
- "minimum": 1,
1893
- "maximum": 10
1894
- },
1895
- "maximumRedirectHops": {
1896
- "type": "integer",
1897
- "minimum": 0,
1898
- "maximum": 10
1899
- },
1900
- "maximumConcurrentStreams": {
1901
- "type": "integer",
1902
- "minimum": 1,
1903
- "maximum": 32
1904
- },
1905
- "maximumPublicResponseBytes": { "$ref": "#/$defs/positiveInt64" },
1906
- "requestTimeoutSeconds": {
1907
- "type": "integer",
1908
- "minimum": 1,
1909
- "maximum": 30
1910
- },
1911
- "activationDetectionProfile": {
1912
- "const": "gala-public-activation-detection-v2"
1913
- },
1914
- "maximumActivationDetectionAttempts": { "const": 91 },
1915
- "activationDetectionIntervalSeconds": { "const": 60 },
1916
- "maximumPublicVerificationSeconds": {
1917
- "type": "integer",
1918
- "minimum": 1,
1919
- "maximum": 3600
1920
- },
1921
- "maximumFinalizationDelaySeconds": { "const": 300 },
1922
- "networkBoundaryProfileDigest": { "$ref": "#/$defs/digest" },
1923
- "publicTlsProfileDigest": { "$ref": "#/$defs/digest" },
1924
- "publicTlsTrustStoreDigest": { "$ref": "#/$defs/digest" },
1925
- "publicTlsRevocationSetDigest": { "$ref": "#/$defs/digest" },
1926
- "decisionDigest": { "$ref": "#/$defs/digest" }
1927
- },
1928
- "additionalProperties": false
1929
- },
1930
- "activationDetectionPlan": {
1931
- "type": "object",
1932
- "required": [
1933
- "profile",
1934
- "operationId",
1935
- "attemptId",
1936
- "artifactId",
1937
- "proposedGenerationId",
1938
- "target",
1939
- "probeRegion",
1940
- "firstEligibleAt",
1941
- "lastEligibleAt",
1942
- "maximumAttempts",
1943
- "intervalSeconds",
1944
- "requestTimeoutSeconds",
1945
- "maximumRedirectHops",
1946
- "reservedProbeSlots",
1947
- "planDigest"
1948
- ],
1949
- "properties": {
1950
- "profile": { "const": "gala-public-activation-detection-v2" },
1951
- "operationId": { "$ref": "#/$defs/stableId" },
1952
- "attemptId": { "$ref": "#/$defs/stableId" },
1953
- "artifactId": { "$ref": "#/$defs/stableId" },
1954
- "proposedGenerationId": { "$ref": "#/$defs/stableId" },
1955
- "target": { "$ref": "#/$defs/verificationPlanTarget" },
1956
- "probeRegion": { "$ref": "#/$defs/probeRegion" },
1957
- "firstEligibleAt": { "$ref": "#/$defs/rfc3339" },
1958
- "lastEligibleAt": { "$ref": "#/$defs/rfc3339" },
1959
- "maximumAttempts": { "const": 91 },
1960
- "intervalSeconds": { "const": 60 },
1961
- "requestTimeoutSeconds": {
1962
- "type": "integer",
1963
- "minimum": 1,
1964
- "maximum": 30
1965
- },
1966
- "maximumRedirectHops": {
1967
- "type": "integer",
1968
- "minimum": 0,
1969
- "maximum": 10
1970
- },
1971
- "reservedProbeSlots": {
1972
- "allOf": [{ "$ref": "#/$defs/positiveInt64" }],
1973
- "type": "string",
1974
- "pattern": "^(?:[1-9]|[1-9][0-9]|[1-9][0-9]{2}|1000|1001)$"
1975
- },
1976
- "planDigest": { "$ref": "#/$defs/digest" }
1977
- },
1978
- "additionalProperties": false
1979
- },
1980
- "activationBasis": {
1981
- "type": "object",
1982
- "required": ["source", "observedAt", "evidenceDigest"],
1983
- "properties": {
1984
- "source": {
1985
- "enum": [
1986
- "kernel-provider-observation",
1987
- "gala-public-marker-detection"
1988
- ]
1989
- },
1990
- "observedAt": { "$ref": "#/$defs/rfc3339" },
1991
- "evidenceDigest": { "$ref": "#/$defs/digest" }
1992
- },
1993
- "additionalProperties": false
1994
- }
1995
- },
1996
- "allOf": [
1997
- {
1998
- "if": {
1999
- "properties": {
2000
- "adapter": {
2001
- "properties": { "adapterId": { "const": "github-pages" } },
2002
- "required": ["adapterId"]
2003
- }
2004
- },
2005
- "required": ["adapter"]
2006
- },
2007
- "then": { "required": ["pagesBuildVersion"] },
2008
- "else": { "not": { "anyOf": [{ "required": ["pagesBuildVersion"] }] } }
2009
- },
2010
- {
2011
- "if": {
2012
- "properties": {
2013
- "adapter": {
2014
- "properties": { "adapterId": { "const": "do-spaces" } },
2015
- "required": ["adapterId"]
2016
- }
2017
- },
2018
- "required": ["adapter"]
2019
- },
2020
- "then": { "required": ["spacesStagePrefix"] },
2021
- "else": { "not": { "anyOf": [{ "required": ["spacesStagePrefix"] }] } }
2022
- },
2023
- {
2024
- "if": {
2025
- "properties": {
2026
- "destinationMutationAuthority": {
2027
- "properties": {
2028
- "mode": { "const": "pages-reconciliation-recovery" }
2029
- },
2030
- "required": ["mode"]
2031
- }
2032
- },
2033
- "required": ["destinationMutationAuthority"]
2034
- },
2035
- "then": {
2036
- "properties": {
2037
- "adapter": {
2038
- "properties": { "adapterId": { "const": "github-pages" } },
2039
- "required": ["adapterId"]
2040
- },
2041
- "destination": {
2042
- "properties": { "adapterId": { "const": "github-pages" } },
2043
- "required": ["adapterId"]
2044
- }
2045
- }
2046
- }
2047
- },
2048
- {
2049
- "if": { "required": ["expectedGenerationId"] },
2050
- "then": {
2051
- "properties": {
2052
- "destinationMutationAuthority": {
2053
- "required": ["expectedGenerationId"]
2054
- }
2055
- }
2056
- },
2057
- "else": {
2058
- "properties": {
2059
- "destinationMutationAuthority": {
2060
- "not": { "anyOf": [{ "required": ["expectedGenerationId"] }] }
2061
- }
2062
- }
2063
- }
2064
- }
2065
- ],
2066
- "$comment": "Every duplicate identity, marker member, authority coordinate, release/policy value, timestamp relation and digest is checked for byte equality or recomputed by the deployment-intent semantic validator."
2067
- }