IMPORTANT: Developer documentation for the current development branch. This content is unreleased, may change without notice, and must not be treated as Buildish release documentation.

Authored input types

Consumer-owned and component-owned authored contract models.

Consumer-owned and component-owned authored contract models.

Back to the reference overview.

Type index

  • ArtifactConfig — One independently versioned release unit inside a component.
  • ArtifactLifecycleConfig — Lifecycle metadata for an artifact’s stable versions, release lines, and support policy.
  • ArtifactVersioningConfig — How the pipeline discovers development, maintenance, tag, and named-ref versions.
  • CandidateSelectionPolicy — Rule for which release candidates should become published contexts.
  • CatalogDefaults — Shared defaults applied before per-component overrides.
  • CompatibilityAssertionConfig — Compatibility statement between two published identities, such as an artifact and a supported platform.
  • ComponentCatalogEntry — Component entry in the consumer catalog.
  • ComponentContentSelection — Source selection for a component’s shared pages, docs, and assets.
  • ComponentIdentity — Stable identity for a component repository.
  • ComponentLifecycleHints — Optional lifecycle defaults shared across all artifacts in a component repository.
  • ComponentMetadataDocumentV1 — Canonical component metadata that defines stable identity, repository content roots, and optional lifecycle defaults shared across a component repository.
  • ContentRoots — Repository-relative locations of authored component content.
  • ExactReleaseConfig — Per-version lifecycle metadata and publication overrides for one exact release.
  • GroupConfig — Reusable defaults and grouping hints shared by several components.
  • LineHeadSelectionPolicy — Rule for which release-line head refs should appear as publishable contexts.
  • LinkCheckConfig — Site-wide policy for internal page-link validation during check.
  • LocalizationConfig — Locale and translation defaults.
  • MountConfig — Mounted subtree, such as generated API docs or imported assets, published below one public path.
  • NamedRefConfig — Named source-control ref intentionally exposed as a stable version context.
  • OriginConfig — Named public base URL that published routes can resolve against.
  • PublicationConfig — Resolved-or-authored route layout choices for a component or artifact.
  • PublicationSelectionPolicy — Planning-time rule set for which version contexts are staged and linked.
  • RedirectRuleConfig — Redirect rule that sends one published path to another internal or external target.
  • ReleaseLineConfig — One logical release line, such as 4.0, together with its lifecycle metadata.
  • ReleaseSelectionPolicy — Rule for which exact released versions should become published contexts.
  • RouteAliasConfig — Additional public route that resolves to the same published destination.
  • SiteCatalogDocumentV1 — Canonical site catalog that lists participating components, shared defaults, source bindings, publication origins, and publication policy for one site.
  • SiteContentConfig — Top-level pages and asset trees that belong to the site as a whole.
  • SourceConfig — Named repository or checkout binding reused by components and artifacts.
  • SupportStatusDefinition — One reusable support-status label, description, and default lifecycle behavior.
  • SupportWindow — Lifecycle dates and support notes for one release line or exact release.
  • ValidationConfig — Optional site-wide validation policies that affect check behavior.

ArtifactConfig

One independently versioned release unit inside a component.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
key ArtifactKey yes Stable artifact identifier used in typed references, staged metadata, and provider records.
displayName NonEmptyString no Human-readable artifact label shown to readers when the raw key is not ideal UI text.
source SourceKey yes Named source entry that owns the versioned docs and assets for this artifact.
docsRoot RepoRelativePath no Artifact-specific docs root that overrides any inherited docs location when versioned docs live in a custom subdirectory.
assetsRoot RepoRelativePath no Artifact-specific asset root that overrides inherited component asset locations for this artifact’s versioned output.
versioning ArtifactVersioningConfig yes Rules for discovering development refs, maintenance refs, tags, and named refs for this artifact.
publicationSelection PublicationSelectionPolicy no Artifact-specific override for which version contexts should be staged and published.
lifecycle ArtifactLifecycleConfig no Lifecycle metadata for stable versions, release lines, and support policy for this artifact.
compatibility list[CompatibilityAssertionConfig] no Compatibility statements that should be emitted for this artifact in staged metadata.
mounts list[MountConfig] no Mounted generated or imported subtrees that belong to this artifact’s published surface.

Selected field examples

  • key: Example: "runtime"
  • displayName: Example: "Runtime"
  • source: Example: "apache-spark"
  • docsRoot: Example: "docs/runtime"
  • assetsRoot: Example: "docs/runtime/assets"

ArtifactLifecycleConfig

Lifecycle metadata for an artifact’s stable versions, release lines, and support policy.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
latestStable VersionString no Most recent stable version that readers should treat as the default recommendation for this artifact.
releaseLines list[ReleaseLineConfig] no Release-line definitions for this artifact, including latest versions and optional support metadata.
releases list[ExactReleaseConfig] no Per-version lifecycle metadata and publication overrides for exact released versions.
supportStatusVocabulary dict[Identifier, SupportStatusDefinition] no Reusable support-status definitions that release lines and exact releases can refer to by key.
supportPolicyUrl UrlString no Canonical URL for the support policy document that readers should consult for this artifact.
defaultSupportWindow SupportWindow no Fallback lifecycle window applied when a line or exact release does not provide a more specific support window.

Selected field examples

  • latestStable: Example: "4.0.1"

ArtifactVersioningConfig

How the pipeline discovers development, maintenance, tag, and named-ref versions.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
developmentRef RefString yes Source-control ref that represents the moving development docs for this artifact.
maintenanceRefPattern NonEmptyString no Pattern used to derive maintenance branch refs from a release-line key, usually with {line} as the substitution placeholder.
tagPattern RegexString yes Regular expression used to recognize provider tags that belong to this artifact’s version stream.
namedRefs list[NamedRefConfig] no Additional intentionally named version contexts, such as preview or stable branches, that should be selectable by key.

Selected field examples

  • developmentRef: Example: "main"
  • maintenanceRefPattern: Example: "release/{line}"
  • tagPattern: Example: "^v[0-9]+\\.[0-9]+\\.[0-9]+$"

CandidateSelectionPolicy

Rule for which release candidates should become published contexts.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
mode CandidateSelectionMode yes Selection strategy for candidate releases, such as disabling them or selecting an explicit set.
versions list[VersionString] no Candidate version strings to include when mode is explicit and provider versions are available.
externalIds list[NonEmptyString] no Provider-specific candidate identifiers to include when version strings alone are not enough to identify the desired candidate records.

Selected field examples

  • versions: Example: ["4.1.0-rc1"]
  • externalIds: Example: ["github:runtime-4.1.0-rc1"]

CatalogDefaults

Shared defaults applied before per-component overrides.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
metadataFile RepoRelativePath no Default location of site/component.yaml within each source tree.
pagesRoot RepoRelativePath no Default repository-relative root for non-versioned component pages.
docsRoot RepoRelativePath no Default repository-relative root for component docs content.
assetsRoot RepoRelativePath no Default repository-relative root for component static assets.
publication PublicationDefaults no Shared publication defaults inherited by components unless they override them.
localization LocalizationConfig no Shared localization defaults inherited by components unless they override them.

CompatibilityAssertionConfig

Compatibility statement between two published identities, such as an artifact and a supported platform.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
subjectRef ReferenceString yes Typed internal reference string for the thing whose compatibility is being described.
targetRef ReferenceString yes Typed internal reference string for the thing that the subject is compatible with or constrained by.
relation NonEmptyString yes Relationship label that names the compatibility statement, such as testedWith, requires, or incompatibleWith.
scope NonEmptyString no Optional scope label that narrows the compatibility statement to one subsystem, API surface, or deployment mode.
confidence NonEmptyString no Optional confidence label that tells readers how strong or direct the supporting evidence is.
notes NonEmptyString no Additional human-readable explanation, caveats, or migration advice for the compatibility statement.

Selected field examples

  • subjectRef: Example: "artifact:spark/runtime"
  • targetRef: Example: "artifact:spark/operator"
  • relation: Example: "testedWith"
  • scope: Example: "kubernetes"
  • confidence: Example: "verified"

ComponentCatalogEntry

Component entry in the consumer catalog.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
slug Slug yes Stable component identifier.
displayName NonEmptyString no Human-readable component name override or convenience value.
localDir RepoRelativePath no Simple shorthand for binding the component to one workspace-local checkout directory.
weight int no Optional ordering hint for component listings, menus, and other consumer-rendered component collections.
group Identifier no Optional group key for inherited defaults and renderer grouping.
content ComponentContentSelection no Shared content-source selection for component pages, docs, and assets.
publication PublicationConfig no Explicit publication configuration for this component.
publicationSelection PublicationSelectionPolicy no Default version-context selection policy inherited by contained artifacts unless they override it.
localization LocalizationConfig no Component-specific localization overrides.
compatibility list[CompatibilityAssertionConfig] no Component-level compatibility assertions emitted into staged metadata.
mounts list[MountConfig] no Component-level generated or imported documentation mounts.
artifacts list[ArtifactConfig] no Independently versioned artifacts belonging to this component.

ComponentContentSelection

Source selection for a component’s shared pages, docs, and assets.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
source SourceKey no Named source that owns shared component pages, docs, and assets roots.

ComponentIdentity

Stable identity for a component repository.

  • category: authored
  • ownership: component-owned
  • file contract: (inner type)
Field Type Required Description
slug Slug yes Stable component identifier used by consumer catalogs and staged metadata.
displayName NonEmptyString no Human-readable component name shown in rendered navigation and listings.

ComponentLifecycleHints

Optional lifecycle defaults shared across all artifacts in a component repository.

  • category: authored
  • ownership: component-owned
  • file contract: (inner type)
Field Type Required Description
latestStable VersionString no Latest stable version for the component when one overall release line is enough.
supportStatusVocabulary dict[Identifier, SupportStatusDefinition] no Optional support-status vocabulary shared by artifacts in this repository.

ComponentMetadataDocumentV1

Canonical component metadata that defines stable identity, repository content roots, and optional lifecycle defaults shared across a component repository.

  • category: authored
  • ownership: component-owned
  • file contract: site/component.yaml
Field Type Required Description
schemaVersion Literal[1] yes Schema version for the component metadata file.
component ComponentIdentity yes Stable identity for the component repository.
content ContentRoots no Repository-relative authored content roots owned by this component.
lifecycle ComponentLifecycleHints no Optional high-level lifecycle hints shared across the component repository.

Content roots

Use pagesRoot for unversioned component pages and docsRoot for versioned or development docs content.

Example: Component metadata with identity, content roots, and lifecycle hints.

 1schemaVersion: 1
 2component:
 3  slug: spark
 4  displayName: Apache Spark
 5content:
 6  pagesRoot: site/pages
 7  docsRoot: docs
 8lifecycle:
 9  latestStable: 4.0.0
10  supportStatusVocabulary:
11    active:
12      displayName: Active
13      order: 10

ContentRoots

Repository-relative locations of authored component content.

  • category: authored
  • ownership: component-owned
  • file contract: (inner type)
Field Type Required Description
pagesRoot RepoRelativePath no Repository-relative root for non-versioned component-owned pages.
docsRoot RepoRelativePath no Repository-relative root for versioned or development docs content.
assetsRoot RepoRelativePath no Repository-relative root for component-owned static assets.

ExactReleaseConfig

Per-version lifecycle metadata and publication overrides for one exact release.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
version VersionString yes Exact released version that this metadata entry applies to.
releaseLine NonEmptyString no Release-line key that this version belongs to when the provider data alone does not already make that relationship obvious.
supportStatus NonEmptyString no Support-status key or label that should override the line-level status for this exact version.
supportWindow SupportWindow no Lifecycle dates and support notes that apply only to this exact release.
publicationState PublicationState no Publication-state override for this version, such as published, withdrawn, or tombstoned.
withdrawalBehavior WithdrawalBehavior no What readers should experience when this release has been withdrawn, for example a redirect or a hard removal.
redirectTarget ReferenceString | UrlString no Replacement route or external URL to send readers to when withdrawalBehavior is redirect.
reason NonEmptyString no Human-readable explanation of the withdrawal, redirect, or support-state override for this release.

Selected field examples

  • version: Example: "4.0.0"
  • releaseLine: Example: "4.0"
  • supportStatus: Example: "withdrawn"
  • redirectTarget: Example: "route:/spark/releases/4.0.1/"
  • reason: Example: "Superseded by 4.0.1."

GroupConfig

Reusable defaults and grouping hints shared by several components.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
displayName NonEmptyString no Human-readable group name for renderers or generated navigation.
pathPrefix PublicPath no Shared public path prefix applied to grouped component publication roots.
navigationSection NonEmptyString no Optional renderer-facing grouping label for navigation or listings.
weight int no Optional ordering hint shared by components in this group.
publication PublicationConfig no Publication defaults inherited by grouped components unless they override them.

LineHeadSelectionPolicy

Rule for which release-line head refs should appear as publishable contexts.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
mode LineHeadSelectionMode yes Selection strategy for release-line head contexts, such as taking all lines or only an explicit subset.
keys list[NonEmptyString] no Explicit release-line keys to publish when mode is explicit.

Selected field examples

  • keys: Example: ["3.5","4.0"]

LinkCheckConfig

Site-wide policy for internal page-link validation during check.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
enabled bool no Whether the pipeline should validate authored internal page links against resolved public routes.
mode LinkCheckMode no How authored relative page links should resolve in the published site.
checkRootAbsolute bool no Whether root-absolute links such as /components/foo/ should also be validated when they match declared internal prefixes.
internalPrefixes list[PublicPath] no Root-absolute public-path prefixes that should be treated as internal links when root-absolute checking is enabled.

Selected field examples

  • internalPrefixes: Example: ["/components/","/docs/"]

LocalizationConfig

Locale and translation defaults.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
defaultLocale NonEmptyString no Default locale used when a page does not declare a more specific locale.
supportedLocales list[NonEmptyString] no Supported locale keys for this site or component.
routeMode RouteMode no How localized pages should be routed within the published URL space.
fallbackLocale NonEmptyString no Fallback locale used when a requested translation is unavailable.

MountConfig

Mounted subtree, such as generated API docs or imported assets, published below one public path.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
source MountSourceRef yes Typed source reference that identifies the generated or imported subtree to mount.
mountPath PublicPath yes Public path where the mounted subtree should appear in the published site.
kind NonEmptyString yes Short kind label that tells renderers and tooling what sort of mounted content this is.
trustClass TrustClass yes Trust level for the mounted content, used by downstream tooling to decide how much confidence to place in its structure or metadata.
versionScope NonEmptyString no Optional label describing which version context this mount belongs to, when the same component can expose several mounted trees.
indexBehavior IndexBehavior no How the mounted subtree should participate in generated indexes, listings, or navigation structures.
ownership NonEmptyString no Logical owner label used in staged metadata to explain who is responsible for this mounted subtree.
metadata ExtensionsObject no Small JSON-like extension object for extra mount metadata that downstream tooling may consume.

Selected field examples

  • source: Example: "generated/api"
  • mountPath: Example: "/spark/api/"
  • kind: Example: "generatedApi"
  • versionScope: Example: "release"
  • ownership: Example: "runtime-docs"

NamedRefConfig

Named source-control ref intentionally exposed as a stable version context.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
key Identifier yes Stable identifier used elsewhere in the catalog to select this named ref.
ref RefString yes Exact source-control ref to resolve when this named context is selected.
displayName NonEmptyString no Human-readable label shown in version pickers, breadcrumbs, or other rendered UI.
maturity NonEmptyString no Short maturity label that explains how stable or experimental this named ref should be treated.
description NonEmptyString no Human-readable explanation of what this named ref contains or who should use it.

Selected field examples

  • key: Example: "preview"
  • ref: Example: "refs/heads/preview"
  • displayName: Example: "Preview"
  • maturity: Example: "preview"
  • description: Example: "Early access docs for the next planned minor release."

OriginConfig

Named public base URL that published routes can resolve against.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
baseUrl UrlString yes Base public URL for this publication origin.
canonical bool no Whether this origin should be treated as canonical when multiple origins publish the same target.
labels list[NonEmptyString] no Optional human-readable labels for renderer or deployment tooling.

PublicationConfig

Resolved-or-authored route layout choices for a component or artifact.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
origin OriginKey no Publication origin key to use for this component or artifact.
pathSegment NonEmptyString no Path segment appended below an inherited path prefix or mount root.
mountPath PublicPath no Explicit public root path for the component’s published content.
componentPath PublicPath no Explicit public path for the component landing page or overview root.
developmentPath PublicPath no Explicit public path for the moving development docs surface.
docsPath PublicPath no Explicit public docs landing path exposed to downstream consumers; defaults to the development path unless an additional docs segment or override is configured.
assetsPath PublicPath no Explicit public path for static assets below the component root.
canonicalPath PublicPath no Optional canonical public path used when aliases or multiple origins are present.
aliases list[RouteAliasConfig] no Additional public aliases that should resolve to the same published target.
redirects list[RedirectRuleConfig] no Redirect rules to emit for legacy or moved routes.

Selected field examples

  • mountPath: Example: "/spark/"

PublicationSelectionPolicy

Planning-time rule set for which version contexts are staged and linked.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
development bool no Whether to publish the moving development context represented by the artifact’s developmentRef.
lineHeads LineHeadSelectionPolicy no Rule for including release-line head contexts such as 4.0 or 3.5.
releases ReleaseSelectionPolicy no Rule for including exact released-version contexts such as 4.0.1.
namedRefs list[Identifier] no Named ref keys to include as publishable contexts in addition to development, line-head, or released versions.
candidates CandidateSelectionPolicy no Rule for including release-candidate contexts when they should be visible to readers.

Selected field examples

  • namedRefs: Example: ["preview","stable"]

RedirectRuleConfig

Redirect rule that sends one published path to another internal or external target.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
fromPath PublicPath yes Public path that should redirect instead of serving its own content.
fromOrigin OriginKey no Optional origin override when the redirect should only exist on one named publication origin.
target ReferenceString | UrlString yes Destination of the redirect, either as a typed internal reference string or as a fully qualified external URL.
status int no HTTP redirect status to emit; when omitted, downstream tooling applies its default redirect status.
reason NonEmptyString no Short explanation of why the redirect exists, for example to describe a rename, consolidation, or withdrawn release route.

Selected field examples

  • fromPath: Example: "/spark/docs/current/"
  • fromOrigin: Example: "archive"
  • target: Example: "route:/spark/development/"
  • status: Example: 308
  • reason: Example: "Development docs moved to the new route."

ReleaseLineConfig

One logical release line, such as 4.0, together with its lifecycle metadata.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
key NonEmptyString yes Stable key for the release line, typically matching the family label used in URLs and navigation.
displayName NonEmptyString no Human-readable label shown to readers when the raw line key is not ideal UI text.
parent NonEmptyString no Optional parent release-line key used to model lineage such as 4.x inheriting from 3.x policy or navigation structure.
latest VersionString yes Latest released version currently considered the head of this release line.
supportStatus NonEmptyString no Support-status key or label that should be shown for the line as a whole.
aliases list[NonEmptyString] no Alternate labels that should also resolve to this release line in generated metadata or UI.
maintenanceRef RefString no Explicit maintenance branch ref for the line when it should not be derived from maintenanceRefPattern.
supportWindow SupportWindow no Lifecycle dates and support notes that apply to the release line.

Selected field examples

  • key: Example: "4.0"
  • displayName: Example: "4.0 line"
  • parent: Example: "3.5"
  • latest: Example: "4.0.1"
  • supportStatus: Example: "supported"
  • aliases: Example: ["stable"]
  • maintenanceRef: Example: "refs/heads/release-4.0"

ReleaseSelectionPolicy

Rule for which exact released versions should become published contexts.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
mode ReleaseSelectionMode yes Selection strategy for released versions, for example the latest n releases or one explicit version list.
count PositiveInteger no How many most-recent releases to include when mode is latestN.
versions list[VersionString] no Exact released versions to include when mode is explicit.

Selected field examples

  • count: Example: 3
  • versions: Example: ["4.0.0","4.0.1"]

RouteAliasConfig

Additional public route that resolves to the same published destination.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
path PublicPath yes Alternate public path that should resolve to the same page family or landing target as the primary route.
origin OriginKey no Optional origin override when the alias should only exist on one named publication origin.
label NonEmptyString no Human-readable label that renderers can use when presenting this alias in navigation or metadata.

Selected field examples

  • path: Example: "/spark/stable/"
  • origin: Example: "archive"
  • label: Example: "stable"

SiteCatalogDocumentV1

Canonical site catalog that lists participating components, shared defaults, source bindings, publication origins, and publication policy for one site.

  • category: authored
  • ownership: consumer-owned
  • file contract: site/catalog.yaml
Field Type Required Description
schemaVersion Literal[1] yes Schema version for the catalog format.
defaults CatalogDefaults no Shared default settings applied before per-component overrides.
site SiteContentConfig no Consumer-owned top-level site pages, assets, and vendor-asset declarations.
origins dict[OriginKey, OriginConfig] no Named publication origins that components can target.
sources dict[SourceKey, SourceConfig] no Named repository or checkout bindings used by components and artifacts.
groups dict[Identifier, GroupConfig] no Optional grouping defaults shared by multiple components.
validation ValidationConfig no Optional site-wide validation policies that extend the default check behavior.
components list[ComponentCatalogEntry] yes Participating components in this consumer-authored catalog.

Inheritance

Defaults flow from defaults to groups to individual component entries. See component entries.

Example: Catalog with a single component, a single artifact, and release selection policy.

 1schemaVersion: 1
 2defaults:
 3  docsRoot: docs
 4  publication:
 5    origin: docs
 6site: {}
 7origins:
 8  docs:
 9    baseUrl: https://docs.example.org
10sources:
11  runtime:
12    localDir: components/runtime
13components:
14- slug: spark
15  weight: 100
16  content:
17    source: runtime
18  publication:
19    mountPath: /spark/
20  artifacts:
21  - key: runtime
22    source: runtime
23    versioning:
24      developmentRef: main
25      tagPattern: ^v.*$
26    publicationSelection:
27      development: true
28      lineHeads:
29        mode: allAuthored
30      releases:
31        mode: latestPerLine
32    lifecycle:
33      releaseLines:
34      - key: '4.0'
35        latest: 4.0.0
36        maintenanceRef: maintenance/4.0
37      releases:
38      - version: 4.0.0

SiteContentConfig

Top-level pages and asset trees that belong to the site as a whole.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
pagesRoot RepoRelativePath no Repository-relative root for consumer-owned top-level site pages.
assetsRoot RepoRelativePath no Repository-relative root for consumer-owned top-level static assets.
vendorAssets list[TopLevelAssetConfig] no Additional imported asset trees mounted into the top-level site assets area.

SourceConfig

Named repository or checkout binding reused by components and artifacts.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
localDir RepoRelativePath yes Workspace-relative checkout or source directory.
repository UrlString no Optional remote repository URL whose repository root corresponds to this source root.
defaultBranch RefString no Optional default branch or ref for this source.
metadataFile RepoRelativePath no Optional override for the component metadata file inside this source tree.

SupportStatusDefinition

One reusable support-status label, description, and default lifecycle behavior.

  • category: authored
  • ownership: component-owned
  • file contract: (inner type)
Field Type Required Description
displayName NonEmptyString yes Human-readable status label shown to readers, such as Supported or Security fixes only.
order int no Optional sort order used when several support statuses should appear in a stable display order.
description NonEmptyString no Human-readable explanation of what this support status means in practice.
defaultMaintenancePhase NonEmptyString no Default maintenance-phase label to apply when a release uses this support status and does not provide a more specific phase.

Selected field examples

  • displayName: Example: "Supported"
  • order: Example: 10
  • description: Example: "Receives regular fixes and new patch releases."
  • defaultMaintenancePhase: Example: "active"

SupportWindow

Lifecycle dates and support notes for one release line or exact release.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
releaseDate TimestampString no Release date for the line or version that this support window describes.
maintenancePhase NonEmptyString no Short label for the current maintenance phase, such as general availability, maintenance, or security-only support.
endOfActiveSupportDate TimestampString no Date after which the release no longer receives full active support.
endOfSupportDate TimestampString no Date after which the release is no longer supported in normal maintenance channels.
endOfLifeDate TimestampString no Final retirement date after which the release should be treated as fully end-of-life.
supportPolicyUrl UrlString no Canonical URL that explains the support policy referenced by this support window.
notes NonEmptyString no Additional notes that clarify exceptions, migration advice, or support caveats.

Selected field examples

  • releaseDate: Example: "2026-04-01T00:00:00Z"
  • maintenancePhase: Example: "security-fixes"

ValidationConfig

Optional site-wide validation policies that affect check behavior.

  • category: authored
  • ownership: consumer-owned
  • file contract: (inner type)
Field Type Required Description
linkChecks LinkCheckConfig no Optional internal page-link checking policy resolved against staged public routes.