Skip to content

B2: Validate that bundle profile output: is not set; emit hard error at bundle time #3774

Description

@Mpdreamz

Context

The Release Notes Onboarding RFC (docs-eng-team#698) standardises bundle output filenames by convention: {product}-{version}.yaml, derived from output_products and version. As part of this (item B2 in the RFC), explicit output: patterns in bundle.profiles are being removed from docs-builder.

Problem

BundleProfile.Output is still a supported field in BundleConfiguration. If a product has configured output: "my-product-{version}.yaml" in their changelog.yml, after the convention change lands they would silently get a bundle at an unexpected path (or a collision if two profiles produce the same conventional name).

Required change

Add a validation step at changelog bundle time: if output: is set on any profile, emit a hard error directing the author to remove it:

Error: Profile 'my-profile': 'output' is no longer supported. Remove it — bundle output names are now derived by convention as '{product}-{version}.yaml' from the profile's output_products.

The field itself can be kept in the DTO for one release cycle with the error, then removed.

Additional validation (same task)

While adding this check, also validate that no two profiles in the same changelog.yml resolve to the same {product}-{version}.yaml target for a given version, so bundle filename collisions are caught at validation time rather than silently overwriting.

Related

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions