Source: docs/followups/opportunistic.md row 2 (Next up).
Today stability is declared in two places (per-component README header + CHANGELOG entry). When tracecore components (a future CLI subcommand listing built-in components) or a policy/required-alpha-warn-banner lint check exists, extend components.yaml with a stability: field per entry and have tools/components-gen emit it.
Files to touch:
components.yaml — add stability: field per entry.
tools/components-gen/main.go — emit the field.
Trigger: first machine reader of stability data (e.g., the tracecore components CLI subcommand, or a lint check that requires alpha-banner presence based on machine-readable tier).
Acceptance:
components.yaml has stability: alpha|beta|stable per component, matching the README header today.
tools/components-gen round-trip keeps the field.
- A consumer (CLI subcommand or lint check) reads the field — don't add the field with no reader.
Source:
docs/followups/opportunistic.mdrow 2 (Next up).Today stability is declared in two places (per-component README header + CHANGELOG entry). When
tracecore components(a future CLI subcommand listing built-in components) or apolicy/required-alpha-warn-bannerlint check exists, extendcomponents.yamlwith astability:field per entry and havetools/components-genemit it.Files to touch:
components.yaml— addstability:field per entry.tools/components-gen/main.go— emit the field.Trigger: first machine reader of stability data (e.g., the
tracecore componentsCLI subcommand, or a lint check that requires alpha-banner presence based on machine-readable tier).Acceptance:
components.yamlhasstability: alpha|beta|stableper component, matching the README header today.tools/components-genround-trip keeps the field.