ReleaseContracts
PackageReleaseLink
SourceDescribes how a package documentation surface reaches the release narrative that applies to it.
Remarks
A coordinated link is deliberately an alias rather than a version lookup. At release preparation time it resolves to releases/current.md; the checked-in pointer in each exported docs tree then names that tree's immutable tagged note. Use an explicit link only when a package intentionally has a different release narrative.
PackageReleaseLinkResolver
SourceResolves and validates package-index release-link fields shared by package and release tooling.
TryResolve
bool TryResolve(string? releaseTrack, string? releaseNotesPath, out PackageReleaseLink? link, out string? error)
Source
Resolves a package release link from package-index YAML values.
Parameters
releaseTrackOptionalrelease_trackYAML value.releaseNotesPathOptionalrelease_notes_pathYAML value.linkThe resolved link when validation succeeds.errorA maintainer-facing validation error when validation fails.
Returns
true when the fields describe a supported link and link is non-null.
Remarks
Rows without release_track retain the historical explicit-path meaning when they declare a non-empty release_notes_path, so old release manifests and archived package-index snapshots remain readable. Every row still needs one source. New coordinated rows must not also carry a versioned path: that combination makes it unclear whether a reader should follow the frozen alias or the mutable package-index value.
PackageReleaseTrack
SourceSelects the package release-link policy.